:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f2ea;--fg:#2a211b;--accent:#8a4a2b;--on-accent:#fff;--lift:65%;--font:Georgia, "Iowan Old Style", "Palatino Linotype", serif;--heading-font:var(--font);--column:40rem;--leading:1.6;--muted:color-mix(in srgb, var(--fg) 70%, var(--bg));--card:color-mix(in srgb, var(--bg) var(--lift), #fff);--border:color-mix(in srgb, var(--fg) 20%, var(--bg));--line:color-mix(in srgb, var(--fg) 13%, var(--bg));--soft:color-mix(in srgb, var(--fg) 7%, var(--bg));--accent-soft:color-mix(in srgb, var(--accent) 13%, transparent);--ring:color-mix(in srgb, var(--accent) 20%, transparent);font-family:var(--font);font-size:18px;line-height:var(--leading)}:root[data-dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--lift:92%}body{background:var(--bg);color:var(--fg);margin:0}#app{max-width:var(--column);margin:0 auto;padding:2rem 1.25rem 6rem}.notice{color:var(--muted);text-align:center;margin-top:30vh}.line{margin:0 0 1rem;animation:.25s ease-out appear}.line.past{color:var(--muted)}.line.chosen{color:var(--accent);font-style:italic}.actions{margin-top:1.5rem}.choices{gap:.5rem;display:grid}.choices:focus{outline:none}button{font:inherit;cursor:pointer}.choice{text-align:left;border:1px solid var(--border);background:var(--card);color:var(--fg);border-radius:.5rem;padding:.6rem .9rem}.choice:hover:not(:disabled){border-color:var(--accent);box-shadow:0 0 0 2px var(--ring)}.choice:focus-visible{border-color:var(--accent)}.choice:disabled{color:var(--muted);cursor:not-allowed}.next{background:var(--accent);color:var(--on-accent);border:none;border-radius:999px;padding:.5rem 1.2rem}.next.subtle{color:var(--muted);background:0 0;margin-left:-.75rem;padding:.25rem .75rem}.ending{text-align:center;padding:1rem 0 2rem}.actions[data-mode=reader]{scroll-margin-bottom:.75rem}.actions[data-mode=ending]{scroll-margin-top:calc(var(--topbar-height,2.75rem) + .5rem)}.ending-label{color:var(--muted);text-transform:uppercase;letter-spacing:.15em;margin:0;font-size:.8rem}.ending-text{max-width:32rem;margin:0 auto 1rem;font-style:italic}.ending-name{margin:.25rem 0 1.5rem}@keyframes appear{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.line{animation:none}}.topbar{z-index:2;background:var(--bg);align-items:flex-start;gap:.5rem;display:flex;position:sticky;top:0}.topbar .status{flex:1}@media (max-width:480px){.topbar{flex-wrap:wrap}.topbar .status{flex-basis:100%;order:1}.status-item{white-space:nowrap}}.menu-button{border:1px solid var(--border);background:var(--card);border-radius:999px;margin:.35rem 0 0 auto;padding:.2rem .8rem;font-size:.85rem}.menu-button[hidden]{display:none}.switch-button{border:1px solid var(--border);background:var(--card);border-radius:999px;margin:.35rem 0 0;padding:.2rem .7rem;font-size:.85rem}.switch-button[hidden]{display:none}.switch-button[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 22%, var(--card));font-weight:600}.switch-icon{display:none}@media (max-width:30rem){.switch-button{padding:.2rem .5rem}.switch-icon{display:inline}.switch-name{display:none}}#app.text-hidden>:not(.view,.page-backdrop){visibility:hidden}#app.text-hidden{background:0 0;border-color:#0000}.status{background:var(--bg);border-bottom:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:1rem;padding:.5rem 0;font-size:.85rem;display:flex}.status[hidden]{display:none}.status-item{align-items:center;display:inline-flex}.status-bar{width:5rem;height:.6rem;margin-left:.4rem}.status-value{color:var(--fg);margin-left:.35rem;font-weight:600}.notices{top:calc(var(--topbar-height,2.75rem) + .5rem);z-index:2;pointer-events:none;gap:.5rem;max-width:min(20rem,100vw - 2rem);display:grid;position:fixed;right:1rem}.notice-toast{background:var(--fg);color:var(--bg);border-radius:.5rem;margin:0;padding:.5rem .8rem;font-size:.9rem;animation:.2s ease-out appear}.speaker{font-weight:700}.line.check{font-weight:600}.line.check-result{color:var(--accent)}.reader{border:1px solid var(--line);background:var(--card);border-radius:.5rem;gap:.75rem;padding:1rem;display:grid}.reader-title{margin:0 0 .25rem;font-size:1rem}.reader-text{margin:0 0 .5rem}.line.battle{font-weight:600}.line.battle-log{font-size:.95em}.ask{align-items:center;gap:.5rem;display:flex}.ask-input{font:inherit;flex:1;padding:.5rem}.media{margin:.5rem 0 1rem}.media img,.media video{border-radius:.25rem;max-width:100%}.view{top:var(--topbar-height,2.75rem);z-index:1;background:var(--bg);position:sticky}.stage{grid-template-columns:repeat(6,1fr);align-items:end;gap:.5rem;min-height:7rem;margin-bottom:1rem;display:grid}.stage.in-picture{pointer-events:none;grid-template-rows:100%;min-height:0;margin:0;position:absolute;inset:0}.stage.in-picture .stage-figure{justify-content:center;align-items:flex-end;height:100%;min-height:0;display:flex;position:relative}.stage.in-picture .stage-image{min-height:0;max-height:92%}.stage.in-picture .stage-placeholder{margin-bottom:1.6rem}.stage.in-picture .stage-name{background:color-mix(in srgb, var(--bg) 85%, transparent);white-space:nowrap;border-radius:.3rem;padding:.05rem .5rem;position:absolute;bottom:.3rem;left:50%;transform:translate(-50%)}.stage[hidden]{display:none}.stage-figure{text-align:center;grid-row:1;margin:0}.stage-left{grid-column:1/3}.stage-left_center{grid-column:2/4}.stage-center{grid-column:3/5}.stage-center_right{grid-column:4/6}.stage-right{grid-column:5/7}.stage-figure.flipped .stage-image{transform:scaleX(-1)}img.layered{background-position:50%;background-repeat:no-repeat;background-size:contain}.portrait.layered,.dialogue-portrait.layered,.bubble-portrait.layered{background-size:cover}.screen-tint,.screen-weather{z-index:2;pointer-events:none;position:absolute;inset:0}.screen-tint[hidden],.screen-weather[hidden]{display:none}.screen-flash{z-index:1000;pointer-events:none;position:fixed;inset:0}.weather-rain{background-image:repeating-linear-gradient(105deg,#0000 0 14px,#c8d7eb73 14px 15px,#0000 15px 31px);background-size:120px 90px;animation:.45s linear infinite weather-rain}.weather-snow{background-image:radial-gradient(circle at 20% 30%,#fff 0 2px,#0000 3px),radial-gradient(circle at 70% 60%,#fff 0 1.5px,#0000 2.5px),radial-gradient(circle at 45% 85%,#fffc 0 2.5px,#0000 3.5px),radial-gradient(circle at 85% 15%,#ffffffb3 0 1px,#0000 2px);background-size:90px 90px,130px 130px,170px 170px,60px 60px;animation:6s linear infinite weather-snow}.weather-fog{background:linear-gradient(#dce1e626,#dce1e659 45%,#dce1e6bf);animation:9s ease-in-out infinite alternate weather-fog}@keyframes weather-rain{to{background-position:-24px 90px}}@keyframes weather-snow{to{background-position:30px 90px,-20px 130px,15px 170px,-10px 60px}}@keyframes weather-fog{to{opacity:.7}}.stage-image{object-fit:contain;max-width:100%;max-height:min(12rem,22vh)}.stage-placeholder{background:var(--line);width:4rem;height:4rem;color:var(--fg);border-radius:50%;place-items:center;margin:0 auto;font-size:1.5rem;font-weight:700;display:grid}.stage-name{font-size:.85rem;font-weight:600}.line.with-portrait{display:flow-root}.portrait{float:left;object-fit:cover;border-radius:.4rem;width:3rem;height:3rem;margin:.2rem .6rem 0 0}.line.resumed{border-left:2px solid var(--line);padding-left:.6rem}.choice-key{min-width:1.2em;color:inherit;font-size:.85em;display:inline-block}.choice-needs{color:var(--fg);font-size:.85em;font-style:italic;display:block}.nothing-to-choose{margin:0 0 .5rem;font-style:italic}.countdown{width:100%;height:.35rem;accent-color:var(--accent);margin-bottom:.5rem}.reader-name{margin:0;font-size:1.1rem}.reader-image{border-radius:.25rem;max-width:100%}.reader-nav{color:var(--muted);justify-content:center;align-items:center;gap:1rem;font-size:.9rem;display:flex}.reader-nav[hidden]{display:none}.reader-prev,.reader-next{border:1px solid var(--border);background:var(--card);border-radius:.4rem;min-width:2.75rem;min-height:2.75rem;padding:.2rem .8rem}.reader-prev:disabled,.reader-next:disabled{opacity:.4;cursor:default}.md-heading{margin:.5rem 0 .25rem}.md-list{margin:0 0 .5rem;padding-left:1.25rem}.ending-image{object-fit:contain;border-radius:.25rem;max-width:100%;max-height:min(45vh,24rem);margin:0 auto 1rem;display:block}#app:has(>.actions[data-mode=ending] .ending-image)>.view{display:none}.endings-found{color:var(--fg);margin-top:1.5rem}.endings-found summary{cursor:pointer;color:var(--muted)}.endings-found summary:hover{color:var(--fg)}.scene{margin-bottom:1rem;padding-bottom:.5rem}.scene .scene-frame{max-width:97.7778vh;margin-inline:auto}.scene[hidden],.battle-screen[hidden],.scene-things[hidden],.battle-backdrop[hidden]{display:none}.scene-frame{background:var(--soft);border-radius:.4rem;width:100%;position:relative;overflow:hidden}.scene-canvas{width:100%;height:100%;display:block}.hotspots{position:absolute;inset:0}.hotspot{background:0 0;border:2px solid #0000;border-radius:.3rem;padding:0;position:absolute}.hotspot:hover,.hotspot:focus-visible{border-color:var(--accent);background:var(--accent-soft)}.scene[data-using]:not([data-using=""]) .hotspot{border-style:dashed;border-color:color-mix(in srgb, var(--accent) 53%, transparent);cursor:copy}.scene-things{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.scene-thing{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:.25rem .7rem;font-size:.9rem}.scene-thing[aria-pressed=true]{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.battle-screen{border:1px solid var(--line);background:var(--card);border-radius:.5rem;gap:.75rem;margin-bottom:1rem;padding:.75rem;display:grid;position:relative;overflow:hidden}.battle-backdrop{object-fit:cover;opacity:.25;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.battle-order,.battle-side{position:relative}.battle-order{color:var(--muted);margin:0;font-size:.85rem}.battle-acting{color:var(--accent);font-weight:700}.battle-side{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.fighter{border-radius:.4rem;justify-items:center;gap:.2rem;min-width:7rem;margin:0;padding:.4rem;font-size:.85rem;display:grid}.fighter.acting{box-shadow:0 0 0 2px var(--accent)}.fighter.defeated{opacity:.4}.fighter-sprite{object-fit:contain;max-width:7rem;max-height:5rem}.fighter-placeholder{background:var(--line);border-radius:50%;place-items:center;width:3rem;height:3rem;font-weight:700;display:grid}.fighter-foe .fighter-placeholder{background:color-mix(in srgb, var(--accent) 35%, var(--bg))}.fighter-name{font-weight:600}.fighter-bar{align-items:center;gap:.3rem;display:flex}.fighter-bar meter{width:4.5rem}.fighter-bar-name,.fighter-bar-value{color:var(--muted);font-size:.8rem}.fighter-statuses{flex-wrap:wrap;gap:.2rem;display:flex}.fighter-status{background:var(--soft);border-radius:999px;padding:0 .4rem;font-size:.75rem}.battle-result{border-left:3px solid var(--accent);background:var(--card);margin:0 0 1rem;padding:.75rem 1rem}.battle-result-outcome{margin:0 0 .25rem;font-size:1rem}.battle-result ul{margin:0;padding-left:1.1rem}.fighter-gauge{background:var(--line);border-radius:999px;width:4.5rem;height:.6rem;display:inline-block;overflow:hidden}.fighter-gauge-fill{background:#6b8f3a;height:100%;display:block}.fighter{position:relative}.fighter.fx-lunge{animation:fx-lunge calc(.3s * var(--fx-speed,1)) ease-in-out}.fighter-foe.fx-lunge{--fx-toward:1}@keyframes fx-lunge{50%{transform:translateY(calc(var(--fx-toward,-1) * 1.5rem)) scale(1.05)}}.fighter.fx-jump{animation:fx-jump calc(.3s * var(--fx-speed,1)) ease-out}@keyframes fx-jump{40%{transform:translateY(-1.25rem)}}.fighter.fx-glow{animation:fx-glow calc(.3s * var(--fx-speed,1)) ease-in-out}@keyframes fx-glow{50%{box-shadow:0 0 1.25rem .4rem var(--fx-color,#ffd76a)}}.fighter.fx-shake{animation:fx-shake calc(.45s * var(--fx-speed,1)) linear}@keyframes fx-shake{20%,60%{transform:translate(-.4rem)}40%,80%{transform:translate(.4rem)}}.fighter.fx-blink{animation:fx-blink calc(.45s * var(--fx-speed,1)) steps(1)}@keyframes fx-blink{25%,75%{opacity:.15}}.fighter.fx-flash:after,.battle-screen.fx-screen-flash:after,.battle-screen.fx-start-flash:after{content:"";border-radius:inherit;background:var(--fx-color,#fff);pointer-events:none;animation:fx-flash calc(.45s * var(--fx-speed,1)) ease-out forwards;position:absolute;inset:0}@keyframes fx-flash{0%{opacity:.85}to{opacity:0}}.fighter.fx-knockback{animation:fx-knockback calc(.45s * var(--fx-speed,1)) ease-out}.fighter-foe.fx-knockback{--fx-away:-1}@keyframes fx-knockback{30%{transform:translateY(calc(var(--fx-away,1) * 1rem)) rotate(-4deg)}}.battle-screen.fx-screen-shake{animation:fx-shake calc(.45s * var(--fx-speed,1)) linear}.battle-screen.fx-start-fade{animation:fx-start-fade calc(.5s * var(--fx-speed,1)) ease-in}@keyframes fx-start-fade{0%{opacity:0}}.fighter.fx-defeat-fade{animation:fx-defeat-fade calc(.6s * var(--fx-speed,1)) ease-in forwards}@keyframes fx-defeat-fade{to{opacity:.4}}.fighter.fx-defeat-sink{animation:fx-defeat-sink calc(.6s * var(--fx-speed,1)) ease-in forwards}@keyframes fx-defeat-sink{to{opacity:.4;clip-path:inset(0 0 40%);transform:translateY(1.5rem)}}.fighter.fx-defeat-burst{animation:fx-defeat-burst calc(.6s * var(--fx-speed,1)) ease-out forwards}@keyframes fx-defeat-burst{60%{opacity:.2;filter:blur(3px)brightness(2);transform:scale(1.3)}to{opacity:.4;transform:none}}.fx-strip{z-index:2;image-rendering:pixelated;pointer-events:none;background-repeat:no-repeat;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.fx-number{z-index:3;color:#d9452b;text-shadow:0 1px 0 var(--bg), 0 0 .3rem var(--bg);pointer-events:none;animation:fx-number calc(.9s * var(--fx-speed,1)) ease-out forwards;font-size:1.25rem;font-weight:800;position:absolute;top:25%;left:50%;transform:translate(-50%)}.fx-number-heal{color:#2f9a4a}.fx-number-crit{font-size:1.75rem}.fx-number-miss{color:var(--muted);font-style:italic}@keyframes fx-number{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-2rem)}}.hotspot-label{color:var(--fg);overflow-wrap:anywhere;padding:.1rem .2rem;font-size:.65rem;line-height:1.15;display:none}.no-art .hotspot{border:1px dashed color-mix(in srgb, var(--accent) 53%, transparent);background:color-mix(in srgb, var(--card) 40%, transparent);overflow:hidden}.no-art .hotspot-label{display:block}.menu{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:min(40rem,100vw - 2rem);height:min(36rem,100vh - 3rem);max-height:calc(100vh - 3rem);color:var(--fg);border-radius:.6rem;padding:1rem 1.25rem}.menu::backdrop{background:#00000073}.menu-head{justify-content:space-between;align-items:center;display:flex}.menu-title{margin:0;font-size:1.2rem}.menu-close,.menu-action{border:1px solid var(--border);background:var(--card);border-radius:.4rem;padding:.2rem .7rem;font-size:.85rem}.menu-action:disabled{opacity:.45;cursor:not-allowed}.menu-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:.25rem;margin:.75rem 0;display:flex}.menu-tab{color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;padding:.3rem .7rem;font-size:.9rem}.menu-tab[aria-selected=true]{border-bottom-color:var(--accent);color:var(--fg);font-weight:600}.menu[open]{flex-direction:column;display:flex}.menu-panel{flex:1;align-content:start;gap:.75rem;display:grid;overflow:auto}.menu-card{border:1px solid var(--line);background:var(--card);border-radius:.5rem;padding:.6rem .8rem}.menu-card h3{margin:0;font-size:1rem}.menu-card-head{align-items:center;gap:.6rem;margin-bottom:.4rem;display:flex}.menu-portrait{object-fit:cover;border-radius:.4rem;width:2.5rem;height:2.5rem}.menu-initial{background:var(--line);place-items:center;font-weight:700;display:grid}.menu-level,.menu-meta,.menu-reason,.menu-description,.menu-hint{color:var(--muted);font-size:.85rem}.menu-level{margin-left:auto}.menu-points{color:var(--accent);font-size:.85rem;font-weight:700}.menu-action.menu-raise{min-width:1.75rem;padding:0 .4rem;line-height:1.4}.menu-values{gap:.15rem;margin:0;display:grid}.menu-value{grid-template-columns:8rem 1fr;gap:.5rem;font-size:.9rem;display:grid;position:relative}.menu-value dt{color:var(--muted)}.menu-value dd{white-space:nowrap;margin:0}.menu-value meter{vertical-align:middle;width:6rem}.menu-breakdown{color:var(--muted);grid-column:2;font-size:.8rem;display:none}.menu-value:hover .menu-breakdown,.menu-value:focus .menu-breakdown{display:block}.menu-statuses{flex-wrap:wrap;gap:.25rem;margin:.4rem 0 0;display:flex}.menu-status{background:var(--soft);border-radius:999px;padding:0 .45rem;font-size:.8rem}.menu-row,.menu-targets{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.35rem;display:flex}.menu-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.menu-save{grid-template-columns:4.5rem 1fr;align-items:center;gap:.2rem .7rem;display:grid}.menu-save-picture{aspect-ratio:16/9;background:var(--line);border-radius:.25rem;grid-row:span 2;width:4.5rem;overflow:hidden}.menu-save-picture img{object-fit:cover;width:100%;height:100%}.menu-save-text{gap:.2rem;display:grid}.menu-save-quick{flex-wrap:wrap;gap:.35rem;margin-bottom:.6rem;display:flex}.menu-save-meta{color:var(--muted);font-size:.85rem}.menu-save-actions{flex-wrap:wrap;grid-column:2;align-items:center;gap:.35rem;display:flex}.menu-saves+.menu-action{margin-top:.75rem}.start-screen{justify-items:start;gap:.75rem;display:grid}.menu-thing,.menu-skill,.menu-save,.menu-entry{border:1px solid var(--line);background:var(--card);border-radius:.4rem;padding:.5rem .7rem}.menu-skill strong+.menu-meta{margin-left:.5rem}.menu-description{margin:.2rem 0 0}.menu-entry h3{margin:0 0 .25rem;font-size:1rem}.menu-entry h4{margin:.4rem 0 .1rem;font-size:.9rem}.menu-entry.locked{color:var(--muted)}.menu-entry-image{float:right;border-radius:.3rem;max-width:5rem;margin-left:.5rem}.menu-select,.settings-row select{font:inherit;border:1px solid var(--border);background:var(--card);min-height:2.75rem;color:var(--fg);border-radius:.4rem;padding:.3rem .6rem;font-size:.85rem}.settings-row input[type=range]{width:min(12rem,45vw)}:root{accent-color:var(--accent)}.settings-button{border:1px solid var(--border);background:var(--card);border-radius:999px;min-width:2.75rem;margin:.35rem 0 0;padding:.2rem .6rem;font-size:.95rem}.topbar .menu-button+.settings-button,.topbar .menu-button[hidden]+.settings-button{margin-left:0}.topbar .status+.menu-button[hidden]+.settings-button{margin-left:auto}.settings-body{gap:.6rem;margin-top:.75rem;display:grid}.settings-row{justify-content:space-between;align-items:center;gap:1rem;min-height:2.75rem;display:flex}.settings-row input[type=checkbox]{width:1.4rem;height:1.4rem}.next,.choice,.menu-action,.menu-close,.menu-tab,.menu-button,.switch-button,.settings-button,.scene-thing,.reader-prev,.reader-next,.menu-select{min-height:2.75rem}@media (pointer:coarse),(max-width:40rem){.menu-action,.menu-close,.menu-tab,.menu-button,.switch-button,.menu-raise,.reader-prev,.reader-next{min-width:2.75rem}}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible,.choice:focus-visible,.hotspot:focus-visible,.menu-value:focus-visible,.menu-panel:focus-visible{outline:3px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 2px var(--bg)}[tabindex="-1"]:focus{outline:none}[data-reduce-motion=true] *,[data-reduce-motion=true] :before,[data-reduce-motion=true] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media (max-width:480px){#app{padding:1rem 1rem 5rem}.menu{border:none;border-radius:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}.menu-value{grid-template-columns:1fr;gap:0}.menu-value .menu-breakdown{grid-column:1}.fighter{min-width:5.5rem}.stage:not(.in-picture) .stage-image{max-height:8rem}.notices{max-width:none;left:.5rem;right:.5rem}}.page-backdrop{z-index:-1;pointer-events:none;position:fixed;inset:0}.page-backdrop[hidden]{display:none}.page-backdrop img{object-fit:cover;opacity:.18;width:100%;height:100%}.media-overlay{z-index:10;color:#f7f2ea;background:#120d0af2;grid-template-rows:1fr auto auto;place-items:center;gap:.75rem;margin:0;padding:1rem;display:grid;position:fixed;inset:0}.media-overlay img,.media-overlay video{object-fit:contain;max-width:100%;max-height:calc(100dvh - 8rem)}.media-overlay-actions{padding-bottom:env(safe-area-inset-bottom,0);gap:.5rem;display:flex}.media-overlay .next.subtle{color:#f7f2ea}.media-fade{animation:.4s ease-out media-fade}.media-slide{animation:.4s ease-out media-slide}@keyframes media-fade{0%{opacity:0}}@keyframes media-slide{0%{opacity:0;transform:translate(3rem)}}h1,h2,h3,.ending-name{font-family:var(--heading-font)}:root[data-backdrop] body{background:var(--bg) var(--backdrop) center / cover fixed no-repeat}:root[data-backdrop] #app{background:color-mix(in srgb, var(--bg) 90%, transparent);border-radius:.75rem;margin-top:1.5rem;margin-bottom:1.5rem}:root[data-backdrop] body:has(.scene:not([hidden])){background-image:none}:root[data-choices=links] .choices{gap:.35rem}:root[data-choices=links] .choice{color:var(--accent);box-shadow:none;background:0 0;border:none;border-radius:0;padding:.1rem 0}:root[data-choices=links] .choice-label{text-underline-offset:.2em;text-decoration:underline}:root[data-choices=links] .choice:disabled{color:var(--muted)}:root[data-choices=links] .choice:hover:not(:disabled) .choice-label,:root[data-choices=links] .choice:focus-visible .choice-label{text-decoration-thickness:2px}:root[data-choices=links] .choice .choice-key{min-width:0;color:var(--muted);margin-right:.15em;font-size:.85em}:root[data-choices=list] .choices{gap:.25rem}:root[data-choices=list] .choice{box-shadow:none;background:0 0;border:none;border-radius:.3rem;padding:.3rem .4rem}:root[data-choices=list] .choice:hover:not(:disabled),:root[data-choices=list] .choice:focus-visible{background:var(--accent-soft)}:root[data-choices=list] .choice .choice-key{color:var(--accent);font-weight:700}:root[data-choices=list] .choice:disabled .choice-key{color:var(--muted);font-weight:400}:root[data-choices=list] .choice:disabled .choice-label{opacity:.75}:root[data-choices=list] .choice-key:after{content:"."}.title-screen{text-align:center;align-content:center;justify-items:center;gap:.75rem;min-height:70dvh;display:grid}.title-cover{object-fit:cover;border-radius:.5rem;width:100%;min-height:6rem;max-height:min(45dvh,100dvh - 28rem)}.title-screen h1{margin:.5rem 0 0;font-size:2.2rem;line-height:1.2}.title-subtitle{margin:0;font-size:1.15rem;font-style:italic}.title-author{color:var(--muted);margin:0}.title-actions{grid-template-columns:1fr 1fr;gap:.5rem;min-width:min(18rem,100%);margin-top:1rem;display:grid}.title-actions>:not(.title-more){grid-column:1/-1}.title-actions .next{width:100%;margin-left:0}.title-autosave{color:var(--muted);text-align:center;margin:-.2rem 0 .3rem;font-size:.9rem}.title-dialog ul{padding-left:1.2rem}.menu-stats+.menu-stats{margin-top:1rem}.menu-stats-group{margin:0 0 .4rem;font-size:1rem}.stat-row-percent dd,.stat-pair{align-items:center;gap:.5rem;display:flex}.stat-bar{flex:1;min-width:6rem}.stat-number,.stat-side{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.9em}.menu-value.stat-row-opposed{grid-template-columns:1fr;gap:.2rem;display:grid}.stat-names{justify-content:space-between;display:flex}.stat-opposed{background:linear-gradient(to right, var(--accent) 0 var(--share), var(--line) var(--share) 100%);border-radius:999px;flex:1;min-width:6rem;height:.6rem}.dialogue{box-sizing:border-box;border:2px solid var(--line);background:var(--card);color:var(--fg);box-shadow:0 .2rem .8rem color-mix(in srgb, var(--fg) 12%, transparent);border-radius:.6rem;align-items:stretch;gap:.85rem;margin:0 0 1rem;padding:.75rem .9rem;display:flex;position:relative}.dialogue.portrait-right{flex-direction:row-reverse}.dialogue-portrait{object-fit:cover;object-position:top;border-radius:.4rem;flex:none;align-self:stretch;width:clamp(3.5rem,22%,7.5rem);min-height:clamp(3.5rem,22%,7.5rem);max-height:calc(33vh - 1.5rem)}.dialogue-body{flex:1;min-width:0}.dialogue-name{margin-bottom:.15rem;display:block}.transcript .dialogue{margin-block:1lh}.dialogue:has(.dialogue-plate){margin-top:calc(1.75rem + 2 * min(var(--frame-width,2px), .5rem) + 1lh)}.dialogue-plate{border:2px solid var(--line);background:var(--card);border-radius:.4rem;padding:.05rem .65rem;position:absolute;top:0;left:.8rem;transform:translateY(calc(.5rem - 100%))}.dialogue.portrait-right .dialogue-plate{left:auto;right:.8rem}.dialogue.past{opacity:.85}.dialogue-marker{color:var(--accent);font-size:.75rem;animation:1s steps(2,jump-none) infinite dialogue-wait;position:absolute;bottom:.25rem;right:.6rem}.dialogue.revealing .dialogue-marker{visibility:hidden}@keyframes dialogue-wait{50%{opacity:0}}.line.docked{z-index:2;bottom:max(.75rem, env(safe-area-inset-bottom));box-sizing:border-box;width:min(var(--screen-col), calc(100vw - 2rem));min-height:var(--box-h);margin:0;position:fixed;left:50%;translate:-50%}.line.docked:not(.dialogue){background:var(--bg);padding:.75rem .9rem}#app.screen-layout{--box-h:clamp(6.5rem, 20vh, 10rem);--screen-w:min(calc(100vw - 2rem), calc((100dvh - var(--topbar-height,2.75rem) - var(--dock-h,calc(var(--box-h) + 1rem)) - 2rem) * var(--scene-aspect,1.7778)));--screen-col:max(var(--screen-w), min(var(--column), calc(100vw - 2rem)));box-sizing:border-box;min-height:100dvh;max-width:calc(var(--screen-col) + 2.5rem);flex-direction:column;padding-top:1rem;padding-bottom:0;display:flex}#app.screen-layout>.topbar{margin-bottom:auto}@media (min-width:1400px) and (min-height:800px){#app.screen-layout{--box-h:clamp(6.5rem, 20vh, 12rem)}}@media (orientation:portrait){#app.screen-layout>.topbar{margin-bottom:.5rem}#app.screen-layout>.transcript{flex-direction:column;flex:1 1 0;justify-content:flex-end;min-height:0;display:flex;overflow:hidden}#app.screen-layout>.transcript>*{flex:none}:root[data-box-lines] #app.screen-layout>.transcript>.dialogue:not(.docked){min-height:0}}#app.screen-layout .scene{margin-bottom:.5rem;padding-bottom:0}#app.screen-layout .scene .scene-frame{max-width:var(--screen-w)}#app.screen-layout .line.docked .dialogue-portrait{width:auto;max-width:35%;height:calc(var(--box-h) - 1.5rem - 2 * var(--frame-width,2px));object-fit:contain;align-self:center;min-height:0;max-height:none}#app.screen-layout .line.docked .dialogue-portrait.layered{background-size:contain}@media (min-width:1400px) and (min-height:800px){#app.screen-layout .line.docked .dialogue-portrait{height:calc(var(--box-h) - 1.5rem - var(--frame-width,2px));margin-block:calc(var(--frame-width,2px) / -2)}}#app.screen-layout>.actions{margin-top:.5rem}#app.docking.options-over>.actions:is([data-mode=choices],[data-mode=way],[data-mode=roll]){z-index:3;left:50%;bottom:calc(var(--dock-h) + .5rem);width:min(var(--column), calc(100vw - 2rem));margin:0;position:fixed;translate:-50%}#app.docking.options-over>.actions[data-choices-place=center]:is([data-mode=choices],[data-mode=way],[data-mode=roll]){bottom:var(--options-middle,var(--scene-middle,calc(var(--dock-h) + 30vh)));translate:-50% 50%}#app.docking>.actions[data-mode=reader]{z-index:3;left:50%;bottom:calc(var(--dock-h) + .5rem);width:min(var(--column), calc(100vw - 2rem));max-height:calc(100dvh - var(--dock-h) - var(--topbar-height,2.75rem) - 1.5rem);margin:0;position:fixed;overflow-y:auto;translate:-50%}#app.docking:is([data-box-place=top],[data-box-place=middle])>.actions[data-mode=reader]{top:calc(var(--scene-top,3.5rem) + var(--box-height) + .75rem);max-height:calc(100dvh - var(--scene-top,3.5rem) - var(--box-height) - 1.5rem);bottom:auto}#app.docking:is([data-box-place=top],[data-box-place=middle])>.actions[data-choices-place=below_box]:is([data-mode=choices],[data-mode=way],[data-mode=roll]),#app.docking[data-box-place=middle]>.actions[data-choices-place=center]:is([data-mode=choices],[data-mode=way],[data-mode=roll]){z-index:3;top:calc(var(--scene-top,3.5rem) + var(--box-height) + .75rem);width:min(var(--column), calc(100vw - 2rem));margin:0;position:fixed;bottom:auto;left:50%;translate:-50%}#app.docking[data-box-place=middle]>.actions:is([data-choices-place=below_box],[data-choices-place=center]):is([data-mode=choices],[data-mode=way],[data-mode=roll]){top:calc(100vh - var(--scene-middle) + var(--box-height) / 2 + .75rem)}#app.docking>.actions[data-mode=advance]{z-index:3;left:50%;bottom:max(.75rem, env(safe-area-inset-bottom));width:min(var(--screen-col), calc(100vw - 2rem));height:calc(var(--dock-h) - max(.75rem, env(safe-area-inset-bottom)));margin:0;position:fixed;translate:-50%}#app.docking[data-box-place=top] .line.docked,#app.docking[data-box-place=top]>.actions[data-mode=advance]{top:var(--scene-top,3.5rem);bottom:auto}#app.docking[data-box-place=middle] .line.docked,#app.docking[data-box-place=middle]>.actions[data-mode=advance]{bottom:var(--scene-middle,calc(var(--dock-h) + 30vh));translate:-50% 50%}#app.docking:is([data-box-place=top],[data-box-place=middle])>.actions[data-mode=advance]{height:var(--box-height)}#app.docking>.actions[data-mode=advance]>.next{width:100%;height:100%;box-shadow:none;color:#0000;background:0 0;border:0;border-radius:.6rem;margin:0}.stage.has-speaker .stage-figure:not(.speaking) .stage-image{filter:brightness(.7)saturate(.8)}.stage-image{transition:filter .2s}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.talk-hidden{opacity:0}.world-map{gap:.75rem;display:grid}.map-figure{border:1px solid var(--border);border-radius:.5rem;max-height:60dvh;margin:0;overflow:auto}.map-svg{width:100%;height:auto;display:block}.map-plain{fill:color-mix(in srgb, var(--accent) 8%, var(--card))}.map-route{fill:none;stroke:var(--fg);stroke-linecap:round;stroke-linejoin:round;opacity:.55}.map-route.closed{opacity:.35}.map-pin circle{fill:var(--muted);stroke:var(--card);stroke-width:.5%}.map-pin text{fill:var(--fg);text-anchor:middle;paint-order:stroke;stroke:var(--card);stroke-width:.3em;stroke-linejoin:round}.map-pin.here circle{fill:var(--accent)}.map-pin.offered{cursor:pointer}.map-pin.offered circle.map-hit,.map-pin.offered:hover circle.map-hit,.map-pin.offered:focus-visible circle.map-hit{fill:#0000;stroke:none}.map-pin.offered circle{fill:var(--accent);stroke:var(--on-accent)}.map-pin.offered:focus-visible circle,.map-pin.offered:hover circle{stroke:var(--fg)}.map-pin:focus{outline:none}.map-here{fill:var(--fg);text-anchor:middle;paint-order:stroke;stroke:var(--card);stroke-width:.3em;stroke-linejoin:round;font-style:italic;font-weight:600}.map-here-ring{fill:none;stroke:var(--accent)}.map-pin[tabindex]:focus-visible circle{stroke:var(--fg);stroke-width:1%}.map-zoom{justify-content:flex-end;gap:.25rem;display:flex}.map-zoom-button{border:1px solid var(--border);background:var(--card);min-width:2.75rem;min-height:2.75rem;color:var(--fg);border-radius:.4rem;font-size:1.1rem}.map-description{color:var(--muted);font-size:.85em;font-weight:400;display:block}.map-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.map-list li.here{font-weight:700}.travel{gap:.75rem;display:grid}.travel-title{margin:0}@media (max-width:40rem){.world-map .map-list{order:-1}}.transcript>[hidden]{display:none!important}.transcript.change-fade{animation:.35s ease-out change-fade}.transcript.change-slide{animation:.35s ease-out change-slide}@keyframes change-fade{0%{opacity:0}}@keyframes change-slide{0%{opacity:0;transform:translate(2rem)}}@media (prefers-reduced-motion:reduce){.transcript.change-fade,.transcript.change-slide{animation:none}}.story-so-far{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.story-speaker{font-family:var(--heading-font,inherit)}.story-chosen{color:var(--muted);font-style:italic}.menu-note{color:var(--muted);margin:0 0 .75rem;font-style:italic}.battle-screen{scroll-margin-top:calc(var(--topbar-height,2.75rem) + .5rem)}:root{--text-size:1;--name-font:var(--font);--ui-font:var(--font);--panel-text:var(--fg);--panel-muted:var(--muted);--choice:var(--card);--choice-text:var(--fg)}#app{font-size:calc(var(--text-size) * 1em)}:root[data-full] #app{max-width:none}:root[data-full] :is(.transcript,.actions){max-width:70ch;margin-inline:auto}:root[data-justify] .transcript .line{text-align:justify;-webkit-hyphens:auto;hyphens:auto;hyphenate-limit-chars:6 3 2}@media (max-width:479.98px){:root[data-justify] .transcript .line{text-align:start}}.speaker,.dialogue-name,.dialogue-plate,.stage-name,.story-speaker{font-family:var(--name-font)}.next,.choice,.menu,.menu-button,.switch-button,.settings-button,.status,.reader-nav,.scene-thing,.map-zoom-button,.ask-input,.battle-screen button{font-family:var(--ui-font)}:is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.menu-entry,.battle-screen,.battle-result){--muted:var(--panel-muted);color:var(--panel-text)}:root[data-panel] .menu{background:var(--card)}.choice{background:var(--choice);color:var(--choice-text)}:root[data-choices=links] .choice{color:var(--accent)}:root[data-choices=list] .choice{color:var(--fg)}:root[data-corners=square] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.menu-entry,.battle-screen,.choice,.next,.menu-button,.switch-button,.menu-action,.reader-next,.settings-button,.dialogue-portrait){border-radius:0}:root[data-corners=soft] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.menu-entry,.battle-screen,.choice,.next,.menu-button,.switch-button,.menu-action,.reader-next,.settings-button){border-radius:.5rem}:root[data-corners=round] :is(.dialogue,.reader,.menu,.menu-card,.menu-entry,.battle-screen,.choice){border-radius:1.25rem}:root[data-corners=round] :is(.dialogue-plate,.next,.menu-button,.switch-button,.menu-action,.reader-next,.settings-button){border-radius:999px}:root[data-border=none] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.menu-entry,.battle-screen,.choice,.menu-action,.reader-next,.settings-button){border-color:#0000}:root[data-border=thin] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.menu-entry,.battle-screen,.choice,.menu-action,.reader-next,.settings-button){border:1px solid var(--border)}:root[data-border=thick] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.menu-entry,.battle-screen,.choice,.menu-action,.reader-next,.settings-button){border:3px solid var(--border)}:root[data-border=double] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.menu-entry,.battle-screen,.choice,.menu-action,.reader-next,.settings-button){border:4px double var(--border)}:root[data-shadow=none] :is(.dialogue,.reader,.menu-card,.menu-entry,.battle-screen,.choice){box-shadow:none}:root[data-shadow=soft] :is(.dialogue,.reader,.menu-card,.menu-entry,.battle-screen,.choice){box-shadow:0 .3rem 1rem color-mix(in srgb, var(--fg) 18%, transparent)}:root[data-shadow=hard] :is(.dialogue,.reader,.menu-card,.menu-entry,.battle-screen,.choice){box-shadow:.25rem .25rem 0 color-mix(in srgb, var(--fg) 55%, transparent)}:root[data-shadow] .choice:hover:not(:disabled){border-color:var(--accent)}:root[data-choices=links] .choice,:root[data-choices=list] .choice{box-shadow:none;border-color:#0000}:root[data-choice-align=center] .choice{text-align:center}:root[data-choice-align=center] .choices{justify-items:center}:root[data-choice-width=fit] .choices{justify-items:start}:root[data-choice-width=fit][data-choice-align=center] .choices{justify-items:center}:root[data-choice-width=full] .choices{justify-items:stretch}:root[data-frame] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.battle-screen,.battle-result){border-style:solid;border-width:var(--frame-width);border-image:var(--frame) var(--frame-slice) fill / var(--frame-width) stretch;border-radius:0}:root[data-frame] .dialogue-plate{border-width:min(var(--frame-width), .5rem);border-image-width:min(var(--frame-width), .5rem)}:root[data-frame=repeat] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.battle-screen,.battle-result){border-image-repeat:round}:root[data-texture] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.battle-screen,.battle-result){background-image:var(--panel-picture);background-position:50%;background-size:cover}:root[data-frame][data-texture] :is(.dialogue,.dialogue-plate,.reader,.menu,.menu-card,.battle-screen,.battle-result){border-image-slice:var(--frame-slice)}@media (max-width:480px){:root[data-frame] .menu .menu-card{border-width:1px;border-color:var(--line);border-image:;border-radius:.4rem}}.dialogue-marker.dot{font-size:1rem;line-height:1}.dialogue-marker-image{object-fit:contain;width:1.1rem;height:1.1rem;display:block}.line:not(.dialogue)>.dialogue-marker{margin-left:.4em;position:static}.battle-preview{gap:.75rem;padding:1rem;display:grid}.battle-preview-again{justify-self:center}:root[data-box-lines] .dialogue{--box-h:calc(var(--box-lines) * var(--leading) * 1em * var(--text-size) + 1.6rem + 2 * var(--frame-width,2px));min-height:var(--box-h)}:root[data-box-lines] #app.screen-layout{--box-h:calc(var(--box-lines) * var(--leading) * 1em * var(--text-size) + 1.6rem + 2 * var(--frame-width,2px))}:root[data-box-lines] .line.docked.dialogue{height:var(--box-h)}:root[data-box-lines] .line.docked.dialogue .dialogue-body{overflow-y:auto}:root[data-dialogue=page] #app>.page-backdrop{z-index:-2}:root[data-dialogue=page] #app>.view{z-index:-2;place-items:center;display:grid;position:fixed;inset:0}:root[data-dialogue=page] #app>.view .scene{width:100%;margin:0;padding:0}:root[data-dialogue=page] #app>.view .scene .scene-frame{max-width:min(100vw, calc(100dvh * var(--scene-aspect,1.7778)));border-radius:0}:root[data-dialogue=page] body{background:var(--bg)}:root[data-dialogue=page] #app{box-sizing:border-box;max-width:none;min-height:100dvh;padding-inline:max(1.75rem + var(--frame-width,2px), calc((100vw - var(--column)) / 2));color:var(--panel-text)}:root[data-dialogue=page] #app:before{content:"";z-index:-1;box-sizing:border-box;width:min(calc(var(--column) + 3rem + 2 * var(--frame-width,2px)), calc(100vw - 1rem));border:2px solid var(--line);background:color-mix(in srgb, var(--card) var(--see-through,80%), transparent);pointer-events:none;border-radius:.6rem;position:fixed;top:.5rem;bottom:.5rem;left:50%;translate:-50%}:root[data-dialogue=page][data-frame] #app:before{border-style:solid;border-width:var(--frame-width);border-image:var(--frame) var(--frame-slice) fill / var(--frame-width) stretch;border-radius:0}:root[data-dialogue=page][data-frame=repeat] #app:before{border-image-repeat:round}:root[data-dialogue=page][data-texture] #app:before{background-image:var(--panel-picture);background-position:50%;background-size:cover}:root[data-dialogue=page] #app .line.past{color:var(--panel-muted)}.bubble{align-items:flex-end;gap:.5rem;width:-moz-fit-content;width:fit-content;max-width:85%;margin:0 0 .75rem;display:flex;position:relative}.bubble.you{flex-direction:row-reverse;margin-left:auto}.bubble-portrait{object-fit:cover;object-position:top;border-radius:50%;flex:none;width:2.25rem;height:2.25rem}.bubble-body{border:1px solid var(--line);background:var(--card);color:var(--panel-text);border-radius:1rem 1rem 1rem .25rem;padding:.45rem .8rem .55rem}.bubble.you .bubble-body{background:var(--accent);color:var(--on-accent);border-color:#0000;border-radius:1rem 1rem .25rem}.bubble-name{font-size:.85em;font-weight:600;display:block}.bubble.you .bubble-name{text-align:right}.bubble-narration{background:color-mix(in srgb, var(--card) 60%, transparent);width:-moz-fit-content;width:fit-content;max-width:85%;color:var(--muted);text-align:center;border-radius:1rem;margin:0 auto .75rem;padding:.3rem .8rem;font-size:.95em}.bubble>.dialogue-marker{bottom:-.1rem;right:auto}.bubble:not(.you)>.dialogue-marker{left:calc(100% + .25rem)}.bubble.you>.dialogue-marker{right:calc(100% + .25rem)}:root[data-see-through] :is(.dialogue,.dialogue-plate,.bubble:not(.you) .bubble-body){background-color:color-mix(in srgb, var(--card) var(--see-through), transparent)}:root[data-see-through] .bubble.you .bubble-body{background-color:color-mix(in srgb, var(--accent) var(--see-through), transparent)}.edit-here{width:1.6em;color:inherit;font:inherit;white-space:nowrap;cursor:pointer;opacity:0;background:0 0;border:0;margin-inline-end:-1.6em;padding:0;line-height:1;display:inline-block;overflow:visible}.edit-here:before{content:"✎";border-radius:4px;margin-inline-start:.2em;padding:.1em .25em;display:inline-block}:is(.line,.dialogue-text,.bubble-text,.choice-row,.ending):hover>.edit-here,.edit-here:focus-visible{opacity:.75}.edit-here:hover,.edit-here:focus-visible{opacity:1;outline:none}.edit-here:focus-visible:before{outline:2px solid}.choice-row{display:grid;position:relative}.choice-row>.edit-here{inset-inline-start:100%;position:absolute;top:50%;transform:translateY(-50%)}.note-form{gap:.75rem;display:grid}.note-field{gap:.25rem;display:grid}.note-label{color:var(--muted);font-size:.85rem}.note-body,.note-name{font:inherit;border:1px solid var(--border);background:var(--card);color:inherit;border-radius:.4rem;padding:.4rem .5rem}.note-form .next{justify-self:start}.note-said:empty{display:none}.actions[data-waiting]{visibility:hidden}
