:root{--vn-bg: #111318;--vn-bg-empty: #242832;--vn-scrim: rgba(0, 0, 0, .25);--vn-text: #ffffff;--vn-text-muted: rgba(255, 255, 255, .8);--vn-text-faint: rgba(255, 255, 255, .45);--vn-speaker: #fcd34d;--vn-panel-bg: rgba(0, 0, 0, .75);--vn-panel-bg-hover: rgba(0, 0, 0, .85);--vn-panel-border: rgba(255, 255, 255, .15);--vn-panel-border-hover: rgba(255, 255, 255, .45);--vn-panel-radius: 1rem;--vn-panel-blur: 8px;--vn-panel-surface: #17191f;--vn-overlay-bg: rgba(0, 0, 0, .6);--vn-textbox-max-width: 64rem;--vn-textbox-padding: 1rem;--vn-dialogue-height: 3lh;--vn-stage-height: 88vh;--vn-font: inherit;--vn-line-height: 1.75;--vn-transition: .16s;--vn-motion-scale: 1;--vn-button-bg: #ffffff;--vn-button-bg-hover: rgba(255, 255, 255, .9);--vn-button-fg: #000000;--vn-button-radius: .5rem;--vn-accent-fg: #000000;--vn-hover-wash: rgba(255, 255, 255, .08);--vn-choice-border: rgba(255, 255, 255, .2);--vn-choice-radius: .75rem;--vn-title-scrim: rgba(0, 0, 0, .45);--vn-title-size: clamp(1.75rem, 5vw, 3rem);--vn-title-weight: 700;--vn-title-shadow: 0 4px 24px rgba(0, 0, 0, .6);--vn-timer-fill: var(--vn-speaker);--vn-timer-track: rgba(255, 255, 255, .18);--vn-timer-thickness: .375rem;--vn-timer-radius: 999px;--vn-timer-donut-size: 3.5rem;--vn-hud-bg: rgba(0, 0, 0, .55);--vn-hud-bg-hover: rgba(0, 0, 0, .75);--vn-hud-fg: var(--vn-text-muted);--vn-hud-radius: .25rem;--vn-hud-gap: .375rem;--vn-hud-padding: 1rem;--vn-root-min-block-size: 100vh}@media(min-width:640px){:root{--vn-textbox-padding: 1.75rem}}.vn-root{position:relative;min-height:var(--vn-root-min-block-size);overflow:hidden;background:var(--vn-bg);color:var(--vn-text);font-family:var(--vn-font);-webkit-user-select:none;user-select:none}.vn-textbox{-webkit-user-select:none;user-select:none}.vn-root input,.vn-root textarea{-webkit-user-select:text;user-select:text}.vn-background{position:absolute;inset:0}.vn-background-image{height:100%;width:100%;object-fit:cover}.vn-background-empty{height:100%;width:100%;background:var(--vn-bg-empty)}.vn-background-scrim{position:absolute;inset:0;background:var(--vn-scrim)}@keyframes vn-scene-fade{0%{opacity:0}to{opacity:1}}@keyframes vn-scene-slide{0%{opacity:0;translate:3% 0}to{opacity:1;translate:0 0}}.vn-scene-transition[data-transition=fade]{animation:vn-scene-fade var(--vn-scene-transition-duration, .16s) ease both}.vn-scene-transition[data-transition=slide]{animation:vn-scene-slide var(--vn-scene-transition-duration, .16s) ease-out both}.vn-stage{pointer-events:none;position:absolute;inset-inline:0;bottom:0;z-index:10;height:var(--vn-stage-height)}.vn-slot-motion{position:relative;height:100%;width:100%;will-change:transform}@keyframes vn-tremble{0%,to{transform:translateZ(0)}25%{transform:translate3d(-2px,0,0)}75%{transform:translate3d(2px,0,0)}}@keyframes vn-shake{0%,to{transform:translateZ(0)}20%{transform:translate3d(-12px,0,0)}40%{transform:translate3d(10px,0,0)}60%{transform:translate3d(-7px,0,0)}80%{transform:translate3d(4px,0,0)}}@keyframes vn-bounce{0%,to{transform:translateZ(0)}45%{transform:translate3d(0,-28px,0)}}@keyframes vn-nod{0%,to{transform:rotate(0);transform-origin:50% 75%}45%{transform:rotate(2.5deg);transform-origin:50% 75%}}@keyframes vn-pop{0%{opacity:0;transform:scale3d(.88,.88,1)}to{opacity:1;transform:scaleZ(1)}}@keyframes vn-sprite-enter{0%{opacity:0}to{opacity:1}}@keyframes vn-sprite-exit{0%{opacity:1}to{opacity:0}}@keyframes vn-slot-enter{0%{opacity:0;bottom:-2.5%}to{opacity:1;bottom:0}}@keyframes vn-slot-exit{0%{opacity:1;bottom:0}to{opacity:0;bottom:-2.5%}}.vn-slot{position:absolute;bottom:0;height:100%;width:44%;animation:vn-slot-enter calc(.22s * var(--vn-motion-scale)) ease both;transition:inset-inline-start calc(.22s * var(--vn-motion-scale)) ease,width calc(.22s * var(--vn-motion-scale)) ease}.vn-slot-left{inset-inline-start:2%}.vn-slot-center{inset-inline-start:28%}.vn-slot-right{inset-inline-start:54%}.vn-slot-solo{inset-inline-start:11%;width:78%}.vn-slot-exiting{animation:vn-slot-exit calc(.2s * var(--vn-motion-scale)) ease both;pointer-events:none}.vn-slot[data-reduced-motion=true]{animation:none;transition:none}@media(prefers-reduced-motion:reduce){.vn-slot{animation:none;transition:none}.vn-slot-exiting{animation:none;opacity:0}}.vn-sprite-layer{position:absolute;inset:0;display:block;inline-size:100%;block-size:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 20px 45px rgba(0,0,0,.45));will-change:opacity,filter;transition:filter .28s ease}.vn-stage-item{position:absolute;inset:8% 10% 18%;z-index:8;display:grid;place-items:center;pointer-events:none}.vn-stage-item-image{display:block;max-inline-size:82%;max-block-size:88%;object-fit:contain;filter:drop-shadow(0 18px 35px rgba(0,0,0,.42))}.vn-actor-idle{filter:brightness(.94) saturate(.97) drop-shadow(0 20px 45px rgba(0,0,0,.45));transition-delay:.22s}@media(prefers-reduced-motion:reduce){.vn-sprite-layer{transition:none}}.vn-sprite-enter{animation:vn-sprite-enter calc(.16s * var(--vn-motion-scale)) ease both}.vn-sprite-exit{animation:vn-sprite-exit calc(.16s * var(--vn-motion-scale)) ease both}.vn-slot[data-reduced-motion=true] .vn-sprite-enter,.vn-slot[data-reduced-motion=true] .vn-sprite-exit{animation:none}.vn-slot[data-reduced-motion=true] .vn-sprite-exit{opacity:0}.vn-motion-tremble{animation:vn-tremble calc(90ms * var(--vn-motion-scale)) linear 5}.vn-motion-shake{animation:vn-shake calc(.42s * var(--vn-motion-scale)) ease-out both}.vn-motion-bounce{animation:vn-bounce calc(.48s * var(--vn-motion-scale)) cubic-bezier(.2,.8,.2,1) both}.vn-motion-nod{animation:vn-nod calc(.42s * var(--vn-motion-scale)) ease-in-out both}.vn-motion-pop{animation:vn-pop calc(.28s * var(--vn-motion-scale)) cubic-bezier(.2,.9,.25,1.2) both}.vn-motion-tremble[data-intensity=weak],.vn-motion-shake[data-intensity=weak],.vn-motion-bounce[data-intensity=weak],.vn-motion-nod[data-intensity=weak],.vn-motion-pop[data-intensity=weak]{animation-duration:calc(.65s * var(--vn-motion-scale))}.vn-motion-tremble[data-intensity=strong],.vn-motion-shake[data-intensity=strong],.vn-motion-bounce[data-intensity=strong],.vn-motion-nod[data-intensity=strong],.vn-motion-pop[data-intensity=strong]{animation-duration:calc(.26s * var(--vn-motion-scale))}@media(prefers-reduced-motion:reduce){.vn-motion-tremble,.vn-motion-shake,.vn-motion-bounce,.vn-motion-nod,.vn-motion-pop{animation:none}}.vn-cutscene{position:absolute;inset:0;z-index:30;background:#000}.vn-cutscene-video{height:100%;width:100%;cursor:pointer;object-fit:contain}.vn-cutscene-alert{position:absolute;left:50%;top:50%;translate:-50% -50%;display:grid;gap:.75rem;border:1px solid rgba(255,255,255,.2);border-radius:.75rem;background:#000000d9;padding:1.25rem;text-align:center;font-size:.875rem;color:var(--vn-text);box-shadow:0 20px 25px -5px #0006}.vn-cutscene-resume{position:absolute;left:50%;top:50%;translate:-50% -50%}.vn-cutscene-skip{position:absolute;bottom:1.5rem;inset-inline-end:1.5rem;border:0;border-radius:.25rem;background:#000000b3;padding:.5rem 1rem;font-size:.75rem;font-weight:600;color:#ffffffd9;cursor:pointer}.vn-cutscene-skip:hover{background:#000000e6}.vn-textbox{position:absolute;inset-inline:0;bottom:0;z-index:20;margin-inline:auto;width:100%;max-width:var(--vn-textbox-max-width);padding:var(--vn-textbox-padding)}.vn-dialogue{position:relative;display:block;width:100%;border:1px solid var(--vn-panel-border);border-radius:var(--vn-panel-radius);background:var(--vn-panel-bg);padding:1.25rem;text-align:start;color:inherit;font:inherit;cursor:pointer;-webkit-backdrop-filter:blur(var(--vn-panel-blur));backdrop-filter:blur(var(--vn-panel-blur));transition:background var(--vn-transition) ease}.vn-dialogue:hover{background:var(--vn-panel-bg-hover)}.vn-dialogue[data-frame="1"]{background:transparent;border-style:solid;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.vn-dialogue[data-frame="1"]:hover{background:transparent}.vn-dialogue-speaker-slot{display:block;block-size:1.25rem;margin-block-end:.5rem}.vn-dialogue-speaker{display:block;overflow:hidden;margin:0;line-height:1.25rem;font-size:.875rem;font-weight:700;color:var(--vn-speaker);text-align:start;text-overflow:ellipsis;white-space:nowrap}.vn-dialogue[data-name-align=center] .vn-dialogue-speaker{text-align:center}.vn-dialogue[data-name-align=end] .vn-dialogue-speaker{text-align:end}.vn-dialogue[data-name-plate=above] .vn-dialogue-speaker{position:absolute;inset-block-end:100%;inset-inline:0;margin:0 0 .375rem;padding-inline:.25rem}.vn-dialogue[data-name-plate=hidden] .vn-dialogue-speaker{visibility:hidden}.vn-choice[data-variant=outline]{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.vn-choice[data-variant=plain]{border-color:transparent;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.vn-dialogue-copy{position:relative;display:block;block-size:var(--vn-dialogue-height);overflow:hidden;line-height:var(--vn-line-height)}.vn-dialogue-text{display:block;margin:0;line-height:var(--vn-line-height);color:var(--vn-text);overflow-wrap:anywhere;white-space:normal}.vn-dialogue-direction{display:block;margin:0;line-height:var(--vn-line-height);font-style:italic;color:var(--vn-text-muted);overflow-wrap:anywhere;white-space:normal}.vn-dialogue-measure{position:absolute;inset-block-start:0;inset-inline-start:0;block-size:auto;overflow:visible;pointer-events:none;visibility:hidden}.vn-dialogue-footer{display:flex;align-items:center;justify-content:flex-end;min-block-size:.875rem;margin-block-start:.75rem;gap:.5rem;color:var(--vn-text-faint)}.vn-dialogue-hint,.vn-dialogue-page{font-size:.625rem;line-height:.875rem;text-align:end}.vn-dialogue-hint[data-visible=false]{visibility:hidden}.vn-dialogue-page{font-variant-numeric:tabular-nums}.vn-choices{display:grid;gap:.5rem}.vn-choice{border:1px solid var(--vn-choice-border);border-radius:var(--vn-choice-radius);background:var(--vn-panel-bg);padding:.75rem 1.25rem;text-align:start;font:inherit;font-size:.875rem;color:inherit;cursor:pointer;-webkit-backdrop-filter:blur(var(--vn-panel-blur));backdrop-filter:blur(var(--vn-panel-blur))}.vn-choice:hover{border-color:var(--vn-panel-border-hover);background:var(--vn-panel-bg-hover)}.vn-ended{border:1px solid var(--vn-panel-border);border-radius:var(--vn-panel-radius);background:var(--vn-panel-bg);padding:1.5rem;text-align:center;-webkit-backdrop-filter:blur(var(--vn-panel-blur));backdrop-filter:blur(var(--vn-panel-blur))}.vn-ended-title{margin:0;font-size:1.125rem;font-weight:600}.vn-ended-restart{margin-top:1rem}.vn-button{border:0;border-radius:var(--vn-button-radius);background:var(--vn-button-bg);padding:.625rem 1.25rem;font:inherit;font-size:.875rem;font-weight:600;color:var(--vn-button-fg);cursor:pointer}.vn-button:hover{background:var(--vn-button-bg-hover)}.vn-timer{margin-bottom:.5rem;height:var(--vn-timer-thickness);overflow:hidden;border-radius:var(--vn-timer-radius);background:var(--vn-timer-track)}.vn-timer-fill{height:100%;background:var(--vn-timer-fill);transition:inline-size 80ms linear}@media(prefers-reduced-motion:reduce){.vn-timer-fill{transition:none}}.vn-timer[data-style=donut]{inline-size:var(--vn-timer-donut-size);block-size:var(--vn-timer-donut-size);margin-inline:auto;border-radius:50%;background:var(--vn-timer-track)}.vn-timer[data-style=donut] .vn-timer-fill{inline-size:100%!important;block-size:100%;background:conic-gradient(var(--vn-timer-fill) calc(var(--vn-timer-ratio, 1) * 360deg),transparent 0);-webkit-mask:radial-gradient(circle,transparent 56%,#000 57%);mask:radial-gradient(circle,transparent 56%,#000 57%);transition:none}.vn-ended-actions{display:flex;gap:.5rem;justify-content:center;margin-top:1rem;flex-wrap:wrap}.vn-title{display:grid;place-items:center}.vn-title-image{position:absolute;inset:0;height:100%;width:100%;object-fit:cover}.vn-title-scrim{position:absolute;inset:0;background:var(--vn-title-scrim)}.vn-title-panel{position:relative;display:grid;gap:1.5rem;justify-items:center;padding:2rem}.vn-title[data-align=start] .vn-title-panel{justify-items:start;justify-self:start}.vn-title[data-align=end] .vn-title-panel{justify-items:end;justify-self:end}.vn-title[data-align=start] .vn-title-text{text-align:start}.vn-title[data-align=end] .vn-title-text{text-align:end}.vn-title-text{margin:0;font-size:var(--vn-title-size);font-weight:var(--vn-title-weight);letter-spacing:-.01em;text-shadow:var(--vn-title-shadow)}.vn-title-actions{display:grid;gap:.5rem;min-inline-size:12rem}.vn-overlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:var(--vn-overlay-bg);padding:1rem;color:var(--vn-text)}.vn-panel{display:grid;gap:1.25rem;inline-size:min(28rem,100%);max-block-size:90vh;overflow-y:auto;border:1px solid var(--vn-panel-border);border-radius:var(--vn-panel-radius);background:var(--vn-panel-surface);padding:1.5rem}.vn-panel[data-background="1"]{background-color:var(--vn-panel-surface);background-position:center;background-size:cover;box-shadow:inset 0 0 0 100vmax color-mix(in srgb,var(--vn-panel-surface) 68%,transparent)}.vn-panel-title{margin:0;font-size:1.125rem;font-weight:700}.vn-setting{display:grid;gap:.5rem}.vn-setting-label{margin:0;font-size:.875rem;color:var(--vn-text-muted)}.vn-setting-choices{display:flex;gap:.5rem;flex-wrap:wrap}.vn-setting-note{margin:0;font-size:.75rem;color:var(--vn-text-faint)}.vn-setting-range{inline-size:100%;accent-color:var(--vn-speaker)}.vn-button-ghost{background:transparent;border:1px solid var(--vn-panel-border);color:var(--vn-text)}.vn-button-ghost[aria-pressed=true]{background:var(--vn-speaker);border-color:var(--vn-speaker);color:var(--vn-accent-fg)}.vn-button:disabled,.vn-button-ghost:disabled,.vn-save-button:disabled{opacity:.45;cursor:not-allowed}.vn-button-ghost:hover:not(:disabled){background:var(--vn-hover-wash)}.vn-saves{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.vn-save-button{display:grid;gap:.25rem;inline-size:100%;border:1px solid var(--vn-panel-border);border-radius:var(--vn-button-radius);background:transparent;padding:.75rem 1rem;text-align:start;font:inherit;color:var(--vn-text);cursor:pointer}.vn-save-button:hover:not(:disabled){background:var(--vn-hover-wash)}.vn-save-name{font-size:.875rem;font-weight:600}.vn-save-summary{font-size:.75rem;color:var(--vn-text-faint)}.vn-hud-layer{position:absolute;inset:0;z-index:40;pointer-events:none}.vn-hud-item{position:absolute;display:grid;pointer-events:auto}.vn-hud-group{position:absolute;display:flex;align-items:stretch;pointer-events:auto}.vn-hud-button{inline-size:100%;block-size:100%;border:0;border-radius:var(--vn-hud-radius);background:var(--vn-hud-bg);padding:.5rem .75rem;font:inherit;font-size:.75rem;color:var(--vn-hud-fg);cursor:pointer;white-space:nowrap}.vn-hud-group .vn-hud-button{padding:0;overflow:hidden;text-overflow:ellipsis}[data-vn-hud-icon]{display:block;inline-size:100%;block-size:100%;background-image:var(--vn-hud-icon);background-position:center;background-repeat:no-repeat;background-size:contain}.vn-hud-button:hover{background:var(--vn-hud-bg-hover)}.vn-hud-button[aria-pressed=true]{background:var(--vn-hud-bg-hover);color:var(--vn-text)}.vn-hud-button:disabled{opacity:.4;cursor:default}.vn-hud-button:disabled:hover{background:var(--vn-hud-bg)}.vn-dialogue-restore{position:absolute;inset:0;z-index:30;border:0;background:transparent;cursor:pointer}.vn-storymap{display:grid;gap:1rem;max-block-size:60vh;overflow-y:auto}.vn-storymap-act{display:grid;gap:.375rem}.vn-storymap-act-title{margin:0;font-size:.75rem;color:var(--vn-text-faint)}.vn-storymap-scenes{display:grid;gap:.375rem;margin:0;padding:0;list-style:none}.vn-backlog{display:grid;gap:.75rem;max-block-size:60vh;overflow-y:auto;margin:0;padding:0;list-style:none}.vn-backlog-entry{display:grid;gap:.125rem}.vn-backlog-speaker{font-size:.75rem;color:var(--vn-speaker)}.vn-backlog-text{color:var(--vn-text);white-space:pre-wrap}.vn-ui-scope{display:contents}.vn-ui-scope--embedded{display:block;position:relative;block-size:100%;overflow:hidden;container-type:size;--vn-stage-height: 88%}.vn-ui-scope--embedded>.vn-root{block-size:100%;min-block-size:100%;font-size:clamp(.625rem,2.25cqh,.9375rem)}.vn-ui-scope--embedded .vn-overlay{position:absolute}.vn-ui-scope--embedded .vn-dialogue{padding:.625em .875em}.vn-ui-scope--embedded .vn-dialogue-speaker-slot{block-size:1em;margin-block-end:.25em}.vn-ui-scope--embedded .vn-dialogue-speaker{font-size:.8em;line-height:1em}.vn-ui-scope--embedded .vn-dialogue-footer{min-block-size:.75em;margin-block-start:.375em;gap:.375em}.vn-ui-scope--embedded .vn-dialogue-hint,.vn-ui-scope--embedded .vn-dialogue-page{font-size:.625em;line-height:.75em}[data-vn-skin-root]{--vn-stage-height: 88%;container-type:size;-webkit-user-select:none;user-select:none}[data-vn-skin-root] [data-vn-slot]{isolation:isolate}[data-vn-skin-root] [data-vn-bare],[data-vn-skin-root] [data-vn-bare]:before,[data-vn-skin-root] [data-vn-bare]:after{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}[data-vn-skin-root] .vn-background-empty{background:#242832}.vn-skin-copy{position:relative;display:block;box-sizing:border-box;block-size:100%;padding-inline:var(--vn-copy-pad-inline, 0);padding-block:var(--vn-copy-pad-block, 0);font-size:calc(1em * var(--vn-copy-font-scale, 1));overflow:hidden}.vn-skin-speaker{position:relative;inset-inline-start:var(--vn-speaker-nudge-x, 0);inset-block-start:var(--vn-speaker-nudge-y, 0);color:var(--vn-speaker-ink, inherit);font-size:calc(1em * var(--vn-speaker-font-scale, 1) * var(--vn-speaker-fit-scale, 1))}.vn-skin-speaker[data-vn-fit=clip]{display:inline-block;max-inline-size:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom}.vn-skin-measure{position:absolute;inset-block-start:0;inset-inline-start:0;block-size:auto;overflow:visible;pointer-events:none;visibility:hidden}:root:lang(en){--vn-font: "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, Helvetica, Arial, sans-serif;--vn-line-height: 1.6;--vn-speaker-fit-min: .5}:root:lang(ja){--vn-font: "Hiragino Sans", "Yu Gothic UI", "Noto Sans JP", Meiryo, sans-serif;--vn-line-height: 1.85}:root:lang(zh-Hans){--vn-font: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;--vn-line-height: 1.85}:root:lang(zh-Hant){--vn-font: "PingFang TC", "Microsoft JhengHei", "Noto Sans TC", sans-serif;--vn-line-height: 1.85}html,body{block-size:100%}body{margin:0;background:var(--vn-bg)}#vn-root{block-size:100%}
