.vn-root{--vn-accent:#ff7aa8;--vn-box:rgb(18 14 34/var(--vn-box-alpha,.86));--vn-box-top:rgb(34 26 58/calc(var(--vn-box-alpha,.86) * .98));--vn-box-edge:#ffffff29;--vn-text:#f6f3ff;--vn-muted:#f6f3ff9e;color:var(--vn-text);font-family:var(--vn-font,inherit);font-size:calc(clamp(14px, min(2.3cqh, 4.2cqw), 56px) * var(--vn-text-scale,1));-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#000;line-height:1.55;position:absolute;inset:0;overflow:clip}.vn-stage{position:absolute;inset:0;overflow:clip}.vn-view{position:absolute;inset:0}.vn-world{transform-origin:0 0;will-change:transform;transition:transform .75s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0}.vn-particles{pointer-events:none;opacity:0;width:100%;height:100%;transition:opacity .8s;position:absolute;inset:0}.vn-particles.on{opacity:1}.vn-bg-layer,.vn-char-layer{position:absolute;inset:0}.vn-bg{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.vn-curtain,.vn-flash{opacity:0;pointer-events:none;background:#000;position:absolute;inset:0}.vn-flash{background:#fff}.vn-char{width:0;height:0;transition:left .6s cubic-bezier(.4,0,.2,1),filter .3s;position:absolute;bottom:0}.vn-sprite{pointer-events:none;max-width:none;position:absolute;bottom:0}.vn-sprite.flip{transform:scaleX(-1)}.vn-char.dim{filter:brightness(.7)saturate(.85)}.vn-char.silhouette .vn-sprite,.vn-sprite.vn-sil{filter:var(--vn-silhouette)}.vn-instant .vn-world,.vn-instant .vn-char{transition:none!important}.vn-dialogue{left:max(10px, env(safe-area-inset-left));right:max(10px, env(safe-area-inset-right));bottom:max(10px, env(safe-area-inset-bottom));max-width:44em;padding:calc(1.15em + var(--vn-edge,0px)) calc(1.2em + var(--vn-edge,0px)) calc(.35em + var(--vn-edge,0px));background:linear-gradient(180deg, var(--vn-box-top), var(--vn-box));border:1px solid var(--vn-box-edge);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:18px;margin:0 auto;transition:opacity .25s;position:absolute;box-shadow:0 10px 40px #00000073}.vn-dialogue[hidden]{opacity:0;pointer-events:none;display:block}.vn-root{--vn-call-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 4h3l1.5 4-2 1.5a11 11 0 0 0 5.5 5.5L16.5 13l4 1.5v3a2 2 0 0 1-2 2A14.5 14.5 0 0 1 4.5 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E")}.vn-name{top:var(--vn-edge,0px);left:calc(1.1em + var(--vn-edge,0px));letter-spacing:.02em;color:var(--vn-name-color,var(--vn-accent));background:#1c1631;border:1.5px solid;border-radius:999px;padding:.1em .9em;font-weight:800;position:absolute;transform:translateY(-55%);box-shadow:0 4px 14px #0006}.vn-dialogue.narrator .vn-name{display:none}.vn-dialogue.vn-call-line .vn-name-text:before{content:"";vertical-align:-.12em;width:.95em;height:.95em;-webkit-mask:var(--vn-call-icon) center / contain no-repeat;-webkit-mask:var(--vn-call-icon) center / contain no-repeat;mask:var(--vn-call-icon) center / contain no-repeat;background:#3fbf7a;margin-right:.45em;display:inline-block}.vn-dialogue.vn-call-line .vn-name-text:after{content:attr(data-call);letter-spacing:0;color:#6fe0a0;margin-left:.6em;font-size:.78em;font-weight:600}.vn-dialogue.vn-box-torn.vn-call-line .vn-name-text:after{color:#1d7f4c}.vn-dialogue.narrator .vn-text{color:#e6e0f7;font-style:italic}.vn-dialogue.thought .vn-text{color:color-mix(in srgb, var(--vn-name-color,#e6e0f7) 35%, #e6e0f7);font-style:italic}.vn-dialogue.thought .vn-name{border-style:dashed}.vn-dialogue.vn-box-torn.thought .vn-text{color:color-mix(in srgb, var(--vn-name-color,var(--vn-ink)) 30%, var(--vn-ink))}.vn-text{white-space:pre-wrap;overflow-wrap:break-word;scrollbar-width:none;text-shadow:0 1px 2px #00000080;height:4.65em;overflow-y:auto}.vn-text::-webkit-scrollbar{display:none}.vn-next{right:calc(1.1em + var(--vn-edge,0px));bottom:calc(2.1em + var(--vn-edge,0px));border-left:.35em solid #0000;border-right:.35em solid #0000;border-top:.45em solid var(--vn-accent);opacity:0;width:0;height:0;position:absolute}.vn-root:not(.vn-typing):not(.vn-choosing) .vn-next{opacity:1;animation:1s ease-in-out infinite vn-bounce}@keyframes vn-bounce{50%{transform:translateY(.25em)}}.vn-sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.vn-bar{flex-wrap:wrap;justify-content:flex-end;gap:.15em;margin-top:.2em;font-size:.72em;display:flex}.vn-box-full .vn-dialogue{--vn-pad-l:max(calc(1.2em + env(safe-area-inset-left)), calc((100% - 44em) / 2));--vn-pad-r:max(calc(1.2em + env(safe-area-inset-right)), calc((100% - 44em) / 2));max-width:none;padding-left:var(--vn-pad-l);padding-right:var(--vn-pad-r);padding-bottom:max(.5em, env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:0;bottom:0;left:0;right:0}.vn-box-full .vn-name{left:calc(var(--vn-pad-l) - .2em)}.vn-box-full .vn-next{right:var(--vn-pad-r);bottom:2.1em}.vn-paper-school{--vn-paper:#f9f4ea;--vn-grain:url(/assets/school-CSK7SZ_N.webp);--vn-grain-size:384px;--vn-ink:#1f2a55;--vn-rule:#466eb44d}.vn-paper-grid{--vn-paper:#f9f4ea;--vn-grain:url(/assets/school-CSK7SZ_N.webp);--vn-grain-size:384px;--vn-ink:#2d2d38;--vn-rule:#5087c842}.vn-paper-parchment{--vn-paper:#e8cc97;--vn-grain:url(/assets/parchment-DIZepVID.webp);--vn-grain-size:cover;--vn-ink:#4a2e14;--vn-rule:#6e461e38}.vn-paper-detective{--vn-paper:#fde47b;--vn-grain:url(/assets/detective-D7BZJkdB.webp);--vn-grain-size:384px;--vn-ink:#1b2742;--vn-rule:#4664a057;--vn-tape:#96804eb8}.vn-paper-diary{--vn-paper:#efe7d1;--vn-grain:url(/assets/diary-DkX6jU9j.webp);--vn-grain-size:384px;--vn-ink:#4d2447;--vn-rule:#785a504d;--vn-tape:#f5c8d2cc}.vn-dialogue.vn-box-torn{--vn-edge:.5em;--vn-text:var(--vn-ink);--vn-muted:color-mix(in srgb, var(--vn-ink) 62%, transparent);--vn-accent:var(--vn-ink);isolation:isolate;color:var(--vn-text);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0}.vn-skin{z-index:-1;pointer-events:none;filter:drop-shadow(0 .35em .6em #00000073);will-change:transform;position:absolute;inset:0}.vn-skin>div{position:absolute;inset:0}.vn-skin-fiber{background:color-mix(in srgb, var(--vn-paper) 72%, #fff)}.vn-skin-paper{background:radial-gradient(ellipse at 50% 45%, transparent 55%, #5a3c1421), var(--vn-grain) 0 0 / var(--vn-grain-size), var(--vn-paper)}.vn-box-torn .vn-text{text-shadow:none}.vn-root:not(.vn-box-full) .vn-box-torn .vn-bar{margin-inline:calc(var(--vn-edge) / -.72)}.vn-dialogue.vn-box-torn.narrator .vn-text{color:color-mix(in srgb, var(--vn-ink) 85%, #fff)}.vn-box-lines .vn-text{background:repeating-linear-gradient(to bottom, transparent 0 calc(1.55em - 1px), var(--vn-rule) 0 1.55em);background-attachment:local}.vn-box-torn .vn-name{isolation:isolate;color:var(--vn-ink);box-shadow:none;background:0 0;border:0;border-radius:0;padding:.12em 1em .18em;transform:translateY(-62%)rotate(-2.5deg)}.vn-name .vn-skin{filter:drop-shadow(0 .12em .2em #00000059)}.vn-name .vn-skin-paper{background:var(--vn-grain) 0 0 / var(--vn-grain-size), var(--vn-paper);filter:brightness(1.04)}.vn-box-torn .vn-name-text{background:linear-gradient(to bottom, transparent 52%, color-mix(in srgb, var(--vn-name-color,#ff7aa8) 55%, transparent) 52% 90%, transparent 90%);padding:0 .15em}.vn-tape{background:var(--vn-tape,#d6c48cb8);width:1.7em;height:.7em;position:absolute;bottom:-.4em;box-shadow:inset 0 0 .3em #ffffff59}.vn-tape.l{left:-.6em;transform:rotate(30deg)}.vn-tape.r{right:-.6em;transform:rotate(-30deg)}.vn-box-torn.vn-choices-box .vn-choice{--vn-edge:.35em;isolation:isolate;padding:calc(.65em + var(--vn-edge)) calc(1.2em + var(--vn-edge));color:var(--vn-ink);box-shadow:none;background:0 0;border:0;border-radius:0;transition:transform .15s;position:relative;transform:rotate(-.6deg)}.vn-box-torn.vn-choices-box .vn-choice:nth-child(2n){transform:rotate(.5deg)}.vn-box-torn.vn-choices-box .vn-choice .vn-skin{filter:drop-shadow(0 .25em .45em #00000073);transition:filter .15s}.vn-box-torn.vn-choices-box .vn-choice:hover,.vn-box-torn.vn-choices-box .vn-choice:focus-visible{background:0 0;transform:translateY(-.15em)rotate(0)}.vn-box-torn.vn-choices-box .vn-choice:hover .vn-skin,.vn-box-torn.vn-choices-box .vn-choice:focus-visible .vn-skin{filter:drop-shadow(0 .45em .6em #00000080)}.vn-box-torn.vn-choices-box .vn-choice:active{transform:scale(.98)}.vn-box-torn.vn-choices-box .vn-choice-text{-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(to bottom, transparent 55%, color-mix(in srgb, var(--vn-mark,#ff7aa8) 50%, transparent) 55% 92%, transparent 92%) no-repeat 0 0 / 0% 100%;padding:0 .15em;transition:background-size .2s}.vn-box-torn.vn-choices-box .vn-choice:hover .vn-choice-text,.vn-box-torn.vn-choices-box .vn-choice:focus-visible .vn-choice-text{background-size:100% 100%}.vn-w{white-space:nowrap}.vn-ch{opacity:0}.vn-ch.on{opacity:1}.vn-fx{white-space:pre;display:inline-block}.vn-fx-fade.on{transition:opacity .7s}.vn-fx-wave{--fx-wave:vn-wave 1.1s ease-in-out infinite}.vn-fx-shake{--fx-shake:vn-shake .3s steps(3) infinite}.vn-fx-rainbow{--fx-rainbow:vn-rainbow 2.2s linear infinite}.vn-fx-glitch{--fx-glitch:vn-glitch 2.4s steps(1) infinite}.vn-fx.on{animation:var(--fx-wave,vn-none 1s), var(--fx-shake,vn-none 1s), var(--fx-rainbow,vn-none 1s), var(--fx-glitch,vn-none 1s);animation-delay:calc(var(--i) * -90ms), calc(var(--i) * -53ms), calc(var(--i) * -110ms), calc(var(--i) * -170ms)}@keyframes vn-none{}@keyframes vn-wave{0%,to{transform:translateY(0)}50%{transform:translateY(calc(-.2em * var(--wave,1)))}}@keyframes vn-shake{0%{translate:calc(1px * var(--shake,1)) calc(-1px * var(--shake,1))}33%{translate:calc(-1.5px * var(--shake,1)) calc(1px * var(--shake,1))}66%{translate:calc(1px * var(--shake,1)) calc(1.5px * var(--shake,1))}to{translate:0}}@keyframes vn-rainbow{0%,to{color:#ff6b9a}17%{color:#ffae5c}33%{color:#ffe45c}50%{color:#6bf0a0}67%{color:#6bc4ff}83%{color:#b98bff}}@keyframes vn-glitch{0%,86%,to{text-shadow:none;translate:0}88%{translate:calc(-2px * var(--glitch,1)) 0;text-shadow:2px 0 #ff2a6d,-2px 0 #05d9e8}92%{translate:calc(2px * var(--glitch,1)) 1px;text-shadow:-2px 0 #ff2a6d,2px 0 #05d9e8}95%{opacity:.6;translate:0 -1px}}.vn-narration{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .7s,visibility 0s linear .7s;position:absolute;inset:0}.vn-narration.on{opacity:1;visibility:visible;transition:opacity .7s}.vn-narration-veil{background:#000;transition:opacity .7s;position:absolute;inset:0}.vn-narration-page{top:max(3.4em, env(safe-area-inset-top));bottom:max(3.8em, env(safe-area-inset-bottom));left:max(1.4em, env(safe-area-inset-left));right:max(1.4em, env(safe-area-inset-right));max-width:30em;font-family:var(--vn-narration-font,"Lora Variable", Georgia, "Noto Serif", serif);letter-spacing:.01em;text-align:center;color:#f5f1ff;text-shadow:0 0 2px #000000e6,0 1px 14px #000000bf,0 0 32px #00000080;flex-direction:column;justify-content:safe center;gap:.85em;margin:0 auto;font-size:1.12em;line-height:1.7;transition:opacity .25s;display:flex;position:absolute;overflow:hidden}.vn-nl{white-space:pre-wrap;overflow-wrap:break-word;margin:0;transition:opacity .7s,filter .7s}.vn-nl.out{opacity:0;filter:blur(4px)}.vn-nl.gone{display:none}.vn-narration .vn-ch{filter:blur(.14em);transition:opacity 1s,filter 1s}.vn-narration .vn-ch.on{filter:none}.vn-nl:before,.vn-nl:after{content:"";vertical-align:middle;opacity:0;border-radius:50%;width:.32em;height:.32em;display:inline-block}.vn-nl:before{margin-right:.55em}.vn-nl:after{background:currentColor;margin-left:.55em}.vn-narrating:not(.vn-typing) .vn-nl:last-child:after{animation:2.2s ease-in-out infinite vn-breathe}@keyframes vn-breathe{0%,to{opacity:.15}50%{opacity:.7}}.vn-narrating .vn-dialogue,.vn-mapping .vn-dialogue{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000}.vn-narrating .vn-name,.vn-narrating .vn-text,.vn-narrating .vn-next,.vn-narrating .vn-skin,.vn-mapping .vn-name,.vn-mapping .vn-text,.vn-mapping .vn-next,.vn-mapping .vn-skin{display:none}.vn-narrating .vn-bar{opacity:.4;transition:opacity .3s}.vn-mapping .vn-bar{opacity:.85}.vn-narrating .vn-bar:hover,.vn-narrating .vn-bar:focus-within,.vn-mapping .vn-bar:hover,.vn-mapping .vn-bar:focus-within{opacity:1}.vn-ui-hidden .vn-narration-page{opacity:0}.vn-reduce-motion .vn-narration,.vn-reduce-motion .vn-narration-veil,.vn-reduce-motion .vn-nl,.vn-reduce-motion .vn-narration .vn-ch{transition:none}.vn-reduce-motion .vn-narration .vn-ch{filter:none}.vn-reduce-motion.vn-narrating:not(.vn-typing) .vn-nl:last-child:after{opacity:.5;animation:none}.vn-choices{left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));top:max(16px, env(safe-area-inset-top));pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.7em;display:flex;position:absolute;bottom:9.15em}.vn-choice{pointer-events:auto;width:min(26em,100%);min-height:48px;font:inherit;color:var(--vn-text);text-align:center;cursor:pointer;background:#16112ae6;border:1px solid #ffffff4d;border-radius:14px;padding:.65em 1.2em;transition:background .15s,border-color .15s,transform .15s;animation:.35s cubic-bezier(.2,.8,.2,1) both vn-choice-in;box-shadow:0 6px 20px #0006}.vn-choice:nth-child(2){animation-delay:50ms}.vn-choice:nth-child(3){animation-delay:.1s}.vn-choice:nth-child(4){animation-delay:.15s}.vn-choice:hover,.vn-choice:focus-visible{border-color:var(--vn-accent);background:#783264eb;outline:none}.vn-choice:active{transform:scale(.98)}@keyframes vn-choice-in{0%{opacity:0;transform:translateY(12px)}}.vn-mg{touch-action:none;position:absolute;inset:0}.vn-mg-shade{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(at 50% 40%,#100c208c,#080612cc);animation:.35s both vn-mg-in;position:absolute;inset:0}.vn-mg-panel{left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));top:max(10px, env(safe-area-inset-top));flex-direction:column;gap:.45em;max-width:44em;margin:0 auto;animation:.35s 50ms both vn-mg-in;display:flex;position:absolute;bottom:10.25em}.vn-mg-hud{align-items:center;gap:.6em;min-height:2.4em;font-size:.85em;display:flex}.vn-mg-status{font-variant-numeric:tabular-nums;text-shadow:0 1px 3px #000000b3;flex-wrap:wrap;flex:1;gap:.3em 1.1em;font-weight:700;display:flex}.vn-mg-skip{min-height:40px;font:inherit;color:var(--vn-text);cursor:pointer;background:#16112ad9;border:1px solid #ffffff4d;border-radius:999px;padding:.3em 1.1em;font-weight:700}.vn-mg-skip:hover,.vn-mg-skip:focus-visible{border-color:var(--vn-accent);outline:none}.vn-mg-skip[hidden]{display:none}.vn-mg-board{flex:1;place-items:center;min-height:0;display:grid;position:relative;container-type:size}.vn-mg-banner{pointer-events:auto;background:radial-gradient(circle,#0a08148c,#0000 70%);place-items:center;display:grid;position:absolute;inset:0}.vn-mg-banner span{letter-spacing:.02em;color:#fff;background:linear-gradient(135deg, var(--vn-accent), #b98bff);border-radius:999px;padding:.35em 1.2em;font-size:2em;font-weight:900;animation:.45s cubic-bezier(.2,1.4,.4,1) both vn-mg-pop;box-shadow:0 10px 40px #00000080}.vn-mg-banner.lose span{background:linear-gradient(135deg,#5b5f8f,#3a3558)}.vn-minigame .vn-next{display:none}@keyframes vn-mg-in{0%{opacity:0}}@keyframes vn-mg-pop{0%{opacity:0;transform:scale(.6)}}.vn-reduce-motion .vn-mg-shade,.vn-reduce-motion .vn-mg-panel,.vn-reduce-motion .vn-mg-banner span{animation:none}.vn-clue{z-index:8;top:max(10px, env(safe-area-inset-top));color:#fff;max-width:calc(100% - 8em);font:inherit;white-space:nowrap;text-overflow:ellipsis;border:1px solid var(--vn-box-edge);background:#1c1631eb;border-radius:999px;padding:.45em 1.1em;font-size:.82em;animation:.35s cubic-bezier(.2,.8,.2,1) both vn-clue-in;position:absolute;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 6px 20px #0006}button.vn-clue{cursor:pointer}.vn-msg{top:calc(max(10px, env(safe-area-inset-top)) + 2.7em)}@keyframes vn-clue-in{0%{opacity:0;transform:translate(-50%,-60%)}}.vn-ui-hidden .vn-clue,.vn-ui-hidden .vn-msg,.vn-ui-hidden .vn-dialogue,.vn-ui-hidden .vn-choices{opacity:0;pointer-events:none}.vn-ui-hidden .vn-choice{pointer-events:none}.vn-reduce-motion .vn-clue,.vn-reduce-motion .vn-fx.on,.vn-reduce-motion:not(.vn-typing):not(.vn-choosing) .vn-next,.vn-reduce-motion .vn-choice{animation:none}.vn-reduce-motion .vn-world,.vn-reduce-motion .vn-char{transition-duration:0s!important}@container (orientation:landscape) and (height<=540px){.vn-dialogue{padding:calc(.85em + var(--vn-edge,0px)) calc(1.1em + var(--vn-edge,0px)) calc(.4em + var(--vn-edge,0px));bottom:max(6px, env(safe-area-inset-bottom))}.vn-bar{top:var(--vn-edge,0px);right:calc(.9em + var(--vn-edge,0px));border:1px solid var(--vn-box-edge);background:#1c1631;border-radius:999px;margin:0;padding:0 .25em;position:absolute;transform:translateY(-55%);box-shadow:0 4px 14px #0006}.vn-next,.vn-box-full .vn-next{bottom:calc(.7em + var(--vn-edge,0px))}.vn-box-full .vn-bar{right:calc(max(calc(1.2em / .72 + env(safe-area-inset-right)), calc((100% - 44em / .72) / 2)) - .4em)}.vn-root:not(.vn-minigame) .vn-box-torn .vn-bar{background:var(--vn-grain) 0 0 / var(--vn-grain-size), var(--vn-paper);border:0;margin:0;box-shadow:0 .15em .4em #0000004d}.vn-choices{top:max(8px, env(safe-area-inset-top));gap:.45em;bottom:7.45em}.vn-choice{min-height:40px;padding:.4em 1.1em}.vn-box-torn.vn-choices-box .vn-choice{padding:calc(.4em + var(--vn-edge)) calc(1.1em + var(--vn-edge))}.vn-minigame .vn-mg-panel{top:max(8px, env(safe-area-inset-top));bottom:max(8px, env(safe-area-inset-bottom));left:max(12px, env(safe-area-inset-left));max-width:none;margin:0;right:calc(36% + 16px)}.vn-minigame .vn-dialogue{left:auto;right:max(10px, env(safe-area-inset-right));width:36%;max-width:none;margin:0}.vn-box-full.vn-minigame .vn-dialogue{left:auto;right:max(10px, env(safe-area-inset-right));bottom:max(6px, env(safe-area-inset-bottom));padding:calc(.85em + var(--vn-edge,0px)) calc(1.1em + var(--vn-edge,0px)) calc(.4em + var(--vn-edge,0px));border-width:1px;border-radius:18px}.vn-box-full.vn-minigame .vn-name{left:calc(1.1em + var(--vn-edge,0px))}.vn-minigame .vn-text{height:auto;max-height:12.4em}.vn-minigame .vn-bar{box-shadow:none;background:0 0;border:0;justify-content:flex-start;margin-top:.3em;padding:0;position:static;transform:none}}
