:root{--paper:#faf7f2;--ink:#493b45;--muted:#85767e;--pink:#ce747b;--pink-dark:#a44e59;--line:#e9e0db;--serif:Georgia,"Times New Roman",serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-tap-highlight-color:transparent;margin:0;font-size:15px;line-height:1.6}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit;border:0;transition:transform .2s,background .2s,box-shadow .2s}button:disabled{cursor:default}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline-offset:4px;outline:3px solid #9376ad}button:active:not(:disabled){transform:scale(.97)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}em{color:var(--pink);font-style:italic;font-weight:400}.site-shell{max-width:1160px;margin:auto;padding:0 42px;position:relative}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:104px;display:flex}.brand{letter-spacing:.2px;align-items:center;gap:12px;font-size:15px;font-weight:650;display:flex}.brand-mark{color:var(--pink);font-size:40px;font-weight:400;line-height:1}.brand-caption{font-family:var(--serif);letter-spacing:.5px;color:var(--muted);font-size:12px;font-style:italic;font-weight:400;display:block}.header-actions{align-items:center;gap:10px;display:flex}.made-with{letter-spacing:.6px;color:var(--muted);margin-right:16px;font-size:11px}.icon-button{border:1px solid var(--line);background:0 0;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:26px;line-height:1;display:inline-grid;position:relative}.icon-button svg{width:19px;height:19px}.sound-dot{background:#b8aaa9;border-radius:50%;width:5px;height:5px;position:absolute;bottom:9px;right:9px}.icon-button[aria-pressed=true]{background:#eee9f5;border-color:#cfc1dc}.icon-button[aria-pressed=true] .sound-dot{background:#9879b0}.hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:12px;padding:68px 0 38px;display:grid}.eyebrow{letter-spacing:2px;color:var(--pink-dark);align-items:center;gap:8px;font-size:10px;font-weight:650;line-height:1.7;display:flex}.eyebrow>span:empty{background:var(--pink);border-radius:50%;width:5px;height:5px}.eyebrow.muted{color:var(--muted);letter-spacing:1.7px;font-size:9px}h1{font-family:var(--serif);letter-spacing:-2.8px;margin:21px 0;font-size:66px;line-height:1.08}.title-spark{color:#b59f65;vertical-align:top;margin-top:8px;margin-left:13px;font-size:35px;animation:4s infinite twinkle;display:inline-block}.hero-description{max-width:390px;color:var(--muted);font-size:14px;line-height:1.85}.primary-button{background:var(--pink);color:#fff;letter-spacing:.2px;border-radius:12px;justify-content:center;align-items:center;gap:35px;min-height:52px;padding:14px 25px;font-size:13px;display:inline-flex;box-shadow:0 5px 12px #c5767b1c}.primary-button:hover{background:#bd636e;box-shadow:0 7px 20px #c5767b35}.primary-button:disabled{opacity:.55;box-shadow:none}.primary-button span{font-size:21px;line-height:1}.hero .primary-button{margin-top:26px}.hero-note{color:var(--muted);align-items:center;gap:7px;margin-top:17px;font-size:10px;display:flex}.hero-note>span{color:var(--pink);font-size:16px}.universe-art{isolation:isolate;height:400px;position:relative}.art-glow{z-index:-1;background:radial-gradient(#f4e0df 0,#f7ebe9 37%,#0000 69%);position:absolute;inset:18px 0}.orbit{border:1px solid #d3bec488;border-radius:50%;width:350px;height:200px;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)rotate(-30deg)}.orbit-two{border-style:dashed;border-color:#d3bec466;width:280px;height:325px;transform:translate(-50%,-50%)rotate(-37deg)}.heart-halo{border:1px solid #f5dcd9;border-radius:50%;width:214px;height:214px;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 21px #f1d4d01f,0 0 0 45px #f1d4d019}.big-heart{filter:drop-shadow(0 22px 14px #ab637932);width:200px;height:180px;animation:4s ease-in-out infinite heart-float;position:absolute;top:49%;left:50%;transform:translate(-50%,-50%)}.big-heart svg{width:100%;height:100%;overflow:visible}.art-star{color:#c4a76a;animation:4s ease-in-out infinite twinkle;position:absolute}.star-one{font-size:39px;top:11%;left:22%}.star-two{font-size:46px;animation-delay:1s;top:27%;right:9%}.star-three{color:#ac96bb;font-size:24px;animation-delay:2s;bottom:21%;left:13%}.star-four{font-size:20px;animation-delay:3s;bottom:12%;right:31%}.little-moon{border-radius:50%;width:31px;height:31px;position:absolute;top:8%;right:27%;transform:rotate(-20deg);box-shadow:-9px 5px #d0b578}.planet-dot{background:#b0bca0;border-radius:50%;width:12px;height:12px;position:absolute;top:42%;left:9%;box-shadow:0 0 0 6px #b0bca017}.art-label{font-family:var(--serif);z-index:2;background:#ffffffc9;border:1px solid #eadfdc;border-radius:6px;padding:8px 16px;font-size:13px;font-style:italic;position:absolute;box-shadow:0 5px 20px #73515907}.label-one{animation:6s ease-in-out infinite label-sway;top:16%;right:0;transform:rotate(8deg)}.label-two{animation:7s ease-in-out infinite reverse label-sway;bottom:20%;left:2%;transform:rotate(-8deg)}.art-caption{text-align:center;width:100%;font-size:11px;font-family:var(--serif);color:#99858d;letter-spacing:.5px;font-style:italic;position:absolute;bottom:0}.flower{width:62px;height:105px;position:absolute;bottom:14%;right:9%;transform:rotate(15deg)}.flower span{color:#c9b7dc;z-index:2;font-size:70px;line-height:1;position:absolute}.flower i{background:#9eae8c;width:3px;height:71px;position:absolute;top:39px;left:31px;transform:rotate(8deg)}.flower b{background:#b1be9c;border-radius:0 90%;width:28px;height:15px;position:absolute;top:65px;left:7px;transform:rotate(20deg)}.flower-two{z-index:-1;bottom:13%;right:21%;transform:rotate(-13deg)scale(.7)}.flower-two span{color:#e8c582}.mood-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:center;align-items:center;gap:24px;margin-top:23px;padding:19px 15px;display:flex}.mood-label{font-family:var(--serif);font-size:17px}.mood-options{gap:8px;display:flex}.mood-options button{border:1px solid var(--line);background:0 0;border-radius:30px;align-items:center;gap:7px;min-height:42px;padding:8px 14px;font-size:17px;display:flex}.mood-options button span{font-size:11px}.mood-options button[aria-pressed=true]{background:#f2e4e3;border-color:#d7afb0}.mood-response{text-align:center;color:var(--muted);min-height:43px;padding:9px 0 5px;font-size:11px}.journey-section{padding-top:37px}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:19px;display:flex}.section-heading h2{font-family:var(--serif);letter-spacing:-.7px;margin-top:5px;font-size:33px}.progress-pill{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:30px;align-items:center;gap:5px;padding:8px 14px;font-size:11px;display:flex}.progress-pill>span:last-child{color:var(--pink);margin-left:7px;font-size:18px}.journey-progress{background:#eae2df;border-radius:4px;height:3px;margin-bottom:25px;overflow:hidden}.journey-progress>span{background:var(--pink);width:0;height:100%;transition:width .8s;display:block}.journey-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;display:grid}.journey-card{--card-color:#eee7f4;text-align:left;background:var(--card-color);border:1px solid #e1d7db;border-radius:17px;flex-direction:column;align-items:flex-start;min-height:249px;padding:21px 22px 18px;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden}.journey-card:nth-child(2){--card-color:#f6e4e3}.journey-card:nth-child(3){--card-color:#e9eddf}.journey-card:nth-child(4){--card-color:#e7eaf5}.journey-card:nth-child(5){--card-color:#f6ead5}.journey-card:nth-child(6){--card-color:#f0e1e8}.journey-card:hover:not([aria-disabled=true]){transform:translateY(-5px);box-shadow:0 12px 25px #5540500d}.card-top{letter-spacing:1px;color:#756974;justify-content:space-between;align-items:center;width:100%;font-size:9px;display:flex}.card-status{letter-spacing:.2px;background:#ffffff70;border-radius:20px;padding:3px 8px;font-size:9px}.card-status.ready{color:#876171;background:#ffffffb0}.card-illustration{align-self:center;place-items:center;width:150px;height:89px;margin:7px 0 3px;display:grid;position:relative}.card-illustration .symbol{filter:drop-shadow(0 5px 3px #93798418);font-size:52px;line-height:1;animation:4s ease-in-out infinite gentle-bob}.card-illustration .tiny{font-size:19px;animation:4s infinite twinkle;position:absolute;top:15px;left:20px}.card-illustration .tiny:last-child{font-size:12px;animation-delay:1.5s;top:50px;left:auto;right:13px}.stars .symbol{color:#b39acb}.memory .symbol{color:#cc919b;font-size:65px}.garden .symbol{color:#9eaf80;font-size:65px}.sky .symbol{color:#8d9fc5}.secret .symbol{color:#ceac6e}.hug .symbol{color:#c991aa}.journey-card h3{font-family:var(--serif);margin-top:auto;font-size:23px;line-height:1.3}.journey-card p{color:#7c6e78;margin-top:6px;padding-right:20px;font-size:11px}.card-arrow{color:#9a858f;font-size:20px;position:absolute;bottom:20px;right:20px}.journey-card[aria-disabled=true] .card-illustration{opacity:.65}.journey-card.completed{border-color:#c6baa3}.little-extras{grid-template-columns:1fr 1fr;gap:17px;margin:28px 0;display:grid}.extra-card{border:1px solid var(--line);text-align:left;background:0 0;border-radius:14px;align-items:center;gap:17px;padding:23px 21px;display:flex}.extra-card:hover{background:#f3ede7}.extra-art{color:#b59c6c;text-align:center;flex-shrink:0;width:39px;font-size:37px}.letter-extra .extra-art{color:var(--pink)}.extra-card strong{font-family:var(--serif);margin:5px 0;font-size:20px;font-weight:400;line-height:1.3;display:block}.extra-description{color:var(--muted);font-size:10px}.extra-arrow{color:#a38e96;margin-left:auto;font-size:23px}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;padding:26px 0 115px;font-size:10px;display:flex}.footer-sign{font-family:var(--serif);font-style:italic}.site-footer button{color:#a58b9a;white-space:nowrap;background:0 0;min-height:44px;font-size:15px}.site-footer button span{margin-left:6px;font-size:10px}.bottom-nav{z-index:10;bottom:max(16px,env(safe-area-inset-bottom));backdrop-filter:blur(16px);background:#fffaf6f2;border:1px solid #e4dad6;border-radius:20px;gap:5px;padding:7px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #5f455116}.bottom-nav button{color:#94818b;background:0 0;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-width:124px;min-height:53px;font-size:11px;display:flex}.bottom-nav button>span{font-size:23px;line-height:1}.bottom-nav button.active{color:#a35662;background:#f3e7e7}.bottom-nav small{background:#ead7d9;border-radius:10px;padding:0 5px;font-size:9px}.page-intro{text-align:center;padding:66px 0 36px}.page-intro .eyebrow{justify-content:center}.page-intro h1{margin:16px 0;font-size:48px}.page-intro p{color:var(--muted);font-size:13px}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:12px 0 35px;display:grid}.keepsake{border:1px solid var(--line);text-align:center;background:#fffaf6;border-radius:15px;min-height:200px;padding:27px 22px}.keepsake-icon{color:#b397bc;margin-bottom:13px;font-size:35px;display:block}.keepsake h3{font-family:var(--serif);font-size:21px}.keepsake p{color:var(--muted);margin-top:10px;font-size:12px}.keepsake.locked{background:0 0;border-style:dashed}.keepsake.locked .keepsake-icon{opacity:.4}.achievement-box{border:1px solid var(--line);border-radius:15px;margin-bottom:38px;padding:25px}.achievement-box h2{font-family:var(--serif);margin-bottom:15px;font-size:25px}#achievements{flex-wrap:wrap;gap:12px;display:flex}.achievement{border:1px solid var(--line);color:var(--muted);border-radius:30px;padding:9px 13px;font-size:11px}.achievement.earned{color:#83618d;background:#eee5f2;border-color:#ded0e6}.locked-letter,.envelope-wrap{text-align:center;max-width:560px;margin:0 auto 55px;padding:30px 20px 40px}.locked-letter .large-symbol{color:#c29dae}.locked-letter h2{font-family:var(--serif);margin:12px 0;font-size:31px}.locked-letter p{color:var(--muted);margin:14px 0 23px;font-size:13px}.envelope{isolation:isolate;background:#e7b6bb;border-radius:7px;place-items:center;width:260px;height:170px;margin:45px auto 37px;animation:4s infinite gentle-bob;display:grid;position:relative;box-shadow:0 18px 28px #9d68732a}.envelope:before{content:"";clip-path:polygon(0 0,50% 60%,100% 0);z-index:-1;background:#f1cbd0;border-radius:7px;position:absolute;inset:0}.envelope:after{content:"";clip-path:polygon(0 100%,0 5%,50% 63%,100% 5%,100% 100%);z-index:-1;background:#edc0c4;border-radius:7px;position:absolute;inset:0}.envelope .seal{color:#ffe6e8;z-index:1;background:#cb7888;border-radius:50%;place-items:center;width:47px;height:47px;font-size:27px;display:grid;box-shadow:0 2px 4px #a2556640}.love-letter{border:1px solid var(--line);background:#fffcf8;border-radius:4px;max-width:610px;margin:0 auto 35px;padding:48px;animation:.7s both letter-unfold;position:relative;box-shadow:0 10px 40px #64485408}.love-letter:before{content:"♡";color:#d4a0a7;font-size:39px;position:absolute;top:27px;right:34px;transform:rotate(12deg)}.love-letter .eyebrow{margin-bottom:23px}.love-letter h2{font-family:var(--serif);overflow-wrap:anywhere;max-width:90%;margin-bottom:24px;font-size:34px;line-height:1.2}.love-letter p{font-family:var(--serif);margin-bottom:20px;font-size:18px;line-height:1.85}.love-letter .signature{color:var(--pink);font-style:italic}.letter-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0 55px;display:flex}.secondary-button{background:0 0;border:1px solid #dcd1d5;border-radius:11px;min-height:47px;padding:12px 19px;font-size:12px}.secondary-button:hover{background:#efe7ec}.large-symbol{color:#c1a0c9;font-size:74px;line-height:1.2;display:block}.game-dialog{background:var(--paper);color:var(--ink);overscroll-behavior:contain;border:1px solid #e5d9dc;border-radius:25px;width:calc(100% - 32px);max-width:530px;max-height:90dvh;padding:22px 25px 28px;overflow:auto;box-shadow:0 30px 100px #38223230}.game-dialog[open]{animation:.3s dialog-in}.game-dialog::backdrop{backdrop-filter:blur(7px);background:#382a4266}.dialog-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;display:flex}.dialog-top .icon-button{width:35px;height:35px;font-size:23px}.dialog-top .eyebrow{font-size:9px}#dialog-body{text-align:center}#dialog-body h2{font-family:var(--serif);letter-spacing:-.6px;margin:13px 0;font-size:34px;line-height:1.2}#dialog-body .game-description{color:var(--muted);max-width:370px;margin:0 auto 21px;font-size:12px;line-height:1.8}.game-feedback{min-height:47px;font-family:var(--serif);color:#a4617a;place-items:center;margin-top:10px;font-size:17px;font-style:italic;line-height:1.5;display:grid}.game-counter{letter-spacing:1.5px;color:var(--muted);margin:15px 0 6px;font-size:10px}.game-area{background:#eee8f4;border:1px solid #ded3e4;border-radius:18px;position:relative;overflow:hidden}.star-field{background:radial-gradient(at 50% 100%,#eee5ed,#e7e3f3);height:260px}.star-field:before{content:"·   ✧      ·     ·        ✧       ·";color:#b3a1c7;letter-spacing:11px;font-size:26px;line-height:3;position:absolute;inset:10% 8%}.catch-star{color:#ad86bd;filter:drop-shadow(0 3px 4px #8c64852b);background:0 0;place-items:center;width:53px;height:53px;font-size:38px;line-height:1;animation:3s ease-in-out infinite star-drift;display:grid;position:absolute}.catch-star:nth-child(2n){color:#c6a257;animation-duration:3.8s;animation-direction:reverse}.catch-star.caught{pointer-events:none;animation:.35s forwards star-caught}.memory-grid{perspective:800px;grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.memory-card{perspective:600px;background:0 0;border-radius:13px;height:92px;padding:0;position:relative}.memory-card-inner{transform-style:preserve-3d;transition:transform .5s;position:absolute;inset:0}.memory-card.flipped .memory-card-inner,.memory-card.matched .memory-card-inner{transform:rotateY(180deg)}.memory-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;border:1px solid #e0cbd1;border-radius:13px;place-items:center;display:grid;position:absolute;inset:0}.memory-back{color:#b88597;background:repeating-linear-gradient(45deg,#f1e0e5,#f1e0e5 8px,#efdae1 8px 9px);font-size:33px}.memory-front{background:#fff8f4;font-size:35px;transform:rotateY(180deg)}.memory-card.matched .memory-front{background:#e9eddf;border-color:#bdc9aa}.garden-area{background:linear-gradient(#f2f0e4,#e8eddb);justify-content:center;align-items:flex-end;gap:12px;height:270px;padding:20px 13px 39px;display:flex}.garden-area:after{content:"";background:#c5cfb15e;border-radius:50% 50% 0 0;width:120%;height:52px;position:absolute;bottom:0;left:-10%}.garden-sun{color:#d4b868;font-size:41px;animation:45s linear infinite slow-spin;position:absolute;top:15px;right:23px}.plant-button{z-index:1;background:0 0;border-radius:40px;flex-direction:column;justify-content:flex-end;align-items:center;width:100px;height:170px;display:flex;position:relative}.plant-stem{background:#9dad7e;border-radius:4px;width:4px;height:0;transition:height .7s;position:relative}.plant-stem:before,.plant-stem:after{content:"";opacity:0;background:#a8b986;border-radius:0 90%;width:25px;height:13px;transition:opacity .5s;position:absolute;top:30%;left:-23px;transform:rotate(10deg)}.plant-stem:after{top:53%;left:3px;transform:rotate(-70deg)}.plant-bloom{color:#c995a9;z-index:2;margin-bottom:-6px;font-size:25px;line-height:1;transition:font-size .7s,transform .7s}.plant-button:nth-of-type(2) .plant-bloom{color:#b09cc5}.plant-button:nth-of-type(3) .plant-bloom{color:#d5b66d}.plant-button[data-stage="1"] .plant-stem{height:35px}.plant-button[data-stage="2"] .plant-stem{height:65px}.plant-button[data-stage="3"] .plant-stem{height:91px}.plant-button[data-stage="1"] .plant-bloom{font-size:34px}.plant-button[data-stage="2"] .plant-bloom{font-size:47px}.plant-button[data-stage="3"] .plant-bloom{font-size:64px;transform:rotate(15deg)}.plant-button:not([data-stage="0"]) .plant-stem:before,.plant-button:not([data-stage="0"]) .plant-stem:after{opacity:1}.plant-pot{clip-path:polygon(0 0,100% 0,85% 100%,15% 100%);z-index:1;background:#c9957f;border-top:7px solid #d5a993;border-radius:3px;width:53px;height:38px;margin-top:-1px}.plant-label{color:#737c66;white-space:nowrap;font-size:10px;position:absolute;bottom:-28px}.watering{pointer-events:none;color:#91afc1;font-size:25px;animation:.7s both water;position:absolute;inset:0}.constellation{background:radial-gradient(#59617e,#373c56);border-color:#55576f;height:290px}.constellation svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.constellation line{stroke:#dcc0d7;stroke-width:.65px;stroke-linecap:round;filter:drop-shadow(0 0 1px #f1c9e5);stroke-dasharray:100;stroke-dashoffset:100px;animation:1s forwards draw-line}.constellation-button{color:#a1a4ba;background:0 0;border-radius:50%;place-items:center;width:46px;height:46px;font-size:24px;line-height:1;display:grid;position:absolute;transform:translate(-50%,-50%)}.constellation-button:active:not(:disabled){transform:translate(-50%,-50%)scale(.9)}.constellation-button.next{color:#f1dba4;animation:2s infinite star-glow;box-shadow:0 0 0 1px #c7b88c66}.constellation-button.lit{color:#f4d6e8;text-shadow:0 0 15px #f7c7f1}.constellation-button small{color:#d1c6d7;font-size:9px;position:absolute;bottom:-9px}.sky-speck{pointer-events:none;background:#fff9;border-radius:50%;width:2px;height:2px;animation:4s infinite twinkle;position:absolute}.scratch-area{background:#f6e7dd;border:1px solid #e4d7cb;border-radius:17px;flex-direction:column;justify-content:center;align-items:center;height:235px;padding:25px;display:flex;position:relative;overflow:hidden}.scratch-message{font-family:var(--serif);max-width:290px;font-size:27px;line-height:1.45}.scratch-message small{font:10px var(--sans);letter-spacing:2px;color:#ab7881;margin-bottom:15px;display:block}.scratch-area canvas{touch-action:none;width:100%;height:100%;transition:opacity .6s;position:absolute;inset:0}.scratch-area.revealed canvas{opacity:0;pointer-events:none}.scratch-alternative{text-underline-offset:4px;color:var(--muted);background:0 0;min-height:44px;margin-top:8px;font-size:11px;text-decoration:underline}.hug-area{padding:25px 0 15px;position:relative}.hug-button{--hug:0deg;background:radial-gradient(closest-side,#f8efec 90%,transparent 91%),conic-gradient(#d58a9a var(--hug),#e8dcdf 0);color:#c17d91;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:50%;width:180px;height:180px;font-size:74px;transition:box-shadow .3s;box-shadow:0 0 0 12px #f0e3e660}.hug-button.holding{box-shadow:0 0 0 22px #f0d9e260,0 0 70px #ddb4c960}.hug-button span{animation:2s ease-in-out infinite heartbeat;display:block}.hug-tap{margin-top:22px;font-size:11px}.reward-symbol{color:#c292aa;margin:20px 0;font-size:80px;animation:.7s both reward-pop;display:block}.reward-title{font-family:var(--serif);font-size:31px!important}.reward-card{background:#f0e8ee;border:1px solid #e3d7e1;border-radius:15px;margin:22px 0;padding:24px}.reward-card p{font-family:var(--serif);font-size:23px;line-height:1.5}.reward-card .eyebrow{justify-content:center;margin-bottom:12px}.reward-actions{flex-direction:column;gap:10px;display:flex}.reward-actions button{width:100%}.jar-illustration{color:#b786a0;background:#ecd8e455;border:2px solid #c3a9b7;border-radius:16px 16px 28px 28px;justify-content:center;align-items:center;width:100px;height:123px;margin:24px auto 30px;font-size:46px;animation:4s infinite gentle-bob;display:flex;position:relative;transform:rotate(-7deg);box-shadow:inset 9px 0 #fffcf455}.jar-illustration:before{content:"";background:#c9b69a;border:1px solid #baa58c;border-radius:5px;width:90px;height:16px;position:absolute;top:-12px}.jar-quote{min-height:128px;font-family:var(--serif);place-items:center;margin:0 5px 20px;font-size:25px;line-height:1.5;display:grid}.name-form{text-align:left;margin-top:22px}.name-form label{margin-bottom:8px;font-size:12px;display:block}.name-form input{width:100%;min-height:49px;color:var(--ink);background:#fffcf9;border:1px solid #d5c5d0;border-radius:10px;padding:12px}.name-form button{width:100%;margin-top:18px}.form-note{color:var(--muted);margin-top:12px;font-size:11px}.toast{opacity:0;pointer-events:none;z-index:50;color:#fff;text-align:center;background:#554454f5;border-radius:14px;width:max-content;max-width:calc(100% - 30px);padding:12px 19px;font-size:12px;transition:opacity .25s,transform .25s;position:fixed;bottom:110px;left:50%;transform:translate(-50%,15px);box-shadow:0 5px 20px #45354a25}.toast.show{opacity:1;transform:translate(-50%)}#particles{pointer-events:none;z-index:100;position:fixed;inset:0;overflow:hidden}.particle{left:var(--x);top:var(--y);font-size:var(--size);color:var(--color);line-height:1;animation:1.3s cubic-bezier(.15,.6,.4,1) forwards particle-fly;position:absolute}.ambient{pointer-events:none;z-index:-1;position:fixed;inset:0;overflow:hidden}.ambient i{background:#d2b49344;border-radius:50%;width:5px;height:5px;animation:12s infinite ambient-drift;position:absolute;top:22%;left:12%}.ambient i:nth-child(2){animation-delay:-4s;top:14%;left:85%}.ambient i:nth-child(3){background:#b395bc44;animation-delay:-8s;top:70%;left:7%}.ambient i:nth-child(4){animation-delay:-2s;top:63%;left:94%}.ambient i:nth-child(5){animation-delay:-6s;top:7%;left:42%}.ambient i:nth-child(6){animation-delay:-10s;top:88%;left:65%}.view{animation:.4s view-in}@keyframes heart-float{0%,to{transform:translate(-50%,-50%)rotate(-6deg)}50%{transform:translate(-50%,-57%)rotate(3deg)}}@keyframes twinkle{0%,to{opacity:.5;scale:.85}50%{opacity:1;scale:1.08}}@keyframes gentle-bob{0%,to{translate:0}50%{translate:0 -7px}}@keyframes label-sway{50%{translate:0 -6px;rotate:3deg}}@keyframes slow-spin{to{rotate:360deg}}@keyframes star-drift{0%,to{translate:0;rotate:-8deg}50%{translate:9px -12px;rotate:10deg}}@keyframes star-caught{to{opacity:0;scale:1.8}}@keyframes star-glow{50%{text-shadow:0 0 16px #ead9ac;box-shadow:0 0 0 8px #c7b88c11}}@keyframes water{0%{opacity:0;translate:0 -30px}40%{opacity:1}to{opacity:0;translate:0 60px}}@keyframes draw-line{to{stroke-dashoffset:0}}@keyframes heartbeat{0%,to{scale:1}15%{scale:1.09}30%{scale:1}45%{scale:1.07}}@keyframes reward-pop{0%{opacity:0;rotate:-25deg;scale:.3}70%{scale:1.15}to{scale:1;rotate:0;opacity:1}}@keyframes dialog-in{0%{opacity:0;translate:0 20px;scale:.97}to{opacity:1;translate:0;scale:1}}@keyframes view-in{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0}}@keyframes letter-unfold{0%{opacity:0;transform:translateY(35px)rotate(-2deg)}to{opacity:1;transform:none}}@keyframes particle-fly{0%{opacity:0;transform:translate(0)rotate(0)scale(.5)}15%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--spin)) scale(.4)}}@keyframes ambient-drift{50%{opacity:.2;translate:15px -30px}to{opacity:1;translate:0}}@media (width<=900px){.site-shell{padding:0 28px}.made-with{display:none}h1{font-size:55px}.hero{padding-top:45px}.universe-art{scale:.92}.orbit-one{width:300px}.art-label{padding:7px 10px;font-size:11px}.label-one{right:-5%}.label-two{left:-5%}.journey-card{padding:19px 17px}.journey-card h3{font-size:21px}.mood-strip{gap:15px}.extra-card{gap:12px;padding:19px 15px}.extra-card strong{font-size:18px}.extra-art{width:30px;font-size:30px}.extra-card .eyebrow{font-size:8px}.extra-description{font-size:9px}}@media (width<=650px){.site-shell{padding:0 20px}.site-header{height:81px}.brand{gap:8px;font-size:13px}.brand-mark{font-size:34px}.brand-caption{font-size:10px}.header-actions{gap:7px}.header-actions .icon-button{width:37px;height:37px}.hero{text-align:center;grid-template-columns:1fr;gap:0;padding:35px 0 19px}.hero-copy .eyebrow{letter-spacing:1.8px;justify-content:center;font-size:8px}h1{letter-spacing:-2px;margin:18px 0;font-size:53px}.title-spark{margin-left:9px;font-size:26px}.hero-description{max-width:330px;margin:auto;font-size:12px;line-height:1.9}.hero .primary-button{min-height:50px;margin-top:22px;padding:13px 25px}.hero-note{justify-content:center;margin-top:13px;font-size:9px}.universe-art{width:100%;max-width:365px;height:290px;margin:10px auto 0;scale:1}.orbit-one{width:285px;height:161px}.orbit-two{width:215px;height:258px}.big-heart{transform-origin:0 0;scale:.8}.heart-halo{width:167px;height:167px}.art-star.star-one{font-size:30px;top:12%;left:17%}.star-two{font-size:35px;top:29%;right:6%}.little-moon{top:7%;right:26%;scale:.8}.art-label{font-size:11px}.label-one{top:18%;right:0}.label-two{bottom:22%;left:0}.flower{bottom:9%;right:7%;scale:.73}.flower-two{bottom:10%;right:20%;scale:.73}.art-caption{font-size:10px;bottom:3px}.art-glow{inset:5px -15px}.mood-strip{flex-direction:column;gap:11px;margin-top:7px;padding:18px 0 14px}.mood-label{font-size:16px}.mood-options{justify-content:center;gap:6px;width:100%}.mood-options button{gap:5px;min-height:40px;padding:7px 11px}.mood-options button span{font-size:10px}.mood-response{min-height:43px;font-size:10px}.journey-section{padding-top:23px}.section-heading{align-items:flex-end;gap:7px;margin-bottom:16px}.section-heading h2{max-width:210px;margin-top:8px;font-size:27px;line-height:1.2}.section-heading .eyebrow{letter-spacing:1.3px;font-size:7px}.progress-pill{align-self:flex-end;gap:4px;padding:5px 9px;font-size:9px;line-height:1.5}.progress-pill>span:last-child{display:none}.journey-progress{margin-bottom:20px}.journey-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.journey-card{border-radius:14px;min-height:221px;padding:15px 13px}.card-top{font-size:8px}.card-status{letter-spacing:0;padding:3px 6px;font-size:8px}.card-illustration{width:115px;height:78px;margin-top:12px}.card-illustration .symbol{font-size:43px}.card-illustration.memory .symbol,.card-illustration.garden .symbol{font-size:54px}.card-illustration .tiny{font-size:15px;left:6px}.card-illustration .tiny:last-child{top:42px;right:5px}.journey-card h3{max-width:130px;font-size:20px;line-height:1.2}.journey-card p{margin-top:7px;padding-right:12px;font-size:10px;line-height:1.6}.card-arrow{font-size:17px;bottom:15px;right:12px}.little-extras{grid-template-columns:1fr;gap:10px;margin:22px 0}.extra-card{gap:15px;padding:18px 16px}.extra-card strong{font-size:20px}.extra-card .eyebrow{letter-spacing:1.6px;font-size:8px}.extra-description{font-size:10px}.extra-art{width:40px;font-size:37px}.site-footer{text-align:center;flex-direction:column;gap:5px;padding:22px 0 122px}.footer-sign{font-size:10px}.site-footer button{min-height:38px}.bottom-nav{padding:8px 10px calc(8px + env(safe-area-inset-bottom));border-bottom:0;border-radius:19px 19px 0 0;gap:6px;bottom:0;left:0;right:0;transform:none}.bottom-nav button{flex:1;gap:6px;min-width:0;min-height:53px;font-size:10px}.bottom-nav button>span{font-size:23px}.bottom-nav small{font-size:8px}.page-intro{padding:39px 0 23px}.page-intro h1{letter-spacing:-1.5px;font-size:39px}.page-intro .eyebrow{letter-spacing:1.4px;font-size:8px}.page-intro p{font-size:12px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.keepsake{min-height:212px;padding:21px 13px}.keepsake h3{font-size:21px}.keepsake p{font-size:11px}.achievement-box{padding:20px}.achievement{font-size:10px}.love-letter{padding:29px 24px}.love-letter:before{font-size:30px;top:16px;right:17px}.love-letter h2{font-size:30px}.love-letter p{font-size:17px}.love-letter .eyebrow{font-size:8px}.game-dialog{border-radius:22px;width:calc(100% - 24px);max-height:calc(100dvh - 40px);padding:17px 18px 22px}#dialog-body h2{font-size:30px}.star-field{height:240px}.memory-grid{gap:8px}.memory-card{height:82px}.memory-front{font-size:31px}.garden-area{gap:3px;padding-left:8px;padding-right:8px}.plant-button{width:85px}.game-feedback{min-height:47px;font-size:16px}.reward-card p{font-size:21px}.toast{bottom:95px}.locked-letter{padding:10px 7px 30px}.jar-quote{font-size:23px}}@media (width<=359px){.site-shell{padding:0 15px}h1{font-size:46px}.mood-options button{padding:7px 8px}.journey-card{padding:12px 10px}.card-status{font-size:7px}.journey-card h3{font-size:19px}.section-heading h2{font-size:25px}.progress-pill{padding:4px 6px;font-size:8px}.bottom-nav button{gap:4px}.game-dialog{padding:15px}.memory-card{height:72px}.universe-art{scale:.95}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.ambient{display:none}.catch-star{animation:none}.constellation line{stroke-dashoffset:0}}.achievement-hint{opacity:.85;margin-top:2px;font-size:9px;display:block}.particle{user-select:none}.game-dialog .particle{pointer-events:none}.drawn-icon{vertical-align:-.12em;pointer-events:none;flex-shrink:0;width:1em;height:1em;display:inline-block}.brand-mark{flex-shrink:0;align-items:center;display:flex}.memory-front .drawn-icon{width:1.15em;height:1.15em}.icon-sun{color:#bd9857}.memory-front .icon-flower{color:#a994b9}.memory-front .icon-moon{color:#929dbd}.memory-front .icon-heart{color:#c28597}.achievement-title,.achievement-hint{display:block}.achievement-title{font-weight:500}.achievement{text-align:left;background:0 0;line-height:1.6}.achievement-hint{margin-top:4px}button.achievement{min-height:48px}button.achievement:hover{background:#f3e9ef;border-color:#c6a9be}.cat-card{background:linear-gradient(120deg,#f2e8ef,#fbf1e9);border:1px solid #e2d5db;border-radius:18px;align-items:center;gap:30px;margin:0 0 28px;padding:26px 32px;scroll-margin-block:100px;display:flex}.cat-pet-button{color:#a36f82;background:0 0;border-radius:15px;flex-direction:column;flex:0 0 155px;align-items:center;gap:12px;padding:8px;display:flex}.cat-portrait{filter:drop-shadow(0 6px 7px #bd8e9b24);font-size:102px;line-height:1;display:block}.cat-portrait .drawn-icon{stroke-width:1px;display:block;overflow:visible}.cat-button-label{white-space:nowrap;background:#fffaf5;border:1px solid #dec5cd;border-radius:25px;padding:8px 12px;font-size:11px;display:block}.cat-copy{flex:1;min-width:0}.cat-copy h2{font-family:var(--serif);margin:7px 0 10px;font-size:28px;line-height:1.25}.cat-copy p{color:var(--muted);max-width:430px;min-height:38px;font-size:12px}.cat-progress{color:#a36f82;margin-top:10px;font-size:11px;display:inline-block}.cat-card.befriended{border-color:#c8b6cf}@media (width<=650px){.cat-card{align-items:center;gap:17px;padding:21px 17px}.cat-pet-button{flex-basis:113px;padding:4px 0}.cat-portrait{font-size:87px}.cat-button-label{padding:8px 9px;font-size:9px}.cat-copy .eyebrow{letter-spacing:1px;font-size:7px}.cat-copy h2{font-size:22px}.cat-copy p{font-size:11px}.cat-progress{font-size:10px}}@media (width<=359px){.cat-card{gap:12px;padding:18px 12px}.cat-pet-button{flex-basis:105px}.cat-copy h2{font-size:20px}}.memory-face{transition:visibility 0s .15s}.memory-front{visibility:hidden}.memory-back,.memory-card.flipped .memory-front,.memory-card.matched .memory-front{visibility:visible}.memory-card.flipped .memory-back,.memory-card.matched .memory-back{visibility:hidden}@media (prefers-reduced-motion:reduce){.memory-face{transition-delay:0s}}.hero{overflow:clip}
