:root{--burgundy-deep: #2a0713;--burgundy: #4a0f24;--wine: #6d1233;--wine-soft: #8a1f43;--rose: #d98aa0;--rose-light: #f2b9c6;--cream: #f7ece0;--cream-dim: #e4d3c4;--gold: #d8b26a;--gold-soft: #ecd7a4;--ink: var(--cream);--ink-soft: rgba(247, 236, 224, .78);--ink-faint: rgba(247, 236, 224, .56);--script-ink: rgba(233, 178, 194, .86);--glass: rgba(255, 240, 235, .045);--glass-strong: rgba(255, 240, 235, .075);--hairline: rgba(216, 178, 106, .24);--hairline-soft: rgba(247, 236, 224, .12);--shadow-soft: 0 18px 48px rgba(12, 2, 8, .5);--shadow-lift: 0 26px 70px rgba(12, 2, 8, .62);--glow-gold: 0 0 28px rgba(216, 178, 106, .3);--glow-rose: 0 0 34px rgba(217, 138, 160, .32);--font-display: "Cormorant Garamond", "Georgia", serif;--font-body: "Lora", "Georgia", serif;--font-telugu: "Baloo Tammudu 2", "Noto Sans Telugu", "Gautami", sans-serif;--font-hindi: "Tiro Devanagari Hindi", "Noto Sans Devanagari", serif;--page-pad: clamp(1.1rem, 4vw, 3rem);--radius-lg: 22px;--radius-md: 14px;--radius-pill: 999px;--ease-soft: cubic-bezier(.22, .61, .36, 1);--dur-slow: 1.5s;--dur-med: .75s;--dur-fast: .35s}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;background:var(--burgundy-deep)}body{font-family:var(--font-body);color:var(--ink);line-height:1.85;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}#root{min-height:100vh;min-height:100dvh}h1,h2,h3{font-family:var(--font-display);font-weight:500;letter-spacing:.012em;line-height:1.25;margin:0}p{margin:0}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--gold-soft);outline-offset:3px;border-radius:6px}::selection{background:#d98aa052;color:var(--cream)}.honeypot{position:absolute;left:-9999px;top:auto;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:50%;transform:translate(-50%);z-index:100;padding:.7rem 1.2rem;background:var(--wine);color:var(--cream);border-radius:0 0 12px 12px;text-decoration:none;transition:top var(--dur-fast) var(--ease-soft)}.skip-link:focus{top:0}.stage{position:relative;min-height:100vh;min-height:100dvh;isolation:isolate;overflow-x:hidden}.stage:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-3;background:radial-gradient(120% 90% at 50% 12%,rgba(138,31,67,.5),transparent 62%),radial-gradient(90% 70% at 82% 88%,rgba(109,18,51,.42),transparent 65%),radial-gradient(70% 60% at 12% 78%,rgba(74,15,36,.6),transparent 70%),linear-gradient(170deg,#33091a,#2a0713 46%,#1c040d)}.stage:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background:radial-gradient(46% 34% at 50% 6%,rgba(247,236,224,.11),transparent 70%);pointer-events:none}.stage[data-scene=reply-yes]:after{background:radial-gradient(56% 44% at 50% 22%,rgba(236,215,164,.2),transparent 72%);transition:background 2s var(--ease-soft)}.vignette{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(120% 100% at 50% 50%,transparent 52%,rgba(9,1,6,.62) 100%)}.page{position:relative;width:100%;max-width:760px;margin:0 auto;padding:clamp(4.6rem,12vh,6.5rem) var(--page-pad) clamp(3rem,10vh,5rem)}.ambience{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.petal{position:absolute;top:-8vh;width:13px;height:13px;border-radius:68% 32% 62% 38%/46% 58% 42% 54%;background:linear-gradient(140deg,var(--rose-light),var(--wine-soft));opacity:0;filter:blur(.2px);animation-name:petal-fall;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform,opacity}@keyframes petal-fall{0%{opacity:0;transform:translate3d(0,-8vh,0) rotate(0)}8%{opacity:var(--petal-opacity, .5)}50%{transform:translate3d(var(--drift, 30px),52vh,0) rotate(180deg)}88%{opacity:var(--petal-opacity, .5)}to{opacity:0;transform:translate3d(calc(var(--drift, 30px) * -.6),112vh,0) rotate(360deg)}}.spark{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold-soft);box-shadow:0 0 8px #ecd7a4d9;opacity:0;animation-name:spark-drift;animation-timing-function:ease-in-out;animation-iteration-count:infinite;will-change:transform,opacity}@keyframes spark-drift{0%{opacity:0;transform:translate3d(0,12vh,0) scale(.6)}25%{opacity:.85}75%{opacity:.4}to{opacity:0;transform:translate3d(var(--drift, 24px),-22vh,0) scale(1.1)}}.floating-heart{position:absolute;color:#d98aa057;opacity:0;animation-name:heart-rise;animation-timing-function:ease-in-out;animation-iteration-count:infinite;will-change:transform,opacity}@keyframes heart-rise{0%{opacity:0;transform:translate3d(0,8vh,0) scale(.7)}20%{opacity:.55}70%{opacity:.28}to{opacity:0;transform:translate3d(var(--drift, 18px),-30vh,0) scale(1.05)}}.topbar{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:flex-start;justify-content:space-between;gap:.6rem;padding:clamp(.6rem,2.4vw,1.1rem) var(--page-pad);background:linear-gradient(180deg,rgba(26,4,13,.72),transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.control-shell{display:flex;align-items:center;gap:.3rem;padding:.3rem;border:1px solid var(--hairline);border-radius:var(--radius-pill);background:var(--glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 8px 26px #0a020666}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink-soft);transition:color var(--dur-fast) var(--ease-soft),background var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-soft)}.icon-button:hover{color:var(--gold-soft);background:#d8b26a1f}.icon-button:active{transform:scale(.94)}.icon-button[aria-pressed=true]{color:var(--gold-soft);background:#d8b26a29}.lang{position:relative}.lang-list{display:flex;align-items:center;gap:.15rem}.lang-option{display:inline-flex;align-items:center;justify-content:center;height:40px;min-height:40px;padding:0 .85rem;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--ink-faint);font-size:.86rem;letter-spacing:.02em;line-height:1;white-space:nowrap;transition:color var(--dur-fast) var(--ease-soft),background var(--dur-fast) var(--ease-soft)}.lang-option[data-lang=te]{font-family:var(--font-telugu);font-size:.82rem}.lang-option[data-lang=hi]{font-family:var(--font-hindi);font-size:.84rem}.lang-option:hover{color:var(--cream)}.lang-option[aria-checked=true]{color:var(--burgundy-deep);background:linear-gradient(135deg,var(--gold-soft),var(--gold));box-shadow:var(--glow-gold)}.music{display:flex;align-items:center}.volume-wrap{display:flex;align-items:center;gap:.4rem;padding-right:.6rem;max-width:0;opacity:0;overflow:hidden;transition:max-width var(--dur-med) var(--ease-soft),opacity var(--dur-med) var(--ease-soft)}.music[data-expanded=true] .volume-wrap{max-width:150px;opacity:1}input[type=range].volume{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:82px;height:22px;background:transparent;cursor:pointer}input[type=range].volume::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:linear-gradient(90deg,var(--gold) 0%,rgba(247,236,224,.2) 100%)}input[type=range].volume::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:13px;height:13px;margin-top:-5px;border-radius:50%;background:var(--gold-soft);box-shadow:0 0 10px #ecd7a4b3}input[type=range].volume::-moz-range-track{height:3px;border-radius:3px;background:#f7ece033}input[type=range].volume::-moz-range-progress{height:3px;border-radius:3px;background:var(--gold)}input[type=range].volume::-moz-range-thumb{width:13px;height:13px;border:0;border-radius:50%;background:var(--gold-soft);box-shadow:0 0 10px #ecd7a4b3}.music-note{position:absolute;top:calc(100% + .5rem);right:0;max-width:15rem;padding:.5rem .8rem;border:1px solid var(--hairline-soft);border-radius:var(--radius-md);background:#1a040de6;color:var(--ink-faint);font-size:.76rem;line-height:1.55;text-align:right}.roman{font-family:var(--font-body);color:var(--ink)}.script{font-family:var(--font-telugu);color:var(--script-ink);line-height:2.05}[data-lang=hi] .roman,[data-lang=hi] .script{font-family:var(--font-hindi);line-height:2}.line-pair{display:flex;flex-direction:column;gap:.35rem}.gate{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:clamp(5rem,13vh,7rem) var(--page-pad) clamp(2.5rem,8vh,4rem);text-align:center}.gate-inner{display:flex;flex-direction:column;align-items:center;gap:clamp(1.4rem,4.5vh,2.2rem);width:100%;max-width:21rem}.gate-dots{display:flex;align-items:center;justify-content:center;gap:.85rem;height:22px}.gate-dot{width:11px;height:11px;border:1px solid rgba(216,178,106,.5);border-radius:50%;background:transparent;transition:background var(--dur-fast) var(--ease-soft),box-shadow var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-soft)}.gate-dot[data-filled=true]{background:var(--gold-soft);border-color:var(--gold-soft);box-shadow:0 0 14px #ecd7a4cc;transform:scale(1.16)}.gate[data-state=wrong] .gate-dots{animation:gate-shake .5s var(--ease-soft)}.gate[data-state=wrong] .gate-dot[data-filled=true]{background:var(--rose);border-color:var(--rose);box-shadow:0 0 14px #d98aa0b3}@keyframes gate-shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}45%{transform:translate(6px)}70%{transform:translate(-4px)}}.gate-feedback{min-height:1.5rem;font-size:.88rem;line-height:1.5;color:var(--rose-light)}.gate[data-state=open] .gate-feedback{font-family:var(--font-display);font-size:1.5rem;font-style:italic;color:var(--gold-soft);text-shadow:0 0 26px rgba(236,215,164,.6)}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.6rem,2.6vw,.85rem);width:100%;max-width:17rem}.key{display:grid;place-items:center;aspect-ratio:1;min-height:58px;border:1px solid var(--hairline-soft);border-radius:50%;background:linear-gradient(150deg,#fff0eb12,#fff0eb07);color:var(--ink);font-family:var(--font-display);font-size:1.4rem;letter-spacing:.02em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);-webkit-tap-highlight-color:transparent;transition:border-color var(--dur-fast) var(--ease-soft),background var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-soft),box-shadow var(--dur-fast) var(--ease-soft)}.key:hover:not(:disabled){border-color:#d8b26a8c;background:linear-gradient(150deg,#fff0eb1f,#fff0eb0d);box-shadow:0 10px 26px #0a020666}.key:active:not(:disabled){transform:scale(.93);box-shadow:0 0 22px #d98aa059}.key:disabled{opacity:.35;cursor:default}.key-action{font-size:1rem;color:var(--ink-faint)}.key-gap{display:block}.gate-heart{color:var(--rose-light);filter:drop-shadow(0 0 24px rgba(242,185,198,.65));animation:heartbeat 1.5s var(--ease-soft) infinite}.gate[data-state=open] .keypad{opacity:.35;transition:opacity .7s var(--ease-soft)}@media (prefers-reduced-motion: reduce){.gate[data-state=wrong] .gate-dots,.gate-heart{animation:none}}.welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:clamp(5.5rem,14vh,8rem) var(--page-pad) clamp(3rem,8vh,4.5rem);text-align:center}.welcome-inner{display:flex;flex-direction:column;align-items:center;gap:clamp(1.6rem,5vh,2.6rem);max-width:34rem}.welcome-name{font-family:var(--font-display);font-size:clamp(3rem,13vw,5.4rem);font-weight:500;font-style:italic;letter-spacing:.02em;color:var(--cream);text-shadow:0 0 42px rgba(242,185,198,.34),0 6px 26px rgba(12,2,8,.6)}.welcome-name .script{display:block;margin-top:.35rem;font-size:.52em;font-style:normal;text-shadow:0 0 28px rgba(217,138,160,.28)}.welcome-line-1{font-family:var(--font-display);font-size:clamp(1.4rem,5.4vw,2rem);color:var(--cream)}.welcome-line-1 .script{display:block;margin-top:.3rem;font-size:.82em}.welcome-line-2{font-size:clamp(.95rem,3.4vw,1.08rem);color:var(--ink-soft);font-style:italic}.welcome-line-2 .script{display:block;margin-top:.35rem;font-size:.94em;font-style:normal}.hairline-rule{width:min(190px,52%);height:1px;border:0;margin:0;background:linear-gradient(90deg,transparent,var(--hairline),transparent)}.reveal{opacity:0;transform:translateY(18px);transition:opacity 1.15s var(--ease-soft),transform 1.15s var(--ease-soft)}.reveal[data-shown=true]{opacity:1;transform:translateY(0)}.btn-primary{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:.2rem;min-height:56px;padding:.95rem 2.2rem;border:1px solid rgba(236,215,164,.5);border-radius:var(--radius-pill);background:linear-gradient(135deg,#8a1f43f2,#6d1233f2);color:var(--cream);box-shadow:var(--shadow-soft),inset 0 1px #ffffff17;transition:transform var(--dur-med) var(--ease-soft),box-shadow var(--dur-med) var(--ease-soft),border-color var(--dur-med) var(--ease-soft)}.btn-primary:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;box-shadow:var(--glow-rose);opacity:.55;pointer-events:none;transition:opacity var(--dur-med) var(--ease-soft)}.btn-primary:hover{transform:translateY(-2px);border-color:var(--gold-soft);box-shadow:var(--shadow-lift),inset 0 1px #ffffff1f}.btn-primary:hover:after{opacity:.9}.btn-primary:active{transform:translateY(0)}.btn-primary .label-roman{font-family:var(--font-display);font-size:clamp(1.08rem,4.2vw,1.28rem);letter-spacing:.03em}.btn-primary .label-script{font-family:var(--font-telugu);font-size:.82rem;color:#f7ece0bd}[data-lang=hi] .btn-primary .label-roman,[data-lang=hi] .btn-ghost{font-family:var(--font-hindi)}.btn-ghost{display:inline-flex;align-items:center;gap:.45rem;min-height:46px;padding:.6rem 1.3rem;border:1px solid var(--hairline-soft);border-radius:var(--radius-pill);background:var(--glass);color:var(--ink-soft);font-size:.9rem;transition:color var(--dur-fast) var(--ease-soft),border-color var(--dur-fast) var(--ease-soft),background var(--dur-fast) var(--ease-soft)}.btn-ghost:hover{color:var(--cream);border-color:var(--hairline);background:var(--glass-strong)}.envelope-scene{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;min-height:100vh;min-height:100dvh;padding:var(--page-pad)}.envelope{position:relative;width:min(320px,78vw);aspect-ratio:3 / 2;perspective:1100px;animation:envelope-breathe 4.5s var(--ease-soft) infinite}@keyframes envelope-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.envelope-body{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;background:linear-gradient(155deg,#7a1839,#56102a 55%,#3d0b1f);box-shadow:var(--shadow-lift),inset 0 1px #ffffff14;overflow:hidden}.envelope-body:before,.envelope-body:after{content:"";position:absolute;bottom:0;width:62%;height:100%;background:linear-gradient(180deg,#00000029,#0000004d)}.envelope-body:before{left:0;clip-path:polygon(0 100%,0 12%,100% 100%)}.envelope-body:after{right:0;clip-path:polygon(100% 100%,100% 12%,0 100%)}.envelope-flap{position:absolute;top:0;left:0;right:0;height:58%;transform-origin:top center;background:linear-gradient(180deg,#8a1f43,#6d1233);clip-path:polygon(0 0,100% 0,50% 100%);box-shadow:0 8px 18px #0a020666;transition:transform 1.15s var(--ease-soft);z-index:3;backface-visibility:hidden}.envelope[data-open=true] .envelope-flap{transform:rotateX(-172deg);z-index:1}.envelope-seal{position:absolute;top:46%;left:50%;z-index:4;display:grid;place-items:center;width:54px;height:54px;margin:-27px 0 0 -27px;border-radius:50%;background:radial-gradient(circle at 34% 30%,#e59ab0,#9c1c40 62%,#6d1233);color:var(--cream);box-shadow:0 6px 18px #0a02068c,var(--glow-rose);transition:opacity var(--dur-med) var(--ease-soft),transform var(--dur-med) var(--ease-soft)}.envelope[data-open=true] .envelope-seal{opacity:0;transform:scale(.6)}.envelope-letter{position:absolute;left:7%;right:7%;top:12%;z-index:2;height:76%;padding:1rem;border-radius:6px;background:linear-gradient(170deg,#fbf3e8,#efdfcd);box-shadow:0 -6px 22px #0a020659;transform:translateY(34%);opacity:0;transition:transform 1.25s var(--ease-soft) .55s,opacity .7s var(--ease-soft) .55s}.envelope-letter:before,.envelope-letter:after{content:"";display:block;height:1px;margin:.55rem .4rem;background:#6d123329}.envelope[data-open=true] .envelope-letter{transform:translateY(-42%);opacity:1}.envelope-caption{font-family:var(--font-display);font-size:1.05rem;font-style:italic;color:var(--ink-faint);letter-spacing:.06em}.page-tall{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh}.book{display:flex;flex-direction:column;align-items:center;width:100%;gap:clamp(1rem,3.2vh,1.6rem)}.book-header{display:flex;flex-direction:column;align-items:center;gap:.55rem;text-align:center}.book-title{font-size:clamp(1.7rem,6.6vw,2.5rem);font-style:italic;color:var(--cream);text-shadow:0 0 34px rgba(242,185,198,.24)}.book-title .script{display:block;margin-top:.3rem;font-size:.5em;font-style:normal}.book-sub{font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint)}.book-sub .script{display:block;margin-top:.28rem;letter-spacing:.03em;text-transform:none;font-size:1.15em}.script-toggle{margin-top:.35rem}.btn-ghost-sm{min-height:38px;padding:.4rem .95rem;font-size:.8rem}.book-stage{position:relative;width:100%;max-width:640px;min-height:clamp(280px,42vh,380px);display:flex;align-items:center;justify-content:center;touch-action:pan-y}.book-page{position:relative;width:100%;padding:clamp(1.9rem,6vw,3.2rem) clamp(1.5rem,5.5vw,3rem);border:1px solid var(--hairline-soft);border-radius:var(--radius-lg);background:radial-gradient(120% 90% at 50% 0%,rgba(242,185,198,.075),transparent 62%),linear-gradient(165deg,#fff0eb13,#fff0eb07);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-lift),inset 0 1px #ffffff12;text-align:center;animation:page-in .72s var(--ease-soft) both}.book-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(160deg,rgba(216,178,106,.42),transparent 40%,rgba(217,138,160,.28));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}@keyframes page-in{0%{opacity:0;transform:translate(var(--from-x, 26px)) rotateY(var(--from-rot, -4deg))}to{opacity:1;transform:translate(0) rotateY(0)}}.book-page[data-direction=forward]{--from-x: 34px;--from-rot: -5deg}.book-page[data-direction=back]{--from-x: -34px;--from-rot: 5deg}.book-page[data-direction=none]{animation:none}.page-ornament{position:absolute;top:clamp(.9rem,3vw,1.3rem);left:50%;transform:translate(-50%);font-family:var(--font-display);font-size:.78rem;letter-spacing:.32em;color:#d8b26a99}.page-roman{font-size:clamp(1.12rem,4.6vw,1.42rem);line-height:1.95;color:var(--ink)}.page-script{margin-top:1.05rem;padding-top:1.05rem;border-top:1px solid var(--hairline-soft);font-family:var(--font-telugu);font-size:clamp(.96rem,3.9vw,1.08rem);line-height:2.05;color:var(--script-ink)}[data-lang=hi] .page-roman{font-family:var(--font-hindi);line-height:2.05}.book-page[data-emphasis=true] .page-roman{color:var(--rose-light);font-style:italic;text-shadow:0 0 28px rgba(242,185,198,.22)}.book-page[data-emphasis=true] .page-script{color:#f2b9c6cc}.book-page[data-emphasis=true]:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;box-shadow:0 0 60px #d98aa038;pointer-events:none}.book-signature{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.5rem 0}.sig-heart{color:var(--rose-light);filter:drop-shadow(0 0 18px rgba(242,185,198,.5));animation:heartbeat 2.6s var(--ease-soft) infinite}.book-signature .closing{margin-top:.6rem;font-size:1rem;font-style:italic;color:var(--ink-soft)}.book-signature .signer{font-family:var(--font-display);font-size:clamp(1.7rem,7vw,2.3rem);font-style:italic;color:var(--gold-soft);text-shadow:0 0 30px rgba(216,178,106,.3)}.book-signature .script{display:block;margin-top:.3rem;font-family:var(--font-telugu);font-size:.85rem;font-style:normal;color:#ecd7a4bd}.book-signature .signer .script{font-size:.5em}.book-nav{display:flex;align-items:center;gap:.9rem;width:100%;max-width:460px}.nav-round{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid var(--hairline);border-radius:50%;background:var(--glass);color:var(--ink-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:color var(--dur-fast) var(--ease-soft),border-color var(--dur-fast) var(--ease-soft),background var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-soft)}.nav-round:hover:not(:disabled){color:var(--gold-soft);border-color:var(--gold-soft);background:#d8b26a24}.nav-round:active:not(:disabled){transform:scale(.94)}.nav-round:disabled{opacity:.3;cursor:default}.nav-round-go{color:var(--burgundy-deep);border-color:transparent;background:linear-gradient(135deg,var(--gold-soft),var(--gold));box-shadow:var(--glow-gold)}.nav-round-go:hover{color:var(--burgundy-deep);background:linear-gradient(135deg,#f5e4bb,var(--gold))}.rail{position:relative;flex:1;height:2px;border-radius:2px;background:#f7ece024;overflow:hidden}.rail-fill{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,var(--wine-soft),var(--rose),var(--gold-soft));box-shadow:0 0 12px #d8b26a8c;transition:width .7s var(--ease-soft)}.dot-row{display:flex;align-items:center;gap:.42rem}.dot{width:24px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;position:relative}.dot:after{content:"";position:absolute;top:50%;left:50%;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:#f7ece042;transition:background var(--dur-fast) var(--ease-soft),transform var(--dur-fast) var(--ease-soft),box-shadow var(--dur-fast) var(--ease-soft)}.dot:hover:after{background:#f7ece08c}.dot[data-active=true]:after{background:var(--gold-soft);transform:scale(1.45);box-shadow:0 0 10px #ecd7a4bf}.turn-hint{font-size:.74rem;letter-spacing:.09em;color:var(--ink-faint);opacity:.68}.book-cta{margin-top:.3rem}.proposal{display:flex;flex-direction:column;align-items:center;width:100%;text-align:center}.proposal-back{margin-top:clamp(1.6rem,5vh,2.2rem);opacity:.72}.proposal-heart{display:grid;place-items:center;width:92px;height:92px;margin:0 auto clamp(1.6rem,5vh,2.4rem);border-radius:50%;color:var(--rose-light);background:radial-gradient(circle,rgba(217,138,160,.24),transparent 68%);animation:heartbeat 2.4s var(--ease-soft) infinite}@keyframes heartbeat{0%,to{transform:scale(1);filter:drop-shadow(0 0 14px rgba(217,138,160,.42))}14%{transform:scale(1.13);filter:drop-shadow(0 0 26px rgba(242,185,198,.68))}28%{transform:scale(1)}42%{transform:scale(1.08);filter:drop-shadow(0 0 22px rgba(242,185,198,.56))}56%{transform:scale(1)}}.proposal-question .roman{font-family:var(--font-display);font-size:clamp(1.25rem,5.2vw,1.7rem);font-style:italic;line-height:1.7;color:var(--cream)}.proposal-question .script{display:block;margin-top:.8rem;font-size:clamp(1rem,4.1vw,1.14rem);font-style:normal}[data-lang=hi] .proposal-question .roman{font-family:var(--font-hindi);font-style:normal;line-height:1.9}.response-list{display:grid;gap:.9rem;margin:clamp(2.2rem,7vh,3.2rem) auto 0;max-width:30rem}.response-btn{display:flex;flex-direction:column;align-items:center;gap:.28rem;width:100%;min-height:62px;padding:1rem 1.3rem;border:1px solid var(--hairline-soft);border-radius:var(--radius-md);background:linear-gradient(150deg,#fff0eb12,#fff0eb08);color:var(--ink);text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color var(--dur-med) var(--ease-soft),background var(--dur-med) var(--ease-soft),transform var(--dur-med) var(--ease-soft),box-shadow var(--dur-med) var(--ease-soft)}.response-btn:hover{transform:translateY(-2px);border-color:#d8b26a80;background:linear-gradient(150deg,#fff0eb1c,#fff0eb0d);box-shadow:0 14px 34px #0a02066b}.response-btn:active{transform:translateY(0)}.response-btn .roman{font-size:clamp(.98rem,4vw,1.08rem);line-height:1.6}.response-btn .script{font-size:.9rem}.plea-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:var(--page-pad);background:#0e0208b8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:plea-fade .5s var(--ease-soft) both}@keyframes plea-fade{0%{opacity:0}to{opacity:1}}.plea-panel{position:relative;width:100%;max-width:34rem;max-height:90vh;overflow-y:auto;padding:clamp(2rem,6.5vw,3rem) clamp(1.6rem,6vw,2.8rem);border:1px solid rgba(216,178,106,.34);border-radius:var(--radius-lg);background:radial-gradient(130% 90% at 50% 0%,rgba(242,185,198,.12),transparent 60%),linear-gradient(165deg,#4a0f24,#33091a 62%,#260814);box-shadow:var(--shadow-lift),0 0 90px #d98aa03d;text-align:center;animation:plea-rise .62s var(--ease-soft) both}@keyframes plea-rise{0%{opacity:0;transform:translateY(26px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.plea-heart{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 1.1rem;border-radius:50%;color:var(--rose-light);background:radial-gradient(circle,rgba(217,138,160,.26),transparent 70%);animation:heartbeat 2.4s var(--ease-soft) infinite}.plea-title{font-family:var(--font-display);font-size:clamp(1.45rem,5.8vw,2rem);font-style:italic;line-height:1.4;color:var(--rose-light);text-shadow:0 0 30px rgba(242,185,198,.3)}.plea-body{margin-top:1.1rem;font-family:var(--font-body);font-size:clamp(1rem,4.1vw,1.12rem);line-height:1.95;color:var(--ink-soft)}.plea-actions{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:clamp(1.8rem,5.5vh,2.4rem)}.plea-primary{width:100%;max-width:22rem}.plea-secondary{font-size:.84rem;opacity:.66}.plea-secondary:hover{opacity:1}@media (prefers-reduced-motion: reduce){.plea-backdrop,.plea-panel,.plea-heart{animation:none}}.reply{max-width:34rem;margin:0 auto;padding:clamp(2rem,6vw,3rem) clamp(1.5rem,5.5vw,2.8rem);border:1px solid var(--hairline-soft);border-radius:var(--radius-lg);background:radial-gradient(120% 90% at 50% 0%,rgba(242,185,198,.08),transparent 60%),linear-gradient(165deg,#fff0eb12,#fff0eb07);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-lift),inset 0 1px #ffffff12;text-align:center}.reply[data-kind=yes]{border-color:#d8b26a57;box-shadow:var(--shadow-lift),0 0 70px #d8b26a33,inset 0 1px #ffffff17}.reply-icon{display:grid;place-items:center;width:78px;height:78px;margin:0 auto 1.6rem;border-radius:50%;color:var(--rose-light);background:radial-gradient(circle,rgba(217,138,160,.22),transparent 70%)}.reply[data-kind=yes] .reply-icon{color:var(--gold-soft);background:radial-gradient(circle,rgba(236,215,164,.28),transparent 70%);animation:heartbeat 2.6s var(--ease-soft) infinite}.reply-text .roman{font-size:clamp(1.06rem,4.3vw,1.2rem);line-height:1.95}.reply-text .script{display:block;margin-top:.8rem;font-size:clamp(.96rem,3.9vw,1.05rem)}.reply[data-kind=yes] .reply-text .roman{color:var(--gold-soft)}.reply-closing{margin-top:clamp(2rem,6vh,2.8rem);display:flex;flex-direction:column;align-items:center;gap:clamp(.9rem,3vh,1.3rem)}.reply-closing .hairline-rule{width:min(150px,46%)}.closing-thanks{font-family:var(--font-display);font-size:clamp(1.15rem,4.6vw,1.5rem);font-style:italic;line-height:1.55;color:var(--cream);text-shadow:0 0 30px rgba(242,185,198,.26);max-width:24ch}.closing-signature .closing{font-size:.9rem;font-style:italic;color:var(--ink-faint)}.closing-signature .signer{margin-top:.25rem;font-family:var(--font-display);font-size:clamp(1.35rem,5.4vw,1.75rem);font-style:italic;color:var(--gold-soft);text-shadow:0 0 26px rgba(216,178,106,.3)}.closing-signature .script{display:block;margin-top:.28rem;font-family:var(--font-telugu);font-size:.8rem;font-style:normal;color:#ecd7a4b8}.reply-closing[data-shown=false]{pointer-events:none}.scene{animation:scene-in 1.1s var(--ease-soft) both}@keyframes scene-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.topbar{flex-direction:row;align-items:center}.lang-option{padding:.35rem .6rem;font-size:.8rem}.music[data-expanded=true] .volume-wrap{max-width:108px}input[type=range].volume{width:62px}.response-btn{min-height:66px}}@media (min-width: 900px){.page{max-width:780px}body{line-height:1.9}}@media (hover: none){.btn-primary:hover,.response-btn:hover{transform:none}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.ambience{display:none}.envelope,.proposal-heart,.sig-heart,.book-page{animation:none}}
