body.vn-body{overflow:hidden;overscroll-behavior:none}html:has(body.vn-body){overflow:hidden;overscroll-behavior:none}.vn{--bar: 60px;--vh: 100vh;--stage-w: min(100vw, max(600px, calc((var(--vh) - var(--bar)) * .56)));--u: calc(var(--stage-w) / 100);--vn-mint: #5fe0a4;--vn-gold-line: rgba(232, 196, 106, .38);--vn-glass: radial-gradient(120% 95% at 0% 0%, rgba(255, 255, 255, .1), rgba(255, 255, 255, 0) 46%), linear-gradient(165deg, rgba(30, 36, 98, .64), rgba(8, 11, 34, .82));--vn-pad: calc(var(--u) * 3.4);--vn-lines: 2;position:fixed;inset:0;z-index:10;overflow:hidden;background:radial-gradient(120% 90% at 50% 0%,#161c5a,#0a0e30 55%,#060818);color:var(--g-text);font-family:var(--g-sans);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}@supports (height: 100dvh){.vn{--vh: 100dvh}}@media(max-width:640px){.vn{--bar: 54px}}.vn.is-pseudo-fs{--bar: 0px;z-index:200}.vn:fullscreen{--bar: 0px}.vn:-webkit-full-screen{--bar: 0px}.vn *,.vn *:before,.vn *:after{-webkit-tap-highlight-color:transparent}.vn input{-webkit-user-select:text;user-select:text}.vn [hidden]{display:none!important}.vn-sprite{position:absolute;width:0;height:0;overflow:hidden}.vn-i{width:1em;height:1em;flex:none;display:inline-block;vertical-align:-.125em}.vn-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.vn-backdrop{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.vn-bd{position:absolute;inset:-8%;background-size:cover;background-position:center;opacity:0;filter:blur(24px) saturate(1.35) brightness(.52);transition:opacity 1.4s ease;will-change:opacity}.vn-bd.is-on{opacity:1;z-index:2}.vn-bd.is-out{opacity:1;z-index:1;transition:none}.vn-backdrop:after{content:"";position:absolute;inset:0;z-index:3;background:radial-gradient(90% 100% at 50% 50%,#070a1f00 32%,#070a1fb8)}@media(max-width:600px){.vn-backdrop{bottom:auto;height:calc(var(--bar) + 26px)}.vn-bd{inset:-12px;background-position:50% 0%;filter:blur(14px) saturate(1.3) brightness(.6)}.vn-backdrop:after{background:linear-gradient(to bottom,#070a1f33,#070a1f80)}}.vn-stage{position:absolute;top:var(--bar);bottom:0;left:0;right:0;width:var(--stage-w);margin:0 auto;overflow:hidden;isolation:isolate;background:#0b0f33;font-size:clamp(16px,calc(var(--u) * 4.4),max(20px,calc(var(--u) * 2.9)));box-shadow:0 0 0 1px #e8c46a29,0 0 110px 12px #0009}.vn-bgwrap{position:absolute;inset:0;z-index:1;overflow:hidden;transition:opacity .9s ease}.vn-bg{position:absolute;inset:0;background-size:cover;background-position:50% 14%;opacity:0;transition:opacity 1.2s ease;animation:vn-drift 70s ease-in-out infinite alternate;will-change:opacity,transform}.vn-bg.is-on{opacity:1;z-index:2}.vn-bg.is-out{opacity:1;z-index:1;transition:none}@keyframes vn-drift{0%{transform:scale(1.02) translateZ(0)}to{transform:scale(1.09) translate3d(-1.2%,-.8%,0)}}.vn-shade{position:absolute;inset:0;z-index:2;pointer-events:none;transition:opacity .9s ease;background:radial-gradient(120% 90% at 50% 42%,#06081a00 55%,#06081a6b),linear-gradient(to bottom,#06081a4d,#06081a00 20% 46%,#06081a80 74%,#06081ae0)}.vn-stage.is-ending .vn-bgwrap,.vn-stage.is-ending .vn-shade,.vn-stage.is-ending .vn-snow--game{opacity:0}.vn-snow{position:absolute;inset:0;z-index:3;overflow:hidden;pointer-events:none;transition:opacity .9s ease}.vn-flake{position:absolute;top:-14px;left:var(--x);width:var(--s);height:var(--s);opacity:var(--o);animation:vn-fall var(--dur) linear var(--delay) infinite}.vn-flake>*{position:absolute;inset:0;display:block;animation:vn-sway var(--sdur) ease-in-out infinite alternate;transition:opacity 1.8s ease}.vn-flake .dot{border-radius:50%;background:radial-gradient(circle at 40% 38%,#fff,#ffffffc7 42%,#fff0 72%);box-shadow:0 0 calc(var(--s) * 1.3) #ffffff52}.vn-flake .petal{opacity:0;inset:-40%;border-radius:100% 0;background:linear-gradient(135deg,#ffe3ee,#ffa9c6 70%,#ff8fb4);transform-origin:50% 50%}.vn-flake .crystal{color:#ffffffe6;width:100%;height:100%;filter:drop-shadow(0 0 4px rgba(190,246,241,.6))}.vn-flake.is-crystal{width:var(--cs);height:var(--cs)}.vn-flake.is-crystal .petal{inset:0}.vn-stage[data-scene=snow] .vn-flake .dot,.vn-stage[data-scene=snow] .vn-flake .crystal{opacity:0}.vn-stage[data-scene=snow] .vn-flake .petal{opacity:.95}@keyframes vn-fall{to{transform:translate3d(var(--drift, 0px),var(--fall, 110vh),0)}}@keyframes vn-sway{0%{transform:translate(calc(var(--sway) * -1)) rotate(calc(var(--rot, 0deg) * -1))}to{transform:translate(var(--sway)) rotate(var(--rot, 0deg))}}.vn-halo{position:absolute;inset:0;z-index:9;pointer-events:none;opacity:0;transition:opacity 1.2s ease;background:radial-gradient(46% 32% at 50% 36%,#ffe6c83d,#ffe6c800 74%)}.vn-halo--rose{background:radial-gradient(56% 40% at 50% 32%,#ffbed64d,#ffbed600 74%)}.vn-stage.has-char .vn-halo:not(.vn-halo--rose){opacity:1}.vn-stage.has-char.is-confession .vn-halo:not(.vn-halo--rose){opacity:0}.vn-stage.has-char.is-confession .vn-halo--rose{opacity:1}.vn-char{position:absolute;z-index:10;left:0;right:0;bottom:2%;height:80%;display:flex;justify-content:center;pointer-events:none;opacity:0;transform:translateY(16px);transform-origin:50% 100%;transition:opacity .55s ease,transform .8s var(--g-ease),bottom .9s var(--g-ease)}.vn-char.is-on{opacity:1;transform:none}.vn-char img{height:100%;width:auto;max-width:100%;object-fit:contain;object-position:50% 100%;transform-origin:50% 100%;filter:drop-shadow(0 14px 30px rgba(0,0,0,.42));animation:vn-breathe 6.5s ease-in-out infinite}@keyframes vn-breathe{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.007)}}.vn-stage.is-confession .vn-char.is-on{transform:scale(1.5);bottom:-30%}.vn-scrim{position:absolute;inset:0;z-index:15;pointer-events:none;opacity:0;transition:opacity .5s ease;background:linear-gradient(to top,#06081acc,#06081a80 42%,#06081a00 78%)}.vn-scrim.is-on{opacity:1}.vn-ui{position:absolute;left:0;right:0;bottom:0;z-index:20;display:flex;flex-direction:column;gap:28px;padding:0 var(--vn-pad) calc(12px + env(safe-area-inset-bottom,0px));opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s .6s}.vn-ui.is-on{opacity:1;visibility:visible;transition:opacity .6s ease}.vn-dialogue{position:relative;padding:22px calc(var(--u) * 5.2) 34px;border-radius:22px;cursor:pointer;background:var(--vn-glass);border:1px solid var(--vn-gold-line);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);box-shadow:0 26px 60px -26px #000000e6,inset 0 1px #ffffff17}.vn-dialogue:before{content:"";position:absolute;left:14%;right:14%;top:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(246,220,140,.95),transparent);opacity:.85}.vn-name{position:absolute;left:20px;top:-17px;display:inline-flex;align-items:center;gap:8px;padding:5px 18px 5px 13px;border-radius:999px;font-family:var(--g-serif);font-weight:700;font-size:15px;letter-spacing:.22em;text-indent:.05em;line-height:1.5;color:#e9fff5;background:linear-gradient(135deg,#125842f0,#0a2e34f2);border:1px solid rgba(232,196,106,.6);box-shadow:0 8px 20px -8px #000000b3,0 0 0 3px #5fe0a41a,inset 0 1px #ffffff24;text-shadow:0 0 12px rgba(95,224,164,.6);opacity:0;transform:translateY(4px);transition:opacity .35s ease,transform .35s ease}.vn-name.is-on{opacity:1;transform:none}.vn-name .vn-i{color:var(--vn-mint);width:13px;height:13px;filter:drop-shadow(0 0 5px rgba(95,224,164,.8))}.vn-text{margin:0;min-height:calc(var(--vn-lines) * 1.95em);font-size:1em;line-height:1.95;letter-spacing:.05em;font-weight:500;color:#f7f9ff;line-break:strict;text-wrap:pretty;text-shadow:0 1px 8px rgba(0,0,0,.5)}.vn-dialogue.is-narration .vn-text{color:#e2eaffdb}.vn-pending{visibility:hidden}.vn-ch{animation:vn-charin .24s ease-out both}@keyframes vn-charin{0%{opacity:0}to{opacity:1}}.vn-next{position:absolute;right:20px;bottom:9px;display:inline-flex;align-items:center;gap:6px;font-size:12px;letter-spacing:.14em;color:#f6dc8cf2;opacity:0;transition:opacity .5s ease;pointer-events:none}.vn-next.is-on{opacity:.85;animation:vn-next 3.4s ease-in-out infinite}.vn-next .vn-i{width:13px;height:13px}@keyframes vn-next{0%,to{opacity:.42;transform:translateY(0)}50%{opacity:.95;transform:translateY(3px)}}.vn-choices{display:none;flex-direction:column;gap:10px;transition:opacity .3s ease}.vn-choices.is-on{display:flex}.vn-choices.is-leaving{opacity:0;pointer-events:none}.vn-choice{justify-content:center;text-align:center;min-height:56px;padding:13px 20px;border-radius:18px;font-family:var(--g-sans);font-size:clamp(15.5px,calc(var(--u) * 4.2),18px);font-weight:500;letter-spacing:.07em;line-height:1.5;color:#f6f8ff;background:linear-gradient(165deg,#242c70e0,#0e1336eb);border:1px solid rgba(232,196,106,.44);box-shadow:0 14px 30px -16px #000000d9,inset 0 1px #ffffff1a;animation:vn-rise .55s var(--g-ease) backwards;animation-delay:calc(var(--i, 0) * 70ms)}.vn-choice:hover,.vn-choice:focus-visible{border-color:#f6dc8ce6;background:linear-gradient(165deg,#323c88f0,#121842f2);box-shadow:0 16px 36px -14px #e8c46a80,inset 0 1px #ffffff24}.vn-choice:focus-visible{outline:2px solid var(--g-gold-2);outline-offset:3px}.vn-choice:active{transform:scale(.985)}.vn-choice.is-on{border-color:var(--g-gold-2);background:linear-gradient(165deg,#404c96f5,#161e4cf7)}.vn-choice:disabled{opacity:.62;cursor:not-allowed;text-decoration:line-through;text-decoration-color:#ffffff73;background:#121638b8;border-color:var(--g-line);box-shadow:none;transform:none}@keyframes vn-rise{0%{opacity:0;transform:translateY(12px)}}.vn-ctl{position:absolute;z-index:300;top:12px;width:44px;height:44px;padding:0;display:grid;place-items:center;border-radius:50%;cursor:pointer;color:#eef2ff;background:#080b2275;border:1px solid rgba(255,255,255,.22);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background .3s ease,border-color .3s ease,transform .3s var(--g-ease)}.vn-ctl--l{left:12px}.vn-ctl--r{right:12px}.vn.is-pseudo-fs .vn-ctl,.vn:fullscreen .vn-ctl{top:calc(12px + env(safe-area-inset-top,0px))}.vn-ctl:hover{background:#ffffff24;border-color:#f6dc8c99;transform:scale(1.06)}.vn-ctl:focus-visible{outline:2px solid var(--g-gold-2);outline-offset:3px}.vn-ctl svg{width:21px;height:21px;fill:currentColor}.vn-start{position:absolute;inset:0;z-index:100;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:20px 26px calc(30px + env(safe-area-inset-bottom,0px));background:#080b22;overflow:hidden}.vn-start.is-hidden{display:none}.vn-start-bg{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 0%;opacity:0;transition:opacity 1.5s ease}.vn-start-bg.is-on{opacity:1}.vn-start-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,#06081a4d,#06081a00 20% 36%,#06081a99 56%,#06081aed)}.vn-magic{position:absolute;inset:0;overflow:hidden;pointer-events:none}.vn-orb{position:absolute;bottom:-20px;left:var(--x);width:var(--s);height:var(--s);border-radius:50%;opacity:0;background:radial-gradient(circle,rgba(255,246,200,.95) 0%,rgba(255,210,150,.4) 50%,transparent 72%);box-shadow:0 0 calc(var(--s) * 2.4) #ffdea08c;animation:vn-orb var(--dur) ease-in-out var(--delay) infinite}@keyframes vn-orb{0%{transform:translateZ(0);opacity:0}12%{opacity:var(--o)}88%{opacity:var(--o)}to{transform:translate3d(var(--drift),calc(var(--fall, 900px) * -1),0);opacity:0}}.vn-spark{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);color:#ffe6aaf2;filter:drop-shadow(0 0 6px rgba(255,214,140,.7));opacity:.4;animation:vn-twinkle var(--dur) ease-in-out var(--delay) infinite}@keyframes vn-twinkle{0%,to{opacity:.28}50%{opacity:.85}}.vn-start-content{position:relative;z-index:2;width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center;text-align:center;opacity:0;transform:translateY(20px);transition:opacity 1s ease .5s,transform 1s ease .5s}.vn-start-content.is-on{opacity:1;transform:none}.vn-start.is-leaving .vn-start-content{opacity:0;transform:translateY(-8px);transition:opacity .9s ease,transform .9s ease}.vn-start.is-leaving .vn-start-bg{opacity:0}.vn-start-spark{width:26px;height:26px;color:var(--g-gold-2);margin-bottom:4px;--g-accent: #f6dc8c}.vn-eyebrow{margin:0 0 6px;font-size:11px;letter-spacing:.5em;text-indent:.5em;color:var(--g-gold-2);text-shadow:0 2px 10px rgba(0,0,0,.8)}.vn-title{margin:0;font-family:var(--g-serif);font-weight:900;font-size:clamp(30px,calc(var(--u) * 8.4),46px);line-height:1.25;letter-spacing:.13em;text-indent:.13em;white-space:nowrap;color:#fff;text-shadow:0 0 34px rgba(246,220,140,.5),0 2px 12px rgba(0,0,0,.85),0 6px 26px rgba(0,0,0,.6);text-wrap:balance}.vn-subtitle{margin:6px 0 24px;font-family:var(--g-serif);font-weight:500;font-size:clamp(13.5px,calc(var(--u) * 3.7),17px);letter-spacing:.2em;text-indent:.2em;color:#ffffffe6;text-shadow:0 2px 10px rgba(0,0,0,.9)}.vn-name-form{width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center;gap:0}.vn-name-label{margin:0 0 9px;text-align:center;font-size:13px;letter-spacing:.16em;text-indent:.16em;color:#ffffffdb;text-shadow:0 2px 8px rgba(0,0,0,.85)}.vn-name-form .g-input{text-align:center;border-radius:999px;padding:15px 20px;letter-spacing:.08em;background:#06091e85;border-color:#e8c46a6b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.vn-name-form .g-input::placeholder{letter-spacing:.1em}.vn-start-btn{margin-top:14px;width:100%;max-width:280px}.vn-prologue{position:absolute;inset:0;z-index:99;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:calc(var(--u) * 12) calc(var(--u) * 8) calc(var(--u) * 16);background:linear-gradient(180deg,#050718b3,#050718e0);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s .9s}.vn-prologue.is-on{opacity:1;visibility:visible;transition:opacity .7s ease}.vn-prologue-text{position:relative;z-index:2;text-align:center;font-family:var(--g-serif);font-weight:500;font-size:clamp(16px,calc(var(--u) * 4.7),21px);line-height:2.1;letter-spacing:.12em;color:#ffffffed;max-width:22em;text-shadow:0 2px 16px rgba(0,0,0,.7)}.vn-pl{margin:0;min-height:1em;opacity:0;transform:translateY(8px);transition:opacity 1.5s ease,transform 1.5s ease}.vn-prologue.is-lines .vn-pl{opacity:1;transform:none;transition-delay:calc(var(--i) * .22s)}.vn-skip{position:absolute;z-index:3;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));transform:translate(-50%);opacity:0;visibility:hidden;transition:opacity .8s ease 1.6s,visibility 0s 1.6s,transform .3s var(--g-ease)}.vn-prologue.is-on .vn-skip{opacity:.85;visibility:visible}.vn-skip:hover{transform:translate(-50%)}@media(max-height:720px){.vn-prologue-text{line-height:1.8}}.vn-ending{position:absolute;inset:0;z-index:200;background:#06081c;overflow:hidden;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 0s 1s}.vn-ending.is-on{opacity:1;visibility:visible;transition:opacity 1s ease}.vn-e-soft,.vn-e-bg{position:absolute;max-width:none}.vn-e-soft{inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.12);filter:blur(18px) saturate(1.1) brightness(.5);opacity:0;transition:opacity 2.2s ease}.vn-ending.is-final .vn-e-soft{opacity:1}.vn-e-bg{inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 68%;opacity:0;transition:opacity 2s ease}.vn-e-bg.is-on{opacity:1}.vn-ending.is-final .vn-e-bg{opacity:0;transition:opacity 2.2s ease}.vn-e-shade{position:absolute;inset:0;pointer-events:none;transition:opacity 1.6s ease;background:linear-gradient(to top,#06081ad1,#06081a8c,#06081a00 44%),linear-gradient(to bottom,#06081a59,#06081a00 18%)}.vn-ending.is-final .vn-e-shade{opacity:0}.vn-glow{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity 2s ease}.vn-glow.is-on{opacity:1}.vn-glow i{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 42%,rgba(255,214,196,.22) 0%,transparent 66%);animation:vn-glow 7s ease-in-out infinite}@keyframes vn-glow{0%,to{opacity:.5}50%{opacity:1}}.vn-hearts{position:absolute;inset:0;overflow:hidden;pointer-events:none;transition:opacity 1.6s ease}.vn-ending.is-final .vn-hearts{opacity:0}.vn-heart{position:absolute;top:-34px;left:var(--x);width:var(--s);height:var(--s);color:var(--c);opacity:0;filter:drop-shadow(0 0 8px rgba(255,150,200,.6));animation:vn-heart var(--dur) linear forwards}.vn-heart>svg{display:block;width:100%;height:100%;animation:vn-sway var(--sdur) ease-in-out infinite alternate}@keyframes vn-heart{0%{transform:translateZ(0) scale(.7);opacity:0}10%{opacity:.9}88%{opacity:.9}to{transform:translate3d(var(--drift, 0px),var(--fall, 110vh),0) scale(1);opacity:0}}.vn-e-story{position:absolute;z-index:5;left:0;right:0;bottom:0;padding:0 var(--vn-pad) calc(16px + env(safe-area-inset-bottom,0px));transition:opacity 1.2s ease}.vn-ending.is-final .vn-e-story{opacity:0;pointer-events:none}.vn-e-story .vn-e-text{padding:16px 20px 18px;border-radius:22px;background:var(--vn-glass);border:1px solid var(--vn-gold-line);opacity:0;transition:opacity 1.4s ease;-webkit-backdrop-filter:blur(12px) saturate(140%);backdrop-filter:blur(12px) saturate(140%);box-shadow:0 26px 60px -26px #000000e6,inset 0 1px #ffffff17}.vn-e-text{text-align:center;font-family:var(--g-serif);color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.8)}.vn-e-text p{margin:0;opacity:0;transform:translateY(8px);transition:opacity 1.4s ease,transform 1.4s ease;text-wrap:balance}.vn-e-story .vn-e-text.is-on{opacity:1}.vn-e-text.is-on p{opacity:1;transform:none}.vn-e-text.is-on p:nth-child(2){transition-delay:.9s}.vn-e-text.is-on p:nth-child(3){transition-delay:1.8s}.vn-e-text.is-on p:nth-child(4){transition-delay:2.7s}.vn-e-name{font-size:clamp(19px,calc(var(--u) * 5.2),24px);font-weight:700;letter-spacing:.1em;margin-bottom:6px!important}.vn-e-line{font-size:clamp(16px,calc(var(--u) * 4.4),20px);font-weight:500;letter-spacing:.08em;line-height:1.8;opacity:.92}.vn-e-sign{font-size:clamp(15px,calc(var(--u) * 4.1),18px);letter-spacing:.08em;margin-top:8px!important;color:#f6dc8c}.vn-e-date{font-family:var(--g-display);font-size:13px;letter-spacing:.26em;margin-top:4px!important;color:#ffffffb8}.vn-e-text.is-on .vn-e-line{opacity:.92}.vn-e-text.is-on .vn-e-date{opacity:.8}.vn-e-final{position:absolute;inset:0;z-index:6;display:flex;overflow-y:auto;padding:64px var(--vn-pad) calc(22px + env(safe-area-inset-bottom,0px));opacity:0;visibility:hidden;transition:opacity 1.3s ease,visibility 0s 1.3s;scrollbar-width:none}.vn-e-final::-webkit-scrollbar{display:none}.vn-ending.is-final .vn-e-final{opacity:1;visibility:visible;transition:opacity 1.3s ease .6s}.vn-e-inner{margin:auto;width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center;gap:20px}.vn-wall{margin:0;position:relative;border-radius:18px;padding:3px;background:linear-gradient(140deg,#f6dc8cf2,#e8c46a59 45%,#5fe0a4b3);box-shadow:0 26px 60px -22px #000000e6;opacity:0;transform:scale(.94);transition:opacity 1.5s ease .8s,transform 1.5s var(--g-ease) .8s}.vn-wall:after{content:"";position:absolute;inset:-14px;border-radius:30px;z-index:-1;background:radial-gradient(closest-side,rgba(95,224,164,.32),transparent);animation:vn-wallglow 6s ease-in-out infinite}.vn-ending.is-final .vn-wall{opacity:1;transform:none}@keyframes vn-wallglow{0%,to{opacity:.55}50%{opacity:1}}.vn-wall img{display:block;height:clamp(150px,calc(var(--vh) - var(--bar) - 500px),430px);width:auto;max-width:100%;border-radius:15px;object-fit:cover}.vn-e-text--final{width:100%}.vn-e-actions{width:100%;max-width:300px;display:flex;flex-direction:column;gap:11px;opacity:0;transform:translateY(10px);transition:opacity 1s ease,transform 1s ease;pointer-events:none}.vn-e-actions.is-on{opacity:1;transform:none;pointer-events:auto}.vn-e-actions .g-btn{width:100%}.vn-btn-letter{background:#ffffff1a;border-color:#f6dc8c80}.vn-btn-letter .vn-i{color:var(--g-gold-2)}.vn-modal{position:absolute;inset:0;z-index:400;display:grid;place-items:center;padding:20px;background:#040612c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:vn-fade .4s ease both}.vn-letter{max-height:100%;width:100%;display:flex;flex-direction:column;align-items:center;gap:14px}.vn-letter img{display:block;max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px);max-width:100%;width:auto;height:auto;border-radius:12px;box-shadow:0 30px 70px -24px #000000e6,0 0 0 1px #f6dc8c80;-webkit-user-select:auto;user-select:auto;-webkit-touch-callout:default}.vn-letter-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}@keyframes vn-fade{0%{opacity:0}}@media(max-height:700px){.vn-char{height:74%}.vn-start{padding-bottom:calc(18px + env(safe-area-inset-bottom,0px))}.vn-subtitle{margin-bottom:16px}}@media(max-height:640px){.vn-eyebrow,.vn-start-spark{display:none}.vn-name-label{margin-bottom:6px}.vn-start-btn{margin-top:10px}.vn-wall img{height:clamp(120px,calc(var(--vh) - var(--bar) - 470px),400px)}.vn-e-actions .g-btn{padding:12px 22px;font-size:15px}.vn-e-inner{gap:14px}}@media(orientation:landscape)and (max-height:520px){.vn-stage{font-size:15px}.vn-char{height:96%;left:auto;right:4%;width:44%;bottom:0}.vn-ui{gap:16px}.vn-dialogue{padding:16px 22px 26px}.vn-choices{display:none;flex-direction:row;flex-wrap:wrap}.vn-choices.is-on{display:flex}.vn-choice{flex:1 1 42%;min-height:46px;padding:9px 14px}.vn-prologue-text{line-height:1.6;font-size:14px}.vn-wall img{height:110px}}@media(prefers-reduced-motion:reduce){.vn-bg,.vn-char img,.vn-flake,.vn-flake>*,.vn-orb,.vn-spark,.vn-glow i,.vn-wall:after,.vn-next.is-on{animation:none}.vn-snow,.vn-magic{display:none}.vn-choice,.vn-ch{animation:none}.vn-next.is-on{opacity:.85}}
