:root{--bg-start:#0a1220;--bg-mid:#121f35;--bg-end:#1a2d4a;--text:#e8edf5;--text-soft:#c5d0e3;--muted:#8fa3c0;--accent:#7eb8e8;--accent-bright:#a8d4f5;--accent-deep:#4a7fad;--retro-gold:#c9b896;--surface:#121f35b8;--surface-hover:#1c2c48e0;--surface-border:#7eb8e838;--surface-glow:#7eb8e81a;--panel-bg:#0e182af5;--panel-item-bg:#182842b8;--panel-item-hover:#203452eb;--sans:"Segoe UI", system-ui, sans-serif;--display:Georgia, "Times New Roman", serif;font-family:var(--sans);color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html{height:100%;overflow:hidden}body{overscroll-behavior:none;background:radial-gradient(ellipse 90% 55% at 50% -10%, #4a7fad2e 0%, transparent 58%), radial-gradient(ellipse 70% 40% at 100% 70%, #1a2d4a73 0%, transparent 52%), radial-gradient(ellipse 55% 35% at 0% 65%, #0f1a2e8c 0%, transparent 50%), linear-gradient(180deg, var(--bg-start) 0%, var(--bg-mid) 42%, #15263c 68%, #1a3328 88%, #1f3d2c 100%);background-attachment:fixed;min-width:320px;height:100%;margin:0;overflow:hidden}body:before{content:"";pointer-events:none;z-index:0;opacity:.35;background:radial-gradient(100% 100%,#0000 42%,#0408108c 100%);position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:0;opacity:.04;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#ffffff0a 2px 4px);position:fixed;inset:0}#root{z-index:1;height:100svh;position:relative;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.floating-bg{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.floating-bg__sky-glow{filter:blur(40px);background:radial-gradient(circle,#7eb8e82e 0%,#0000 70%);border-radius:50%;width:80vw;height:45vh;animation:10s ease-in-out infinite pulse-glow;position:absolute;top:-18%;left:10%}.floating-bg__horizon{background:linear-gradient(#0000 0%,#1c34282e 45%,#223e2c59 100%);height:28%;position:absolute;bottom:18%;left:0;right:0}.floating-bg__stars{height:62%;position:absolute;inset:0}.floating-bg__star{left:var(--left);top:var(--top);width:var(--size);height:var(--size);opacity:var(--opacity);animation:star-twinkle var(--duration) ease-in-out infinite var(--delay);position:absolute}.floating-bg__star--dot{box-shadow:0 0 calc(var(--size) * 2.4) #a8d4f5a6;background:#eef6ff;border-radius:50%}.floating-bg__star--cross{box-shadow:none;background:0 0}.floating-bg__star--cross:before,.floating-bg__star--cross:after{content:"";background:#eef6ff;border-radius:999px;position:absolute;top:50%;left:50%;box-shadow:0 0 6px #a8d4f58c}.floating-bg__star--cross:before{width:100%;height:1.5px;transform:translate(-50%,-50%)}.floating-bg__star--cross:after{width:1.5px;height:100%;transform:translate(-50%,-50%)}.floating-bg__star--diamond{box-shadow:0 0 calc(var(--size) * 2) #c9b89673;background:#f5f0e4;transform:rotate(45deg)}.floating-bg__field{height:34%;min-height:11rem;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.floating-bg__grass{border-radius:50% 50% 0 0/34% 34% 0 0;position:absolute;bottom:0;left:-4%;right:-4%}.floating-bg__grass--back{opacity:.72;background:linear-gradient(#1e3a26 0%,#162c1c 100%);height:100%}.floating-bg__distant-blooms{pointer-events:none;clip-path:inset(0 0 55%);border-radius:50% 50% 0 0/34% 34% 0 0;height:100%;position:absolute;bottom:0;left:-4%;right:-4%;overflow:hidden}.floating-bg__distant-bloom{left:var(--left);top:var(--top);width:var(--size);height:var(--size);background:var(--color);opacity:var(--opacity);box-shadow:0 0 2px var(--color);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.floating-bg__grass--mid{opacity:.86;background:linear-gradient(#35663c 0%,#284f30 100%);height:62%}.floating-bg__grass--front{opacity:.96;background:repeating-linear-gradient(90deg,#0000 0 7px,#386e3e59 7px 9px,#0000 9px 16px),linear-gradient(#4f8f56 0%,#356a3d 100%);height:36%}.planted-flower{left:var(--left);bottom:var(--bottom);width:var(--size);height:calc(var(--size) * 1.5);opacity:var(--opacity);transform:translateX(-50%) scaleY(var(--scale-y));transform-origin:50% 100%;animation:flower-sway 3.8s ease-in-out infinite var(--delay);position:absolute}.planted-flower svg{filter:drop-shadow(0 3px 6px #00000047);width:100%;height:100%;display:block}.planted-flower--peony{animation-duration:4.4s}@keyframes flower-sway{0%,to{transform:translateX(-50%) scaleY(var(--scale-y)) rotate(calc(var(--sway) * -.35))}50%{transform:translateX(-50%) scaleY(var(--scale-y)) rotate(var(--sway))}}@keyframes pulse-glow{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.85;transform:scale(1.06)}}@keyframes star-twinkle{0%,to{opacity:calc(var(--opacity) * .35);transform:scale(.75)}50%{opacity:var(--opacity);transform:scale(1.2)}}.floating-bg__star--diamond{animation-name:star-twinkle-diamond}@keyframes star-twinkle-diamond{0%,to{opacity:calc(var(--opacity) * .35);transform:rotate(45deg)scale(.75)}50%{opacity:var(--opacity);transform:rotate(45deg)scale(1.2)}}@media (width<=600px){.floating-bg__field{height:30%;min-height:9rem}.planted-flower{width:calc(var(--size) * .85);height:calc(var(--size) * 1.28)}}@media (prefers-reduced-motion:reduce){.floating-bg__star,.planted-flower,.floating-bg__sky-glow{animation:none}}body.custom-cursor,body.custom-cursor *{cursor:none!important}.cute-cursor{pointer-events:none;z-index:9999;position:fixed;inset:0}.cute-cursor__heart,.cute-cursor__trail{will-change:transform;position:fixed;top:0;left:0}.cute-cursor__heart{width:28px;height:28px;color:var(--accent-bright);filter:drop-shadow(0 2px 8px #7eb8e880);margin:-14px 0 0 -14px}.cute-cursor__heart svg{width:100%;height:100%;animation:2s ease-in-out infinite cursor-wiggle;display:block}.cute-cursor__trail{color:var(--retro-gold);opacity:.7;margin:-6px 0 0 -6px;font-size:12px}.cute-cursor__trail span{animation:1.6s ease-in-out infinite cursor-twinkle;display:block}@keyframes cursor-wiggle{0%,to{rotate:-6deg}50%{rotate:6deg}}@keyframes cursor-twinkle{0%,to{opacity:.4;scale:.85}50%{opacity:1;scale:1.1}}.moon-phase-cycle{top:calc(.85rem + env(safe-area-inset-top,0px));right:calc(.85rem + env(safe-area-inset-right,0px));z-index:0;pointer-events:none;opacity:.9;position:fixed}.moon-phase-cycle__glow{filter:blur(10px);background:radial-gradient(circle,#e8edf547 0%,#7eb8e81f 38%,#0000 68%);border-radius:50%;animation:5s ease-in-out infinite moon-glow-pulse;position:absolute;inset:-44px}.moon-phase-cycle__halo{background:radial-gradient(circle,#a8d4f52e 0%,#4a7fad14 45%,#0000 75%);border-radius:50%;animation:5s ease-in-out infinite moon-halo-pulse;position:absolute;inset:-36px}.moon-phase-cycle__track{filter:drop-shadow(0 0 18px #ffffff59);width:clamp(96px,18vmin,140px);height:clamp(96px,18vmin,140px);animation:8s ease-in-out infinite alternate moon-float;position:relative;-webkit-mask-image:radial-gradient(circle,#000 52%,#0000 76%);mask-image:radial-gradient(circle,#000 52%,#0000 76%)}.moon-phase-cycle__moon{width:100%;height:100%;display:block;overflow:visible}@keyframes moon-float{0%{transform:translateY(0)}to{transform:translateY(4px)}}@keyframes moon-glow-pulse{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}@keyframes moon-halo-pulse{0%,to{opacity:.7}50%{opacity:.95}}@media (width<=600px){.moon-phase-cycle{opacity:.85}.moon-phase-cycle__glow{inset:-32px}.moon-phase-cycle__halo{inset:-24px}}@media (height<=740px){.moon-phase-cycle__track{width:clamp(80px,15vmin,112px);height:clamp(80px,15vmin,112px)}}@media (prefers-reduced-motion:reduce){.moon-phase-cycle__track,.moon-phase-cycle__glow,.moon-phase-cycle__halo{animation:none}}.moon-cats{right:env(safe-area-inset-right,0px);bottom:env(safe-area-inset-bottom,0px);z-index:3;pointer-events:none;opacity:1;align-items:flex-end;line-height:0;transition:opacity .45s;display:flex;position:fixed}.moon-cats--hidden{opacity:0}.moon-cats__svg{vertical-align:bottom;filter:drop-shadow(0 10px 22px #0000006b)drop-shadow(0 0 18px #a8d4f51f);width:clamp(12rem,42vmin,21rem);height:auto;display:block;overflow:visible}.moon-cats__orange{transform-origin:100px 290px;animation:5s ease-in-out .35s infinite moon-cats-breathe}.moon-cats__black{transform-origin:100px 290px;animation:5s ease-in-out infinite moon-cats-breathe}@keyframes moon-cats-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@media (height<=740px){.moon-cats__svg{width:clamp(10rem,38vmin,16rem)}}@media (prefers-reduced-motion:reduce){.moon-cats__orange,.moon-cats__black{animation:none}}.letter-viewer{z-index:200;cursor:pointer;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.letter-viewer__overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#060c16b8;animation:.35s both overlay-in;position:absolute;inset:0}.letter-viewer__cluster{z-index:1;cursor:default;perspective:1200px;width:min(88vw,300px);height:190px;transition:width 1.15s cubic-bezier(.22,1,.36,1),height 1.15s cubic-bezier(.22,1,.36,1);position:relative}.letter-viewer__cluster--expand,.letter-viewer__cluster--full{width:min(92vw,595px);height:min(88vh,842px,130.114vw)}.letter-viewer__envelope{transform-style:preserve-3d;z-index:3;pointer-events:none;transition:opacity .6s .15s;position:absolute;inset:0}.letter-viewer__cluster--expand .letter-viewer__envelope,.letter-viewer__cluster--full .letter-viewer__envelope{opacity:0}.letter-viewer__envelope-back{background:linear-gradient(160deg,#d9ebfa 0%,#c5dff5 100%);border:2px solid #7eb8e8;border-radius:6px;position:absolute;inset:0}.letter-viewer__envelope-front{clip-path:polygon(0 0,50% 45%,100% 0,100% 100%,0 100%);z-index:2;background:linear-gradient(#b8d4f8 0%,#a8c8f0 100%);border:2px solid #7eb8e8;border-top:none;border-radius:0 0 6px 6px;height:65%;transition:opacity .4s;position:absolute;bottom:0;left:0;right:0}.letter-viewer__envelope-front--slide,.letter-viewer__envelope-front--expand,.letter-viewer__envelope-front--full{opacity:0}.letter-viewer__flap{clip-path:polygon(0 0,50% 100%,100% 0);transform-origin:top;z-index:4;backface-visibility:hidden;background:linear-gradient(#a8c8f0 0%,#7eb8e8 100%);border:2px solid #5b9fd4;border-bottom:none;height:105px;transition:transform .7s cubic-bezier(.33,1,.38,1);position:absolute;top:0;left:-2px;right:-2px;transform:rotateX(0)}.letter-viewer__flap--flap,.letter-viewer__flap--slide,.letter-viewer__flap--expand,.letter-viewer__flap--full{transform:rotateX(180deg)}.letter-viewer__sheet{z-index:1;transform-origin:bottom;background:#fffef8;border:1px solid #7eb8e866;border-radius:2px;width:78%;height:108px;transition:width 1.15s cubic-bezier(.22,1,.36,1),height 1.15s cubic-bezier(.22,1,.36,1),bottom 1.15s cubic-bezier(.22,1,.36,1),left 1.15s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1),box-shadow .8s,border-radius .6s;position:absolute;bottom:14px;left:50%;overflow:hidden;transform:translate(-50%)translateY(0);box-shadow:0 4px 16px #4a90d924}.letter-viewer__sheet--slide{z-index:2;transform:translate(-50%)translateY(-48px);box-shadow:0 12px 32px #4a90d933}.letter-viewer__sheet--expand,.letter-viewer__sheet--full{z-index:5;border-radius:3px;width:100%;height:100%;bottom:0;left:0;transform:none;box-shadow:0 4px 24px #4a90d926,0 20px 56px #2a354829}.letter-viewer__sheet-inner{opacity:0;height:100%;padding:.75rem 1rem;transition:opacity .55s .45s;overflow-y:auto}.letter-viewer__sheet--expand .letter-viewer__sheet-inner,.letter-viewer__sheet--full .letter-viewer__sheet-inner{opacity:1;padding:clamp(1.75rem,4vw,3.5rem) clamp(1.5rem,5vw,3.5rem)}.letter-viewer__header{border-bottom:1px solid #7eb8e840;margin-bottom:1.5rem;padding-bottom:1rem}.letter-viewer__date{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:.78rem;font-family:var(--sans);margin:0 0 .35rem}.letter-viewer__title{font-family:var(--display);color:#3a4d63;margin:0;font-size:clamp(1.35rem,3vw,1.85rem);font-weight:400;line-height:1.25}.letter-viewer__body p{font-family:var(--display);color:#3d4a5c;margin:0 0 1rem;font-size:clamp(.95rem,1.6vw,1.05rem);line-height:1.75}.letter-viewer__body p:last-child{margin-bottom:0}@media (width<=600px){.letter-viewer__cluster--expand,.letter-viewer__cluster--full{width:96vw;height:min(90vh,135.771vw)}.letter-viewer__sheet--expand .letter-viewer__sheet-inner,.letter-viewer__sheet--full .letter-viewer__sheet-inner{padding:1.75rem 1.35rem}}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.letter-viewer__cluster,.letter-viewer__sheet,.letter-viewer__flap,.letter-viewer__envelope,.letter-viewer__sheet-inner,.letter-viewer__envelope-front{transition-duration:.01ms!important}}.panel.panel--memories{width:100%;max-width:min(94vw,58rem);max-height:min(92vh,860px);padding:0;position:relative;overflow:hidden}.memories-panel__scroll{z-index:2;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;max-height:min(92vh,860px);padding:2rem 1.75rem 1.75rem;position:relative;overflow:hidden auto}.memories-bg{z-index:1;pointer-events:none;perspective:900px;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#000000d9 12% 88%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000000d9 12% 88%,#0000 100%)}.memories-bg__polaroid{left:var(--bg-x,50%);top:var(--bg-y,50%);width:clamp(4.5rem,11vw,6.5rem);opacity:var(--bg-opacity,.22);transform:translate3d(-50%, -50%, 0) rotate(var(--bg-rotate,0deg)) rotateY(var(--bg-flip,0deg)) scale(var(--bg-scale,1));transform-style:preserve-3d;backface-visibility:hidden;will-change:transform, opacity;background:#f8f6f2;border-radius:3px;padding:.28rem .28rem .65rem;position:absolute;box-shadow:0 10px 28px #00000047}.memories-bg__polaroid img{aspect-ratio:4/5;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:2px;width:100%;display:block}.memories-grid{grid-template-columns:repeat(4,1fr);gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.memory-card{cursor:pointer;width:100%;transform:rotate(var(--tilt,0deg));background:#f8f6f2;border:none;border-radius:4px;padding:.3rem .3rem .75rem;transition:transform .25s,box-shadow .25s;animation:.5s cubic-bezier(.22,1,.36,1) both memory-in;display:block;position:relative;box-shadow:0 2px 8px #00000038,0 8px 20px #0000002e}.memory-card:hover{z-index:1;transform:rotate(0)scale(1.04);box-shadow:0 12px 28px #00000052}.memory-card img{aspect-ratio:4/5;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;background:#1a2844;border-radius:2px;width:100%;display:block}.memory-card .new-tag{z-index:1;color:var(--retro-gold);font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;background:#0e182ad1;border:1px solid #c9b89673;border-radius:999px;padding:.1rem .35rem;font-size:.52rem;font-weight:600;line-height:1.2;position:absolute;top:.35rem;right:.35rem}.memory-lightbox{z-index:300;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:#060c16d1;justify-content:center;align-items:center;padding:1.5rem;animation:.3s both overlay-in;display:flex;position:fixed;inset:0;overflow:hidden}.memory-lightbox__stage{z-index:1;cursor:default;width:min(78vw,360px);position:relative}.memory-lightbox__stack{pointer-events:none;transform:translate3d(var(--stack-shift,0px), 0, 0);position:absolute;inset:0}.memory-lightbox__stack-card{width:100%;transform:translate3d(-50%, -50%, 0) translate3d(var(--sx,0px), var(--sy,0px), 0) rotate(var(--srot,0deg)) scale(var(--sscale,.9));opacity:calc(.42 + var(--stack-reveal,0) * .22);filter:brightness(.9)saturate(.92);background:#f7f4ef;border-radius:3px;margin:0;padding:.7rem .7rem 2.2rem;position:absolute;top:50%;left:50%;box-shadow:0 1px 2px #00000014,0 10px 24px #0003}.memory-lightbox__stack-card img{aspect-ratio:4/5;object-fit:cover;background:#e8e4dc;border-radius:2px;width:100%;display:block}.memory-lightbox__stack-card figcaption{text-align:center;font-family:var(--display);color:#4a5a6e8c;letter-spacing:.18em;margin:.55rem 0 0;font-size:.85rem}.memory-lightbox__polaroid{z-index:5;width:100%;transform:translate3d(var(--drag-x,0px), 0, 0) rotate(calc(var(--tilt,-2deg) + var(--drag-rot,0deg)));opacity:var(--drag-opacity,1);cursor:grab;touch-action:none;will-change:transform, opacity;background:#fefefe;border-radius:3px;margin:0;padding:.85rem .85rem 2.75rem;position:relative;box-shadow:0 1px 3px #00000014,0 12px 28px #2a354838,0 28px 64px #0000002e}.memory-lightbox__polaroid--dragging{cursor:grabbing}.memory-lightbox__polaroid--transition{transition:transform .46s cubic-bezier(.22,1,.36,1),opacity .4s cubic-bezier(.22,1,.36,1)}.memory-lightbox__polaroid--fresh{animation:.5s cubic-bezier(.22,1,.36,1) both polaroid-in}.memory-lightbox__photo{aspect-ratio:4/5;object-fit:cover;pointer-events:none;-webkit-user-drag:none;background:#f4f4f2;width:100%;max-height:min(58vh,460px);display:block}.memory-lightbox__caption{text-align:center;font-family:var(--display);color:var(--accent-deep);letter-spacing:.2em;margin:.85rem 0 0;font-size:1.1rem}.memory-lightbox__nav{z-index:2;width:2.75rem;height:2.75rem;color:var(--text,#e8edf5);cursor:pointer;background:#0e182a8c;border:1px solid #c9b89659;border-radius:50%;place-items:center;font-size:1.75rem;line-height:1;transition:background .2s,border-color .2s,opacity .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.memory-lightbox__nav:hover{background:#0e182ac7;border-color:#c9b8968c}.memory-lightbox__nav--prev{left:max(.75rem, env(safe-area-inset-left,0px))}.memory-lightbox__nav--next{right:max(.75rem, env(safe-area-inset-right,0px))}.memory-lightbox__hint{bottom:max(1.25rem, env(safe-area-inset-bottom,0px));font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#e8edf58c;pointer-events:none;margin:0;font-size:.72rem;position:absolute;left:50%;transform:translate(-50%)}@keyframes polaroid-in{0%{opacity:0;transform:translate3d(0, 24px, 0) rotate(var(--tilt,-2deg)) scale(.88)}to{opacity:1;transform:translate3d(0, 0, 0) rotate(var(--tilt,-2deg)) scale(1)}}@keyframes memory-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=720px){.panel.panel--memories{max-width:min(94vw,42rem)}.memories-panel__scroll{padding:1.75rem 1.25rem 1.5rem}.memories-grid{grid-template-columns:repeat(3,1fr);gap:.6rem}.memories-bg__polaroid{width:clamp(3.75rem,18vw,5.25rem)}.memory-lightbox__nav{opacity:.85;width:2.4rem;height:2.4rem;font-size:1.5rem}}@media (width<=480px){.memories-grid{grid-template-columns:repeat(2,1fr);gap:.55rem}.memory-card{padding:.25rem .25rem .65rem}.memories-bg__polaroid{width:clamp(3.25rem,22vw,4.5rem);padding:.22rem .22rem .5rem}.memory-lightbox{padding:1rem 3.25rem}.memory-lightbox__stage{width:min(72vw,320px)}.memory-lightbox__stack-card{opacity:calc(.36 + var(--stack-reveal,0) * .2)}}@media (prefers-reduced-motion:reduce){.memories-bg__polaroid{transform:translate3d(-50%, -50%, 0) rotate(var(--bg-rotate,0deg)) scale(var(--bg-scale,1));transition-duration:.01ms}.memory-lightbox__polaroid,.memory-lightbox__polaroid--fresh{transition:none;animation:none}}.panel.panel--quiz{flex:none;width:min(94vw,36rem);max-width:min(94vw,36rem);min-height:32rem;max-height:min(92vh,720px);padding:2.25rem 2.25rem 2rem;transition:opacity .35s;position:relative;overflow:visible}.pop-quiz__shell{align-items:center;gap:.85rem;max-width:min(96vw,52rem);display:flex;overflow:visible}.panel.panel--quiz-dimmed{opacity:.72}.pop-quiz__progress{text-align:center;margin-bottom:1rem}.pop-quiz__progress-label{color:var(--muted);letter-spacing:.06em;font-size:.8rem;display:block}.pop-quiz__progress-dots{justify-content:center;gap:.35rem;margin:.5rem 0;display:flex}.pop-quiz__dot{background:#7eb8e840;border-radius:50%;width:.45rem;height:.45rem;transition:background .3s,transform .3s}.pop-quiz__dot--current{background:var(--accent);transform:scale(1.35)}.pop-quiz__dot--done{background:var(--accent-deep)}.pop-quiz__stats{color:var(--accent);opacity:.85;font-size:.72rem;display:block}.pop-quiz__round-notice{border:1px solid var(--surface-border);text-align:center;color:var(--text-soft);background:#4a7fad33;border-radius:.65rem;margin:0 0 .75rem;padding:.5rem .75rem;font-size:.85rem;animation:.4s both fade-up}.pop-quiz__complete{z-index:20;flex:none;width:min(17rem,78vw);animation:.55s cubic-bezier(.22,1,.36,1) both pop-quiz-dialogue-in;position:relative}.pop-quiz__complete-card{border:1px solid var(--surface-border);background:var(--panel-bg);text-align:center;border-radius:1.1rem;width:100%;padding:1.75rem 1.5rem 1.5rem;position:relative;box-shadow:0 20px 48px #0006}.pop-quiz__complete-card:before{content:"";border-left:1px solid var(--surface-border);border-bottom:1px solid var(--surface-border);background:var(--panel-bg);width:.85rem;height:.85rem;position:absolute;top:50%;left:-.55rem;transform:translateY(-50%)rotate(45deg);box-shadow:-4px 4px 12px #0003}.pop-quiz__complete-heart{color:var(--accent-bright);filter:drop-shadow(0 4px 12px #7eb8e859);margin-bottom:.75rem;font-size:2.5rem;line-height:1;animation:1.4s ease-in-out infinite pop-quiz-heart-pulse;display:block}.pop-quiz__complete-text{font-family:var(--display);color:var(--text);margin:0 0 1.25rem;font-size:1.35rem;line-height:1.45}.pop-quiz__complete-btn{border:1px solid var(--surface-border);color:var(--text);cursor:pointer;background:#4a7fad47;border-radius:999px;padding:.65rem 1.25rem;font-family:inherit;font-size:.9rem;transition:background .2s,transform .2s,box-shadow .2s}.pop-quiz__complete-btn:hover{background:#4a7fad73;transform:translateY(-1px);box-shadow:0 6px 16px #00000040}@keyframes pop-quiz-heart-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes pop-quiz-dialogue-in{0%{opacity:0;transform:translate(2.5rem)}to{opacity:1;transform:translate(0)}}.pop-quiz__stage{min-height:19rem;transition:opacity .35s,transform .35s}.pop-quiz__stage--out{opacity:.45;pointer-events:none;transform:translateY(6px)}.pop-quiz__badge{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0 0 .35rem;font-size:.75rem}.pop-quiz__question{flex-direction:column;min-height:18rem;margin-top:.5rem;display:flex;position:relative}.pop-quiz__success-slot{min-height:4.25rem;margin-top:auto;padding-top:.75rem}.pop-quiz__prompt{font-family:var(--display);color:var(--text);margin:0 0 1.25rem;font-size:1.25rem;line-height:1.5}.pop-quiz__options{flex-direction:column;gap:.75rem;display:flex}.pop-quiz__option{border:1px solid var(--surface-border);background:var(--panel-item-bg);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:.85rem;padding:.85rem 1.1rem;font-family:inherit;font-size:1rem;transition:background .25s,border-color .25s,box-shadow .25s,transform .2s,color .25s;position:relative}.pop-quiz__option:hover:not(:disabled):not(.pop-quiz__option--correct){background:var(--panel-item-hover);transform:translate(4px);box-shadow:0 4px 14px #00000038}.pop-quiz__option:disabled:not(.pop-quiz__option--correct){opacity:.55;cursor:default}.pop-quiz__option--correct{cursor:default;transform:scale(1.02);color:#b8f0d0!important;opacity:1!important;background:#4caf7a47!important;border-color:#5ecf96!important;box-shadow:0 0 0 2px #4caf7a33,0 6px 20px #4caf7a2e!important}.pop-quiz__option--locked{pointer-events:none;cursor:default}.pop-quiz__question--tf{overflow:visible}.pop-quiz__tf-zone{min-height:8rem;margin:0 -3rem;position:relative;overflow:visible}.pop-quiz__option--runaway{pointer-events:none;-webkit-user-select:none;user-select:none;cursor:default;text-align:center;z-index:5;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;width:auto;min-width:5.5rem;padding:.75rem 1rem;transition:transform .12s ease-out;display:inline-flex;position:absolute;top:72%;left:50%}.pop-quiz__option--runaway:hover{pointer-events:none}.pop-quiz__option--runaway-touch{transition:none}.panel-overlay--quiz{cursor:default}.pop-quiz__tf-arena{justify-content:center;align-items:center;min-height:4rem;padding:.5rem;display:flex;position:relative;overflow:visible}.pop-quiz__option--true{text-align:center;min-width:6.5rem;padding:.85rem 1.5rem}.pop-quiz__option--morphing{border-color:var(--accent);color:var(--accent-bright);background:#4a7fad59}.pop-quiz__success{border:1px solid var(--surface-border);font-family:var(--display);color:var(--text-soft);text-align:center;background:#4a7fad38;border-radius:.85rem;margin:0;padding:.85rem 1rem;font-size:1rem;line-height:1.5;animation:.5s cubic-bezier(.22,1,.36,1) both fade-up}@keyframes fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=720px){.pop-quiz__shell{flex-direction:column;align-items:stretch;gap:.75rem}.panel.panel--quiz{width:min(94vw,36rem);min-height:30rem}.pop-quiz__complete{width:min(94vw,36rem);animation-name:pop-quiz-dialogue-in-mobile}.pop-quiz__complete-card:before{top:-.45rem;left:50%;transform:translate(-50%)rotate(135deg)}}@keyframes pop-quiz-dialogue-in-mobile{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.pop-quiz__complete{animation-duration:.01ms}.pop-quiz__stage{transition-duration:.01ms}}.panel.panel--facts{max-width:min(94vw,34rem);max-height:min(88vh,640px)}.facts-list{flex-direction:column;gap:.7rem;margin:1.25rem 0 0;padding:0;list-style:none;display:flex}.facts-list__item{background:var(--panel-item-bg);border:1px solid #7eb8e824;border-radius:1rem;grid-template-columns:auto 1fr;align-items:start;gap:.85rem;padding:.95rem 1rem;animation:.45s cubic-bezier(.22,1,.36,1) both fact-in;display:grid}.facts-list__num{font-family:var(--display);color:var(--retro-gold);opacity:.8;padding-top:.1rem;font-size:.95rem;line-height:1.4}.facts-list__title{font-family:var(--display);color:var(--text);margin:0 0 .3rem;font-size:1.05rem;font-weight:400;line-height:1.3}.facts-list__detail{color:var(--text-soft);margin:0;font-size:.88rem;line-height:1.55}@keyframes fact-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.facts-list__item{animation:none}}.panel.panel--music{max-width:min(94vw,36rem);max-height:min(88vh,640px)}.playlist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.35rem 0 0;padding:0;list-style:none;display:grid}.playlist-grid>li{min-width:0;animation:.45s cubic-bezier(.22,1,.36,1) both music-in}.playlist-card{background:var(--panel-item-bg);color:inherit;border:1px solid #7eb8e824;border-radius:1.1rem;flex-direction:column;gap:.55rem;padding:.75rem;text-decoration:none;transition:background .2s,border-color .2s,transform .2s,box-shadow .2s;display:flex}.playlist-card:hover{background:var(--panel-item-hover);border-color:#c9b89659;transform:translateY(-2px);box-shadow:0 10px 24px #00000047}.playlist-card__cover{aspect-ratio:1;background:#1a2844;border-radius:.75rem;width:100%;display:block;overflow:hidden;box-shadow:0 6px 18px #00000059}.playlist-card__cover img{object-fit:cover;object-position:center;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.playlist-card__title{font-family:var(--display);color:var(--text);font-size:1.05rem;line-height:1.25}.playlist-card__subtitle{color:var(--muted);margin-top:-.2rem;font-size:.78rem;line-height:1.35}@keyframes music-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){.playlist-grid{gap:.75rem}.playlist-card{padding:.6rem}.playlist-card__title{font-size:.92rem}}@media (prefers-reduced-motion:reduce){.playlist-grid>li{animation:none}}.bottom-sections{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;width:100%;max-width:52rem;margin-top:2.5rem;animation:.9s cubic-bezier(.22,1,.36,1) .8s both fade-up;display:grid}.section-card{aspect-ratio:1;border:1px solid var(--surface-border);background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;min-width:0;color:inherit;text-align:center;box-sizing:border-box;border-radius:1.25rem;flex-direction:column;justify-content:center;align-items:center;gap:.45rem;padding:.85rem .5rem;font-family:inherit;transition:transform .25s,box-shadow .25s,background .25s;display:flex;position:relative;box-shadow:0 4px 20px #00000047,inset 0 1px #a8d4f50f}.section-card__new{z-index:1;background:#0e182ad1;position:absolute;top:.45rem;right:.45rem}.section-card:hover{background:var(--surface-hover);box-shadow:0 10px 28px #00000059, 0 0 24px var(--surface-glow);transform:translateY(-4px)}.section-card:active{transform:translateY(-1px)}.section-card__icon{width:4.5rem;height:3.5rem}.section-card__label{font-family:var(--display);color:var(--text);font-size:1.05rem;line-height:1.2}.section-card__desc{color:var(--muted);font-size:.72rem;line-height:1.3}.panel-overlay{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#060c16b8;justify-content:center;align-items:center;padding:1.5rem;animation:.35s both overlay-in;display:flex;position:fixed;inset:0}.panel{background:var(--panel-bg);border:1px solid var(--surface-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:1.5rem;width:100%;max-width:28rem;max-height:min(85vh,520px);padding:2rem 1.75rem 1.75rem;animation:.45s cubic-bezier(.22,1,.36,1) both panel-in;position:relative;overflow-y:auto;box-shadow:0 20px 56px #00000073,inset 0 0 0 1px #c9b8960d,inset 0 1px #a8d4f50f}.panel--placeholder{text-align:center;max-width:22rem}.panel__close{width:2rem;height:2rem;color:var(--muted);cursor:pointer;background:#7eb8e81f;border:none;border-radius:50%;font-size:.85rem;transition:background .2s,color .2s;position:absolute;top:1rem;right:1rem}.panel__close:hover{color:var(--text);background:#7eb8e83d}.panel__title{font-family:var(--display);color:var(--text);margin:0;font-size:1.6rem}.panel__subtitle{color:var(--muted);margin:.5rem 0 1.5rem;font-size:.95rem}.panel__coming-soon{color:var(--accent);margin:0 0 .75rem;font-size:1.5rem;animation:2s ease-in-out infinite twinkle}.letter-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.letter-list__item{border:1px solid var(--surface-border);background:var(--panel-item-bg);cursor:pointer;text-align:left;width:100%;color:inherit;border-radius:1rem;align-items:center;gap:1rem;padding:.85rem 1rem;font-family:inherit;transition:transform .2s,box-shadow .2s,background .2s;animation:.5s cubic-bezier(.22,1,.36,1) both fade-up;display:flex}.letter-list__item:hover{background:var(--panel-item-hover);transform:translate(4px);box-shadow:0 6px 20px #00000047}.letter-list__envelope{flex-shrink:0;width:2.5rem;height:1.75rem;position:relative}.letter-list__body{background:#264770;border:1.5px solid #7eb8e8;border-radius:3px;position:absolute;inset:0}.letter-list__flap{clip-path:polygon(0 0,50% 100%,100% 0);background:#3a6290;border-top:1.5px solid #7eb8e8;height:.9rem;position:absolute;top:0;left:0;right:0}.letter-list__text{flex-direction:column;gap:.15rem;min-width:0;display:flex}.letter-list__title-row{align-items:center;gap:.45rem;min-width:0;display:flex}.letter-list__title{font-family:var(--display);color:var(--text);font-size:1rem}.new-tag{color:var(--retro-gold);font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase;background:#c9b8962e;border:1px solid #c9b89673;border-radius:999px;flex-shrink:0;padding:.12rem .4rem;font-size:.58rem;font-weight:600;line-height:1.2}.letter-list__preview{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}.letter-list__date{color:var(--accent);opacity:.8;font-size:.72rem}@keyframes panel-in{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=600px){.bottom-sections{gap:.4rem;max-width:100%;margin-top:clamp(1rem,2.2vh,1.65rem)}.section-card{border-radius:1rem;gap:.25rem;padding:.45rem .2rem}.section-card__new{padding:.08rem .28rem;font-size:.48rem;top:.25rem;right:.25rem}.section-card__icon{flex-shrink:0;width:2.4rem;height:1.9rem}.section-card__label{font-size:.62rem;line-height:1.15}.section-card__desc{display:none}}.password-gate{z-index:10000;background:0 0;justify-content:center;align-items:center;padding:2rem;transition:opacity 4.5s cubic-bezier(.33,0,.2,1);display:flex;position:fixed;inset:0}.password-gate--unlocking{opacity:0;pointer-events:none}.password-gate__form{flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:16rem;display:flex}.password-gate__label{letter-spacing:.06em;color:#666;text-transform:lowercase;font-family:system-ui,sans-serif;font-size:.9rem;font-weight:400}.password-gate__input{color:#aaa;text-align:center;caret-color:#666;background:0 0;border:none;border-bottom:1px solid #333;border-radius:0;outline:none;width:100%;padding:.6rem 0;font-family:system-ui,sans-serif;font-size:.95rem}.password-gate__input:focus{color:#ccc;border-bottom-color:#555}.password-gate--error .password-gate__input{border-bottom-color:#422;animation:.4s gate-shake}@keyframes gate-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (prefers-reduced-motion:reduce){.password-gate{transition-duration:.01ms}}.app-site{height:100svh;max-height:100svh;position:relative;overflow:hidden}.app-site--hidden{opacity:0;pointer-events:none}.app-site--revealing{opacity:1;transition:opacity 4.5s cubic-bezier(.33,0,.2,1) .5s}.site-veil{z-index:9999;pointer-events:none;opacity:1;background:#000;transition:opacity 4.5s cubic-bezier(.33,0,.2,1);position:fixed;inset:0}.site-veil--out{opacity:0}.site-veil--gone{visibility:hidden}.page{z-index:1;box-sizing:border-box;justify-content:center;align-items:center;height:100svh;max-height:100svh;padding:clamp(.75rem,2.5vh,2rem) clamp(1rem,4vw,2rem);display:flex;position:relative;overflow:hidden}.page__content{flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:52rem;min-height:0;max-height:100%;display:flex}.hero-card{text-align:center;background:var(--surface);border:1px solid var(--surface-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:2rem;width:100%;max-width:36rem;padding:3rem 2.5rem 2.75rem;animation:1.2s cubic-bezier(.22,1,.36,1) both card-enter;position:relative;box-shadow:0 10px 40px #00000059,inset 0 0 0 1px #c9b8960f,inset 0 1px #a8d4f514}.hero-card__sparkles{pointer-events:none;position:absolute;inset:0}.hero-card__sparkles span{color:var(--accent);opacity:.6;font-size:1rem;animation:3s ease-in-out infinite twinkle;position:absolute}.hero-card__sparkles span:first-child{animation-delay:0s;top:12%;left:10%}.hero-card__sparkles span:nth-child(2){animation-delay:1s;top:18%;right:12%}.hero-card__sparkles span:nth-child(3){animation-delay:2s;bottom:14%;left:14%}.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:0 0 1rem;font-size:.82rem;animation:.9s cubic-bezier(.22,1,.36,1) .2s both fade-up}.title{font-family:var(--display);flex-flow:wrap;justify-content:center;align-items:baseline;gap:.35em;margin:0;font-size:clamp(1.9rem,5.5vw,2.75rem);font-weight:400;line-height:1.2;animation:.9s cubic-bezier(.22,1,.36,1) .35s both fade-up;display:flex}.title-line--prefix{color:var(--text)}.title-line{color:var(--text);display:inline}.title-line--accent{background:linear-gradient(135deg, var(--accent-bright) 0%, var(--retro-gold) 48%, var(--accent) 100%);color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out infinite shimmer}.subtitle{max-width:24rem;color:var(--muted);margin:1.25rem auto 0;font-size:1.08rem;line-height:1.65;animation:.9s cubic-bezier(.22,1,.36,1) .5s both fade-up}.heart-row{color:var(--accent);justify-content:center;gap:.6rem;margin-top:2rem;font-size:1.1rem;animation:.9s cubic-bezier(.22,1,.36,1) .65s both fade-up;display:flex}.heart-beat{animation:1.4s ease-in-out infinite heartbeat;display:inline-block}.heart-beat--delay{opacity:.75;font-size:.85rem;animation-delay:.2s}.heart-beat--delay-2{opacity:.55;font-size:.7rem;animation-delay:.4s}@keyframes card-enter{0%{opacity:0;transform:translateY(24px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes shimmer{0%,to{background-position:0%}50%{background-position:100%}}@keyframes twinkle{0%,to{opacity:.3;transform:scale(.9)rotate(0)}50%{opacity:.9;transform:scale(1.15)rotate(12deg)}}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}45%{transform:scale(1.15)}}@media (width<=600px){.page{padding:clamp(.65rem,2vh,1.25rem) clamp(.65rem,3.5vw,1rem)}.page__content{max-width:100%}.hero-card{border-radius:1.65rem;max-width:100%;padding:1.85rem 1.4rem 1.65rem}.title{font-size:clamp(2.05rem,6.5vw,2.5rem)}.eyebrow{margin-bottom:.75rem;font-size:.78rem}.subtitle{max-width:100%;margin-top:1rem;font-size:1.02rem}.heart-row{margin-top:1.35rem;font-size:1.15rem}}
