:root{--bg:#faf6f1;--surface:#fff;--surface-2:#f3ece5;--text:#75696e;--text-h:#241d20;--border:#ebe1d9;--accent:#cf4870;--accent-ink:#fff;--accent-soft:#fbe4ea;--accent-2:#3f7b8c;--danger:#b3261e;--shadow:0 1px 2px #3c1e280f, 0 8px 24px -12px #3c1e282e;--radius:20px;--serif:"Fraunces", "Iowan Old Style", Georgia, serif;--hand:"Caveat", "Bradley Hand", cursive;--bubble-mine:var(--accent-soft);--bubble-theirs:var(--surface-2);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;font:16px/1.45 -apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#141113;--surface:#1f1a1d;--surface-2:#2a2327;--text:#ab9fa5;--text-h:#f6eff2;--border:#342a2f;--accent:#ec6d92;--accent-ink:#1a0d12;--accent-soft:#3e2029;--accent-2:#7fb8c8;--danger:#ff8a80;--shadow:0 1px 2px #0000004d, 0 10px 30px -14px #0009}}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;margin:0;overflow-x:hidden}p{margin:0}.player-card{--plinth:#efe8df;--plinth-edge:#ddd3c7;--metal:linear-gradient(90deg, #c9c5c0, #f4f2ef 45%, #b7b2ad);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:14px;padding:16px;display:flex}@media (prefers-color-scheme:dark){.player-card{--plinth:#2b2528;--plinth-edge:#1d181b}}.deck{padding:4px 2px 0}.plinth{aspect-ratio:1.32;background:radial-gradient(120% 80% at 20% 0%, #ffffff73, transparent 55%), var(--plinth);box-shadow:inset 0 1px 0 #ffffff8c, inset 0 -2px 0 var(--plinth-edge), 0 18px 30px -18px #321e1473, 0 2px 4px #321e141a;border-radius:22px;position:relative}@media (prefers-color-scheme:dark){.plinth{background:radial-gradient(120% 80% at 20% 0%, #ffffff12, transparent 55%), var(--plinth);box-shadow:inset 0 1px #ffffff0f,0 18px 30px -18px #000c}}.platter{aspect-ratio:1;background:radial-gradient(circle,#3a3537 0 66%,#1b1719 67% 100%);border-radius:50%;width:66%;position:absolute;top:8%;left:6%;box-shadow:0 10px 22px -6px #00000073,0 0 0 3px #0000000f}.vinyl{background:#121012;border-radius:50%;animation:1.8s linear infinite paused spin;position:absolute;inset:2.5%}.deck.playing .vinyl{animation-play-state:running}.grooves{background:repeating-radial-gradient(circle,#fff0 0 2px,#ffffff0a 2px 2.6px),radial-gradient(circle,#0000 0 34%,#ffffff0f 34.5% 35%,#0000 35.5% 70%,#ffffff0d 70.5% 71%,#0000 71.5%);border-radius:50%;position:absolute;inset:0}.platter:after{content:"";background:conic-gradient(from 200deg, transparent 0 8%, #ffffff29 13%, transparent 20% 52%, #ffffff1a 58%, transparent 65%);pointer-events:none;border-radius:50%;position:absolute;inset:2.5%}.label{background:var(--accent) center / cover no-repeat;color:var(--accent-ink);font-family:var(--serif);border-radius:50%;place-items:center;font-size:13px;font-style:italic;font-weight:600;display:grid;position:absolute;inset:31%;box-shadow:0 0 0 2px #0006}.spindle{aspect-ratio:1;background:radial-gradient(circle at 35% 35%,#fff,#9a958f);border-radius:50%;width:4.5%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tonearm{pointer-events:none;width:22%;height:74%;position:absolute;top:9%;right:9%}.pivot{background:radial-gradient(circle at 40% 35%,#fff,#cfcac4 55%,#a7a19b);border-radius:50%;width:34px;height:34px;position:absolute;top:0;right:18%;box-shadow:0 4px 8px #00000040,inset 0 0 0 6px #0000000a}.rod{background:var(--metal);border-radius:3px;width:4px;height:78%;position:absolute;top:17px;right:calc(18% + 15px);box-shadow:2px 6px 6px #00000038}.headshell{background:#2a2527;border-radius:3px 3px 5px 5px;width:14px;height:22px;position:absolute;top:calc(11px + 78%);right:calc(18% + 10px);transform:rotate(18deg);box-shadow:1px 4px 6px #0000004d}.tonearm{transform-origin:calc(82% - 17px) 17px;transition:transform .9s cubic-bezier(.45,0,.2,1);transform:rotate(4deg)}.deck.playing .tonearm{transform:rotate(22deg)}.led{background:#b9b2aa;border-radius:50%;width:8px;height:8px;transition:background .3s,box-shadow .3s;position:absolute;bottom:9%;right:8%}.deck.playing .led{background:var(--accent);box-shadow:0 0 10px var(--accent)}.brand{font-family:var(--serif);letter-spacing:.04em;color:color-mix(in srgb, var(--text) 70%, transparent);font-size:11px;font-style:italic;position:absolute;bottom:7.5%;left:7%}.now{align-items:center;gap:14px;display:flex}.play-button{background:var(--accent);width:52px;height:52px;color:var(--accent-ink);box-shadow:0 8px 18px -8px var(--accent);cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.now-text{flex-direction:column;min-width:0;display:flex}.now-text strong{font-family:var(--serif);color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;font-size:19px;font-weight:600;line-height:1.2;overflow:hidden}.now-kind{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:600}.now-from{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.now-from em{font-family:var(--hand);color:var(--text-h);font-size:17px;font-style:normal}.spotify-embed{border-radius:12px;min-height:80px;overflow:hidden}.spotify-embed iframe{border:0;display:block}.crate-head{justify-content:space-between;align-items:baseline;margin-top:4px;display:flex}.crate-head h3{font-family:var(--serif);margin:0;font-size:17px}.crate{scroll-snap-type:x mandatory;scrollbar-width:none;gap:14px;margin:0 -16px;padding:4px 16px 8px;scroll-padding-inline:16px;list-style:none;display:flex;overflow-x:auto}.crate li{scroll-snap-align:start;flex-direction:column;flex:none;gap:2px;width:112px;display:flex}.sleeve-button{aspect-ratio:1;cursor:pointer;background:0 0;border:none;width:100%;padding:0;position:relative}.sleeve{z-index:1;background:linear-gradient(135deg, var(--accent-soft), var(--surface-2)) center / cover no-repeat;border-radius:6px;place-items:center;display:grid;position:absolute;inset:0;box-shadow:0 1px 2px #0000001f,0 10px 18px -10px #00000073}.peek{aspect-ratio:1;background:radial-gradient(circle, var(--accent) 0 17%, #121012 18% 100%), #121012;border-radius:50%;width:88%;transition:left .35s cubic-bezier(.3,0,.2,1);position:absolute;top:6%;left:18%;box-shadow:inset 0 0 0 1px #ffffff0f}.crate li.active .peek{left:34%}.peek.spinning{animation:1.8s linear infinite spin}.sleeve-title{color:var(--text-h);white-space:nowrap;text-overflow:ellipsis;margin-top:6px;font-size:13.5px;font-weight:600;overflow:hidden}.sleeve-from{justify-content:space-between;align-items:center;font-size:12px;display:flex}.sleeve-remove{color:var(--text);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:12px}.crate-empty{border:1.5px dashed var(--border);text-align:left;cursor:pointer;background:0 0;border-radius:16px;align-items:center;gap:14px;width:100%;padding:12px;display:flex}.crate-empty .sleeve.ghost{width:56px;height:56px;color:var(--accent);box-shadow:none;flex:none;font-size:26px;position:relative;inset:auto}.crate-empty strong,.preview strong{color:var(--text-h);display:block}.crate-empty small,.preview small{color:var(--text);font-size:12.5px;display:block}.add-record{background:var(--surface-2);border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.steps{color:var(--text-h);flex-direction:column;gap:4px;margin:0;padding-left:20px;font-size:14px;display:flex}.paste-row{gap:8px;display:flex}.paste-row input{flex:1;min-width:0}.paste-row .secondary{background:var(--surface)}.pill.grow{flex:1;padding:11px 15px}.preview{background:var(--surface);border-radius:12px;align-items:center;gap:12px;padding:8px;display:flex}.preview .sleeve{flex:none;width:56px;height:56px;position:relative;inset:auto}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.vinyl,.peek.spinning{animation:none}}.open-spotify{color:#fff;--surface:#1db954;background:#1db954;border-radius:999px;flex:none;align-items:center;gap:6px;margin-left:auto;padding:8px 12px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.open-spotify svg{color:#fff}.open-spotify svg path{stroke:#1db954}.pet-sprite{font-size:calc(var(--s) * var(--k,1) * 10cqw);pointer-events:none;line-height:1;transition:left 2.4s ease-in-out,top 2.4s ease-in-out;position:absolute;transform:translate(-50%,-88%)}.pet-body{filter:drop-shadow(0 .06em .05em #0000004d);transition:transform .25s;display:block}.pet-sprite.walking .pet-body{animation:.28s ease-in-out infinite pet-walk}.pet-sprite.sleeping .pet-body{filter:grayscale(.3)drop-shadow(0 .06em .05em #0000004d);animation:3s ease-in-out infinite pet-breathe}.pet-body.hop{animation:.5s cubic-bezier(.3,1.6,.5,1) pet-hop}@keyframes pet-walk{50%{translate:0 -.1em}}@keyframes pet-breathe{50%{scale:1.05 .96}}@keyframes pet-hop{40%{translate:0 -.55em}}.pet-hit{pointer-events:auto;cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0;position:absolute;inset:-20%}.pet-bubble{white-space:nowrap;background:#fff;border-radius:999px;padding:.1em .3em;font-size:.5em;animation:2.4s ease-in-out infinite pet-bubble;position:absolute;bottom:95%;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000040}@keyframes pet-bubble{50%{translate:0 -.15em}}.pet-card{box-sizing:border-box;background:var(--surface);width:100%;max-width:460px;box-shadow:var(--shadow);border-radius:20px;margin:12px auto 0;padding:14px;animation:.35s ease-out both c4-in}.pet-card.adopt{text-align:center;gap:8px;display:grid}.pet-card.adopt h3,.pet-card.adopt p{margin:0}.pet-adopt-emoji{font-size:56px;animation:3.6s ease-in-out infinite float}.pet-head{gap:2px;display:grid}.pet-name{color:inherit;font-family:var(--serif);background:0 0;border:none;justify-self:start;padding:0;font-size:20px;font-weight:600}.pet-name small{opacity:.5;font-size:12px}.pet-line{opacity:.8;font-size:14px}.pet-bars{gap:8px;margin:12px 0;display:grid}.pet-bars div{grid-template-columns:5.5em 1fr;align-items:center;gap:10px;font-size:13px;display:grid}.pet-bars i{background:linear-gradient(90deg, #3bb273 calc(var(--v) * 100%), var(--surface-2) 0);border-radius:999px;height:10px;transition:background .6s;display:block}.pet-bars i.low{background:linear-gradient(90deg, #e23d5b calc(var(--v) * 100%), var(--surface-2) 0);animation:2.4s ease-in-out infinite wiggle}.pet-actions{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.pet-actions button{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:14px;padding:10px 4px;font-size:14px;font-weight:600;transition:transform .15s}.pet-actions button:active:not(:disabled){transform:scale(.92)}.pet-actions button:disabled{background:var(--surface-2);color:inherit;opacity:.5;cursor:default}.pet-card>.hint{margin:10px 0 0}.pet-food{z-index:2000;pointer-events:none;font-size:7cqw;animation:2.6s cubic-bezier(.5,0,.9,.5) both pet-food;position:absolute;transform:translate(-50%,-100%)}@keyframes pet-food{0%{opacity:0;translate:0 -420%}15%{opacity:1}35%{translate:0}80%{opacity:1;translate:0}to{opacity:0;translate:0;scale:.4}}@media (prefers-reduced-motion:reduce){.pet-sprite.walking .pet-body,.pet-sprite.sleeping .pet-body,.pet-bubble,.pet-food{animation:none}}.pet-body.feed{animation:.18s ease-in-out .7s 9 pet-nibble}@keyframes pet-nibble{50%{translate:0 .04em;scale:1.12 .92}}.pet-body.pet{animation:90ms linear infinite pet-purr}@keyframes pet-purr{25%{rotate:1.8deg}75%{rotate:-1.8deg}}.pet-body.play{animation:.5s cubic-bezier(.3,1.6,.5,1) 4 pet-play}@keyframes pet-play{40%{translate:0 -.5em;rotate:-8deg}}.pet-hand{pointer-events:none;font-size:.6em;animation:1.8s ease-in-out both pet-hand;position:absolute;bottom:70%;left:50%;transform:translate(-50%)}@keyframes pet-hand{0%{opacity:0;translate:-1.2em -.8em}15%{opacity:1}35%{translate:.9em}55%{translate:-.9em}75%{translate:.9em}to{opacity:0;translate:1.4em -.8em}}.pet-heart{left:calc(50% + var(--x,0em));color:#ff5b8a;opacity:0;animation:pet-heart 1.4s ease-out var(--d,0s) both;pointer-events:none;font-size:.4em;position:absolute;bottom:85%}@keyframes pet-heart{0%{opacity:0;translate:0 .5em;scale:.4}25%{opacity:1}to{opacity:0;translate:0 -1.8em;scale:1.1}}.pet-toy{pointer-events:none;font-size:.55em;animation:2.2s ease-in-out both pet-toy;position:absolute;bottom:5%;left:100%}@keyframes pet-toy{0%{opacity:0;translate:1.6em}10%{opacity:1}25%{translate:.9em -.9em;rotate:120deg}45%{translate:.2em;rotate:240deg}65%{translate:-.5em -.7em;rotate:330deg}85%{opacity:1;translate:-1em;rotate:420deg}to{opacity:0;translate:-1.2em;rotate:480deg}}.pet-crumbs{pointer-events:none;position:absolute;bottom:30%;left:50%}.pet-crumbs i{color:#c98a3a;opacity:0;animation:pet-crumb .9s ease-out var(--d,.6s) 3 both;font-size:.35em;font-style:normal;position:absolute}@keyframes pet-crumb{0%{opacity:1;transform:rotate(var(--a)) translateY(0)}to{opacity:0;transform:rotate(var(--a)) translateY(-1.3em)}}.pet-food{animation:2.6s cubic-bezier(.5,0,.9,.5) both pet-food}.kind-papagei.walking .pet-body,.kind-wellensittich.walking .pet-body{animation:.22s ease-in-out infinite pet-flap}@keyframes pet-flap{50%{translate:0 -.22em;rotate:-6deg}}.kind-schildkroete.walking .pet-body,.kind-igel.walking .pet-body{animation:.7s ease-in-out infinite pet-walk}.pet-zone{width:100%;max-width:460px;margin:12px auto 0}.pet-zone .pet-card{margin-top:8px}.pet-chips{scrollbar-width:none;gap:6px;padding:2px 0 4px;display:flex;overflow-x:auto}.pet-chip{background:var(--surface-2);color:inherit;cursor:pointer;border:none;border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 13px;font-size:14px;transition:background .2s,transform .2s;display:inline-flex;position:relative}.pet-chip.active{background:var(--accent);color:var(--accent-ink);font-weight:600}.pet-chip.add{background:var(--accent-soft);color:var(--accent);font-weight:600}.pet-chip.add.active{background:var(--accent);color:var(--accent-ink)}.pet-chip-dot{background:#e23d5b;border-radius:50%;width:9px;height:9px;animation:1.8s ease-in-out infinite pulse}.pet-shop{gap:10px;display:grid}.pet-shop h3,.pet-shop p{margin:0}.pet-shop-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.pet-offer{background:var(--surface-2);color:inherit;cursor:pointer;border:2px solid #0000;border-radius:16px;justify-items:center;gap:1px;padding:10px 4px;transition:transform .2s cubic-bezier(.3,1.5,.4,1),border-color .2s;display:grid}.pet-offer.active{border-color:var(--accent);background:var(--accent-soft);transform:scale(1.04)}.pet-offer-emoji{font-size:34px}.pet-offer small{opacity:.75;font-size:12px}.pet-room{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:13px;display:flex}.pet-room label{align-items:center;gap:8px;display:inline-flex}.pet-room select{border:1px solid var(--border);background:var(--surface);color:inherit;font:inherit;border-radius:12px;padding:6px 10px}@media (prefers-reduced-motion:reduce){.pet-body.feed,.pet-body.pet,.pet-body.play,.pet-hand,.pet-heart,.pet-toy,.pet-crumbs i,.kind-papagei.walking .pet-body,.kind-schildkroete.walking .pet-body{animation:none}}.kind-pinguin.walking .pet-body{animation:.5s ease-in-out infinite pet-waddle}@keyframes pet-waddle{25%{rotate:7deg}75%{rotate:-7deg}}.kind-einhorn .pet-body{filter:drop-shadow(0 0 .25em #ffbeffe6)drop-shadow(0 .06em .05em #0000004d)}.hero2{background:var(--surface);min-height:170px;box-shadow:var(--shadow);isolation:isolate;border-radius:26px;align-items:flex-end;animation:.6s cubic-bezier(.2,.8,.2,1) both home-rise;display:flex;position:relative;overflow:hidden}.hero2.has-photo{min-height:320px}.hero2-photo{z-index:-2;object-fit:cover;width:100%;height:100%;animation:18s ease-in-out infinite alternate hero-zoom;position:absolute;inset:0}.hero2.has-photo:after{z-index:-1;content:"";background:linear-gradient(#0000 30%,#140a0fb3 100%);position:absolute;inset:0}.hero2-mesh{z-index:-1;filter:blur(36px);position:absolute;inset:-20%}.hero2-mesh span{opacity:.55;border-radius:50%;width:60%;height:60%;animation:14s ease-in-out infinite alternate mesh-drift;position:absolute}.hero2-mesh span:first-child{background:var(--accent);top:0;left:40%}.hero2-mesh span:nth-child(2){opacity:.4;background:#f2b84b;animation-duration:17s;animation-delay:-5s;top:35%;left:0}.hero2-mesh span:nth-child(3){background:var(--accent-2);opacity:.4;animation-duration:20s;animation-delay:-9s;top:45%;left:45%}.hero2-content{flex-direction:column;gap:6px;width:100%;padding:20px;display:flex}.hero2-greet{color:var(--text-h);font-size:15px;font-weight:500}.has-photo .hero2-greet,.has-photo .hero2-number,.has-photo .hero2-label,.has-photo .hero2-form label{color:#fff}.hero2-days{text-align:left;cursor:pointer;background:0 0;border:none;align-items:flex-end;gap:12px;padding:0;display:flex}.hero2-number{font-family:var(--serif);font-variant-numeric:tabular-nums;letter-spacing:-.04em;color:var(--text-h);font-size:72px;font-weight:600;line-height:.85}.hero2-label{color:var(--text-h);flex-direction:column;padding-bottom:4px;font-size:15px;font-weight:600;line-height:1.2;display:flex}.hero2-label small{opacity:.75;font-weight:400}.hero2-form{flex-direction:column;gap:8px;display:flex}.hero2-form label{font-family:var(--serif);color:var(--text-h);font-size:22px;font-weight:600}.hero2-form input{flex:1;min-width:0}.clocks{grid-template-columns:1fr 1fr;gap:10px;animation:.6s cubic-bezier(.2,.8,.2,1) 80ms both home-rise;display:grid}.clock{box-shadow:var(--shadow);border-radius:20px;flex-direction:column;padding:14px 16px;display:flex;position:relative;overflow:hidden}.clock.day{color:#4a2b1c;background:linear-gradient(160deg,#ffe7b8 0%,#ffd0c2 100%)}.clock.night{color:#efe7ff;background:linear-gradient(160deg,#2b2a52 0%,#4b2f5c 100%)}.clock-sky{opacity:.8;font-size:26px;animation:5s ease-in-out infinite sky-bob;position:absolute;top:8px;right:12px}.clock-time{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:30px;font-weight:600;line-height:1.1}.clock-who{opacity:.8;font-size:13px}.nudge{background:linear-gradient(120deg, var(--accent) 0%, color-mix(in srgb, var(--accent) 60%, #f2b84b) 100%);width:100%;box-shadow:0 10px 28px -12px var(--accent);color:var(--accent-ink);text-align:left;cursor:pointer;border:none;border-radius:22px;align-items:center;gap:14px;padding:14px 16px;animation:.6s cubic-bezier(.2,.8,.2,1) .14s both home-rise;display:flex}.nudge-heart{background:#ffffff38;border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:24px;animation:1.6s ease-in-out infinite heartbeat;display:grid}.nudge-text{font-family:var(--serif);flex-direction:column;font-size:19px;font-weight:600;line-height:1.2;display:flex}.nudge-text small{opacity:.85;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;font-weight:400}.nudge.sent .nudge-heart{animation:.5s ease-in-out 3 heartbeat}.home-greet{font-family:var(--serif);color:var(--text-h);font-size:24px;animation:.5s cubic-bezier(.2,.8,.2,1) both home-rise}.home-greet strong{color:var(--accent);font-style:italic;font-weight:600}.memory-hero{flex-direction:column;align-items:center;gap:6px;padding:8px 0 0;display:flex}.memory-big{color:#2b2326;cursor:pointer;width:min(86%,380px);transform:rotate(var(--tilt));background:#fffdf9;border:none;border-radius:3px;flex-direction:column;padding:12px 12px 0;animation:.7s cubic-bezier(.2,1.2,.35,1) both polaroid-toss;display:flex;position:relative;box-shadow:0 2px 4px #00000014,0 22px 40px -18px #28140a80}.memory-big img{aspect-ratio:4/5;object-fit:cover;background:#eee6dc;width:100%;animation:1.6s ease-out both develop;display:block}.memory-caption{font-family:var(--hand);flex-direction:column;align-items:center;padding:10px 4px 14px;font-size:28px;line-height:1.05;display:flex}.memory-caption small{color:#8a7c80;font-family:-apple-system,system-ui,sans-serif;font-size:12px}.memory-tape{background:color-mix(in srgb, var(--accent) 30%, #ffffff8c);width:84px;height:26px;position:absolute;top:-12px;left:50%;transform:translate(-50%)rotate(-3deg);box-shadow:0 1px 2px #00000014}.memory-actions{justify-content:space-between;align-items:center;width:min(86%,380px);padding-top:6px;display:flex}.memory-actions .link{color:var(--accent);font-weight:600;text-decoration:none}@keyframes polaroid-toss{0%{opacity:0;transform:translate(40px, -30px) rotate(calc(var(--tilt) + 14deg)) scale(.9)}}@keyframes develop{0%{filter:brightness(1.6)saturate(0)sepia(.4)blur(2px)}}.home-foot{justify-content:space-between;align-items:center;font-size:13px;display:flex}.home-foot .link{font-size:13px}@keyframes home-rise{0%{opacity:0;transform:translateY(14px)scale(.98)}}@keyframes hero-zoom{to{transform:scale(1.08)}}@keyframes mesh-drift{to{transform:translate(20%,-15%)scale(1.25)}}@keyframes heartbeat{0%,to{transform:scale(1)}8%{transform:scale(1.16)}16%{transform:scale(1)}24%{transform:scale(1.1)}32%{transform:scale(1)}}@keyframes sky-bob{50%{transform:translateY(-3px)rotate(8deg)}}.home>:nth-child(n+4){animation:.6s cubic-bezier(.2,.8,.2,1) both home-rise}.home>:nth-child(4){animation-delay:.2s}.home>:nth-child(5){animation-delay:.26s}.home>:nth-child(6){animation-delay:.32s}.home>:nth-child(n+7){animation-delay:.38s}@media (prefers-reduced-motion:reduce){.hero2,.hero2-photo,.hero2-mesh span,.clocks,.clock-sky,.nudge,.nudge-heart,.memory-big,.memory-big img,.home-greet,.home>*{animation:none}}.home-top{justify-content:space-between;align-items:center;gap:10px;display:flex;position:relative}.home-top .home-greet{margin:0}.days-chip-wrap{flex:none;position:relative}.days-chip{background:var(--accent-soft);color:var(--accent);box-shadow:0 4px 14px -6px color-mix(in srgb, var(--accent) 60%, transparent);border:none;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.days-chip span{animation:3.2s ease-in-out infinite heartbeat}.days-chip b{font-variant-numeric:tabular-nums}.days-pop{z-index:20;background:var(--surface);border-radius:18px;gap:10px;width:min(300px,80vw);padding:14px;animation:.25s ease-out both c4-in;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 40px -12px #00000059}.days-pop-text{color:var(--text-h);font-family:var(--serif);margin:0;font-size:18px;display:grid}.days-pop-text small{color:var(--text);font-family:inherit;font-size:13px}.days-form{gap:6px;display:grid}.days-form label{font-size:13px}.house-card{color:#3a2128;text-align:left;background:linear-gradient(135deg,#ffd9a8,#ffb199 55%,#f58aa6);border:none;border-radius:24px;align-items:center;gap:14px;width:100%;padding:14px 16px;transition:transform .25s cubic-bezier(.2,1.4,.4,1);display:flex;position:relative;overflow:hidden;box-shadow:0 14px 30px -14px #f0786e}.house-card:active{transform:scale(.97)}.house-card:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 35%,#ffffff4d 50%,#0000 65%);animation:7s ease-in-out infinite hub-shine;position:absolute;inset:0;transform:translate(-100%)}.house-card-roof{background:#fff6;border-radius:18px;flex:none;place-items:center;width:54px;height:54px;font-size:32px;animation:4s ease-in-out infinite float;display:grid}.house-card-text{flex:1;min-width:0;display:grid}.house-card-text strong{font-family:var(--serif);font-size:20px}.house-card-text small{opacity:.85;font-size:13px}.house-card-side{justify-items:end;gap:2px;font-size:13px;display:grid}.house-card-pets{letter-spacing:1px;font-size:18px}.house-card-hearts{font-weight:700}.house-card-live{background:#2fbf71;border:2px solid #fff;border-radius:50%;width:11px;height:11px;animation:1.6s ease-out infinite live;position:absolute;top:12px;right:12px}@media (prefers-reduced-motion:reduce){.house-card:after,.house-card-roof,.days-chip span{animation:none}}.bento{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bento>.span2,.bento>.clocks,.bento>.nudge{grid-column:span 2}.bento>*{animation:rise .6s var(--spring,ease-out) both;animation-delay:calc(var(--i,0) * 60ms + 80ms)}.bento>:nth-child(2){--i:1}.bento>:nth-child(3){--i:2}.bento>:nth-child(4){--i:3}.bento>:nth-child(5){--i:4}.bento>:nth-child(6){--i:5}.bento>:nth-child(7){--i:6}.bt{min-width:0;min-height:168px;color:var(--text-h);text-align:left;box-shadow:var(--shadow);cursor:pointer;border:none;border-radius:24px;flex-direction:column;align-items:flex-start;gap:3px;padding:14px;transition:transform .25s cubic-bezier(.2,1.4,.4,1);display:flex;position:relative;overflow:hidden}.bt:active{transform:scale(.96)}.bt strong{font-family:var(--serif);font-size:16px;line-height:1.2}.bt small{opacity:.8;font-size:12.5px}.bt-kicker{letter-spacing:.07em;text-transform:uppercase;opacity:.7;font-size:11px;font-weight:700}.house-tile{aspect-ratio:2.05;color:#3a2128;background:#f4e1d2;min-height:0;padding:0}.mini-room{position:absolute;inset:0;container-type:inline-size}.mini-wall{background:radial-gradient(at 50% -20%,#fff9,#0000 60%),repeating-linear-gradient(90deg,#0000 0 20px,#00000008 20px 22px),#f4e1d2;position:absolute;inset:0 0 42%}.mini-floor{background:linear-gradient(#0000001a,#0000 35%),repeating-linear-gradient(90deg,#d9a874 0 15%,#cf9c67 15% 15.6%,#ddb07f 15.6% 31%,#c99560 31% 31.6%);position:absolute;inset:58% 0 0}.mini-item,.mini-pet{font-size:calc(var(--sz,1) * 8cqw);filter:drop-shadow(0 .05em .04em #00000040);line-height:1;position:absolute;transform:translate(-50%,-88%)}.mini-pet{z-index:3;font-size:calc(var(--sz,1) * 7cqw);animation:2.6s ease-in-out infinite mini-bob}@keyframes mini-bob{50%{translate:0 -.12em}}.house-tile:after{content:"";pointer-events:none;background:linear-gradient(#0000 45%,#280f198c);position:absolute;inset:0}.house-tile-label{z-index:5;color:#fff;text-shadow:0 1px 6px #00000080;display:grid;position:absolute;bottom:12px;left:14px}.house-tile-label strong{font-size:19px}.house-tile-hearts{z-index:5;color:var(--accent);background:#ffffffd9;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700;position:absolute;bottom:12px;right:12px}.next-tile{background:radial-gradient(120% 120% at 100% 0%, color-mix(in srgb, var(--accent-2) 35%, transparent), transparent 55%), linear-gradient(135deg, color-mix(in srgb, var(--accent) 92%, #fff), var(--accent));color:#fff;box-shadow:0 14px 28px -16px var(--accent)}.next-big{font-family:var(--serif);align-items:baseline;gap:6px;margin:2px 0;font-size:46px;font-weight:600;line-height:1;display:flex}.next-big small{font-family:system-ui,sans-serif;font-size:14px;font-weight:600}.memory-tile{background:linear-gradient(150deg,#f3e6da,#e6d3c2);padding:0}.memory-small{rotate:var(--tilt,-2deg);background:#fffdf9;border:none;padding:7px 7px 0;transition:rotate .4s;animation:.6s cubic-bezier(.2,1.3,.4,1) both polaroid-drop;position:absolute;inset:14px 14px 12px;box-shadow:0 8px 20px -8px #0006}@keyframes polaroid-drop{0%{opacity:0;transform:translateY(-14px)scale(1.06)}}.memory-small img{object-fit:cover;background:#e8ddd2;width:100%;height:calc(100% - 26px);display:block}.memory-small .memory-caption{color:#3b3036;font-family:var(--hand);text-align:center;text-overflow:ellipsis;white-space:nowrap;padding:3px 0 4px;font-size:18px;line-height:1.2;display:block;overflow:hidden}.memory-small .memory-tape{width:44px;height:14px;top:-8px}.memory-open{z-index:3;width:28px;height:28px;color:var(--accent);background:#ffffffe6;border:none;border-radius:50%;place-items:center;padding:0;font-size:15px;font-weight:800;display:grid;position:absolute;top:8px;right:8px;box-shadow:0 3px 8px #00000040}.memory-tile.empty{color:#3b3036;padding:14px}.map-tile{color:#12354a;background:linear-gradient(160deg,#bfe3f5,#8fc9e8)}.games-tile{color:#1f1650;background:linear-gradient(150deg,#c7b6ff,#8e7cf0)}.map-globe,.games-emoji{filter:drop-shadow(0 4px 6px #0003);margin:4px 0 2px;font-size:40px;animation:4s ease-in-out infinite float}.map-bar{background:#ffffff80;border-radius:999px;width:100%;height:7px;margin:3px 0 1px;display:block;overflow:hidden}.map-bar i{border-radius:inherit;transform-origin:0;background:#12354a;height:100%;animation:.9s cubic-bezier(.2,1,.3,1) .4s both quiz-grow;display:block}.sound-toggles{flex-wrap:wrap;gap:4px 16px;display:inline-flex}@media (prefers-reduced-motion:reduce){.bento>*,.memory-small,.map-globe,.games-emoji,.mini-pet,.map-bar i{animation:none}}.segments{grid-template-columns:repeat(var(--n), 1fr);background:var(--surface-2);border-radius:999px;padding:4px;display:grid;position:relative}.segment-pill{width:calc((100% - 8px) / var(--n));background:var(--surface);transform:translateX(calc(100% * var(--i)));border-radius:999px;transition:transform .35s cubic-bezier(.3,1.3,.5,1);position:absolute;top:4px;bottom:4px;left:4px;box-shadow:0 1px 2px #00000014,0 4px 12px -6px #00000040}.segment{z-index:1;color:var(--text);cursor:pointer;background:0 0;border:none;padding:9px 0;font-size:14px;font-weight:600;transition:color .2s;position:relative}.segment.active{color:var(--text-h)}.section-body{flex-direction:column;gap:14px;animation:.35s ease-out rise;display:flex}.countdown{border-radius:var(--radius);background:radial-gradient(120% 120% at 100% 0%, color-mix(in srgb, var(--accent-2) 35%, transparent), transparent 55%), linear-gradient(135deg, color-mix(in srgb, var(--accent) 92%, #fff), var(--accent));color:#fff;text-align:left;width:100%;box-shadow:0 14px 28px -16px var(--accent);cursor:pointer;border:none;align-items:center;gap:16px;padding:16px 18px;animation:.4s ease-out rise;display:flex}.countdown-number{min-width:64px;font-family:var(--serif);flex-direction:column;flex:none;align-items:center;font-size:44px;font-weight:600;line-height:1;display:flex}.countdown-number small{letter-spacing:.06em;text-transform:uppercase;opacity:.85;margin-top:2px;font-family:inherit;font-size:12px;font-weight:500}.countdown-text{flex-direction:column;min-width:0;display:flex}.countdown-text small{letter-spacing:.08em;text-transform:uppercase;opacity:.8;font-size:11px;font-weight:600}.countdown-text strong{font-family:var(--serif);white-space:nowrap;text-overflow:ellipsis;font-size:20px;overflow:hidden}.countdown-text span{opacity:.9;font-size:13.5px}.month-card{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:12px 10px 10px;overflow:hidden}.month-head{justify-content:space-between;align-items:center;padding:0 4px 8px;display:flex}.month-title{font-family:var(--serif);color:var(--text-h);cursor:pointer;background:0 0;border:none;font-size:19px;font-weight:600}.round{background:var(--surface-2);cursor:pointer;border:none;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;font-size:22px;line-height:1;display:grid}.weekdays,.days{grid-template-columns:repeat(7,1fr);display:grid}.weekdays span{text-align:center;color:var(--text);padding-bottom:4px;font-size:11px;font-weight:600}.days.slide-next{animation:.32s cubic-bezier(.2,.8,.2,1) slide-next}.days.slide-prev{animation:.32s cubic-bezier(.2,.8,.2,1) slide-prev}.day{aspect-ratio:1;color:var(--text-h);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;font-size:15px;transition:background .2s,color .2s,transform .15s;display:flex;position:relative}.day.outside{color:color-mix(in srgb, var(--text) 45%, transparent)}.day.today span{color:var(--accent);font-weight:700}.day.today:after{content:"";border:1.5px solid var(--accent);border-radius:50%;position:absolute;inset:3px}.day.selected{background:var(--text-h);color:var(--bg)}.day.selected.today span{color:var(--bg)}.dots{gap:2px;height:5px;display:flex}.dots i{background:var(--accent);border-radius:50%;width:5px;height:5px}.dots i.theirs{background:var(--accent-2)}.day-head{justify-content:space-between;align-items:center;display:flex}.day-head h3{font-family:var(--serif);margin:0;font-size:17px}.event-list,.plan-list,.plan-grid,.todo-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.event-list li,.plan-list li,.plan-grid li,.todo-list li{animation:.4s ease-out both rise;animation-delay:var(--delay,0s)}.event-card{border:1px solid var(--border);background:var(--surface);text-align:left;cursor:pointer;border-radius:16px;gap:12px;width:100%;padding:12px 14px;display:flex}.event-emoji{background:var(--accent-soft);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.event-text{flex-direction:column;min-width:0;display:flex}.event-text strong{color:var(--text-h)}.event-text small{font-size:12.5px}.event-text em{font-family:var(--hand);color:var(--text-h);margin-top:2px;font-size:18px;font-style:normal}.board-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.filters{gap:6px;display:flex}.filters.full .filter{flex:1;justify-content:center}.filter{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.filter span{background:var(--surface-2);text-align:center;border-radius:999px;min-width:18px;padding:0 5px;font-size:11px}.filter.active{border-color:var(--text-h);background:var(--text-h);color:var(--bg)}.filter.active span{background:color-mix(in srgb, var(--bg) 20%, transparent);color:var(--bg)}.plan-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.plan-card{background:var(--surface);height:100%;box-shadow:var(--shadow);border-radius:20px;flex-direction:column;display:flex;position:relative;overflow:hidden}.plan-open{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:10px;padding:0 0 12px;display:flex}.plan-grid .plan-emoji{aspect-ratio:1.25;background:radial-gradient(90% 90% at 30% 20%, hsl(var(--h) 85% 85% / 90%), transparent 60%), linear-gradient(150deg, hsl(var(--h) 70% 72%), hsl(calc(var(--h) + 40) 65% 58%));place-items:center;width:100%;font-size:46px;transition:transform .4s cubic-bezier(.3,1.4,.5,1);display:grid}.plan-card:active .plan-emoji{transform:scale(1.06)}.plan-grid .plan-text{padding:0 12px}.plan-list .plan-card{flex-direction:row;align-items:center}.plan-list .plan-open{flex-direction:row;align-items:center;padding:12px}.plan-list .plan-emoji{background:linear-gradient(150deg, hsl(var(--h) 70% 80%), hsl(calc(var(--h) + 40) 65% 66%));border-radius:14px;flex:none;place-items:center;width:46px;height:46px;font-size:22px;display:grid}.plan-text{flex-direction:column;min-width:0;display:flex}.plan-text strong{font-family:var(--serif);color:var(--text-h);font-size:16.5px;line-height:1.2}.plan-text small{font-size:12.5px}.plan-text .by{opacity:.75;margin-top:2px}.plan-advance{background:var(--surface-2);color:var(--text-h);cursor:pointer;border:none;border-radius:12px;margin:0 12px 12px;padding:8px 10px;font-size:13px;font-weight:600}.plan-list .plan-advance{flex:none;margin:0 12px 0 0}.plan-done{color:var(--accent);margin:0 12px 12px;font-size:12.5px;font-weight:600}.plan-list .plan-done{flex:none;margin:0 14px 0 0}.plan-card.done .plan-emoji{filter:saturate(.85)}.todo-add{gap:8px;display:flex}.todo-add input{border-radius:999px;flex:1;min-width:0}.todo-add .pill{width:46px;padding:0;font-size:22px}.todo-list li{border:1px solid var(--border);background:var(--surface);border-radius:16px;align-items:center;gap:12px;padding:10px 14px;transition:opacity .35s,transform .35s;display:flex}.todo-list li.leaving{opacity:.4;transform:translate(12px)}.check{border:2px solid var(--border);color:#0000;cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;padding:0;transition:background .25s,border-color .25s,color .25s;display:grid}.check.checked{border-color:var(--accent);background:var(--accent);color:#fff;animation:.4s cubic-bezier(.3,1.6,.5,1) pop}.check svg path{stroke-dasharray:22;stroke-dashoffset:22px;transition:stroke-dashoffset .3s ease-out 50ms}.check.checked svg path{stroke-dashoffset:0}.todo-text{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;min-width:0;padding:0;display:flex}.todo-text span{color:var(--text-h);align-self:flex-start;transition:color .3s;position:relative}.todo-text span:after{content:"";transform-origin:0;background:currentColor;width:100%;height:1.5px;transition:transform .35s ease-out;position:absolute;top:52%;left:0;transform:scaleX(0)}.todo-text span.struck{color:var(--text)}.todo-text span.struck:after{transform:scaleX(1)}.todo-text small{font-size:12px}.todo-text .overdue{color:var(--danger);font-style:normal}.todo-text em{font-style:normal}.todo-list.done li{background:0 0}.sheet-backdrop{z-index:30;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#140c1073;justify-content:center;align-items:flex-end;animation:.25s ease-out fade;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:600px;max-height:88dvh;padding:8px 18px calc(env(safe-area-inset-bottom) + 18px);background:var(--bg);border-radius:26px 26px 0 0;flex-direction:column;gap:12px;animation:.38s cubic-bezier(.2,.9,.25,1) sheet-up;display:flex;overflow-y:auto;box-shadow:0 -10px 40px #00000040}.sheet-grip{background:var(--border);border-radius:999px;align-self:center;width:40px;height:5px}.sheet-head{justify-content:space-between;align-items:center;display:flex}.sheet-head .link{align-self:auto}.sheet-form{flex-direction:column;gap:10px;display:flex}.field-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.field-row label,.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field-row span,.field span{font-size:12.5px;font-weight:600}.field-row input,.field input{width:100%;min-width:0}.emoji-row{scrollbar-width:none;gap:6px;margin:0 -18px;padding:2px 18px 4px;display:flex;overflow-x:auto}.emoji-option{background:var(--surface-2);cursor:pointer;border:1.5px solid #0000;border-radius:14px;flex:none;width:46px;height:46px;padding:0;font-size:22px;transition:transform .2s cubic-bezier(.3,1.6,.5,1),border-color .2s}.emoji-option.active{border-color:var(--accent);background:var(--accent-soft);transform:scale(1.1)}.pill.big{padding:14px;font-size:16px}.center{text-align:center;align-self:center}.burst-layer{z-index:40;pointer-events:none;position:fixed;inset:0}.burst{position:absolute}.burst i{color:var(--accent);font-size:14px;font-style:normal;animation:.9s cubic-bezier(.2,.7,.3,1) forwards burst;position:absolute}.burst i:nth-child(3n){color:var(--accent-2)}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}@keyframes fade{0%{opacity:0}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes slide-next{0%{opacity:0;transform:translate(28px)}}@keyframes slide-prev{0%{opacity:0;transform:translate(-28px)}}@keyframes pop{50%{transform:scale(1.25)}}@keyframes burst{0%{opacity:1;transform:translate(-50%, -50%) rotate(var(--a)) translateY(0) scale(.6)}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--a)) translateY(calc(var(--d) * -1)) scale(1.1)}}@media (prefers-reduced-motion:reduce){.section-body,.countdown,.days,.sheet,.sheet-backdrop,.event-list li,.plan-list li,.plan-grid li,.todo-list li,.burst i,.check.checked{animation:none}}.calendar,.board,.todos{flex-direction:column;gap:14px;display:flex}.ideas{gap:6px;display:grid}.ideas-head{justify-content:space-between;align-items:center;font-size:13px;font-weight:600;display:flex}.ideas-strip{scroll-snap-type:x proximity;scrollbar-width:none;gap:10px;margin:0 -2px;padding:2px 2px 8px;list-style:none;display:flex;overflow-x:auto}.ideas-strip li{scroll-snap-align:start;flex:none;animation:.4s cubic-bezier(.2,1.2,.3,1) both game-in}.idea{background:linear-gradient(150deg, hsl(var(--h) 80% 86%), hsl(calc(var(--h) + 30) 75% 78%));color:#2b1d24;text-align:left;cursor:pointer;width:138px;min-height:120px;box-shadow:0 6px 16px hsl(var(--h) 50% 50% / .25);border:none;border-radius:18px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px;transition:transform .2s cubic-bezier(.2,1.4,.4,1);display:flex;position:relative}.idea:active{transform:scale(.94)}.idea-emoji{filter:drop-shadow(0 3px 4px #0000002e);font-size:30px}.idea-title{font-size:13px;font-weight:700;line-height:1.2}.idea small{opacity:.7;font-size:11px}.idea-add{background:#ffffffb3;border-radius:50%;place-items:center;width:22px;height:22px;font-size:14px;font-weight:800;display:grid;position:absolute;top:8px;right:8px}.wall{flex-direction:column;gap:10px;display:flex}.polaroids{scroll-snap-type:x mandatory;scrollbar-width:none;gap:16px;margin:0 -16px;padding:18px 22px 16px;scroll-padding-inline:22px;list-style:none;display:flex;overflow-x:auto}.polaroids::-webkit-scrollbar{display:none}.polaroids li{scroll-snap-align:start;width:44%;max-width:220px;transform:rotate(var(--tilt,0deg));flex:none;animation:.55s cubic-bezier(.2,1.3,.4,1) both pin-drop}.polaroids li:nth-child(2){animation-delay:60ms}.polaroids li:nth-child(3){animation-delay:.12s}.polaroids li:nth-child(n+4){animation-delay:.18s}@keyframes pin-drop{0%{opacity:0;transform:translateY(-24px) rotate(calc(var(--tilt,0deg) * -2))}}.polaroid{color:#2b2326;cursor:pointer;background:#fffdf9;border:none;border-radius:3px;flex-direction:column;width:100%;margin:0;padding:8px 8px 0;transition:transform .2s;display:flex;position:relative;box-shadow:0 1px 2px #0000001a,0 10px 22px -10px #28140a59}.polaroid:active{transform:scale(.97)}.polaroid img{aspect-ratio:1;object-fit:cover;background:#eee6dc;width:100%;display:block}.polaroid .caption{min-height:40px;font-family:var(--hand);text-align:center;white-space:nowrap;text-overflow:ellipsis;padding:6px 2px 8px;font-size:20px;line-height:1.1;display:block;overflow:hidden}.tape{z-index:1;background:color-mix(in srgb, var(--accent) 30%, #ffffff8c);opacity:.85;width:56px;height:20px;position:absolute;top:-10px;left:50%;transform:translate(-50%)rotate(-4deg);box-shadow:0 1px 2px #00000014}.polaroids li:nth-child(2n) .tape{background:color-mix(in srgb, var(--accent-2) 30%, #ffffff8c);transform:translate(-50%)rotate(5deg)}.polaroid-view{z-index:20;padding:calc(env(safe-area-inset-top) + 16px) 22px calc(env(safe-area-inset-bottom) + 16px);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#140c10b8;flex-direction:column;justify-content:center;align-items:center;gap:18px;animation:.2s ease-out fade-in;display:flex;position:fixed;inset:0}.polaroid.big{cursor:default;max-width:440px;padding:12px 12px 0;animation:.25s ease-out pop-in;transform:rotate(-1.5deg)}.polaroid.big img{aspect-ratio:auto;object-fit:contain;max-height:62dvh}.polaroid.big .caption{white-space:normal;flex-direction:column;gap:2px;padding:10px 4px 14px;font-size:26px;display:flex}.polaroid.big small{color:#8a7c80;font-family:-apple-system,system-ui,sans-serif;font-size:12px}.polaroid-view .close{color:#fff;cursor:pointer;background:#ffffff29;border:none;border-radius:999px}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:rotate(-6deg)scale(.9)}}@media (prefers-reduced-motion:reduce){.polaroid-view,.polaroids li,.polaroid.big{animation:none}}.vlog-gallery{cursor:pointer;background:var(--surface-2);color:var(--text-h);font-weight:500}.vlog-record{color:#fff;text-align:left;cursor:pointer;background:linear-gradient(135deg,#2a1f2a 0%,#4a2236 100%);border:none;border-radius:22px;align-items:center;gap:14px;width:100%;padding:14px 16px;display:flex;box-shadow:0 12px 28px -14px #501432b3}.vlog-record-dot{border:3px solid #fff;border-radius:50%;flex:none;width:46px;height:46px;position:relative}.vlog-record-dot:after{content:"";background:#ff4d6d;border-radius:50%;animation:2s ease-in-out infinite rec-breathe;position:absolute;inset:5px}.vlog-record-text{font-family:var(--serif);flex-direction:column;font-size:19px;font-weight:600;display:flex}.vlog-record-text small{opacity:.75;font-family:-apple-system,system-ui,sans-serif;font-size:13px;font-weight:400}.vlog-month h3{font-family:var(--serif);color:var(--text);text-transform:capitalize;margin:4px 0 10px;font-size:16px;font-weight:600}.vlog-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.vlog-grid li{animation:.5s cubic-bezier(.2,1,.3,1) both card-in}.vlog-card{aspect-ratio:9/16;background:var(--surface-2);width:100%;box-shadow:var(--shadow);cursor:pointer;border:3px solid #0000;border-radius:20px;padding:0;transition:transform .25s cubic-bezier(.2,1.4,.4,1);display:block;position:relative;overflow:hidden}.vlog-card.mine{border-color:color-mix(in srgb, var(--accent) 70%, transparent)}.vlog-card.theirs{border-color:color-mix(in srgb, var(--accent-2) 70%, transparent)}.vlog-card.fresh{animation:2s ease-in-out infinite fresh-glow}.vlog-card:active{transform:scale(.96)}.vlog-card img,.vlog-card-empty{object-fit:cover;width:100%;height:100%;display:block}.vlog-card-empty{background:linear-gradient(160deg, var(--surface-2), var(--accent-soft))}.vlog-card:after{content:"";background:linear-gradient(#00000059 0%,#0000 25% 55%,#000000b3 100%);position:absolute;inset:0}.vlog-who{z-index:1;background:var(--accent);color:#fff;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;position:absolute;top:8px;left:8px}.theirs .vlog-who{background:var(--accent-2)}.vlog-new{z-index:1;color:#c2185b;text-transform:uppercase;letter-spacing:.04em;background:#fff;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800;position:absolute;top:8px;right:8px}.vlog-meta{z-index:1;color:#fff;text-align:left;text-shadow:0 1px 3px #00000080;flex-direction:column;font-size:12.5px;display:flex;position:absolute;bottom:10px;left:10px;right:10px}.vlog-meta span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.draft-video{aspect-ratio:9/16;max-height:60dvh;margin:0 auto}.story-screen{z-index:30;background:#000;place-items:center;display:grid;position:fixed;inset:0}.story-frame{background:#111;width:min(100vw,56.25dvh);height:min(100dvh,177.778vw);position:relative;overflow:hidden}.story-frame video{object-fit:cover;width:100%;height:100%}.story-frame video.mirrored{transform:scaleX(-1)}.story-close{top:calc(env(safe-area-inset-top) + 12px);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;background:#00000059;border:none;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;font-size:16px;display:grid;position:absolute;right:14px}.story-close.inline{position:static}.rec-time{top:calc(env(safe-area-inset-top) + 18px);color:#fff;font-variant-numeric:tabular-nums;background:#00000073;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:14px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.rec-time i{background:#ff4d6d;border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite rec-breathe}.story-error{color:#fff;text-align:center;position:absolute;top:40%;left:24px;right:24px}.rec-controls{right:0;bottom:calc(env(safe-area-inset-bottom) + 28px);justify-content:space-around;align-items:center;display:flex;position:absolute;left:0}.rec-side{width:48px;height:48px}.rec-side.flip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;background:#00000059;border:none;border-radius:50%;padding:0;font-size:24px}.shutter{background:conic-gradient(#ff4d6d calc(var(--p) * 360deg), #ffffffd9 0);cursor:pointer;border:none;border-radius:50%;place-items:center;width:84px;height:84px;padding:0;display:grid;position:relative}.shutter span{background:#ff4d6d;border:4px solid #111;border-radius:50%;width:70px;height:70px;transition:all .25s cubic-bezier(.2,1.4,.4,1)}.shutter.recording span{border:none;border-radius:9px;width:34px;height:34px}.story-player{z-index:30;color:#fff;background:#000;flex-direction:column;animation:.42s cubic-bezier(.2,.9,.2,1) both story-open;display:flex;position:fixed;inset:0}.story-player.closing{animation:.26s ease-in forwards story-close}.story-bar{top:calc(env(safe-area-inset-top) + 8px);z-index:2;background:#ffffff4d;border-radius:3px;height:3px;position:absolute;left:12px;right:12px;overflow:hidden}.story-bar span{transform-origin:0;background:#fff;height:100%;transition:transform .25s linear;display:block}.story-head{top:calc(env(safe-area-inset-top) + 20px);z-index:2;align-items:center;gap:10px;display:flex;position:absolute;left:12px;right:12px}.story-avatar{background:var(--accent-2);width:38px;height:38px;font-family:var(--serif);border:2px solid #fff;border-radius:50%;place-items:center;font-weight:600;display:grid}.story-avatar.mine{background:var(--accent)}.story-who{text-shadow:0 1px 3px #00000080;flex-direction:column;flex:1;line-height:1.2;display:flex}.story-who small{opacity:.85;font-size:12px}.story-stage{flex:1;place-items:center;min-height:0;display:grid;position:relative}.story-stage video{object-fit:contain;width:100%;height:100%}.story-loading{border:3px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}.story-paused{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0006;border-radius:50%;place-items:center;width:76px;height:76px;font-size:30px;animation:.25s ease-out pop-in;display:grid;position:absolute}.story-foot{right:16px;bottom:calc(env(safe-area-inset-bottom) + 18px);z-index:2;justify-content:space-between;align-items:flex-end;gap:12px;display:flex;position:absolute;left:16px}.story-caption{font-family:var(--serif);text-shadow:0 1px 4px #0009;font-size:20px;animation:.5s ease-out .3s both caption-up}.story-foot .link.danger{color:#ffb3c1;flex:none}@keyframes story-open{0%{opacity:.4;transform:translate(var(--from-x,0), var(--from-y,40px)) scale(var(--from-s,.9));border-radius:20px}}@keyframes story-close{to{opacity:0;transform:translateY(60px)scale(.92)}}@keyframes card-in{0%{opacity:0;transform:translateY(16px)rotate(-1.5deg)}}@keyframes fresh-glow{50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--accent-2) 35%, transparent), var(--shadow)}}@keyframes rec-breathe{50%{opacity:.8;transform:scale(.82)}}@keyframes caption-up{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){.vlog-grid li,.vlog-card.fresh,.vlog-record-dot:after,.story-player,.story-caption{animation:none}}.c4 h2{margin-bottom:4px}.c4-score{justify-content:center;align-items:center;gap:10px;margin:8px 0 4px;font-size:15px;display:flex}.c4-player{background:var(--surface-2);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;transition:box-shadow .25s,transform .25s;display:inline-flex}.c4-player b{font-variant-numeric:tabular-nums;font-size:17px}.c4-player.active{transform:scale(1.05);box-shadow:0 0 0 2px}.c4-player.me.active{color:var(--accent)}.c4-player:not(.me).active{color:var(--accent-2)}.c4-player .disc{width:14px;height:14px;position:static}.c4-vs{opacity:.5}.c4-status{text-align:center;margin:6px 0 12px;font-weight:600;animation:.35s ease-out both c4-in}.c4-status.mine{color:var(--accent)}@keyframes c4-in{0%{opacity:0;transform:translateY(6px)}}.c4-board{box-sizing:border-box;background:linear-gradient(160deg,#3b6fd6,#2848a8);border-radius:22px;grid-template-columns:repeat(7,1fr);gap:4px;width:100%;max-width:420px;margin:0 auto;padding:8px;display:grid;box-shadow:inset 0 2px #ffffff40,0 12px 30px #2848a859}.c4-col{width:100%;min-width:0;height:auto;min-height:0;box-shadow:none;cursor:pointer;background:0 0;border:none;border-radius:14px;outline:none;grid-template-rows:repeat(6,1fr);gap:4px;padding:2px;transition:background .15s;display:grid}.c4-col:disabled{cursor:default;opacity:1}.c4-board.my-turn .c4-col:not(:disabled):hover,.c4-board.my-turn .c4-col:not(:disabled):active{background:#ffffff24}.c4-hole{aspect-ratio:1;background:var(--bg);border-radius:50%;position:relative;box-shadow:inset 0 3px 5px #0000004d}.disc{border-radius:50%;display:block;position:absolute;inset:0}.disc.mine{background:radial-gradient(circle at 35% 30%, #ff9ab8, var(--accent) 60%, #9c2a4d)}.disc.theirs{background:radial-gradient(circle at 35% 30%,#ffe48a,#f2b51d 60%,#b47c06)}.disc.mine:after,.disc.theirs:after{content:"";border:2px solid #ffffff47;border-radius:50%;position:absolute;inset:22%}.disc.falling{animation:c4-fall calc(.18s + var(--fall) * 60ms) cubic-bezier(.5, 0, .75, 0) both, c4-bounce .3s calc(.18s + var(--fall) * 60ms) ease-out}@keyframes c4-fall{0%{transform:translateY(calc(var(--fall) * -112% - 40%))}}@keyframes c4-bounce{40%{transform:translateY(-12%)}}.disc.win{animation:.9s ease-in-out .5s infinite c4-win;box-shadow:0 0 0 3px #fff,0 0 16px 4px #fffc}@keyframes c4-win{50%{transform:scale(.82)}}.c4-again{margin-top:16px;animation:.4s ease-out .6s both c4-in}.center-text{text-align:center;margin-top:14px}@media (prefers-reduced-motion:reduce){.disc.falling,.disc.win{animation:none}}.dart-stage{box-sizing:border-box;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 40%,#ffffff14,#0000 60%),linear-gradient(160deg,#3a2a22,#22180f);border-radius:26px;width:100%;max-width:420px;margin:0 auto;padding:14px;position:relative;box-shadow:inset 0 2px #ffffff14,0 14px 30px #0000004d}.dart-stage.ready{cursor:crosshair}.dart-board{filter:drop-shadow(0 8px 14px #00000080);width:100%;height:auto;display:block}.dart-number{fill:#fff;font-family:system-ui,sans-serif;font-size:17px;font-weight:700}.dart-aim circle,.dart-aim path{fill:none;stroke:#fff;stroke-width:2.5px;filter:drop-shadow(0 0 2px #000)}.dart{transform-box:view-box;transform-origin:0 0}.dart.fly{animation:.28s cubic-bezier(.5,0,.9,.6) both dart-fly,.35s ease-out .28s dart-wobble}@keyframes dart-fly{0%{opacity:.2;transform:scale(3.2)translate(10px,30px)}}@keyframes dart-wobble{30%{transform:rotate(5deg)}65%{transform:rotate(-3deg)}}.dart-pop{color:#fff;white-space:nowrap;pointer-events:none;background:#000000b8;border-radius:999px;padding:6px 14px;font-size:20px;font-weight:800;animation:1.1s ease-out both dart-pop;position:absolute;top:38%;left:50%}@keyframes dart-pop{0%{opacity:0;transform:translate(-50%,10px)scale(.6)}20%{opacity:1;transform:translate(-50%)scale(1.1)}70%{opacity:1;transform:translate(-50%,-6px)scale(1)}to{opacity:0;transform:translate(-50%,-24px)scale(1)}}@media (prefers-reduced-motion:reduce){.dart.fly,.dart-pop{animation:none}}.dart-modes{grid-template-columns:1fr 1fr;gap:8px;display:grid}.dart-modes button{background:var(--surface-2);color:inherit;text-align:center;cursor:pointer;border:2px solid #0000;border-radius:16px;gap:2px;padding:10px;display:grid}.dart-modes button.active{border-color:var(--accent);background:var(--accent-soft)}.dart-modes small{opacity:.75;font-size:12px}.dart-wind{justify-content:center;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;display:flex}.dart-wind span{color:var(--accent-2);font-size:18px;transition:transform .4s;display:inline-block}.pong-stage{width:100%;max-width:420px;margin:0 auto;position:relative}.pong-table{touch-action:none;-webkit-user-select:none;user-select:none;border-radius:26px;width:100%;height:auto;display:block;box-shadow:0 14px 30px #0000004d}.pong-table.ready{cursor:grab}.cup.sinking{animation:.9s ease-in both cup-sink}@keyframes cup-sink{0%{transform:none}15%{transform:rotate(-6deg)}30%{transform:rotate(5deg)}45%{opacity:1;transform:rotate(0)scale(1)}to{opacity:0;transform:scale(.2)translateY(20px)}}.pong-hint{opacity:.7;animation:1.6s ease-in-out infinite pong-hint}@keyframes pong-hint{0%,to{opacity:.2;transform:translateY(0)}50%{opacity:.8;transform:translateY(-14px)}}.pong-balls{gap:6px;display:flex;position:absolute;bottom:16px;right:16px}.pong-balls i{background:#fff8ee;border-radius:50%;width:14px;height:14px;transition:opacity .3s,transform .3s;box-shadow:inset -2px -2px #00000026}.pong-balls i.used{opacity:.2;transform:scale(.7)}@media (prefers-reduced-motion:reduce){.cup.sinking,.pong-hint{animation:none}}.sketch-frame{box-sizing:border-box;background:linear-gradient(150deg,#e9d8c4,#cdb497);border-radius:24px;width:100%;max-width:440px;margin:0 auto;padding:10px;box-shadow:0 12px 28px #00000038}.sketch-frame.small{max-width:260px}.sketch{aspect-ratio:1;touch-action:none;background:#fffaf3;border-radius:16px;width:100%;display:block;box-shadow:inset 0 1px 4px #00000026}.sketch.editable{cursor:crosshair}.palette{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 16px;width:100%;display:flex}.palette-colors,.palette-sizes{gap:6px;display:flex}.palette button{border:2px solid var(--surface);cursor:pointer;border-radius:50%;place-items:center;width:32px;height:32px;padding:0;transition:transform .15s cubic-bezier(.3,1.6,.5,1);display:grid;box-shadow:0 0 0 1px #00000026}.palette button.active{box-shadow:0 0 0 2px var(--accent);transform:scale(1.18)}.palette .eraser{color:#555;background:#fffaf3;font-size:14px}.palette-sizes button{background:var(--surface-2)}.palette-sizes i{background:currentColor;border-radius:50%;display:block}.paint-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 18px;width:100%;display:flex}.guess-score{color:var(--accent);margin:-6px 0 0;font-weight:600}.guess-result{background:var(--accent-soft);text-align:center;border-radius:16px;padding:12px 16px;font-weight:600;animation:.4s ease-out both c4-in}.guess-result p{margin:0}.guess-choose{gap:10px;display:grid}.guess-word{color:#2b1d24;letter-spacing:.04em;cursor:pointer;box-shadow:var(--shadow);background:linear-gradient(135deg,#ffd29d,#ff9a8b);border:none;border-radius:18px;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px;font-size:18px;font-weight:700;animation:.45s cubic-bezier(.2,1.2,.3,1) both game-in;display:flex}.guess-word:nth-child(3){background:linear-gradient(135deg,#a0e7c8,#5bc0be)}.guess-word:nth-child(4){background:linear-gradient(135deg,#c7b6ff,#8e7cf0)}.guess-word small{letter-spacing:0;opacity:.75;font-size:12px;font-weight:600}.guess-slots{flex-wrap:wrap;justify-content:center;gap:5px;width:100%;display:flex}.guess-slots.shake{animation:.45s ease-in-out guess-shake}@keyframes guess-shake{20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.guess-slot{border:none;border-bottom:3px solid var(--accent);background:var(--surface-2);width:30px;height:38px;color:inherit;border-radius:6px 6px 2px 2px;padding:0;font-size:19px;font-weight:800}.guess-slot.filled{animation:.25s cubic-bezier(.3,1.6,.5,1) both room-plop-in}.guess-gap{width:14px}.guess-tiles{grid-template-columns:repeat(6,1fr);gap:6px;width:100%;max-width:360px;margin:0 auto;display:grid}.guess-tiles button{aspect-ratio:1;color:#2b1d24;cursor:pointer;background:linear-gradient(160deg,#fff,#f1e6da);border:none;border-radius:12px;padding:0;font-size:20px;font-weight:800;transition:transform .12s,opacity .2s;box-shadow:0 3px #d9c7b4,0 6px 12px #0000001f}.guess-tiles button:active{transform:translateY(2px);box-shadow:0 1px #d9c7b4}.guess-tiles button:disabled{opacity:.15;transform:scale(.85)}@keyframes room-plop-in{0%{opacity:0;transform:scale(.4)}}.quiz-tabs{background:var(--surface-2);border-radius:999px;gap:6px;padding:4px;display:flex}.quiz-tabs button{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;padding:8px 6px;font-size:13.5px;transition:background .2s,color .2s}.quiz-tabs button.active{background:var(--accent);color:var(--accent-ink);font-weight:600}.quiz-chip{--hue:#ffd29d;background:color-mix(in srgb, var(--hue) 70%, white);color:#2b1d24;cursor:pointer;border:none;border-radius:999px;align-self:flex-start;padding:4px 11px;font-size:12.5px;font-weight:700}.quiz-chip.active{box-shadow:0 0 0 2px var(--accent)}.quiz-chip.add{background:var(--surface-2);color:inherit}.quiz-options{gap:8px;display:grid}.quiz-option{background:var(--surface-2);color:inherit;text-align:left;cursor:pointer;border:none;border-radius:16px;padding:14px 16px;font-size:16px;font-weight:600;transition:background .3s,opacity .3s,transform .3s;animation:.4s cubic-bezier(.2,1.2,.3,1) both game-in}.quiz-option:disabled{opacity:1;cursor:default}.quiz-option.right{color:#fff;background:#3bb273;transform:scale(1.03)}.quiz-option.wrong{color:#fff;background:#e23d5b;animation:.45s ease-in-out guess-shake}.quiz-option.dim{opacity:.4}.quiz-form{gap:10px;display:grid}.quiz-cats{flex-wrap:wrap;gap:6px;display:flex}.quiz-question-row,.quiz-option-row{align-items:center;gap:8px;display:flex}.quiz-question-row input,.quiz-option-row input{flex:1;min-width:0}.quiz-right{color:#0000;border-radius:50%;flex:none;width:38px;height:38px;padding:0;font-weight:800}.quiz-right.active{color:#fff;background:#3bb273;border-color:#3bb273}.quiz-sub{margin:8px 0 0;font-size:16px}.quiz-mine,.quiz-bars{gap:8px;margin:0;padding:0;list-style:none;display:grid}.quiz-mine li{background:var(--surface);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:1fr auto;gap:4px 8px;padding:10px 12px;display:grid}.quiz-mine-q{grid-column:1/-1;font-weight:600}.quiz-mine-state{opacity:.75;font-size:13px}.quiz-mine .link{grid-area:1/2}.quiz-bars li{grid-template-columns:7.5em 1fr auto;align-items:center;gap:10px;animation:.4s ease-out both game-in;display:grid}.quiz-bar{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}.quiz-bar i{border-radius:inherit;transform-origin:0;height:100%;animation:.8s cubic-bezier(.2,1,.3,1) both quiz-grow;display:block}@keyframes quiz-grow{0%{transform:scaleX(0)}}.partner-live{background:var(--accent-soft);color:var(--text-h);border-radius:14px;align-items:center;gap:8px;padding:10px 14px;font-size:14px;display:flex}.live-dot{background:#2fbf71;border-radius:50%;width:9px;height:9px;animation:1.6s ease-out infinite live;display:inline-block;box-shadow:0 0 #2fbf7199}.live-dot.small{vertical-align:middle;width:7px;height:7px}.game-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.game-grid li{animation:.5s cubic-bezier(.2,1.2,.3,1) both game-in}.game-card{background:linear-gradient(150deg, var(--c1), var(--c2));width:100%;min-height:170px;box-shadow:var(--shadow);color:#2b1d24;text-align:left;cursor:pointer;border:none;border-radius:22px;flex-direction:column;align-items:flex-start;gap:2px;padding:14px;transition:transform .25s cubic-bezier(.2,1.4,.4,1);display:flex;position:relative;overflow:hidden}.game-card:active{transform:scale(.95)rotate(-1deg)}.game-emoji{filter:drop-shadow(0 4px 6px #00000026);margin-bottom:4px;font-size:38px;animation:4s ease-in-out infinite float}.game-grid li:nth-child(2n) .game-emoji{animation-delay:-2s}.game-title{font-family:var(--serif);font-size:18px;font-weight:600;line-height:1.15}.game-blurb{opacity:.75;font-size:12.5px}.game-progress{background:#ffffff73;border-radius:5px;width:100%;height:5px;margin-top:auto;overflow:hidden}.game-progress span{background:#2b1d24;border-radius:5px;height:100%;transition:width .6s;display:block}.game-foot{opacity:.7;font-size:11.5px;font-weight:600}.game-badge{color:#fff;background:#2b1d24;border-radius:999px;padding:3px 8px;font-size:10.5px;font-weight:700;animation:2.4s ease-in-out infinite wiggle;position:absolute;top:10px;right:10px}.game-here{background:#2fbf71;border:2px solid #fff;border-radius:50%;width:12px;height:12px;animation:1.6s ease-out infinite live;position:absolute;bottom:12px;right:12px}.game-top{justify-content:space-between;display:flex}.game-top .link{align-self:auto}.game-head{align-items:center;gap:12px;display:flex}.game-head-emoji{font-size:40px}.question-card{flex-direction:column;gap:12px;animation:.45s cubic-bezier(.2,1,.3,1) both q-in;display:flex}.q-step{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.q-prompt{font-family:var(--serif);color:var(--text-h);font-size:24px;font-weight:600;line-height:1.2}.opts{gap:12px;display:grid}.opts.four{grid-template-columns:repeat(2,1fr)}.opts.two{grid-template-columns:1fr}.opt{background:linear-gradient(160deg, var(--c1), var(--c2));color:#2b1d24;cursor:pointer;border:3px solid #0000;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:150px;padding:16px 10px;transition:transform .25s cubic-bezier(.2,1.4,.4,1),border-color .2s;animation:.5s cubic-bezier(.2,1.1,.3,1) both opt-flip;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 24px -14px #3c1e2880}.opts.two .opt{text-align:left;flex-direction:row;justify-content:flex-start;min-height:110px}.opt:disabled{opacity:1;cursor:default}.opt:active:not(:disabled){transform:scale(.94)}.opt.picked{box-shadow:0 0 0 3px var(--accent), 0 14px 30px -12px #3c1e2899;border-color:#fff;transform:scale(1.03)}.opt-emoji{filter:drop-shadow(0 6px 8px #0000002e);font-size:46px;line-height:1}.opts.two .opt-emoji{font-size:36px}.opt-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.opt-img+.opt-label{background:#ffffffd9;border-radius:10px;padding:4px 8px;position:absolute;bottom:8px;left:8px;right:8px}.opt-label{text-align:center;font-size:15px;font-weight:650;line-height:1.2;position:relative}.opts.two .opt-label{text-align:left}.opt-marks{flex-direction:column;align-items:flex-end;gap:4px;display:flex;position:absolute;top:8px;right:8px}.mark{background:var(--accent-2);color:#fff;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:700;animation:.45s cubic-bezier(.2,1.6,.4,1) both mark-pop}.mark.mine{background:var(--accent)}.opt-marks .mark:nth-child(2){animation-delay:.35s}.verdict{font-family:var(--serif);text-align:center;color:var(--text-h);font-size:19px;animation:.4s ease-out .4s both q-in}.question-card.done{align-items:center;padding:30px 0}.score-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:22px;align-items:center;gap:16px;padding:16px;display:flex}.score-ring{background:conic-gradient(var(--accent) calc(var(--p) * 360deg), var(--surface-2) 0);border-radius:50%;flex:none;place-items:center;width:84px;height:84px;animation:1s ease-out both ring-in;display:grid}.score-ring span{background:var(--surface);width:66px;height:66px;font-family:var(--serif);color:var(--text-h);border-radius:50%;place-items:center;font-size:19px;font-weight:600;display:grid}.score-title{font-family:var(--serif);color:var(--text-h);font-size:20px;font-weight:600}.result-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.result-list li{border:1px solid var(--border);background:var(--surface);border-radius:18px;flex-direction:column;gap:6px;padding:14px;animation:.4s ease-out both q-in;display:flex;position:relative}.result-list li.match{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));background:linear-gradient(160deg, var(--surface), var(--accent-soft))}.r-prompt{color:var(--text-h);font-weight:600}.r-row{color:var(--text-h);align-items:center;gap:8px;font-size:14.5px;display:flex}.r-row .mark{animation:none}.r-heart{color:var(--accent);font-size:20px;animation:1.6s ease-in-out infinite heartbeat;position:absolute;top:10px;right:14px}@keyframes game-in{0%{opacity:0;transform:translateY(20px)scale(.92)rotate(-2deg)}}@keyframes float{50%{transform:translateY(-5px)rotate(4deg)}}@keyframes wiggle{0%,80%,to{transform:rotate(0)}85%{transform:rotate(-6deg)}90%{transform:rotate(6deg)}95%{transform:rotate(-3deg)}}@keyframes live{to{box-shadow:0 0 0 8px #2fbf7100}}@keyframes q-in{0%{opacity:0;transform:translate(30px)}}@keyframes opt-flip{0%{opacity:0;transform:perspective(600px)rotateY(-70deg)scale(.9)}}@keyframes mark-pop{0%{opacity:0;transform:scale(.3)translateY(-10px)}}@keyframes ring-in{0%{opacity:0;transform:rotate(-90deg)scale(.7)}}@media (prefers-reduced-motion:reduce){.game-grid li,.game-emoji,.game-badge,.question-card,.opt,.mark,.verdict,.score-ring,.result-list li,.r-heart{animation:none}}.hub-list{gap:14px;margin:8px 0 16px;padding:0;list-style:none;display:grid}.hub-list li{animation:.55s cubic-bezier(.2,1.2,.3,1) both game-in}.hub-card{background:linear-gradient(135deg, var(--c1), var(--c2));color:#fff;text-align:left;cursor:pointer;width:100%;min-height:112px;box-shadow:0 10px 26px color-mix(in srgb, var(--c2) 40%, transparent);border:none;border-radius:26px;align-items:center;gap:14px;padding:16px 18px;transition:transform .15s;display:flex;position:relative;overflow:hidden}.hub-card:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 35%,#ffffff38 50%,#0000 65%);animation:5s ease-in-out infinite hub-shine;position:absolute;inset:0;transform:translate(-100%)}.hub-list li:nth-child(2) .hub-card:after{animation-delay:1.6s}.hub-list li:nth-child(3) .hub-card:after{animation-delay:3.2s}@keyframes hub-shine{0%,60%{transform:translate(-100%)}to{transform:translate(100%)}}.hub-card:active{transform:scale(.96)}.hub-emoji{background:#ffffff40;border-radius:20px;flex:none;place-items:center;width:64px;height:64px;font-size:36px;animation:4s ease-in-out infinite float;display:grid}.hub-list li:nth-child(2n) .hub-emoji{animation-delay:-2s}.hub-text{flex-direction:column;gap:3px;min-width:0;display:flex}.hub-card .game-title{font-size:21px}.hub-card .game-blurb{opacity:.92;font-size:13px}@media (prefers-reduced-motion:reduce){.hub-card:after,.hub-emoji{animation:none}}.hub-group{gap:8px;display:grid}.hub-heading{letter-spacing:.08em;text-transform:uppercase;opacity:.6;margin:4px 0 0;font-size:13px;font-weight:700}.hub-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin:0;padding:0;list-style:none;display:grid}.hub-grid li{animation:.5s cubic-bezier(.2,1.2,.3,1) both game-in}.hub-tile{background:linear-gradient(140deg, var(--c1), var(--c2));color:#fff;text-align:left;cursor:pointer;width:100%;height:100%;min-height:128px;box-shadow:0 8px 20px color-mix(in srgb, var(--c2) 35%, transparent);border:none;border-radius:22px;flex-direction:column;align-items:flex-start;gap:2px;padding:14px;transition:transform .2s cubic-bezier(.2,1.4,.4,1);display:flex;position:relative;overflow:hidden}.hub-tile:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 35%,#ffffff38 50%,#0000 65%);animation:6s ease-in-out infinite hub-shine;position:absolute;inset:0;transform:translate(-100%)}.hub-grid li:nth-child(2) .hub-tile:after{animation-delay:2s}.hub-grid li:nth-child(3) .hub-tile:after{animation-delay:4s}.hub-tile:active{transform:scale(.94)rotate(-1deg)}.hub-tile .hub-emoji{border-radius:16px;width:48px;height:48px;margin-bottom:6px;font-size:28px}.hub-tile .game-title{font-size:17px}.hub-tile .game-blurb{opacity:.9;font-size:12px}.hub-tile .game-badge{color:#2b1d24;background:#fff}@media (prefers-reduced-motion:reduce){.hub-tile:after{animation:none}}.zuhause h2{margin-bottom:10px}.room{--wall:#f4e1d2;aspect-ratio:4/5;touch-action:none;-webkit-user-select:none;user-select:none;background:var(--wall);border-radius:24px;width:100%;max-width:460px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 14px 36px #0000002e;container-type:inline-size}.room-wall{background:radial-gradient(ellipse at 50% -20%, #ffffff8c, transparent 60%), repeating-linear-gradient(90deg, transparent 0 22px, #00000006 22px 24px), var(--wall);pointer-events:none;position:absolute;inset:0 0 58%}.room-wall:after{content:"";background:#ffffffbf;height:2.6%;min-height:6px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 2px 4px #0000001f}.room-floor{pointer-events:none;position:absolute;inset:42% 0 0}.room.floor-holz .room-floor,.floor-swatch.floor-holz{background:linear-gradient(#00000014,#0000 30%),repeating-linear-gradient(90deg,#d9a874 0 15%,#cf9c67 15% 15.6%,#ddb07f 15.6% 31%,#c99560 31% 31.6%)}.room.floor-dunkel .room-floor,.floor-swatch.floor-dunkel{background:linear-gradient(#00000026,#0000 30%),repeating-linear-gradient(90deg,#7a4f33 0 15%,#6b4429 15% 15.6%,#845a3b 15.6% 31%,#5e3a22 31% 31.6%)}.room.floor-fliesen .room-floor,.floor-swatch.floor-fliesen{background:linear-gradient(#0000000f, transparent 30%), conic-gradient(#f2f2ee 25%, #d9dbd6 0 50%, #f2f2ee 0 75%, #d9dbd6 0) 0 0 / 16% 20%}.room.floor-teppich .room-floor,.floor-swatch.floor-teppich{background:linear-gradient(#00000014,#0000 30%),radial-gradient(circle,#ffffff14 1px,#0000 1.5px) 0 0/6px 6px,#b9a7c9}.room.night .room-floor{filter:brightness(.55)saturate(.8)}.room.night .room-item .glyph{filter:brightness(.8)}.room.night .room-item:is([aria-label=💡],[aria-label=🕯️],[aria-label=🏮],[aria-label=⭐],[aria-label=🌙]) .glyph{filter:drop-shadow(0 0 8px #ffd56b)drop-shadow(0 0 18px #ffb84d)}.room-empty{text-align:center;color:#0000008c;pointer-events:none;font-weight:600;animation:.5s ease-out both c4-in;position:absolute;inset:44% 10% auto}.room.night .room-empty{color:#ffffffb3}.room-item{font-size:calc(var(--s) * 13cqw);cursor:grab;touch-action:none;background:0 0;border:none;padding:0;line-height:1;transition:font-size .2s;position:absolute;transform:translate(-50%,-88%)}.room-item .glyph{filter:drop-shadow(0 .06em .05em #00000047);transition:transform .25s cubic-bezier(.3,1.6,.5,1);display:block}.room-item.wall-item .glyph{filter:drop-shadow(0 .03em .03em #0003)}.room-item .glyph.flipped{transform:scaleX(-1)}.room-item.selected{cursor:grabbing}.room-item.selected:before,.room-item.remote:before{content:"";border:2px dashed var(--accent);border-radius:.3em;animation:1.2s linear infinite room-ants;position:absolute;inset:-.12em}.room-item.remote:before{border-color:var(--accent-2)}@keyframes room-ants{50%{opacity:.45}}.room-item.new{animation:.5s cubic-bezier(.3,1.7,.5,1) both room-plop}@keyframes room-plop{0%{transform:translate(-50%,-88%)scale(0)rotate(-20deg)}}.room-who{background:var(--accent-2);color:#fff;white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;animation:.2s ease-out both c4-in;position:absolute;bottom:100%;left:50%;transform:translate(-50%,-4px)}.room-tools,.room-actions{box-sizing:border-box;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;max-width:460px;margin:14px auto 0;animation:.25s ease-out both c4-in;display:flex}.room-tools{background:var(--surface);border-radius:999px;padding:8px;box-shadow:0 6px 20px #0000001f}.room-tools button{background:var(--surface-2);min-width:42px;height:42px;color:inherit;cursor:pointer;border:none;border-radius:999px;font-size:20px}.room-tools button:active{transform:scale(.92)}.room-tools .danger{font-size:18px}.room-tools .room-done{background:var(--accent);color:var(--accent-ink);padding:0 16px;font-size:15px;font-weight:600}.room-tools-glyph{padding:0 4px;font-size:26px}.room-swatches{gap:6px;display:flex}.swatch{border:2px solid var(--surface);cursor:pointer;border-radius:50%;width:26px;height:26px;padding:0;transition:transform .15s;box-shadow:0 0 0 1px #00000026}.swatch.active{box-shadow:0 0 0 2px var(--accent);transform:scale(1.12)}.room-catalog{box-sizing:border-box;background:var(--surface);border-radius:20px;width:100%;max-width:460px;margin:12px auto 0;padding:10px;animation:.3s cubic-bezier(.2,1.2,.4,1) both room-sheet;box-shadow:0 8px 26px #0000001f}@keyframes room-sheet{0%{opacity:0;transform:translateY(16px)scale(.97)}}.room-catalog-tabs{scrollbar-width:none;gap:6px;padding-bottom:8px;display:flex;overflow-x:auto}.room-catalog-tabs button{background:var(--surface-2);color:inherit;cursor:pointer;border:none;border-radius:999px;flex:none;padding:6px 12px;font-size:13px}.room-catalog-tabs button.active{background:var(--accent);color:var(--accent-ink);font-weight:600}.room-catalog-grid{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:6px;display:grid}.room-catalog-grid button{aspect-ratio:1;background:var(--surface-2);cursor:pointer;border:none;border-radius:14px;font-size:30px;animation:.3s cubic-bezier(.3,1.6,.5,1) both room-plop-in}.room-catalog-grid button:active{transform:scale(.88)}@media (prefers-reduced-motion:reduce){.room-item.new,.room-catalog-grid button,.room-item.selected:before,.room-item.remote:before{animation:none}}.house-head{justify-content:space-between;align-items:center;display:flex}.house-head h2{margin:0}.hearts-pill{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:999px;padding:6px 14px;font-size:16px}.hearts-pill b{font-variant-numeric:tabular-nums}.hearts-panel,.shop-card{background:var(--surface);box-shadow:var(--shadow);border-radius:18px;padding:12px 14px;animation:.3s ease-out both c4-in}.hearts-panel ul{gap:4px;margin:8px 0 0;padding:0;list-style:none;display:grid}.hearts-panel li{justify-content:space-between;font-size:14px;display:flex}.shop-card p{margin:0 0 4px}.shop-actions{justify-content:flex-end;align-items:center;gap:14px;margin-top:8px;display:flex}.room-tabs{scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.room-tabs button{background:var(--surface-2);color:inherit;cursor:pointer;border:none;border-radius:999px;flex:none;align-items:center;gap:5px;padding:7px 12px;font-size:13.5px;transition:background .2s;display:flex}.room-tabs button.active{background:var(--accent);color:var(--accent-ink);font-weight:600}.room-tabs button.locked{opacity:.7}.room-tabs small{font-size:11px}.room.garden{background:var(--wall)}.room.garden .room-wall{background:radial-gradient(ellipse at 50% 100%, #ffffff80, transparent 60%), var(--wall)}.room.garden .room-wall:after{background:#4a8f3f;height:3%}.room.garden .room-floor{background:radial-gradient(circle,#ffffff1a 1px,#0000 1.5px) 0 0/9px 9px,linear-gradient(#0000001a,#0000 25%),#67b35a}.room.garden.night .room-floor{filter:brightness(.45)saturate(.9)}.room.garden.night .room-wall:before{content:"";background:radial-gradient(1.5px 1.5px at 20% 30%,#fff,#0000),radial-gradient(1.5px 1.5px at 70% 20%,#fff,#0000),radial-gradient(1px 1px at 45% 55%,#fff,#0000),radial-gradient(1.5px 1.5px at 85% 60%,#fff,#0000),radial-gradient(1px 1px at 10% 70%,#fff,#0000);position:absolute;inset:0}.rd{z-index:1;pointer-events:none;position:absolute;inset:0}.rd>span{position:absolute}.room:after{z-index:6000;content:"";pointer-events:none;background:radial-gradient(at 50% 45%,#0000 55%,#28141e33 100%),linear-gradient(#ffffff1a,#0000 30%);position:absolute;inset:0}.rd-window{background:linear-gradient(90deg,#0000 calc(50% - .5cqw),#fffaf3 calc(50% - .5cqw) calc(50% + .5cqw),#0000 calc(50% + .5cqw)),linear-gradient(0deg,#0000 calc(50% - .5cqw),#fffaf3 calc(50% - .5cqw) calc(50% + .5cqw),#0000 calc(50% + .5cqw)),linear-gradient(#8fd0ff,#e6f6ff 80%);border:1.6cqw solid #fffaf3;border-radius:1.5cqw;width:34%;height:25%;top:6%;left:9%;box-shadow:0 1.2cqw 2cqw -1cqw #00000059,inset 0 0 3cqw #fff9}.rd-window.small{border-width:1cqw;width:20%;height:12%;top:8%;left:33%}.rd-window.night-window{background:radial-gradient(circle at 70% 30%,#fff6c9 0 5%,#0000 5.5%),radial-gradient(1px 1px at 25% 40%,#fff,#0000),radial-gradient(1px 1px at 45% 70%,#fff,#0000),radial-gradient(1.5px 1.5px at 60% 55%,#fff,#0000),linear-gradient(90deg,#0000 calc(50% - .5cqw),#fffaf3 calc(50% - .5cqw) calc(50% + .5cqw),#0000 calc(50% + .5cqw)),linear-gradient(#1a2149,#3a3f7a);width:28%;height:22%;top:8%;left:60%}.rd-curtain{background:linear-gradient(90deg,#e98aa5,#f5b2c4 50%,#e98aa5);width:6.5%;height:30%;top:4.5%;box-shadow:0 1cqw 2cqw -1cqw #00000059}.rd-curtain.left{border-radius:0 0 2cqw .5cqw;left:4.5%}.rd-curtain.right{border-radius:0 0 .5cqw 2cqw;left:41.5%}.rd-schlafzimmer .rd-curtain.left{background:linear-gradient(90deg,#8a8be0,#b7b8f2 50%,#8a8be0);left:55%}.rd-schlafzimmer .rd-curtain.right{background:linear-gradient(90deg,#8a8be0,#b7b8f2 50%,#8a8be0);left:88.5%}.rd-beam{clip-path:polygon(8% 0,36% 0,100% 100%,52% 100%);mix-blend-mode:soft-light;background:linear-gradient(160deg,#fff4c880,#fff4c814 70%);width:70%;height:80%;top:14%;left:6%}.rd-round-rug{opacity:.92;background:repeating-radial-gradient(#f6c4d2 0 3cqw,#fde9ee 3cqw 5cqw,#e48aa6 5cqw 7cqw);border-radius:50%;width:64%;height:24%;top:66%;left:18%;box-shadow:0 1.2cqw 2.4cqw -1cqw #0006}.rd-round-rug.lilac{background:repeating-radial-gradient(#cfc2f5 0 3cqw,#efe9ff 3cqw 5cqw,#a99be6 5cqw 7cqw)}.rd-round-rug.arcade{opacity:.8;background:repeating-radial-gradient(#ff5fa2 0 2.5cqw,#2c2152 2.5cqw 4.5cqw,#58d8ff 4.5cqw 6.5cqw)}.rd-paper{background:repeating-linear-gradient(90deg,#ffffff47 0 4cqw,#0000 4cqw 8cqw);inset:0 0 58%}.rd-lights{width:94%;height:6%;top:2.5%;left:3%}.rd-lights i{background:#fff1b8;border-radius:50%;width:1.8cqw;height:1.8cqw;animation:2.4s ease-in-out infinite rd-twinkle;position:absolute;box-shadow:0 0 2.4cqw .8cqw #ffdc78cc}.rd-lights i:first-child{left:0%}.rd-lights i:nth-child(2){left:9%}.rd-lights i:nth-child(3){left:18%}.rd-lights i:nth-child(4){left:27%}.rd-lights i:nth-child(5){left:36%}.rd-lights i:nth-child(6){left:45%}.rd-lights i:nth-child(7){left:54%}.rd-lights i:nth-child(8){left:63%}.rd-lights i:nth-child(9){left:72%}.rd-lights i:nth-child(10){left:81%}.rd-lights i:nth-child(11){left:90%}@keyframes rd-twinkle{50%{opacity:.45;transform:scale(.8)}}.rd-tiles{background:linear-gradient(#0000001a 1px,#0000 1px) 0 0/100% 25%,linear-gradient(90deg,#0000001a 1px,#0000 1px) 0 0/8.33% 100%,linear-gradient(#fbfbf7,#e9eee8);height:19.5%;top:21%;left:0;right:0}.rd-cabinets{gap:1.2cqw;width:94%;height:15.5%;display:flex;top:3%;left:3%}.rd-cabinets i{background:linear-gradient(#d3a26c,#b7824f);border-radius:1cqw;flex:1;position:relative;box-shadow:inset 0 0 0 .7cqw #ffffff2e,0 1.4cqw 2cqw -1cqw #0006}.rd-cabinets i:after{content:"";background:#fff6e8;border-radius:1cqw;width:1.2cqw;height:3cqw;position:absolute;bottom:14%;right:12%}.rd-counter{background:linear-gradient(#f2efe9,#d7d2c8);height:3.2%;top:38%;left:0;right:0;box-shadow:0 1.2cqw 1.6cqw -.8cqw #0006}.rd-base{background:#8b5e3c;gap:.6cqw;height:14%;padding:0 1cqw;display:flex;top:41.2%;left:0;right:0}.rd-base i{background:linear-gradient(#c48c58,#a8733f);border-radius:.8cqw;flex:1;margin:1cqw 0 .8cqw;box-shadow:inset 0 0 0 .6cqw #ffffff26}.rd-tilewall{background:linear-gradient(#ffffff8c .4cqw,#0000 .4cqw) 0 0/100% 9cqw,linear-gradient(90deg,#ffffff8c .4cqw,#0000 .4cqw) 0 0/9cqw 100%,linear-gradient(#a0d2eb8c,#c8e8f559);inset:0 0 58%}.rd-mirror{background:linear-gradient(135deg,#f4fbff 0 40%,#cfe6f2 40% 52%,#f4fbff 52%);border:1.2cqw solid #e9eef2;border-radius:2cqw;width:28%;height:22%;top:7%;left:36%;box-shadow:0 1.2cqw 2cqw -1cqw #0006,inset 0 0 3cqw #fffc}.rd-towels{gap:2.4cqw;display:flex;top:11%;left:7%}.rd-towels i{background:linear-gradient(#f6a9bd,#e9768f);border-radius:.8cqw .8cqw 2cqw 2cqw;width:7cqw;height:17cqw;box-shadow:0 1cqw 1.6cqw -.8cqw #0006}.rd-towels i+i{background:linear-gradient(#ffe08a,#f1b93f)}.rd-mat{background:repeating-linear-gradient(90deg,#79c7b4 0 2cqw,#a6e0d1 2cqw 4cqw);border-radius:2cqw;width:30%;height:9%;top:68%;left:36%;box-shadow:0 1cqw 1.6cqw -.8cqw #00000059}.rd-hills{background:radial-gradient(36% 100% at 20% 100%,#5da24f 0 98%,#0000 100%),radial-gradient(40% 90% at 62% 100%,#4f9444 0 98%,#0000 100%),radial-gradient(30% 70% at 95% 100%,#62a955 0 98%,#0000 100%);width:120%;height:16%;top:28%;left:-10%}.rd-fence{filter:drop-shadow(0 .5cqw .5cqw #00000040);background:linear-gradient(#0000 22%,#f4efe6 22% 30%,#0000 30% 62%,#f4efe6 62% 70%,#0000 70%),repeating-linear-gradient(90deg,#fbf7ee 0 2.2cqw,#0000 2.2cqw 4.4cqw);height:7%;top:36%;left:0;right:0}.rd-path{clip-path:polygon(46% 0,54% 0,86% 100%,14% 100%);background:linear-gradient(#eedcb21a,#eedcb2bf);width:100%;height:57%;top:43%;left:0}.rd-cloud{filter:blur(.6cqw);background:#ffffffd9;border-radius:999px;height:6%;animation:60s linear infinite rd-drift}.rd-cloud:before,.rd-cloud:after{background:inherit;content:"";border-radius:50%;position:absolute;bottom:30%}.rd-cloud:before{width:36%;height:160%;left:15%}.rd-cloud:after{width:28%;height:130%;left:45%}.rd-cloud.a{width:24%;top:9%;left:10%}.rd-cloud.b{width:18%;animation-duration:90s;animation-delay:-30s;top:18%;left:55%}@keyframes rd-drift{0%{translate:-40cqw}to{translate:110cqw}}.rd-flies{display:none;inset:0}.room.night .rd-flies{display:block}.rd-flies i{background:#f4ffb0;border-radius:50%;width:1.2cqw;height:1.2cqw;animation:5s ease-in-out infinite rd-fly;position:absolute;box-shadow:0 0 2cqw .8cqw #dcff78cc}@keyframes rd-fly{0%,to{opacity:.2;translate:0}50%{opacity:1;translate:3cqw -4cqw}}.rd-stars{opacity:.8;background:radial-gradient(1.2px 1.2px at 12% 30%,#fff,#0000),radial-gradient(1.5px 1.5px at 32% 70%,#fff,#0000),radial-gradient(1.2px 1.2px at 55% 20%,#fff,#0000),radial-gradient(1.5px 1.5px at 75% 65%,#fff,#0000),radial-gradient(1.2px 1.2px at 90% 25%,#fff,#0000),radial-gradient(1px 1px at 45%,#fff,#0000);inset:0 0 58%}.rd-neon{color:#ffd2ec;font-family:var(--serif);letter-spacing:.08em;text-shadow:0 0 1cqw #ff7bc4,0 0 3cqw #ff4fa8,0 0 6cqw #ff2f94;font-size:11cqw;font-weight:800;animation:4s linear infinite rd-flicker;top:6%;left:50%;translate:-50%}@keyframes rd-flicker{0%,92%,to{opacity:1}94%{opacity:.55}96%{opacity:1}98%{opacity:.7}}.rd-poster{border:.9cqw solid #fff;width:15%;height:17%;top:20%;box-shadow:0 1.2cqw 2cqw -1cqw #00000080}.rd-poster.p1{background:linear-gradient(135deg,#ff7a59,#ffcf5b);left:6%}.rd-poster.p2{background:linear-gradient(135deg,#58d8ff,#6c4cff);right:6%}@media (prefers-reduced-motion:reduce){.rd-lights i,.rd-cloud,.rd-flies i,.rd-neon{animation:none}}.fx-layer{z-index:60;pointer-events:none;position:fixed;inset:0;overflow:hidden}.fx-burst{position:absolute}.fx-ring{border:2px solid var(--accent);border-radius:50%;width:16px;height:16px;animation:.6s ease-out forwards fx-ring;position:absolute;transform:translate(-50%,-50%)}.fx-burst i{color:var(--c);font-size:calc(15px * var(--s));opacity:0;animation:fx-fly 1.1s cubic-bezier(.15, .8, .3, 1) var(--delay) forwards;font-style:normal;line-height:1;position:absolute}.fx-burst.confetti i{background:var(--c);border-radius:2px;width:6px;height:11px;animation-name:fx-confetti;animation-duration:1.25s}@keyframes fx-ring{to{opacity:0;border-width:1px;width:110px;height:110px}}@keyframes fx-fly{0%{opacity:1;transform:translate(-50%, -50%) rotate(var(--a)) translateY(0) scale(.3)}60%{opacity:1}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--a)) translateY(calc(var(--d) * -1)) scale(1) rotate(calc(var(--a) * -1))}}@keyframes fx-confetti{0%{opacity:1;transform:translate(-50%, -50%) rotate(var(--a)) translateY(0) rotate(0)}70%{opacity:1}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--a)) translateY(calc(var(--d) * -1.4)) translateX(10px) rotate(540deg)}}.fx-rain{animation:4.2s forwards fx-fade;position:absolute;inset:0}.fx-rain i{color:var(--c);font-size:var(--size);opacity:0;filter:drop-shadow(0 4px 8px #0000001f);animation:fx-fall var(--dur) cubic-bezier(.4, 0, .7, 1) var(--delay) forwards;font-style:normal;position:absolute;top:-40px}.fx-rain-text{background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow);color:var(--text-h);font-family:var(--serif);white-space:nowrap;border-radius:999px;padding:12px 22px;font-size:22px;font-weight:600;animation:.6s cubic-bezier(.2,1.4,.4,1) both fx-pop-in;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}@keyframes fx-fall{0%{opacity:0;transform:translate(0)rotate(-10deg)scale(.6)}10%{opacity:1}50%{transform:translate(var(--sway), 50vh) rotate(12deg) scale(1)}to{opacity:.9;transform:translateY(110vh)rotate(-8deg)scale(1)}}@keyframes fx-fade{85%{opacity:1}to{opacity:0}}@keyframes fx-pop-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}}@media (prefers-reduced-motion:reduce){.fx-burst,.fx-rain i{display:none}}.app{max-width:600px;height:100dvh;padding:env(safe-area-inset-top) 16px 0;flex-direction:column;margin:0 auto;display:flex;overflow:hidden}.topbar{flex:none;justify-content:space-between;align-items:center;padding:10px 0 6px;display:flex}.wordmark,.login h1{font-family:var(--serif);letter-spacing:-.01em;color:var(--text-h);margin:0;font-size:23px;font-weight:600}.amp{color:var(--accent);font-style:italic;font-weight:400}h2{font-family:var(--serif);letter-spacing:-.01em;color:var(--text-h);margin:0;font-size:21px;font-weight:600}h3{color:var(--text-h);margin:8px 0 0;font-size:15px}.screen{flex-direction:column;flex:1;min-height:0;display:flex}.page{scrollbar-width:none;flex-direction:column;flex:1;gap:14px;min-height:0;padding:10px 0 24px;display:flex;overflow-y:auto}.page>*{flex:none}.section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.tabs{padding:6px 10px calc(env(safe-area-inset-bottom) + 6px);border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex:none;gap:2px;margin:0 -16px;display:flex}.tab{min-height:52px;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:2px;padding:6px 0 4px;font-size:11px;font-weight:500;transition:color .15s;display:flex}.tab.active{color:var(--accent)}.tab.active svg{stroke-width:2.2px}input,button,.button{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:14px;padding:11px 15px}input{outline:none;font-size:16px;transition:border-color .15s,box-shadow .15s}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}input::placeholder{color:var(--text);opacity:.75}button[type=submit],.row>button:not(.link,.secondary),.lightbox-bar>button:not(.link),.button:not(.secondary),.pill{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:none;font-weight:600;transition:transform .1s,filter .15s}.secondary,.button.secondary{background:var(--surface-2);cursor:pointer;border:none;font-weight:500}.pill{border-radius:999px;flex:none;padding:8px 14px;font-size:14px}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:500}.button-chip{cursor:pointer;color:var(--accent);border-color:var(--accent-soft);background:var(--accent-soft);font-weight:600}button:disabled{opacity:.55}.link{color:var(--text);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:4px 0;font-size:14px;text-decoration:underline}.link.inline{font-size:inherit;padding:0}.link:disabled{opacity:.35;text-decoration:none}.link.danger{color:var(--danger)}.row{flex-wrap:wrap;flex:none;align-items:center;gap:8px;display:flex}.row input[type=text]{flex:1;min-width:0}.error{color:var(--danger);font-size:14px}.hint{color:var(--text);font-size:14px}.hint.small{font-size:12.5px}.hint.center{margin:auto}.login{flex-direction:column;flex:1;gap:12px;min-height:0;padding:26vh 0 16px;display:flex;overflow-y:auto}.login>*{flex:none}.login h1{margin-bottom:8px;font-size:34px}.hero{border-radius:var(--radius);background:radial-gradient(120% 90% at 100% 0%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 60%), radial-gradient(90% 80% at 0% 100%, color-mix(in srgb, var(--accent-2) 18%, transparent), transparent 60%), var(--surface);box-shadow:var(--shadow);padding:20px 18px 22px;position:relative;overflow:hidden}.eyebrow{font-size:14px}.hero-name{font-family:var(--serif);letter-spacing:-.02em;color:var(--text-h);font-size:34px;font-weight:600;line-height:1.05}.stage{pointer-events:none;height:44px;position:absolute;bottom:4px;left:0;right:0;overflow:hidden}.notice{border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:16px;align-items:center;gap:12px;padding:12px 14px;font-size:14px;display:flex}.notice-icon{font-size:20px}.notice-text{flex:1}.push-on{text-align:center}.chat{flex-direction:column;flex:1;min-height:0;display:flex}.messages{flex-direction:column;flex:1;gap:6px;padding:10px 0;display:flex;overflow-y:auto}.bubble-row{flex-direction:column;align-items:flex-start;display:flex}.bubble-row.mine{align-items:flex-end}.bubble-row .link{align-self:auto}.bubble{background:var(--surface);border:1px solid var(--border);max-width:80%;color:var(--text-h);word-break:break-word;border-radius:20px 20px 20px 6px;padding:9px 13px}.bubble.mine{background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 88%, #fff) 0%, var(--accent) 100%);color:var(--accent-ink);border:none;border-radius:20px 20px 6px}.bubble img,.bubble video{border-radius:14px;max-width:100%;margin-top:4px;display:block}.composer{align-items:center;gap:8px;padding:6px 0 10px;display:flex}.composer input[type=text]{border-radius:999px;flex:1;min-width:0}.composer button[type=submit]{border-radius:999px}.attach{width:44px;height:44px;color:var(--accent);background:var(--accent-soft);cursor:pointer;border-radius:50%;flex:none;place-items:center;font-size:24px;display:grid}.cards,.vlog-list,.results{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.card{border:1px solid var(--border);background:var(--surface);width:100%;min-height:60px;box-shadow:var(--shadow);text-align:left;cursor:pointer;border-radius:16px;padding:14px 16px;font-weight:600}.grid{border-radius:14px;grid-template-columns:repeat(3,1fr);gap:4px;display:grid;overflow:hidden}.tile{aspect-ratio:1;background:var(--surface-2);cursor:pointer;border:none;border-radius:0;padding:0;font-size:12px;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%;display:block}.play{color:#fff;text-shadow:0 1px 4px #000000b3;place-items:center;font-size:22px;display:grid;position:absolute;inset:0}.lightbox{z-index:10;padding:calc(env(safe-area-inset-top) + 8px) 16px calc(env(safe-area-inset-bottom) + 8px);background:var(--bg);flex-direction:column;gap:8px;display:flex;position:fixed;inset:0}.lightbox-bar{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:8px;font-size:14px;display:flex}.lightbox-bar .link{align-self:auto}.lightbox-media{flex:1;place-items:center;min-height:0;display:grid}.lightbox-media img,.lightbox-media video{object-fit:contain;border-radius:12px;max-width:100%;min-height:0;max-height:100%}.lightbox-media>*{grid-area:1/1}.vlog{border:1px solid var(--border);background:var(--surface);text-align:left;cursor:pointer;border-radius:16px;align-items:center;gap:12px;width:100%;padding:8px;display:flex}.vlog-thumb{background:var(--surface-2);border-radius:10px;flex:none;width:54px;height:72px;position:relative;overflow:hidden}.vlog-thumb img{object-fit:cover;width:100%;height:100%;display:block}.vlog-text{overflow-wrap:anywhere;flex-direction:column;flex:1;min-width:0;display:flex}.badge{background:var(--accent);color:var(--accent-ink);border-radius:999px;flex:none;padding:2px 9px;font-size:12px;font-weight:600}.recorder video{object-fit:contain;background:#000;border-radius:16px;width:100%;max-height:55dvh;display:block}.score{font-family:var(--serif);color:var(--text-h);font-size:20px}.question{flex-direction:column;flex:none;gap:10px;display:flex}.choice{border:1px solid var(--border);background:var(--surface);min-height:68px;box-shadow:var(--shadow);cursor:pointer;border-radius:18px;font-weight:600}.choice:active{border-color:var(--accent);background:var(--accent-soft)}.results li{border:1px solid var(--border);background:var(--surface);color:var(--text-h);border-radius:16px;padding:12px 14px}.chat-button{border:1px solid var(--border);background:var(--surface);width:42px;height:42px;color:var(--text-h);cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:background .2s,color .2s;display:grid;position:relative}.chat-button.active{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.unread-dot{border:2px solid var(--bg);background:var(--accent);border-radius:50%;width:11px;height:11px;animation:1.8s ease-in-out infinite pulse;position:absolute;top:1px;right:1px}@keyframes pulse{50%{transform:scale(1.25)}}@keyframes screen-in{0%{opacity:0;transform:translate3d(calc(var(--dir,0) * 28px), 10px, 0) scale(.985);filter:blur(5px)}}.signout{margin-top:8px;font-size:13px}.center{align-self:center}@media (prefers-reduced-motion:reduce){.unread-dot,.screen{animation:none}}.album-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.album-grid li{animation:.4s ease-out both screen-in}.album-card{border:1px solid var(--border);background:var(--surface);width:100%;box-shadow:var(--shadow);text-align:left;cursor:pointer;border-radius:20px;flex-direction:column;gap:2px;padding:8px 8px 12px;display:flex}.album-cover{aspect-ratio:1;background:var(--surface-2);border-radius:14px;place-items:center;margin-bottom:6px;font-size:28px;display:grid;overflow:hidden}.album-cover img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.album-card:active .album-cover img{transform:scale(1.06)}.album-title{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;padding:0 4px;font-weight:600;overflow:hidden}.album-count{padding:0 4px;font-size:12.5px}.tab{position:relative}.tab.active:before{background:var(--accent-soft);content:"";z-index:-1;border-radius:999px;width:46px;height:30px;animation:.35s cubic-bezier(.2,1.4,.4,1) tab-pill;position:absolute;top:2px;left:50%;transform:translate(-50%)}.tab{isolation:isolate}.tab.active svg{animation:.45s cubic-bezier(.2,1.6,.4,1) tab-bounce}@keyframes tab-pill{0%{opacity:0;width:10px}}@keyframes tab-bounce{40%{transform:translateY(-4px)scale(1.12)}}@media (prefers-reduced-motion:reduce){.album-grid li,.tab.active:before,.tab.active svg{animation:none}}.lightbox-bar .lightbox-when{color:inherit;flex-direction:column;align-items:center;gap:1px;line-height:1.25;text-decoration:none;display:flex}.lightbox-when .place{opacity:.85;font-size:12px}.lightbox-when .place.empty{opacity:.5}.album-cover{position:relative}.album-flag{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffd9;border-radius:12px;place-items:center;min-width:34px;height:34px;padding:0 4px;font-size:22px;display:grid;position:absolute;bottom:8px;right:8px;box-shadow:0 4px 12px #00000040}:root{--glow-1:#ffd6e0;--glow-2:#ffe6cc;--glow-3:#e4d8ff;--spring:cubic-bezier(.2, .9, .25, 1);--bounce:cubic-bezier(.3, 1.5, .4, 1);--shadow:0 1px 2px #7828460f, 0 14px 32px -16px #cf48704d}@media (prefers-color-scheme:dark){:root{--glow-1:#ec6d9238;--glow-2:#ffa06e1f;--glow-3:#9678ff2e;--shadow:0 1px 2px #0000004d, 0 16px 36px -16px #ec6d9238}}body{background:0 0}body:before{z-index:-1;content:"";pointer-events:none;background:radial-gradient(38% 32% at 12% 8%, var(--glow-1), transparent 70%), radial-gradient(34% 30% at 92% 28%, var(--glow-2), transparent 70%), radial-gradient(44% 34% at 38% 100%, var(--glow-3), transparent 70%);animation:26s ease-in-out infinite alternate ambient;position:fixed;inset:-25%}@keyframes ambient{to{transform:translate(3%,-2%)scale(1.08)rotate(2deg)}}.ambient{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ambient i{bottom:-60px;left:var(--x);color:var(--tone,var(--accent));font-size:var(--size);filter:blur(var(--blur,0));opacity:0;animation:ambient-rise var(--dur) linear var(--delay) infinite;font-style:normal;position:absolute}@keyframes ambient-rise{0%{opacity:0;transform:translate(0)rotate(-10deg)scale(.8)}12%{opacity:var(--peak,.2)}50%{transform:translate(calc(var(--drift) * -.5), -55vh) rotate(8deg) scale(1)}88%{opacity:calc(var(--peak,.2) * .7)}to{opacity:0;transform:translate(var(--drift), -112vh) rotate(-8deg) scale(1.1)}}.app{z-index:1;position:relative}.screen{animation:screen-in .55s var(--spring) both}.screen>.page>:not(.lightbox):not(.sheet-backdrop):not(.polaroid-view){animation:rise .6s var(--spring) both;animation-delay:calc(var(--i,0) * 55ms + 60ms)}.screen>.page>:nth-child(2){--i:1}.screen>.page>:nth-child(3){--i:2}.screen>.page>:nth-child(4){--i:3}.screen>.page>:nth-child(5){--i:4}.screen>.page>:nth-child(6){--i:5}.screen>.page>:nth-child(7){--i:6}.screen>.page>:nth-child(n+8){--i:7}.tabs{--t:calc((100% - 28px) / 5);border-top:1px solid color-mix(in srgb, var(--accent) 14%, var(--border));background:color-mix(in srgb, var(--bg) 62%, transparent);-webkit-backdrop-filter:blur(22px)saturate(1.5);position:relative}.tabs:before{z-index:0;top:8px;left:calc(10px + var(--i,0) * (var(--t) + 2px) + var(--t) / 2 - 25px);content:"";background:linear-gradient(135deg, var(--accent-soft), color-mix(in srgb, var(--accent-soft) 60%, var(--accent)));width:50px;height:32px;box-shadow:0 4px 14px -4px color-mix(in srgb, var(--accent) 55%, transparent);transition:left .55s var(--bounce), opacity .3s;border-radius:999px;position:absolute}.tabs.no-pill:before{opacity:0}.tab.active:before{display:none}.tab{z-index:1}.tab span{transition:transform .3s var(--bounce)}.tab.active span{transform:translateY(1px)scale(1.04)}button[type=submit],.row>button:not(.link,.secondary),.lightbox-bar>button:not(.link),.button:not(.secondary),.pill{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 94%, #fff), color-mix(in srgb, var(--accent) 76%, #ff9a6b));box-shadow:0 8px 20px -8px color-mix(in srgb, var(--accent) 75%, transparent), inset 0 1px 0 #ffffff59;transition:transform .2s var(--bounce), box-shadow .2s, filter .15s}button:active:not(:disabled){transform:scale(.96)}.page>h2,.house-head h2{background:linear-gradient(110deg, var(--text-h) 35%, color-mix(in srgb, var(--accent) 80%, var(--text-h)));color:#0000;font-family:var(--serif);letter-spacing:-.01em;-webkit-background-clip:text;background-clip:text}.wordmark .amp{animation:3.2s ease-in-out infinite heartbeat;display:inline-block}.push-on{gap:8px;display:grid}.push-on>.hint{margin:0}.push-kinds{gap:6px;margin:0;padding:0;list-style:none;display:grid}.push-kind{border:1px solid var(--border);background:var(--surface);width:100%;color:inherit;text-align:left;box-shadow:none;border-radius:16px;align-items:center;gap:12px;padding:10px 12px;display:flex}.push-kind-emoji{font-size:22px}.push-kind-text{flex:1;min-width:0;display:grid}.push-kind-text b{color:var(--text-h);font-size:14.5px}.push-kind-text small{opacity:.75;font-size:12px}.push-switch{background:var(--surface-2);border-radius:999px;flex:none;width:44px;height:26px;transition:background .3s;position:relative}.push-switch:after{content:"";width:20px;height:20px;transition:transform .35s var(--bounce);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #00000040}.push-kind.on .push-switch{background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 70%, #ff9a6b))}.push-kind.on .push-switch:after{transform:translate(18px)}@media (prefers-reduced-motion:reduce){body:before,.ambient i,.wordmark .amp,.screen,.screen>.page>*{animation:none}}.top-actions{gap:8px;display:flex}.settings{gap:18px}.settings-group{gap:8px;display:grid}.settings-group h3{letter-spacing:.08em;text-transform:uppercase;opacity:.65;margin:0 0 0 4px;font-size:12px;font-weight:700}.settings-list{gap:8px;display:grid}.settings-slider{border:1px solid var(--border);background:var(--surface);border-radius:16px;gap:6px;padding:10px 14px;font-size:14px;display:grid}.settings-slider input[type=range]{width:100%;accent-color:var(--accent);padding:0}.settings-note{background:var(--surface);border-radius:16px;margin:0;padding:12px 14px;font-size:14px}.settings-note p{margin:0 0 8px}:root[data-ambient=off] .ambient,:root[data-ambient=off] body:before{display:none}:root[data-calm=on] *,:root[data-calm=on] :before,:root[data-calm=on] :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}
