:root{--night:#08191e;--forest:#0d2827;--ink:#102f31;--lake:#2d7280;--mist:#9ec5c1;--moon:#e2ece8;--muted:#9bb6b1;--paper:#dfe9e5;--line:rgba(177,213,205,.23);--serif:"Songti SC","STSong","Noto Serif SC","Source Han Serif SC",serif;--sans:"PingFang SC","Noto Sans SC","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:var(--night)}body{margin:0;color:var(--paper);font-family:var(--serif);-webkit-font-smoothing:antialiased}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:1px solid rgba(198,232,222,.85);outline-offset:4px}.letter-experience{min-height:100vh;overflow:clip;background:var(--night);transition:background-color 1.5s ease}.letter-experience[data-mood=water]{--night:#081c24;--forest:#0b2d2b}.letter-experience[data-mood=memory]{--night:#172722;--forest:#25413a}.letter-experience[data-mood=quiet]{--night:#0b2025;--forest:#10302e}.letter-experience[data-mood=dawn]{--night:#102b33;--forest:#173b39}.preload-screen{min-height:100vh;background:var(--night)}.ambient-field{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 13%,rgba(36,101,112,.28),transparent 48%),radial-gradient(ellipse at 85% 70%,rgba(20,81,70,.18),transparent 44%),linear-gradient(145deg,#071a22 0,var(--night) 50%,#0a2525 100%);transition:background 1.7s ease}.ambient-field:before{content:"";position:absolute;inset:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");mix-blend-mode:screen}.ambient-haze{position:absolute;width:55vw;height:28vh;filter:blur(55px);opacity:.14;border-radius:50%;background:#2d8890;animation:haze-drift 22s ease-in-out infinite alternate}.ambient-haze-one{top:5vh;left:-13vw}.ambient-haze-two{right:-12vw;bottom:8vh;background:#378875;animation-delay:-9s}.ambient-particles{position:absolute;inset:0;opacity:.7}.ambient-cursor{position:absolute;width:260px;height:260px;left:calc(var(--cursor-x, -400px) - 130px);top:calc(var(--cursor-y, -400px) - 130px);border-radius:50%;background:radial-gradient(circle,rgba(125,214,204,.08),transparent 68%);transition:left .25s ease-out,top .25s ease-out}.ambient-ridge{position:absolute;left:-5%;right:-5%;bottom:-2vh;height:27vh;opacity:.3;background:linear-gradient(180deg,transparent,rgba(4,22,22,.22) 25%,rgba(4,17,20,.73));-webkit-clip-path:polygon(0 54%,5% 49%,9% 56%,16% 40%,23% 52%,30% 34%,37% 53%,44% 45%,51% 55%,57% 39%,64% 51%,71% 30%,78% 47%,86% 38%,94% 53%,100% 43%,100% 100%,0 100%);clip-path:polygon(0 54%,5% 49%,9% 56%,16% 40%,23% 52%,30% 34%,37% 53%,44% 45%,51% 55%,57% 39%,64% 51%,71% 30%,78% 47%,86% 38%,94% 53%,100% 43%,100% 100%,0 100%)}.door-transition,.ending-buffer,.future-letter-scene,.opening-scene,.password-gate{position:relative;z-index:1;min-height:100svh}.door-transition{display:grid;place-items:center;overflow:hidden;background:rgba(3,14,19,.62);animation:door-dim 4.4s ease both}.door-prologue{position:absolute;inset:0;z-index:5;display:grid;place-items:center;color:rgba(226,236,232,.88);font-size:clamp(1.05rem,2vw,1.3rem);letter-spacing:.2em;text-align:center;pointer-events:none}.door-prologue p{position:absolute;margin:0}.door-glow{position:absolute;width:min(78vw,720px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(133,202,218,.3),rgba(62,128,145,.12) 34%,transparent 70%);animation:door-glow 4.4s ease both}.door{position:relative;z-index:2;width:min(58vw,430px);height:min(78vw,600px);border:1px solid rgba(115,174,166,.62);background:repeating-linear-gradient(90deg,rgba(44,102,78,.12) 0 3px,transparent 3px 14px),linear-gradient(120deg,#123b35,#0b2929 48%,#061b22);box-shadow:0 0 0 18px rgba(7,28,29,.42),0 0 100px rgba(93,183,198,.27),inset 0 0 35px rgba(155,215,199,.1);transform-origin:left center;animation:door-open 4.4s cubic-bezier(.22,1,.36,1) forwards}.door-panel{position:absolute;inset:7% 9%;border:1px solid rgba(128,186,171,.2);box-shadow:inset 0 0 0 1px rgba(5,22,25,.5)}.door-seam{position:absolute;top:0;bottom:0;left:50%;width:1px;background:rgba(5,19,22,.65)}.door-handle{position:absolute;right:13%;top:52%;width:7px;height:7px;border:1px solid rgba(210,226,207,.65);border-radius:50%;box-shadow:0 0 10px rgba(143,210,211,.5)}.door-light{position:absolute;z-index:1;width:3px;height:66%;background:rgba(255,245,218,.92);box-shadow:0 0 42px 16px rgba(223,239,210,.62);animation:door-light 4.4s ease both}.door-butterfly{position:absolute;z-index:3;width:34px;opacity:.5;filter:drop-shadow(0 0 9px currentColor)}.door-butterfly-blue{left:27%;top:38%;color:#79cbd1;animation:door-butterfly-blue 3s ease both}.door-butterfly-green{right:26%;bottom:31%;width:28px;color:#7ab99e;animation:door-butterfly-green 3s ease both}.opening-scene{display:grid;place-items:center;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 50% 42%,rgba(78,157,164,.18),transparent 22%),linear-gradient(145deg,#06151f,#082623 58%,#07191d);animation:opening-dawn 5s ease-out both;transition:opacity 1.1s ease,transform 1.1s cubic-bezier(.22,1,.36,1),filter 1.1s ease}.opening-scene:before{content:"";position:absolute;width:min(58vw,440px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(151,224,215,.25),rgba(100,189,193,.08) 36%,transparent 70%);opacity:.75;animation:moon-rise 3s ease-out both}.opening-scene:after{content:"";position:absolute;inset:0;opacity:.42;background-image:radial-gradient(circle at 12% 22%,rgba(211,244,232,.72) 0 1px,transparent 1.5px),radial-gradient(circle at 74% 18%,rgba(211,244,232,.6) 0 1px,transparent 1.5px),radial-gradient(circle at 86% 62%,rgba(211,244,232,.55) 0 1px,transparent 1.5px),radial-gradient(circle at 27% 72%,rgba(211,244,232,.5) 0 1px,transparent 1.5px);animation:stardust 4s ease-out both}.opening-scene.is-closing{opacity:0;transform:scale(1.035);filter:blur(2px);pointer-events:none}.opening-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;padding:2rem}.opening-name{border:0;padding:0;background:none;color:var(--moon);cursor:pointer;font:400 clamp(2.5rem,7vw,4.6rem)/1.1 var(--serif);letter-spacing:.16em;text-indent:.16em;text-shadow:0 0 32px rgba(138,210,208,.18)}.opening-rule{width:48px;height:1px;margin:2.1rem 0 1.8rem;background:rgba(183,217,208,.42)}.opening-lead{margin:0;color:var(--paper);font-size:clamp(1.03rem,2vw,1.22rem);letter-spacing:.13em}.opening-sub{margin:1.15rem 0 0;color:rgba(210,227,221,.6);font-size:.92rem;line-height:2.1;letter-spacing:.11em}.open-letter{display:inline-flex;align-items:center;gap:.65rem;margin-top:3.5rem;border:1px solid rgba(181,222,215,.33);padding:.9rem 1.2rem 1rem 1.35rem;border-radius:999px;background:rgba(20,55,57,.22);color:var(--paper);cursor:pointer;font-size:.82rem;letter-spacing:.14em;transition:border-color .35s ease,background .35s ease,transform .35s ease,box-shadow .35s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.open-letter:hover{border-color:rgba(181,222,215,.7);background:rgba(41,99,97,.3);box-shadow:0 0 32px rgba(86,185,180,.15);transform:translateY(-2px)}.opening-date{margin:6.5rem 0 0;color:rgba(178,204,198,.38);font:400 .63rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase}.name-reveal{position:relative;z-index:1;display:grid;place-items:center;min-height:100svh;overflow:hidden;background:radial-gradient(circle at 50% 40%,rgba(98,160,153,.12),transparent 25%),linear-gradient(145deg,#061722,#092b29 62%,#07191d);animation:name-scene-in 2.8s ease-out both}.name-reveal-stage-light{position:absolute;z-index:1;top:-18vh;left:50%;width:min(46vw,420px);height:82vh;transform:translateX(-50%) scaleY(.2);transform-origin:50% 0;background:linear-gradient(180deg,rgba(220,239,215,.25),rgba(175,220,204,.08) 45%,transparent);-webkit-clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);opacity:0;animation:stage-light-open 2.1s ease-out .15s forwards}.name-reveal-copy{position:relative;z-index:2;width:min(620px,calc(100% - 3rem));text-align:center}.name-reveal-name{margin:0 0 2rem;color:var(--moon);font:400 clamp(2.1rem,6vw,3.5rem)/1.1 var(--serif);letter-spacing:.2em;text-indent:.2em;text-shadow:0 0 28px rgba(145,222,213,.2);animation:name-breathe 2.8s ease-in-out 1.5s infinite}.name-reveal-line,.name-reveal-note{color:rgba(219,235,227,.82);font-size:clamp(1rem,2.3vw,1.2rem);line-height:2.15;letter-spacing:.12em}.name-reveal-note{margin-top:1.8rem;color:rgba(211,229,223,.62);font-size:.9rem}.opening-corner{position:absolute;bottom:2rem;z-index:2;color:rgba(193,214,208,.35);font:.65rem/1 var(--sans);letter-spacing:.2em}.opening-corner-left{left:2.5rem;writing-mode:vertical-rl}.opening-corner-right{right:2.5rem}.opening-quiet-line{position:absolute;top:16%;left:50%;width:1px;height:32vh;background:linear-gradient(180deg,transparent,rgba(176,220,210,.17),transparent)}.opening-butterfly{position:absolute;width:50px;opacity:.42;filter:drop-shadow(0 0 10px currentColor)}.opening-butterfly-one{top:28%;left:16%;color:#71c5c8;animation:butterfly-float-one 16s ease-in-out infinite}.opening-butterfly-two{right:13%;bottom:23%;width:36px;color:#76b59e;opacity:.28;animation:butterfly-float-two 21s ease-in-out infinite}.letter-shell{position:relative;z-index:1;min-height:100vh;padding:0 2rem 10rem}.letter-header{width:min(760px,100%);margin:0 auto;padding:18vh 0 13vh;text-align:center}.eyebrow{color:rgba(177,211,204,.58);font:500 .64rem/1.3 var(--sans);letter-spacing:.27em;text-transform:uppercase}.letter-header h1{margin:1.65rem 0 .7rem;color:var(--moon);font:400 clamp(2.4rem,6vw,4.2rem)/1.15 var(--serif);letter-spacing:.15em;text-indent:.15em}.letter-header p{margin:0;color:rgba(198,220,214,.62);font-size:.97rem;letter-spacing:.12em}.header-mark{display:flex;align-items:center;justify-content:center;gap:.7rem;margin-top:2.6rem}.header-mark span{display:block;width:42px;height:1px;background:var(--line)}.header-mark .butterfly{width:28px;color:#83beb3;opacity:.7}.letter-body{width:min(730px,100%);margin:0 auto}.letter-section{position:relative;padding:0 0 2.5rem;transition:background-color 1.5s ease}.letter-section.mood-memory{--section-accent:#cab98d}.letter-section.mood-water{--section-accent:#8cc6c9}.letter-section.mood-dawn{--section-accent:#abd2c5}.letter-section.mood-quiet{--section-accent:#a0bab8}.chapter-marker{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;align-items:center;grid-column-gap:1rem;column-gap:1rem;padding:8rem 0 4rem;color:var(--section-accent,#8fc1ba)}.chapter-index{grid-column:1;grid-row:1/span 2;font:.6rem/1 var(--sans);letter-spacing:.22em;opacity:.62;writing-mode:vertical-rl}.chapter-line{width:100%;height:1px;background:linear-gradient(90deg,rgba(159,206,198,.36),transparent)}.chapter-title{grid-column:2;grid-row:2;margin-top:.7rem;color:rgba(210,229,221,.86);font-size:1.07rem;letter-spacing:.16em}.chapter-butterfly{grid-column:3;grid-row:1/span 2;width:40px;opacity:.55}.letter-paragraph{margin:0;color:var(--paper);font-size:clamp(1.04rem,2.1vw,1.17rem);line-height:2.02;letter-spacing:.025em;text-wrap:pretty}.letter-paragraph+.letter-paragraph{margin-top:1.65rem}.letter-opening .letter-paragraph:first-child{margin-top:0}.letter-paragraph .is-bold{color:#f1f6f1;font-weight:600}.letter-paragraph.is-quote{color:#d7e8e2}.letter-paragraph.is-breathing{position:relative;margin-top:4.7rem;margin-bottom:5rem;color:#edf4ef;font-size:clamp(1.22rem,3vw,1.62rem);line-height:1.85;letter-spacing:.08em;text-align:center}.letter-paragraph.is-breathing:before{content:"";display:block;width:18px;height:1px;margin:0 auto 2rem;background:var(--section-accent,#8fc1ba);opacity:.5}.letter-paragraph.is-breathing:after{content:"";position:absolute;left:50%;bottom:-3.2rem;width:1px;height:1.5rem;background:linear-gradient(var(--section-accent,#8fc1ba),transparent);opacity:.36}.letter-opening-replacement{color:rgba(219,235,227,.84);line-height:2.15}.letter-blank{height:1.2rem}.letter-rule{height:1px;margin:3.7rem auto;width:45%;background:linear-gradient(90deg,transparent,var(--line),transparent)}.letter-end{position:relative;display:flex;flex-direction:column;align-items:center;padding:12rem 0 9rem;text-align:center}.letter-end .eyebrow{margin-bottom:2.6rem}.letter-end-follow,.letter-end-main{margin:0;color:rgba(219,235,227,.82);font-size:clamp(1.08rem,2.2vw,1.25rem);line-height:2.15;letter-spacing:.12em}.letter-end-main{color:var(--moon)}.letter-end-follow{margin-top:2.7rem;color:rgba(219,235,227,.72)}.letter-end-breath{display:flex;align-items:center;justify-content:center;gap:.55rem;height:1.3rem;margin-top:2.8rem}.letter-end-breath span{width:4px;height:4px;border-radius:50%;background:rgba(174,222,211,.62);animation:letter-end-breathe 2.8s ease-in-out infinite}.letter-end-breath span:nth-child(2){animation-delay:.35s}.letter-end-breath span:nth-child(3){animation-delay:.7s}.letter-end-butterfly{position:absolute;top:4.5rem;width:44px;color:#82c4bc;opacity:.56;animation:gentle-hover 8s ease-in-out infinite}.back-to-letter,.letter-end-continue{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(180,218,209,.28);border-radius:2px;padding:.72rem 1.2rem;margin-top:3.1rem;background:rgba(20,57,57,.12);color:rgba(215,234,226,.7);cursor:pointer;font-size:.8rem;letter-spacing:.14em;transition:color .3s ease,border-color .3s ease,background .3s ease}.back-to-letter:hover,.letter-end-continue:hover{border-color:rgba(206,239,229,.62);background:rgba(41,99,97,.2);color:var(--moon)}.reading-progress{position:fixed;right:2.5rem;top:50%;z-index:3;width:24px;height:38vh;transform:translateY(-50%)}.reading-progress>span{position:absolute;top:50%;left:50%;color:rgba(183,217,208,.58);font:.63rem/1 var(--sans);letter-spacing:.16em;white-space:nowrap;writing-mode:vertical-rl;transform:translate(-50%,-50%)}.progress-track{position:absolute;left:50%;top:0;width:1px;height:100%;background:rgba(169,205,199,.17);transform:translateX(-50%)}.progress-fill{width:1px;max-height:100%;background:rgba(174,222,211,.72);transition:height .25s ease-out}.progress-butterfly{position:absolute;left:50%;top:calc(var(--progress, 0) * 100%);width:30px;color:#8dc5bf;opacity:.8;transform:translate(-50%,-50%)}.progress-end{position:absolute;left:calc(50% - 2px);bottom:0;width:5px;height:5px;border:1px solid rgba(179,215,207,.4);border-radius:50%}.reading-progress .progress-butterfly{top:calc(var(--progress, 0) * 100%);transition:top .3s ease-out}.music-toggle{position:fixed;right:2rem;bottom:1.8rem;z-index:4;display:grid;place-items:center;width:56px;height:56px;border:1px solid rgba(115,205,194,.42);border-radius:50%;background:rgba(8,35,40,.52);color:rgba(206,239,228,.82);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color .3s ease,color .3s ease,box-shadow .6s ease,opacity .3s ease,transform .3s ease}.music-toggle:hover{border-color:rgba(198,234,224,.7);color:#edf9f3;box-shadow:0 0 16px rgba(86,185,180,.14)}.music-toggle:active{transform:scale(.96)}.music-toggle.is-playing{color:rgba(219,240,231,.94);box-shadow:0 0 0 0 rgba(86,185,180,.2);animation:music-breathe 3.8s ease-in-out infinite}.music-toggle.is-loading{opacity:.48;cursor:wait}.music-toggle:disabled{cursor:wait}.music-toggle.is-pressing{border-color:rgba(118,214,197,.5);box-shadow:0 0 18px rgba(99,211,193,.12)}.music-toggle.is-pressing:after{content:"";position:absolute;inset:-5px;border:1px solid rgba(99,211,193,.23);border-radius:50%;animation:music-long-press-glow 3s ease both;pointer-events:none}.music-egg-butterfly{position:absolute;left:-30px;top:-27px;width:24px;color:#7bbca4;opacity:.7;pointer-events:none;animation:music-egg-butterfly-fly 3s cubic-bezier(.22,1,.36,1) both}.music-symbol{display:block;font:400 1.35rem/1 var(--serif);transform:translateY(-1px)}.music-invitation{position:fixed;left:50%;bottom:clamp(2.5rem,8vh,6rem);z-index:5;width:min(500px,calc(100vw - 2.7rem));padding:2rem 2.1rem 1.9rem;border:1px solid rgba(125,205,194,.24);background:linear-gradient(145deg,rgba(12,52,53,.52),rgba(7,28,33,.36));color:var(--paper);text-align:center;opacity:0;transform:translate(-50%,16px);animation:music-invitation-in 1.25s cubic-bezier(.22,1,.36,1) forwards;box-shadow:0 16px 50px rgba(1,16,20,.24),inset 0 0 30px rgba(183,222,212,.04);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.music-invitation-title{margin:0;color:var(--moon);font-size:clamp(1.08rem,2.6vw,1.28rem);line-height:1.8;letter-spacing:.12em}.music-invitation-subtitle{margin:.9rem 0 1.55rem;color:rgba(211,231,223,.62);font-size:.86rem;line-height:1.8;letter-spacing:.1em}.music-choice-actions{display:flex;flex-direction:column;align-items:center;gap:.85rem;margin-top:3.4rem}.music-invitation .music-choice-actions{margin-top:0}.music-choice-primary,.music-choice-secondary{cursor:pointer;letter-spacing:.12em;transition:color .3s ease,border-color .3s ease,background .3s ease,box-shadow .5s ease,transform .3s ease,opacity .3s ease}.music-choice-primary{position:relative;min-width:13rem;border:1px solid rgba(113,210,194,.65);border-radius:999px;padding:.82rem 1.5rem;overflow:hidden;background:linear-gradient(110deg,rgba(32,117,105,.42),rgba(31,98,124,.46));color:#e4f4eb;font-size:.84rem;box-shadow:0 0 0 1px rgba(74,173,179,.16),0 0 24px rgba(61,175,164,.14),inset 0 0 18px rgba(195,239,226,.05);animation:music-choice-breathe 4.2s ease-in-out infinite}.music-choice-primary:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 20%,rgba(216,250,237,.12) 48%,transparent 76%);transform:translateX(-120%);animation:music-choice-sheen 5.5s ease-in-out infinite;pointer-events:none}.music-choice-primary span{position:relative;z-index:1}.music-choice-primary:hover{border-color:rgba(180,239,220,.9);background:linear-gradient(110deg,rgba(39,133,116,.56),rgba(35,113,142,.56));box-shadow:0 0 28px rgba(73,193,178,.24),inset 0 0 18px rgba(215,246,232,.08);transform:translateY(-2px)}.music-choice-primary:disabled,.music-choice-secondary:disabled{cursor:wait;opacity:.55;animation:none}.music-choice-secondary{border:1px solid rgba(180,218,209,.2);border-radius:999px;padding:.62rem 1.15rem;background:rgba(9,36,39,.22);color:rgba(211,231,223,.56);font-size:.76rem}.music-choice-secondary:hover{border-color:rgba(183,222,212,.48);background:rgba(25,68,67,.28);color:rgba(226,242,234,.82);transform:translateY(-1px)}.music-invitation .music-choice-secondary{border-color:transparent;background:transparent}.unlock-ritual-butterfly{position:absolute;z-index:1;width:48px;opacity:.48;filter:drop-shadow(0 0 12px currentColor);pointer-events:none}.unlock-ritual-butterfly-blue{top:24%;left:13%;color:#75c9cf;animation:butterfly-float-one 17s ease-in-out infinite}.unlock-ritual-butterfly-green{right:12%;bottom:22%;width:38px;color:#7dbda3;opacity:.34;animation:butterfly-float-two 21s ease-in-out infinite}.unlock-ritual-line-soft{color:rgba(219,235,227,.72)}.password-gate{display:grid;place-items:center;padding:2rem;transition:opacity .5s ease,transform .5s ease}.password-gate.is-unlocking{pointer-events:none}.password-gate-inner>*{transition:opacity .6s ease}.password-gate.is-unlocking .password-gate-inner>*{opacity:0}.password-gate.is-unlocking .password-gate-inner>.eyebrow,.password-gate.is-unlocking .password-gate-inner>h1{transition-delay:.8s}.password-gate-inner{width:min(440px,100%)}.password-gate h1{margin:1.8rem 0 .9rem;color:var(--moon);font:400 clamp(1.9rem,5vw,2.8rem)/1.35 var(--serif);letter-spacing:.08em}.unlock-success{display:block;min-height:1.4rem;color:var(--moon);font-size:.92rem;letter-spacing:.16em;opacity:0;transition:opacity .35s ease}.unlock-success.is-visible{opacity:1}.password-gate p{max-width:24em;margin:0 0 3.1rem;color:rgba(211,229,223,.62);line-height:1.9}.password-gate form label{display:block;margin-bottom:.7rem;color:rgba(190,218,210,.48);font:.68rem var(--sans);letter-spacing:.18em}.password-row{display:flex;border-bottom:1px solid rgba(187,220,213,.35)}.password-row input{min-width:0;flex:1 1;border:0;padding:.8rem 0;outline:0;background:transparent;color:var(--moon);font-size:1.15rem;letter-spacing:.13em}.password-row button{display:grid;place-items:center;width:42px;border:0;background:transparent;color:rgba(200,231,222,.68);cursor:pointer}.password-row button:hover{color:#fff}.password-error{display:block;min-height:1.4rem;margin-top:.7rem;color:#cfaaa0;font-size:.77rem;opacity:0;transition:opacity .25s ease}.password-error.is-visible{opacity:1}.future-letter-scene{display:grid;place-items:center;background:radial-gradient(ellipse at 52% 75%,rgba(56,124,128,.17),transparent 40%),linear-gradient(155deg,#071a22,#0c2828 65%,#193a39);transition:background 1.8s ease,filter 1.8s ease}.future-letter-scene.choice-close{background:radial-gradient(ellipse at 50% 52%,rgba(91,169,118,.25),transparent 44%),radial-gradient(ellipse at 52% 75%,rgba(56,124,128,.19),transparent 42%),linear-gradient(155deg,#071a22,#0c2828 65%,#193a39)}.future-letter-scene.phase-transition{filter:brightness(.78)}.future-letter-scene.phase-response,.future-letter-scene.phase-thanks{filter:brightness(.96)}.book-opening,.unlock-ritual{position:relative;z-index:1;display:grid;place-items:center;min-height:100svh;text-align:center}.unlock-ritual-copy{width:min(620px,calc(100% - 3rem));padding:4rem 0}.unlock-ritual-line{margin:0;color:var(--moon);font-size:clamp(1.05rem,2.2vw,1.25rem);line-height:2.2;letter-spacing:.13em}.unlock-ritual-line+.unlock-ritual-line{margin-top:2.5rem}.unlock-ritual-action{margin-top:3.5rem}.book-opening{flex-direction:column;gap:1.8rem}.book-opening p{margin:0;color:rgba(177,211,204,.64);font:.72rem/1 var(--sans);letter-spacing:.24em}.book-opening h1{margin:0;color:var(--moon);font:400 clamp(2.4rem,6vw,4.2rem)/1.15 var(--serif);letter-spacing:.15em}.ending-buffer{display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 52% 75%,rgba(56,124,128,.14),transparent 40%),linear-gradient(155deg,#071a22,#0c2828 65%,#193a39)}.ending-buffer:before,.future-letter-scene:before{content:"";position:absolute;inset:0;opacity:.06;background:repeating-linear-gradient(90deg,transparent 0 18px,rgba(175,217,205,.12) 19px 20px,transparent 21px 44px);-webkit-mask-image:linear-gradient(transparent,black 25%,transparent 85%);mask-image:linear-gradient(transparent,black 25%,transparent 85%)}.ending-stars{position:absolute;inset:15% 10%;opacity:.38;background-image:radial-gradient(circle,rgba(219,239,228,.7) 0 1px,transparent 1px);background-size:140px 120px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,transparent);mask-image:linear-gradient(180deg,transparent,#000 30%,transparent)}.choice-moon{position:absolute;z-index:0;width:150px;aspect-ratio:1;border-radius:50%;opacity:0;background:radial-gradient(circle at 42% 40%,rgba(239,249,230,.82),rgba(184,224,205,.36) 28%,rgba(85,161,145,.05) 62%,transparent 70%);filter:blur(.2px);transform:translateY(8px) scale(.78);transition:opacity 1.3s ease,transform 1.6s cubic-bezier(.22,1,.36,1)}.phase-response .choice-moon,.phase-thanks .choice-moon,.phase-transition .choice-moon{opacity:.68;transform:translateY(0) scale(1)}.choice-growth-light{position:absolute;z-index:0;width:min(76vw,620px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(117,190,131,.2),transparent 64%);filter:blur(16px);transition:opacity 1.8s ease}.choice-close .choice-growth-light{animation:choice-growth-breathe 6s ease-in-out infinite}.choice-leaf{position:absolute;z-index:1;top:19%;right:17%;color:rgba(163,203,164,0);font:2.1rem/1 var(--serif);transform:translateY(-20px) rotate(-18deg);transition:color 1.4s ease,transform 1.8s ease}.choice-friend .choice-leaf{color:rgba(163,203,164,.7);transform:translateY(0) rotate(14deg);animation:choice-leaf-fall 7s ease-in-out 1s infinite}.choice-clock{position:absolute;z-index:1;width:86px;height:86px;border:1px solid rgba(214,236,219,0);border-radius:50%;opacity:0;transform:scale(.8);transition:opacity 1.2s ease,transform 1.2s ease,border-color 1.2s ease}.choice-clock span{position:absolute;left:50%;top:50%;width:1px;height:26px;transform-origin:50% 100%;background:rgba(214,236,219,.55)}.choice-clock span:first-child{transform:translate(-50%,-100%) rotate(28deg)}.choice-clock span:last-child{height:20px;transform:translate(-50%,-100%) rotate(280deg)}.choice-time .choice-clock{opacity:.55;border-color:rgba(214,236,219,.35);transform:scale(1)}.choice-transition{place-items:center;min-height:26rem}.choice-transition-label{color:rgba(220,237,227,.56);font-size:.78rem}.choice-response-paper{width:min(560px,100%);min-height:28rem;padding:clamp(2.5rem,8vw,5rem) clamp(1.6rem,7vw,4.5rem);border:1px solid rgba(196,222,209,.25);background:linear-gradient(145deg,rgba(224,237,226,.1),rgba(9,39,39,.32));box-shadow:0 22px 80px rgba(0,11,15,.24),inset 0 0 42px rgba(216,239,222,.04);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.choice-response-lines{margin-top:2.6rem;color:rgba(225,238,229,.86);font-size:clamp(1rem,2.3vw,1.14rem);letter-spacing:.09em}.choice-response-lines p{margin:0 0 .52rem}.response-continue{margin-top:2.6rem;border:0;border-bottom:1px solid rgba(186,222,210,.4);padding:.55rem 0;background:transparent;color:rgba(218,237,227,.72);cursor:pointer;font-size:.78rem;letter-spacing:.16em}.choice-thanks{width:min(570px,100%)}.thanks-star{display:block;width:6px;height:6px;margin:0 auto 2.3rem;border-radius:50%;background:#e5f2d8;box-shadow:0 0 10px 3px rgba(218,239,204,.45);animation:thanks-star-breathe 4s ease-in-out infinite}.choice-thanks>p{margin:2rem 0 0;color:rgba(225,239,230,.84);font-size:clamp(1.05rem,2.5vw,1.2rem);line-height:2.15;letter-spacing:.12em}.future-letter-copy{z-index:2;width:min(720px,calc(100% - 3rem));padding:10rem 0 7rem}.future-envelope-stage{flex-direction:column}.future-envelope-stage .eyebrow{margin-bottom:2.5rem}.future-envelope{display:grid;place-items:center;width:min(390px,82vw);aspect-ratio:1.52;border:1px solid rgba(191,222,215,.34);padding:0;overflow:hidden;background:linear-gradient(145deg,rgba(28,72,72,.36),rgba(7,30,34,.62));color:var(--moon);cursor:pointer;box-shadow:0 0 42px rgba(91,193,190,.11),inset 0 0 30px rgba(183,222,212,.05);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:envelope-float 7s ease-in-out infinite;transition:border-color .5s ease,box-shadow .5s ease,transform .5s ease}.future-envelope:after,.future-envelope:before{content:"";position:absolute;inset:0;pointer-events:none}.future-envelope:before{background:linear-gradient(32deg,transparent 49.7%,rgba(183,218,208,.28) 50%,transparent 50.4%),linear-gradient(148deg,transparent 49.7%,rgba(183,218,208,.2) 50%,transparent 50.4%)}.future-envelope:after{border:1px solid rgba(188,222,213,.1)}.future-envelope:hover{border-color:rgba(204,236,227,.7);box-shadow:0 0 55px rgba(91,193,190,.2),inset 0 0 30px rgba(183,222,212,.08);transform:translateY(-4px)}.future-envelope-flap{top:-1px;left:12%;width:76%;height:62%;border:1px solid rgba(191,222,215,.3);border-top:0;background:linear-gradient(145deg,rgba(152,198,192,.11),rgba(31,79,77,.08));-webkit-clip-path:polygon(0 0,50% 72%,100% 0);clip-path:polygon(0 0,50% 72%,100% 0);transform-origin:top center;transition:transform .9s cubic-bezier(.22,1,.36,1),opacity .5s ease}.future-envelope-paper{position:absolute;width:45%;height:62%;bottom:-35%;border:1px solid rgba(214,235,226,.25);background:rgba(214,235,226,.06);transform:rotate(-2deg);transition:bottom .9s cubic-bezier(.22,1,.36,1)}.future-envelope.is-opening{animation:none;transform:translateY(-4px)}.future-envelope.is-opening .future-envelope-flap{transform:rotateX(180deg);opacity:.35}.future-envelope.is-opening .future-envelope-paper{bottom:16%}.future-envelope.is-opening .future-envelope-subtitle,.future-envelope.is-opening .future-envelope-title{opacity:0;transition:opacity .35s ease}.future-envelope-subtitle,.future-envelope-title{position:relative;z-index:1;display:block;letter-spacing:.2em;text-indent:.2em}.future-envelope-title{margin-top:-1.1rem;font-size:clamp(1.25rem,3vw,1.7rem)}.future-envelope-subtitle{margin-top:1.2rem;color:rgba(216,235,226,.58);font-size:.8rem}.future-envelope-hint{margin:2.5rem 0 0;color:rgba(190,218,210,.48);font-size:.72rem;letter-spacing:.14em}.future-letter-content{margin:0 auto}.future-letter-heading{display:flex;flex-direction:column;align-items:center;gap:1.4rem}.future-letter-rule{width:42px;height:1px;background:rgba(183,217,208,.4)}.future-letter-sections{margin-top:4.6rem}.future-letter-section{color:rgba(219,235,227,.84);font-size:clamp(1rem,2vw,1.12rem);line-height:2.08;letter-spacing:.08em}.future-letter-section+.future-letter-section{margin-top:5.2rem}.future-letter-section p{margin:0}.future-letter-section p:first-child,.future-letter-section p:last-child{color:var(--moon)}.future-letter-break{display:block;height:1.15rem}.future-letter-choice-intro{margin-top:7.5rem;color:rgba(227,240,233,.84);font-size:1rem;line-height:2.15;letter-spacing:.1em}.future-letter-choice-intro p{margin:0}.future-letter-choices{display:flex;justify-content:center;gap:1rem;margin-top:3.8rem}.future-letter-choices button{min-height:3.2rem;border:1px solid rgba(180,218,209,.32);border-radius:2px;padding:.7rem 1.25rem;background:rgba(20,57,57,.2);color:rgba(215,234,226,.78);cursor:pointer;font-size:.82rem;letter-spacing:.1em;transition:border-color .3s ease,background .3s ease,color .3s ease,transform .3s ease,opacity .7s ease}.future-letter-choices button.is-selected,.future-letter-choices button:hover{border-color:rgba(200,236,226,.75);background:rgba(57,112,106,.34);color:#f0f8f2;transform:translateY(-1px)}.future-letter-choices button.is-pressed{transform:scale(.96)}.future-letter-thanks{margin:2.4rem 0 0;color:rgba(211,229,223,.4);font-size:.7rem;line-height:1.9;letter-spacing:.08em}.future-letter-choice-status{min-height:1.4em;margin:1rem 0 0;color:rgba(203,229,218,.7);font-size:.75rem;letter-spacing:.08em}.future-letter-choice-status.is-error{color:#cfaaa0}.future-letter-response{min-height:1.6em;margin:1.7rem 0 0;color:rgba(203,229,218,.72);font-size:.85rem;letter-spacing:.08em;opacity:0;transform:translateY(6px);transition:opacity .45s ease,transform .45s ease}.future-letter-response.is-visible{opacity:1;transform:translateY(0)}.future-letter-response p{margin:.45rem 0}.future-letter-message{margin-top:6rem}.future-letter-back{margin-top:4rem}.future-letter-arrow{position:absolute;right:2.7rem;bottom:2.4rem;color:rgba(187,222,213,.38)}.future-letter-butterfly{position:absolute;z-index:1;width:48px;opacity:.55;filter:drop-shadow(0 0 10px currentColor)}.future-letter-butterfly-blue{top:13rem;left:calc(50% - 245px);color:#78c8ce;animation:settle-blue 8s ease-in-out forwards}.future-letter-butterfly-green{top:30rem;left:calc(50% + 220px);width:38px;color:#7fbda3;animation:settle-green 8s ease-in-out forwards}.ending-buffer-copy{position:relative;z-index:2;width:min(560px,calc(100% - 3rem));padding:5rem 0;text-align:center}.ending-buffer-copy .eyebrow{display:block;margin-bottom:2.5rem}.ending-buffer-lines{color:rgba(219,235,227,.8);font-size:clamp(1rem,2vw,1.15rem);line-height:2.15;letter-spacing:.12em}.ending-buffer-lines p{margin:0}.ending-buffer-lines p+p{margin-top:.45rem}.ending-buffer-lines p:first-child,.ending-buffer-lines p:nth-child(2),.ending-buffer-lines p:nth-child(5),.ending-buffer-lines p:nth-child(9){color:var(--moon);font-size:1.18em}.ending-buffer-continue{display:inline-flex;align-items:center;gap:.65rem;margin-top:3.1rem;border:0;border-bottom:1px solid rgba(180,218,209,.35);padding:.6rem 0;background:none;color:rgba(215,234,226,.78);cursor:pointer;font-size:.83rem;letter-spacing:.16em;transition:color .3s ease,border-color .3s ease}.ending-buffer-continue:hover{color:#fff;border-color:rgba(206,239,229,.9)}.chapter-buffer{display:flex;align-items:center;justify-content:center;min-height:100svh;overflow:visible}.chapter-top-anchor{position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none}.chapter-buffer-copy{position:relative;z-index:2;width:min(650px,calc(100% - 3rem));padding:9rem 0 7rem;text-align:center}.chapter-page{width:100%}.chapter-page h1{margin:2.1rem 0 3.2rem;color:var(--moon);font:400 clamp(1.7rem,4vw,2.55rem)/1.45 var(--serif);letter-spacing:.14em;text-indent:.14em}.chapter-page-cover h1{margin-top:2rem;margin-bottom:1.8rem;font-size:clamp(1.65rem,4.4vw,2.5rem)}.chapter-page-closing h1{margin-bottom:2.5rem}.chapter-page-rule{display:block;width:42px;height:1px;margin:0 auto;background:rgba(183,217,208,.4)}.chapter-intro{margin:0;color:rgba(211,229,223,.64);font-size:.98rem;line-height:2;letter-spacing:.11em}.chapter-page-heading{display:flex;align-items:center;justify-content:center;gap:1rem}.chapter-page-heading .chapter-page-rule{width:48px;margin:0;background:linear-gradient(90deg,rgba(159,206,198,.38),transparent)}.chapter-page-index{color:rgba(177,211,204,.52);font:.62rem/1 var(--sans);letter-spacing:.2em}.chapter-lines{color:rgba(219,235,227,.84);font-size:clamp(1rem,2vw,1.12rem);line-height:2.05;letter-spacing:.08em}.chapter-lines p{margin:0}.chapter-lines p+p{margin-top:.42rem}.chapter-lines p:first-child,.chapter-lines p:last-child{color:var(--moon)}.chapter-line-break{display:block;height:1.2rem}.chapter-closing-lines{margin:0 auto;color:rgba(219,235,227,.8)}.chapter-closing-lines p:first-child,.chapter-closing-lines p:last-child{color:var(--moon);font-size:1.08em}.chapter-navigation{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:3rem;margin-top:3.4rem}.chapter-navigation>span{width:5.3rem}.chapter-navigation .ending-buffer-continue{margin-top:0}.chapter-nav-back{display:inline-flex;align-items:center;gap:.45rem;border:0;border-bottom:1px solid rgba(180,218,209,.2);padding:.6rem 0;background:none;color:rgba(215,234,226,.55);cursor:pointer;font-size:.76rem;letter-spacing:.12em;transition:color .3s ease,border-color .3s ease}.chapter-nav-back:hover{color:var(--moon);border-color:rgba(206,239,229,.65)}.ending-message{width:min(430px,calc(100vw - 3rem));margin:3.8rem auto 0;padding-top:2.3rem;border-top:1px solid rgba(177,213,205,.16)}.ending-message-copy{margin:0 0 1.4rem;color:rgba(211,229,223,.58);font-size:.83rem;line-height:1.9;letter-spacing:.08em}.ending-message textarea{display:block;width:100%;resize:vertical;min-height:5.2rem;border:1px solid rgba(180,218,209,.24);padding:.85rem 1rem;background:rgba(8,31,32,.3);color:var(--paper);font-size:.85rem;line-height:1.7;outline:0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ending-message textarea::placeholder{color:rgba(211,229,223,.38)}.ending-message textarea:focus{border-color:rgba(198,234,224,.68)}.ending-message-submit{margin-top:.85rem;border:0;border-bottom:1px solid rgba(180,218,209,.3);padding:.5rem 0;background:none;color:rgba(215,234,226,.72);cursor:pointer;font-size:.77rem;letter-spacing:.14em}.ending-message-submit:disabled{cursor:default;opacity:.42}.ending-message-status{display:block;min-height:1.4em;margin-top:.7rem;color:rgba(203,229,218,.7);font-size:.75rem;letter-spacing:.08em}.ending-message-status.is-error{color:#cfaaa0}.back-to-letter{margin-top:4rem}.ending-butterfly{position:absolute;z-index:1;width:52px;opacity:.58}.ending-butterfly-blue{top:31%;left:calc(50% - 180px);color:#78c8ce;animation:settle-blue 8s ease-in-out forwards}.ending-butterfly-green{top:60%;left:calc(50% + 150px);width:40px;color:#7fbda3;animation:settle-green 8s ease-in-out forwards}.easter-egg{position:fixed;right:2rem;bottom:4.8rem;z-index:6;display:flex;flex-direction:column;gap:.4rem;width:min(230px,calc(100vw - 4rem));padding:1rem 1.1rem;border-left:1px solid rgba(169,215,204,.5);background:rgba(7,28,30,.75);color:rgba(216,237,227,.75);font-size:.72rem;line-height:1.7;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .7s ease,transform .7s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.easter-egg.is-visible{opacity:1;transform:translateY(0)}.admin-page{min-height:100svh;position:relative;z-index:1;padding:4rem 1.5rem 5rem;background:radial-gradient(ellipse at 52% 8%,rgba(36,101,112,.25),transparent 48%),linear-gradient(155deg,#071a22,#0c2828 65%,#193a39)}.admin-inner{width:min(680px,100%);margin:0 auto}.admin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.8rem;gap:.8rem;margin-top:3rem}.admin-metric{padding:1.2rem 1.35rem;border:1px solid rgba(177,213,205,.16);border-radius:6px;background:rgba(11,38,38,.42);box-shadow:0 0 40px rgba(28,87,88,.14)}.admin-metric span{display:block;margin-bottom:.5rem;color:rgba(183,217,208,.6);font:.65rem/1 var(--sans);letter-spacing:.18em}.admin-metric strong{color:var(--moon);font:400 1.5rem/1.1 var(--serif);letter-spacing:.06em}.admin-header{padding:8vh 0 10vh;text-align:center}.admin-header h1{margin:1.5rem 0 1rem;color:var(--moon);font:400 clamp(1.7rem,4vw,2.5rem)/1.35 var(--serif);letter-spacing:.12em}.admin-butterfly{width:30px;color:#83beb3;opacity:.65}.admin-latest{padding:2rem 0 4rem;text-align:center;border-top:1px solid var(--line)}.admin-choice{margin:1.4rem 0 1rem;color:var(--moon);font-size:2rem;letter-spacing:.18em}.admin-date,.admin-time{color:rgba(211,229,223,.68);font-family:var(--sans);letter-spacing:.15em}.admin-time{margin-top:.45rem;font-size:1.15rem}.admin-latest-message{max-width:34em;margin:2rem auto 0;padding:1.15rem 1.3rem;border-left:1px solid rgba(169,215,204,.45);color:rgba(216,237,227,.72);font-size:.88rem;line-height:1.8;text-align:left;white-space:pre-wrap}.admin-history{border-top:1px solid var(--line);padding-top:2.5rem}.admin-history h2{margin:0 0 1.8rem;color:rgba(211,229,223,.72);font:500 .7rem var(--sans);letter-spacing:.22em}.admin-row{display:grid;grid-template-columns:minmax(8.5rem,auto) minmax(10rem,1fr) minmax(10rem,1.5fr);grid-gap:1rem;gap:1rem;align-items:start;padding:.9rem 0;color:rgba(204,226,218,.68);font-family:var(--sans);font-size:.8rem;border-bottom:1px solid rgba(177,213,205,.09)}.admin-row strong{color:var(--paper);font-weight:400}.admin-row-message{min-width:0;color:rgba(204,226,218,.58);line-height:1.65;white-space:pre-wrap}.admin-row-header{padding-top:0;color:rgba(177,211,204,.46);font-size:.68rem;letter-spacing:.14em}.admin-empty{padding:3rem 0 5rem;color:rgba(211,229,223,.6);text-align:center}.admin-leave{margin-top:5rem;text-align:center}.admin-leave button{border:0;border-bottom:1px solid rgba(180,218,209,.3);padding:.5rem 0;background:none;color:rgba(203,229,218,.55);cursor:pointer;font-size:.75rem;letter-spacing:.18em}.admin-control-section,.admin-message-section{margin-top:4rem;padding-top:2.5rem;border-top:1px solid var(--line)}.admin-section-heading h2{margin:.8rem 0 1.5rem;color:var(--moon);font:400 1.35rem/1.4 var(--serif);letter-spacing:.08em}.admin-current-choice,.admin-current-label{color:rgba(211,229,223,.62);font-family:var(--sans);font-size:.8rem;letter-spacing:.08em}.admin-current-choice{color:var(--paper);font-size:1rem}.admin-choice-controls{display:grid;grid-gap:.65rem;gap:.65rem;margin-top:1.3rem}.admin-choice-controls button,.admin-delete,.admin-save{border:1px solid rgba(180,218,209,.25);padding:.7rem 1rem;background:rgba(20,57,57,.3);color:rgba(215,234,226,.72);cursor:pointer;text-align:left;font-size:.78rem}.admin-choice-controls button.is-selected{border-color:rgba(200,236,226,.75);background:rgba(57,112,106,.34);color:#f0f8f2}.admin-control-footer{display:flex;align-items:center;gap:1rem;margin-top:1rem;color:rgba(203,229,218,.6);font-size:.75rem}.admin-save{text-align:center;border-bottom-color:rgba(180,218,209,.5)}.admin-delete:disabled,.admin-save:disabled{cursor:default;opacity:.4}.admin-message-list{display:grid;grid-gap:1rem;gap:1rem}.admin-message-item{padding:1rem 1.1rem;border-left:1px solid rgba(169,215,204,.35);background:rgba(11,38,38,.3)}.admin-message-meta{color:rgba(177,211,204,.5);font:.68rem var(--sans);letter-spacing:.08em}.admin-message-item p{margin:.7rem 0 1rem;color:rgba(216,237,227,.78);line-height:1.8;white-space:pre-wrap}.admin-delete{padding:.35rem .6rem;font-size:.68rem;text-align:center}.admin-hidden-letter,.admin-response-history{margin-top:4rem;padding-top:2.5rem;border-top:1px solid var(--line)}.admin-hidden-letter-row{display:grid;grid-template-columns:minmax(11rem,1.3fr) minmax(6rem,.7fr) minmax(12rem,1.2fr) minmax(8rem,.8fr);grid-gap:1rem;gap:1rem;align-items:start;padding:.85rem 0;border-bottom:1px solid rgba(177,213,205,.09);color:rgba(204,226,218,.68);font-family:var(--sans);font-size:.78rem;line-height:1.55}.admin-hidden-letter-row strong{color:var(--moon);font-weight:400}.admin-history-table{overflow-x:auto}.admin-history-row{display:grid;grid-template-columns:minmax(10rem,1.2fr) minmax(13rem,1.5fr) minmax(9rem,1fr) minmax(5rem,.6fr);grid-gap:1rem;gap:1rem;align-items:start;padding:.85rem 0;border-bottom:1px solid rgba(177,213,205,.09);color:rgba(204,226,218,.68);font-family:var(--sans);font-size:.78rem}.admin-history-row strong{color:var(--paper);font-weight:400}.admin-history-row-header{padding-top:0;color:rgba(177,211,204,.46);font-size:.68rem;letter-spacing:.12em}.admin-timeline{margin-top:4rem;padding-top:2.5rem;border-top:1px solid var(--line)}.admin-visitor-trace{padding:1.5rem 0 2rem;border-bottom:1px solid rgba(177,213,205,.12)}.admin-trace-header{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(5rem,.7fr);grid-gap:1rem;gap:1rem;align-items:end}.admin-trace-header div{display:grid;grid-gap:.4rem;gap:.4rem;min-width:0}.admin-trace-events-label,.admin-trace-header span{color:rgba(177,211,204,.48);font:.65rem/1.2 var(--sans);letter-spacing:.14em}.admin-trace-header strong{overflow-wrap:anywhere;color:var(--paper);font:400 .9rem/1.45 var(--sans)}.admin-trace-sessions{display:grid;grid-gap:1.2rem;gap:1.2rem;margin-top:1.5rem}.admin-trace-session{padding:1.2rem 1.25rem 1.3rem;border:1px solid rgba(177,213,205,.13);border-radius:6px;background:rgba(11,38,38,.28)}.admin-trace-session-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding-bottom:.9rem;border-bottom:1px solid rgba(177,213,205,.1);color:rgba(204,226,218,.62);font-family:var(--sans);font-size:.75rem}.admin-trace-session-heading strong{color:var(--moon);font-weight:400;letter-spacing:.08em}.admin-trace-session-heading span{overflow-wrap:anywhere;color:rgba(204,226,218,.48)}.admin-trace-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.8rem 1.2rem;gap:.8rem 1.2rem;margin:1.1rem 0 1.3rem}.admin-trace-details div{display:grid;grid-gap:.35rem;gap:.35rem;min-width:0}.admin-trace-details dt{color:rgba(177,211,204,.46);font:.63rem/1.2 var(--sans);letter-spacing:.13em}.admin-trace-details dd{overflow-wrap:anywhere;margin:0;color:rgba(219,235,227,.78);font:.78rem/1.55 var(--sans)}.admin-trace-events{display:grid;grid-template-columns:2.5rem minmax(0,1fr);grid-gap:.8rem;gap:.8rem;align-items:start;padding-top:1rem;border-top:1px solid rgba(177,213,205,.09)}.admin-trace-events ol{display:grid;grid-gap:.55rem;gap:.55rem;margin:0;padding:0;list-style:none}.admin-trace-events li{display:grid;grid-template-columns:4.7rem minmax(0,1fr);grid-gap:.7rem;gap:.7rem;align-items:baseline;color:rgba(219,235,227,.76);font:.77rem/1.55 var(--sans)}.admin-trace-events time{color:rgba(177,211,204,.55);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.admin-trace-events p{margin:0;color:rgba(204,226,218,.48);font:.76rem/1.55 var(--sans)}.reveal{opacity:0;transform:translateY(14px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes haze-drift{0%{transform:translate3d(-3%,2%,0) scale(1)}to{transform:translate3d(7%,-6%,0) scale(1.08)}}@keyframes butterfly-float-one{0%,to{transform:translateZ(0) rotate(-3deg)}45%{transform:translate3d(90px,-24px,0) rotate(6deg)}75%{transform:translate3d(40px,36px,0) rotate(-4deg)}}@keyframes butterfly-float-two{0%,to{transform:translateZ(0) rotate(4deg)}50%{transform:translate3d(-75px,-26px,0) rotate(-7deg)}}@keyframes music-long-press-glow{0%{opacity:0;transform:scale(.92)}35%{opacity:.28}to{opacity:.65;transform:scale(1.08)}}@keyframes music-egg-butterfly-fly{0%{opacity:0;transform:translate(-32px,18px) scale(.55) rotate(-10deg)}34%{opacity:.75;transform:translate(-12px,-12px) scale(.8) rotate(5deg)}to{opacity:.92;transform:translate(12px,3px) scale(1) rotate(0)}}.hidden-letter-opening{position:fixed;inset:0;z-index:12;overflow:hidden;background:#061b22;animation:hidden-letter-opening-fade 1s ease forwards;pointer-events:none}.hidden-letter-opening-moon{position:absolute;left:50%;top:-18vh;width:min(74vw,48rem);aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(211,239,220,.32),rgba(116,192,177,.1) 33%,transparent 68%);filter:blur(3px);animation:hidden-letter-moon-rise 1.1s ease both}.hidden-letter-opening-butterfly{position:absolute;right:calc(2rem + 20px);bottom:calc(1.8rem + 26px);width:28px;color:#81c3ab;animation:hidden-letter-opening-flight .7s cubic-bezier(.22,1,.36,1) both}.hidden-letter-closing{position:fixed;inset:0;z-index:12;overflow:hidden;background:#061b22;animation:hidden-letter-closing-fade .7s ease both;pointer-events:none}.hidden-letter-closing-paper{position:absolute;left:50%;top:14vh;width:min(700px,calc(100vw - 3rem));height:72vh;transform:translateX(-50%);border:1px solid rgba(218,237,219,.24);background:linear-gradient(145deg,rgba(225,237,218,.12),rgba(11,47,43,.65));transform-origin:top center;animation:hidden-letter-paper-close .7s cubic-bezier(.55,0,.78,.2) both}.hidden-letter-closing-butterfly{position:absolute;right:calc(2rem + 20px);bottom:calc(1.8rem + 26px);width:28px;color:#81c3ab;animation:hidden-letter-closing-flight .7s cubic-bezier(.55,0,.78,.2) both}.hidden-letter-scene{position:relative;z-index:1;min-height:100svh;overflow:hidden;padding:10vh 1.5rem 15vh;background:radial-gradient(ellipse at 50% 0,rgba(123,188,174,.2),transparent 38%),linear-gradient(165deg,#061821,#0b2929 64%,#102f2d);animation:hidden-letter-scene-in 1.2s ease both}.hidden-letter-scene:before{content:"";position:fixed;inset:0;opacity:.18;pointer-events:none;background-image:radial-gradient(circle at 22% 24%,rgba(213,239,219,.7) 0 1px,transparent 1.5px),radial-gradient(circle at 76% 31%,rgba(143,213,202,.65) 0 1px,transparent 1.5px),radial-gradient(circle at 65% 74%,rgba(213,239,219,.45) 0 1px,transparent 1.5px);background-size:240px 210px,310px 280px,180px 190px}.hidden-letter-moon{position:fixed;left:50%;top:-18vh;width:min(80vw,54rem);aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(203,238,215,.22),rgba(108,181,168,.08) 38%,transparent 68%);filter:blur(2px);animation:hidden-letter-moon-rise 2.8s ease both;pointer-events:none}.hidden-letter-paper{position:relative;width:min(700px,100%);margin:0 auto;padding:clamp(3.3rem,8vw,5.5rem) clamp(1.4rem,7vw,4.8rem);border:1px solid rgba(218,237,219,.27);background:linear-gradient(145deg,rgba(225,237,218,.1),rgba(11,47,43,.58));box-shadow:0 28px 100px rgba(0,12,18,.34),inset 0 0 60px rgba(225,239,219,.04);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform-origin:top center;animation:hidden-letter-paper-open 1.6s cubic-bezier(.22,1,.36,1) .35s both}.hidden-letter-heading{text-align:center}.hidden-letter-heading h1{margin:1.35rem 0 1.7rem;color:var(--moon);font:400 clamp(1.75rem,5vw,3rem)/1.4 var(--serif);letter-spacing:.1em}.hidden-letter-rule{display:block;width:46px;height:1px;margin:0 auto;background:rgba(191,228,211,.52)}.hidden-letter-body{margin-top:4.5rem}.hidden-letter-return{display:flex;align-items:center;gap:.55rem;margin:4.5rem auto 0;border:1px solid rgba(191,228,211,.38);border-radius:999px;padding:.72rem 1.2rem;background:rgba(8,38,39,.28);color:rgba(224,240,228,.78);font:inherit;font-size:.82rem;letter-spacing:.12em;cursor:pointer;transition:border-color .3s ease,color .3s ease,background .3s ease,transform .3s ease}.hidden-letter-return:hover{border-color:rgba(211,240,222,.72);background:rgba(30,83,76,.34);color:var(--moon);transform:translateY(-2px)}.hidden-letter-return span{font-size:1.05rem;line-height:1}.hidden-letter-section{color:rgba(224,237,225,.84);font-size:clamp(1rem,2vw,1.12rem);line-height:2.08;letter-spacing:.08em}.hidden-letter-section+.hidden-letter-section{margin-top:4.2rem}.hidden-letter-section p{margin:0;opacity:0;transform:translateY(8px);transition:opacity .7s ease,transform .7s ease}.hidden-letter-section p.is-visible{opacity:1;transform:translateY(0)}.hidden-letter-butterfly{position:fixed;z-index:2;width:38px;opacity:.4;pointer-events:none;filter:drop-shadow(0 0 10px currentColor)}.hidden-letter-butterfly-one{left:10%;top:23%;color:#78c9c7;animation:butterfly-float-one 17s ease-in-out infinite}.hidden-letter-butterfly-two{right:9%;top:68%;width:30px;color:#82bd9e;animation:butterfly-float-two 20s ease-in-out infinite}@keyframes hidden-letter-opening-fade{0%{opacity:1}to{opacity:0}}@keyframes hidden-letter-moon-rise{0%{opacity:0;transform:translateX(-50%) scale(.8)}to{opacity:1;transform:translateX(-50%) scale(1)}}@keyframes hidden-letter-opening-flight{0%{opacity:0;transform:translate(-90px,24px) scale(.6)}65%{opacity:.9}to{opacity:.95;transform:translate(0) scale(1)}}@keyframes hidden-letter-scene-in{0%{opacity:0}to{opacity:1}}@keyframes hidden-letter-paper-open{0%{opacity:0;transform:perspective(1000px) rotateX(68deg) translateY(32px)}to{opacity:1;transform:perspective(1000px) rotateX(0) translateY(0)}}@keyframes hidden-letter-closing-fade{0%{opacity:1}to{opacity:0}}@keyframes hidden-letter-paper-close{0%{opacity:1;transform:translateX(-50%) perspective(1000px) rotateX(0)}to{opacity:0;transform:translateX(-50%) perspective(1000px) rotateX(68deg) translateY(32px)}}@keyframes hidden-letter-closing-flight{0%{opacity:.9;transform:translate(0) scale(1)}to{opacity:0;transform:translate(90px,-24px) scale(.6)}}@keyframes gentle-hover{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(3deg)}}@keyframes settle-blue{0%{transform:translate(0) rotate(-4deg)}70%{transform:translate(85px,80px) rotate(5deg)}to{transform:translate(75px,92px) rotate(0)}}@keyframes settle-green{0%{transform:translate(0) rotate(5deg)}70%{transform:translate(-68px,-38px) rotate(-3deg)}to{transform:translate(-58px,-32px) rotate(0)}}@keyframes envelope-float{0%,to{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-8px) rotate(.4deg)}}@keyframes music-breathe{0%,to{box-shadow:0 0 0 0 rgba(86,185,180,.14),0 0 14px rgba(86,185,180,.08)}50%{box-shadow:0 0 0 9px rgba(86,185,180,0),0 0 24px rgba(86,185,180,.16)}}@keyframes music-invitation-in{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}@keyframes stage-light-open{0%{opacity:0;transform:translateX(-50%) scaleY(.2)}35%{opacity:.72}to{opacity:.34;transform:translateX(-50%) scaleY(1)}}@keyframes name-scene-in{0%{filter:brightness(.72)}to{filter:brightness(1)}}@keyframes name-breathe{0%,to{opacity:.82}50%{opacity:1}}@keyframes music-choice-breathe{0%,to{box-shadow:0 0 0 1px rgba(74,173,179,.16),0 0 20px rgba(61,175,164,.1),inset 0 0 18px rgba(195,239,226,.04)}50%{box-shadow:0 0 0 1px rgba(74,173,179,.28),0 0 30px rgba(61,175,164,.2),inset 0 0 18px rgba(195,239,226,.08)}}@keyframes music-choice-sheen{0%,55%,to{transform:translateX(-120%)}72%{transform:translateX(120%)}}@keyframes choice-growth-breathe{0%,to{transform:scale(.92);opacity:.46}50%{transform:scale(1.08);opacity:.82}}@keyframes choice-leaf-fall{0%,to{transform:translateY(-4px) rotate(14deg)}50%{transform:translate(-18px,58px) rotate(-12deg)}}.future-letter-scene{background:#071d1b;transition:background 2.2s ease,filter 1.8s ease}.future-letter-scene.choice-close{background:radial-gradient(ellipse at 50% 45%,rgba(92,156,105,.18),transparent 42%),#071d1b}.future-letter-scene.choice-time{background:radial-gradient(ellipse at 50% 45%,rgba(91,127,174,.16),transparent 43%),#071d1b}.future-letter-scene.phase-transition{filter:brightness(.72)}.future-letter-scene.phase-transition .ending-stars{opacity:.12}.phase-response .choice-moon,.phase-transition .choice-moon{opacity:0;transform:translateY(-18px) scale(.85)}.phase-thanks .choice-moon{width:118px;opacity:.72;transform:translateY(0) scale(1)}.choice-moon{top:12%;width:118px;background:radial-gradient(circle at 38% 38%,rgba(244,249,229,.72) 0 18%,rgba(203,226,201,.2) 35%,transparent 68%);filter:blur(.4px)}.choice-growth-light{width:min(92vw,760px);height:70vh;background:linear-gradient(180deg,rgba(199,226,192,0),rgba(160,204,157,.13) 45%,rgba(160,204,157,0));filter:blur(28px);transform:translateY(-18%)}.choice-close .choice-growth-light{opacity:.7;animation:none}.choice-clock,.choice-leaf{display:none}.choice-response-paper{position:relative;width:min(85vw,560px);min-height:0;padding:clamp(2.8rem,8vw,4.8rem) clamp(1.5rem,7vw,4rem);background:linear-gradient(105deg,rgba(233,240,222,.075),rgba(10,33,29,.28));box-shadow:0 28px 85px rgba(0,8,9,.3),inset 0 0 45px rgba(233,240,222,.035);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);isolation:isolate}.choice-response-paper:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.18;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)' opacity='.25'/%3E%3C/svg%3E");mix-blend-mode:screen}.choice-response-lines{margin-top:2.4rem;color:rgba(232,239,228,.78);font-size:clamp(1rem,2.3vw,1.12rem);line-height:2.05;letter-spacing:.08em}.choice-response-lines p{margin:0 0 .72rem}.choice-thanks{width:min(85vw,560px);padding-top:7rem;text-align:center}.choice-thanks .eyebrow{color:rgba(232,239,228,.72)}.thanks-star{margin-bottom:1.9rem}.future-letter-copy{max-width:none}.future-letter-back{margin-top:3rem}@media (max-width:640px){.future-letter-scene{place-items:center}.future-letter-copy{width:100%}.choice-response-paper,.choice-thanks{width:85vw}.choice-response-paper{padding:2.8rem 1.25rem}.choice-response-lines{font-size:.98rem;letter-spacing:.045em}.choice-thanks{padding-top:5rem}}@keyframes thanks-star-breathe{0%,to{opacity:.62;box-shadow:0 0 8px 2px rgba(218,239,204,.3)}50%{opacity:1;box-shadow:0 0 16px 5px rgba(218,239,204,.58)}}@keyframes letter-end-breathe{0%,to{opacity:.28;transform:scale(.72)}50%{opacity:.9;transform:scale(1.35)}}@keyframes opening-dawn{0%{filter:brightness(.45)}to{filter:brightness(1)}}@keyframes moon-rise{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes stardust{0%{opacity:0;transform:translateY(8px)}to{opacity:.42;transform:translateY(0)}}@keyframes name-butterfly{0%{opacity:0;transform:translate(-80px,28px) rotate(-8deg)}to{opacity:.58;transform:translate(110px,-8px) rotate(4deg)}}@keyframes door-dim{0%{filter:brightness(.62)}to{filter:brightness(.88)}}@keyframes door-glow{0%{opacity:0;transform:scale(.8)}35%{opacity:.8}to{opacity:.42;transform:scale(1.08)}}@keyframes door-open{0%,23%{transform:perspective(1200px) rotateY(0)}48%{transform:perspective(1200px) rotateY(-12deg)}76%{transform:perspective(1200px) rotateY(-56deg)}to{transform:perspective(1200px) rotateY(-82deg)}}@keyframes door-light{0%,22%{opacity:0;transform:scaleY(.05)}48%{opacity:.75;transform:scaleY(.35)}76%{opacity:.95;transform:scaleY(1)}to{opacity:1;transform:scaleY(2.8)}}@keyframes door-butterfly-blue{0%{opacity:0;transform:translate(-30px,18px)}45%{opacity:.55}to{opacity:.25;transform:translate(18px,-20px)}}@keyframes door-butterfly-green{0%{opacity:0;transform:translate(25px,16px)}45%{opacity:.45}to{opacity:.18;transform:translate(-14px,-22px)}}@media (max-width:800px){.letter-shell{padding:0 1.35rem 6rem}.letter-header{padding:13vh 0 10vh}.reading-progress{position:fixed;top:1.2rem;right:1.2rem;left:auto;width:auto;height:auto;transform:none}.reading-progress>span{position:static;display:block;writing-mode:horizontal-tb;transform:none;font-size:.58rem}.progress-fill,.progress-track{left:0;width:100%;transform:none}.progress-fill{height:100%!important;width:calc(var(--progress, 0) * 100%)!important;max-width:100%;transition:width .25s ease-out}.progress-butterfly,.progress-end{display:none}.chapter-marker{padding:5.5rem 0 2.8rem}.chapter-title{font-size:.95rem}.letter-paragraph{font-size:1.05rem;line-height:1.95}.letter-paragraph.is-breathing{margin-top:3.7rem;margin-bottom:4rem;font-size:1.25rem}.letter-end{padding:9rem 0 6rem}.opening-butterfly-one{left:8%;top:26%}.opening-butterfly-two{right:7%;bottom:20%}.opening-corner{bottom:1.5rem}.opening-corner-left{left:1.4rem}.opening-corner-right{right:1.4rem}.music-toggle{right:1.15rem;bottom:1.15rem;width:52px;height:52px}.music-invitation{bottom:5.3rem;padding:1.55rem 1.3rem 1.45rem}.unlock-ritual-copy{width:min(620px,calc(100% - 2.7rem));padding:3rem 0}.unlock-ritual-line{font-size:1.02rem;line-height:2.05}.unlock-ritual-line+.unlock-ritual-line{margin-top:2rem}.unlock-ritual-butterfly-blue{left:7%;top:19%;width:38px}.unlock-ritual-butterfly-green{right:6%;bottom:16%;width:31px}.music-choice-actions{margin-top:2.8rem;gap:.7rem}.music-choice-primary{width:min(15rem,100%)}.ending-butterfly-blue{left:18%}.ending-butterfly-green{left:auto;right:17%}.future-letter-copy{width:min(650px,calc(100% - 2.7rem));padding:7.5rem 0 5.5rem}.choice-moon{width:116px}.choice-leaf{top:13%;right:11%}.choice-clock{width:68px;height:68px}.choice-response-paper{min-height:26rem;padding:3rem 1.45rem}.choice-response-lines{font-size:.98rem;line-height:2;letter-spacing:.055em}.choice-thanks>p{font-size:1rem;letter-spacing:.08em}.future-envelope{width:min(360px,88vw)}.future-letter-sections{margin-top:3.8rem}.future-letter-section{font-size:1rem;line-height:2;letter-spacing:.055em}.future-letter-section+.future-letter-section{margin-top:4rem}.future-letter-choice-intro{margin-top:5.5rem}.future-letter-choices{flex-direction:column;align-items:stretch;gap:.7rem;margin-top:2.8rem}.future-letter-choices button{width:100%;font-size:.78rem}.future-letter-message{margin-top:4.5rem}.future-letter-butterfly-blue{top:10rem;left:9%}.future-letter-butterfly-green{top:34rem;left:auto;right:8%}.chapter-buffer-copy{width:min(650px,calc(100% - 2.7rem));padding:7.5rem 0 5.5rem}.chapter-page h1{margin-top:1.8rem;margin-bottom:2.6rem;font-size:1.65rem;line-height:1.55}.chapter-page-cover h1{font-size:1.6rem}.chapter-lines{font-size:1rem;line-height:2;letter-spacing:.055em}.chapter-line-break{height:1rem}.chapter-navigation{margin-top:2.8rem;gap:1rem}.chapter-nav-back{font-size:.72rem}.chapter-navigation .ending-buffer-continue{font-size:.76rem}.ending-choices{gap:.55rem}.ending-choices button{padding-inline:.9rem;font-size:.75rem}.admin-row{grid-template-columns:1fr;gap:.35rem}.admin-row-header{display:none}.admin-history-row{grid-template-columns:1fr;gap:.35rem}.admin-history-row-header{display:none}.admin-hidden-letter-row{grid-template-columns:1fr;gap:.35rem}.admin-hidden-letter-row.admin-history-row-header{display:none}.admin-timeline{margin-top:3rem;padding-top:2rem}.admin-trace-header{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem .8rem}.admin-trace-header div:last-child{grid-column:1/-1}.admin-trace-session{padding:1rem}.admin-trace-session-heading{align-items:flex-start;flex-direction:column;gap:.35rem}.admin-trace-details{grid-template-columns:1fr;gap:.75rem}.admin-trace-events{grid-template-columns:1fr;gap:.55rem}.admin-trace-events li{grid-template-columns:4.4rem minmax(0,1fr);gap:.55rem}.easter-egg{right:1.2rem;bottom:4.4rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.music-toggle.is-playing{box-shadow:none}}.future-letter-scene{position:relative;display:block;min-height:100svh;overflow:hidden;isolation:isolate;background:#061b18}.future-letter-scene:before{opacity:.3;background:linear-gradient(112deg,rgba(13,55,43,.38),transparent 42%,rgba(4,25,23,.4))}.future-letter-scene.phase-transition{filter:brightness(.7)}.future-letter-scene.phase-response,.future-letter-scene.phase-thanks{filter:brightness(1)}.future-letter-copy{position:absolute;left:50%;top:50%;z-index:4;width:min(100% - 2rem,42rem);transform:translate(-50%,-50%);text-align:center}.choice-response-paper,.choice-thanks,.choice-transition,.future-letter-stage{position:absolute;left:50%;top:50%;width:100%;transform:translate(-50%,-50%)}.future-envelope-stage{display:grid;justify-items:center}.future-envelope{position:relative;width:min(82vw,22rem);aspect-ratio:1.48;margin:2rem auto 0;border:0;background:linear-gradient(145deg,#9ab8a4,#507d6b 46%,#244d42);box-shadow:0 25px 70px rgba(0,0,0,.34),0 0 34px rgba(158,206,169,.12);transform-origin:center}.choice-transition-envelope:after,.future-envelope:after{content:"";position:absolute;inset:9%;border:1px solid rgba(227,240,221,.27);pointer-events:none}.future-envelope-flap{z-index:2;border-top-color:#315f50!important;filter:drop-shadow(0 2px 4px rgba(0,0,0,.14))}.future-envelope-paper{background:rgba(229,239,218,.85)!important}.future-envelope-subtitle,.future-envelope-title{color:#ecf2df!important}.choice-transition{height:8rem;pointer-events:none}.choice-transition-envelope{position:absolute;left:50%;top:50%;width:4.8rem;aspect-ratio:1.48;opacity:0;background:linear-gradient(145deg,#b4c9b1,#527966);box-shadow:0 0 22px rgba(175,218,179,.22);transform:translate(-50%,-50%) scale(.28);animation:reply-envelope-arrives 3s cubic-bezier(.22,1,.36,1) forwards}.choice-transition-envelope i{position:absolute;inset:0;background:linear-gradient(140deg,transparent 48%,rgba(31,75,61,.75) 49% 51%,transparent 52%),linear-gradient(40deg,transparent 48%,rgba(31,75,61,.6) 49% 51%,transparent 52%)}.choice-transition-label{position:absolute;left:50%;top:calc(50% + 5rem);width:100%;transform:translateX(-50%);color:rgba(218,234,220,.6);font-size:.74rem;letter-spacing:.18em;animation:reply-label-in 1.2s ease 1.1s both}.choice-response-paper{width:min(84vw,34rem);min-height:25rem;padding:3.4rem clamp(1.4rem,7vw,3.7rem);border:0;background:rgba(218,234,216,.12);box-shadow:0 25px 80px rgba(0,9,8,.42),inset 0 0 60px rgba(226,243,218,.08);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);-webkit-clip-path:polygon(1% 2%,98% 0,100% 98%,3% 100%,0 45%);clip-path:polygon(1% 2%,98% 0,100% 98%,3% 100%,0 45%);text-align:center}.choice-response-paper:before{opacity:.16;background-image:repeating-linear-gradient(0deg,transparent 0 7px,rgba(247,250,231,.07) 8px,transparent 9px)}.response-paper-fold{position:absolute;left:50%;top:0;width:100%;height:4.2rem;border-bottom:1px solid rgba(236,246,223,.2);-webkit-clip-path:polygon(0 0,100% 0,50% 100%);clip-path:polygon(0 0,100% 0,50% 100%);background:rgba(232,243,220,.08);transform:translateX(-50%);transform-origin:top;animation:paper-fold-open 1.1s cubic-bezier(.22,1,.36,1) .25s both}.choice-growth-light{left:50%;top:50%;width:20rem;height:24rem;opacity:0;border-radius:0;background:linear-gradient(160deg,transparent 20%,rgba(117,191,126,.19),transparent 72%);transform:translate(-50%,-50%) rotate(-18deg)}.choice-close .choice-growth-light{opacity:.8;animation:reply-sprout-glow 4s ease-in-out infinite}.choice-sprout{position:absolute;left:50%;top:50%;width:5rem;height:8rem;opacity:0;transform:translate(-50%,-18%)}.choice-close .choice-sprout{opacity:.55}.choice-sprout:before{content:"";position:absolute;left:50%;bottom:0;width:1px;height:100%;background:#8fbf91;transform:rotate(10deg)}.choice-sprout i{position:absolute;width:2.8rem;height:1.3rem;border:1px solid rgba(152,207,148,.7);border-radius:100% 0}.choice-sprout i:first-child{top:28%;left:4%;transform:rotate(-28deg)}.choice-sprout i:last-child{top:48%;right:0;transform:rotate(28deg) scaleX(-1)}.choice-leaves{position:absolute;inset:0;opacity:0;pointer-events:none}.choice-friend .choice-leaves{opacity:.58}.choice-leaves i{position:absolute;width:1.2rem;height:.62rem;border:1px solid rgba(163,203,164,.75);border-radius:100% 0;animation:reply-leaf-fall 8s ease-in-out infinite}.choice-leaves i:first-child{left:37%;top:35%}.choice-leaves i:nth-child(2){left:58%;top:26%;animation-delay:-2.5s}.choice-leaves i:nth-child(3){left:46%;top:47%;animation-delay:-5s}.choice-clock{left:50%;top:50%;transform:translate(-50%,-50%) scale(.8)!important}.choice-time .choice-clock{display:block;opacity:.4;transform:translate(-50%,-50%) scale(1)!important}.choice-moon{left:50%;top:50%;transform:translate(-50%,-50%) scale(.8)}.phase-thanks .choice-moon{top:23%;transform:translate(-50%,-50%) scale(1)}.choice-thanks{width:min(86vw,34rem);padding:0 1rem}.thanks-letter-copy{margin:1.8rem 0 0;color:rgba(227,240,226,.78);font-size:1rem;line-height:2.1;letter-spacing:.12em}.ending-stars{opacity:0;transition:opacity 2s ease}.phase-thanks .ending-stars{opacity:.65}@keyframes reply-envelope-arrives{0%{opacity:0;transform:translate(-50%,16vh) scale(.26) rotate(-7deg)}35%{opacity:1}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}@keyframes reply-label-in{0%{opacity:0}to{opacity:1}}@keyframes paper-fold-open{0%{transform:translateX(-50%) rotateX(78deg);opacity:.2}to{transform:translateX(-50%) rotateX(0);opacity:1}}@keyframes reply-sprout-glow{0%,to{opacity:.42;transform:translate(-50%,-50%) rotate(-18deg) scale(.92)}50%{opacity:.8;transform:translate(-50%,-50%) rotate(-18deg) scale(1.06)}}@keyframes reply-leaf-fall{0%,to{transform:translateY(-1rem) rotate(12deg);opacity:0}18%,72%{opacity:.75}85%{transform:translate(-1.2rem,13rem) rotate(-24deg);opacity:0}}@media (max-width:640px){.future-letter-copy{width:calc(100% - 1.6rem)}.choice-response-paper{width:84vw;min-height:22rem;padding:3rem 1.25rem}.choice-response-lines{font-size:.98rem;line-height:2;letter-spacing:.055em}.choice-thanks{width:86vw}}@media (prefers-reduced-motion:reduce){.choice-growth-light,.choice-leaves i,.choice-transition-envelope,.choice-transition-label,.response-paper-fold{animation:none!important}}.future-letter-scene{background:radial-gradient(ellipse at 50% 38%,rgba(109,190,180,.13),transparent 31%),radial-gradient(ellipse at 50% 78%,rgba(30,109,100,.18),transparent 50%),linear-gradient(135deg,#06151f,#082b2d 52%,#061b22)}.future-letter-scene:after{content:"";position:absolute;inset:-10%;z-index:0;pointer-events:none;opacity:.42;background:linear-gradient(78deg,transparent 22%,rgba(145,218,207,.07) 29%,transparent 38%),linear-gradient(101deg,transparent 55%,rgba(124,194,184,.06) 63%,transparent 72%),radial-gradient(ellipse at 50% 45%,transparent 0 38%,rgba(0,8,15,.48) 88%);filter:blur(10px);animation:future-letter-mist 16s ease-in-out infinite alternate}.future-letter-scene:before{z-index:1;opacity:.16;background:repeating-linear-gradient(90deg,transparent 0 46px,rgba(153,213,204,.13) 47px,transparent 49px 92px);-webkit-mask-image:linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent);mask-image:linear-gradient(90deg,transparent,#000 25%,#000 75%,transparent)}.ending-stars{z-index:1;opacity:.52;background-size:132px 116px;animation:future-letter-stars 18s linear infinite}.future-letter-copy{z-index:3}.future-letter-stage{z-index:2}.future-envelope-stage{padding-top:.3rem}.future-envelope-stage>.eyebrow{position:relative;z-index:2;color:rgba(215,239,231,.82);line-height:2.05}.future-envelope{z-index:2;overflow:visible;margin-top:2.2rem;border:1px solid rgba(182,231,221,.52);border-radius:3px;background:linear-gradient(145deg,rgba(102,180,171,.12),rgba(9,48,51,.28)),rgba(8,32,38,.24);box-shadow:0 24px 64px rgba(0,4,12,.44),0 0 34px rgba(114,212,201,.12),inset 0 0 30px rgba(151,224,215,.05);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:future-envelope-float 4.6s ease-in-out .55s infinite;transition:transform .55s ease,box-shadow .55s ease,border-color .55s ease}.future-envelope:focus-visible,.future-envelope:hover{border-color:rgba(210,244,233,.8);box-shadow:0 26px 72px rgba(0,4,12,.5),0 0 42px rgba(129,224,211,.22),inset 0 0 34px rgba(173,240,226,.08);transform:translateY(-4px) scale(1.018)}.future-envelope-flap{position:absolute;inset:0 0 auto;height:56%;-webkit-clip-path:polygon(0 0,100% 0,50% 100%);clip-path:polygon(0 0,100% 0,50% 100%);border:0!important;background:linear-gradient(145deg,rgba(154,221,211,.15),rgba(27,90,91,.08));box-shadow:inset 0 -1px 0 rgba(192,239,228,.4);filter:none}.future-envelope:before{content:"";position:absolute;inset:0;background:linear-gradient(35deg,transparent 49.5%,rgba(177,229,220,.38) 50%,transparent 50.7%),linear-gradient(145deg,transparent 49.5%,rgba(177,229,220,.27) 50%,transparent 50.7%);pointer-events:none}.future-envelope:after{inset:8%;border-color:rgba(192,235,225,.24);box-shadow:inset 0 0 16px rgba(131,214,204,.06)}.future-envelope-paper{background:rgba(204,238,225,.08)!important;border:1px solid rgba(201,237,226,.28);box-shadow:0 0 18px rgba(176,235,220,.1)}.future-envelope-title{color:rgba(232,248,239,.92)!important;text-shadow:0 0 18px rgba(164,227,215,.22)}.future-envelope-subtitle{color:rgba(188,226,215,.76)!important}.future-envelope-hint{margin-top:1.55rem;color:rgba(191,223,215,.48);font-size:.7rem;letter-spacing:.2em}.future-letter-moth{position:absolute;z-index:1;width:16px;height:10px;opacity:0;pointer-events:none;filter:drop-shadow(0 0 7px rgba(154,224,215,.7));animation:future-moth-arrive 8s ease-in-out forwards}.future-letter-moth:after,.future-letter-moth:before{content:"";position:absolute;top:1px;width:8px;height:9px;border:1px solid rgba(170,226,216,.64);border-radius:90% 10% 75% 25%}.future-letter-moth:before{right:50%;transform:rotate(-24deg)}.future-letter-moth:after{left:50%;transform:scaleX(-1) rotate(-24deg)}.future-letter-moth-one{left:13%;top:30%;animation-delay:.95s}.future-letter-moth-two{right:9%;top:57%;transform:scale(.75);animation-delay:1.35s}.future-letter-moth-three{left:25%;top:70%;transform:scale(.56);animation-delay:1.7s}@keyframes future-letter-stars{0%{transform:translateY(0)}to{transform:translateY(-18px)}}@keyframes future-envelope-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes future-moth-arrive{0%{opacity:0;transform:translate(-30px,-18px) rotate(-12deg) scale(.72)}18%{opacity:.58}58%{opacity:.34;transform:translate(42px,18px) rotate(10deg) scale(.9)}to{opacity:.18;transform:translate(78px,8px) rotate(-3deg) scale(.72)}}@media (max-width:640px){.future-envelope{width:min(78vw,20rem);margin-top:1.8rem}.future-letter-moth-one{left:4%}.future-letter-moth-two{right:0}.future-letter-moth-three{left:13%}}body,html{overflow-y:auto}.future-letter-scene{min-height:100vh;height:auto;overflow:visible;padding:0;background:radial-gradient(ellipse at 50% 42%,rgba(103,195,190,.12),transparent 28%),radial-gradient(ellipse at 18% 88%,rgba(17,83,72,.25),transparent 42%),radial-gradient(ellipse at 84% 78%,rgba(10,58,62,.24),transparent 38%),linear-gradient(165deg,#040f1b,#071d29 42%,#082d2a 76%,#061b1a)}.future-letter-copy{width:100%;min-height:100vh;padding:0}.choice-response-paper,.choice-thanks,.choice-transition,.future-letter-copy,.future-letter-stage{position:relative;left:auto;top:auto;margin:0 auto;transform:none}.future-letter-stage{min-height:100vh;display:grid;align-content:center;justify-items:center}.future-envelope-stage{position:relative;width:100vw;height:100vh;min-height:100svh;padding:0;display:flex;align-items:center;justify-content:center}.future-envelope-stage>.eyebrow{position:absolute;top:calc(50% - 8.8rem);margin:0}.future-envelope{width:clamp(18rem,70vw,24rem);margin:0}.future-envelope-hint{position:absolute;top:calc(50% + 8.1rem);margin:0}.future-letter-moth-three{display:none}.future-letter-moth{opacity:.42;animation-duration:10s}@keyframes future-letter-mist{0%{transform:translateX(-2%) scale(1);opacity:.28}to{transform:translateX(2%) scale(1.04);opacity:.42}}.ending-stars{opacity:.36;animation-duration:26s}.future-letter-content{width:min(650px,100%);padding-bottom:1rem}.choice-transition{min-height:calc(100vh - 200px);display:grid;align-content:center;justify-items:center}.choice-response-paper{margin-top:2rem}.choice-thanks{padding:2rem 0 1rem}@media (max-width:640px){.future-letter-scene{min-height:100vh;padding:0}.future-letter-copy{width:100%;min-height:auto}.choice-transition,.future-letter-stage{min-height:100svh}.future-envelope-stage{height:100svh}.future-envelope{width:70vw}.future-envelope-stage>.eyebrow{top:calc(50% - 8rem)}.future-envelope-hint{top:calc(50% + 7.3rem)}.future-letter-content{padding-bottom:1rem}.future-letter-choice-intro{margin-top:4.5rem}.future-letter-choices{margin-top:2.4rem;padding-bottom:1rem}}