:root{--color-stage: oklch(11% .012 48);--color-stage-raised: oklch(16% .014 48);--color-overlay: oklch(13% .014 48 / .94);--color-overlay-soft: oklch(13% .014 48 / .42);--color-ink: oklch(94% .012 78);--color-muted: oklch(73% .016 72);--color-rule: oklch(34% .016 48);--color-accent: oklch(55% .17 28);--color-accent-hover: oklch(61% .16 28);--color-accent-ink: oklch(97% .01 78);--color-focus: oklch(84% .13 82);--color-error: oklch(68% .16 25);--color-success: oklch(72% .1 145);--color-guide-surface: oklch(13% .016 58);--color-guide-raised: oklch(18% .02 62);--color-guide-rule: oklch(54% .075 78);--color-guide-gold: oklch(78% .1 82);--color-guide-backdrop: oklch(8% .01 48 / .78);--color-guide-paper: oklch(97% .008 82);--color-guide-marker: oklch(58% .19 28);--color-guide-main: oklch(72% .18 28);--color-guide-favor: oklch(78% .1 235);--color-guide-optional: oklch(78% .11 145);--color-game-text: rgb(255 255 255);--color-game-shadow: rgb(0 0 0);--color-settings-active-wash: rgb(205 166 72 / .22);--color-settings-inactive-wash: rgb(0 0 0 / .38);--color-settings-selected: rgb(151 39 34 / .72);--color-settings-surface: rgb(3 5 13 / .72);--color-settings-gold: #d8bb66;--color-settings-gold-bright: #f3d879;--color-settings-gold-mid: #c9a24d;--color-settings-gold-dark: #a58a49;--color-settings-rule: #6e6248;--color-settings-ink-selected: #fff1bc;--color-settings-ink: #e3dbc7;--color-settings-ink-muted: #a7a090;--font-display: "Songti SC", "STSong", "Noto Serif CJK SC", serif;--font-body: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;--font-game-default: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-game-heiti: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;--font-game-fangsong: "STFangsong", "FangSong", "FangSong_GB2312", "Noto Serif CJK SC", serif;--font-game-songti: "Songti SC", "STSong", "SimSun", "Noto Serif CJK SC", serif;--font-game-kaiti: "Kaiti SC", "STKaiti", "KaiTi", "Noto Serif CJK SC", serif;--space-3xs: .125rem;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.25rem;--text-xl: 1.5625rem;--text-2xl: clamp(2rem, 6vw, 3.25rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .22s;--dur-long: .42s;--rule-thin: 1px;--rule-medium: 2px;--radius-control: .25rem;--radius-round: 50%;--radius-stage: 0rem;--size-control: 2.75rem;--size-guide-sheet: 30rem;--size-guide-trigger: 2.75rem;--size-guide-route-gutter: clamp(10rem, 28vw, 15rem);--z-base: 1;--z-raised: 10;--z-modal: 400}*,*:before,*:after{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0;overflow-x:clip;background:#000;color-scheme:dark;color:var(--color-ink);font-family:var(--font-body)}body{min-height:100dvh;overflow:clip}button,select,progress{font:inherit}button:focus-visible,select:focus-visible,dialog:focus-visible,.guide-viewer:focus-visible,canvas:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.game-shell{position:relative;display:grid;width:100%;min-height:100dvh;place-items:center;overflow:clip;padding-block:env(safe-area-inset-top,0px) env(safe-area-inset-bottom,0px);padding-inline:env(safe-area-inset-left,0px) env(safe-area-inset-right,0px);background:var(--color-stage);color:var(--color-ink)}.stage-frame{position:relative;width:min(100%,calc((100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)) * 16 / 9));max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));aspect-ratio:16 / 9;overflow:clip;background:var(--color-stage-raised)}#game-canvas{display:block;width:100%;height:100%;touch-action:manipulation;background:var(--color-stage-raised)}.overlay{position:absolute;z-index:var(--z-modal);inset:0;display:grid;place-items:center;padding:max(var(--space-lg),env(safe-area-inset-top)) max(var(--space-lg),env(safe-area-inset-right)) max(var(--space-lg),env(safe-area-inset-bottom)) max(var(--space-lg),env(safe-area-inset-left));background:var(--color-overlay);color:var(--color-ink);opacity:1;transition:opacity var(--dur-short) var(--ease-out)}.overlay[hidden]{display:none}.overlay--start{place-items:end center;background:var(--color-overlay-soft)}.overlay__content{display:flex;max-width:min(60ch,100%);min-width:min(100%,18rem);flex-direction:column;align-items:flex-start;gap:var(--space-md)}.overlay__content--start{align-items:center;margin-block-end:var(--space-xl);text-align:center}.offline-game{display:grid;grid-template-columns:auto auto;align-items:center;gap:var(--space-xs) var(--space-sm);color:var(--color-muted);font-size:var(--text-sm)}.offline-game[hidden],.offline-game [hidden]{display:none}.offline-game__button,.offline-game__remove{border:var(--rule-thin) solid color-mix(in srgb,var(--color-accent) 70%,transparent);border-radius:var(--radius-control);padding:var(--space-xs) var(--space-sm);background:color-mix(in srgb,var(--color-stage) 72%,transparent);color:var(--color-ink);cursor:pointer}.offline-game__button:disabled,.offline-game__remove:disabled{cursor:wait;opacity:.55}.offline-game__status{max-width:28ch;line-height:1.25;overflow-wrap:anywhere}.offline-game__progress{grid-column:1 / -1;width:100%}.offline-game__remove{grid-column:1 / -1;justify-self:center;border-color:transparent;padding-block:0;background:transparent;color:var(--color-muted);text-decoration:underline;text-underline-offset:.18em}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.overlay h1,.overlay h2,.overlay p{min-width:0;margin:0;overflow-wrap:anywhere}.overlay h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;line-height:1.08;letter-spacing:-.03em}.overlay h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;line-height:1.2}.overlay__hint,.overlay__status{color:var(--color-muted);font-size:var(--text-base);line-height:1.55}.action-button{min-width:8rem;min-height:2.75rem;border:var(--rule-thin) solid var(--color-accent);border-radius:var(--radius-control);padding:var(--space-sm) var(--space-lg);background:var(--color-accent);color:var(--color-accent-ink);cursor:pointer;font-weight:700;line-height:1;white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}@media(hover:hover)and (pointer:fine){.action-button:hover{background:var(--color-accent-hover);transform:translateY(-1px)}}.action-button:active{transform:translateY(1px)}.action-button:disabled,.action-button[aria-disabled=true]{cursor:not-allowed;opacity:.55}.action-button[data-state=loading]{cursor:wait;opacity:.72}.action-button[data-state=error]{border-color:var(--color-error)}.action-button[data-state=success]{border-color:var(--color-success)}progress{width:min(100%,24rem);height:var(--space-xs);overflow:clip;border:0;border-radius:var(--radius-control);background:var(--color-rule);accent-color:var(--color-accent)}progress::-webkit-progress-bar{background:var(--color-rule)}progress::-webkit-progress-value{background:var(--color-accent)}progress::-moz-progress-bar{background:var(--color-accent)}.guide-tab{position:absolute;z-index:var(--z-raised);top:var(--space-sm);right:var(--space-sm);display:grid;width:var(--size-guide-trigger);height:var(--size-guide-trigger);place-items:center;border:var(--rule-thin) solid var(--color-guide-gold);border-radius:var(--radius-round);padding:0;background:var(--color-guide-raised);color:var(--color-guide-gold);cursor:pointer;font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:-.08em;line-height:1;opacity:.24;white-space:nowrap;transition:opacity var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.game-tool--menu{top:var(--space-sm)}.game-tool--stats{top:calc(var(--space-sm) + var(--size-guide-trigger) + var(--space-xs))}.game-tool--guide{top:calc(var(--space-sm) + (var(--size-guide-trigger) + var(--space-xs)) * 2)}.guide-tab[hidden]{display:none}.guide-tab:active{opacity:.9;transform:translateY(var(--space-3xs))}.guide-tab:focus-visible,.guide-tab[aria-expanded=true]{opacity:.88}.guide-tab:disabled,.guide-tab[aria-disabled=true]{cursor:not-allowed;opacity:.55}.guide-tab[data-state=loading]{cursor:wait;opacity:.6}.guide-tab[data-state=error]{border-color:var(--color-error)}.guide-tab[data-state=success]{border-color:var(--color-success)}.player-dialog{width:min(92vw,50rem);max-width:none;max-height:92dvh;margin:auto;overflow:hidden;border:var(--rule-thin) solid var(--color-guide-rule);padding:0;background:transparent;color:var(--color-ink)}.player-dialog::backdrop{background:#000000b8}.game-menu-dialog{width:min(100vw,calc(100dvh * 16 / 9));max-width:none;height:auto;max-height:100dvh;aspect-ratio:16 / 9;overflow:hidden;border:0;background:#060814}.game-menu-dialog::backdrop{background:#000000e0}.game-menu-stage,.game-menu-view{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}.game-menu-stage{position:relative;aspect-ratio:16 / 9;container-type:inline-size}.game-menu-view[hidden]{display:none}.game-menu-background,.menu-settings-canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.original-menu-button,.menu-corner-button{position:absolute;z-index:1;border:0;padding:0;background:transparent;cursor:pointer}.original-menu-button{top:14.8148%;left:var(--menu-x);width:8.0208%;height:44.8148%}.original-menu-button img,.menu-corner-button img{display:block;width:100%;height:100%;object-fit:contain}.menu-corner-button{left:2.6042%;width:8.8542%;height:15%}.menu-corner-button--title{top:14.8148%}.menu-corner-button--resume{top:43.5185%}.menu-corner-button--settings{top:78.1481%;left:18.3333%;display:grid;width:21.25%;height:8.5185%;place-items:center;border:1px solid #80672e;border-radius:0;background:#030611d1;color:#f1ead7;font-family:var(--font-display);font-size:clamp(.72rem,2.5vw,1.5rem);font-size:2.5cqw;line-height:1}.menu-corner-button--settings:hover,.menu-corner-button--settings:focus-visible{border-color:#c6a556;background:#85211f;color:#fff7df}.menu-status{position:absolute;z-index:2;right:5%;bottom:4%;max-width:70%;margin:0;color:var(--color-guide-gold);font-size:clamp(.7rem,1.8vw,1rem);text-align:right}.menu-view-title{position:absolute;z-index:1;top:7%;left:9.375%;margin:0;color:var(--color-guide-gold);font-family:var(--font-display);font-size:clamp(.8rem,2vw,1.35rem)}.save-backup-actions{position:absolute;z-index:2;top:5.4%;right:9.375%;display:flex;max-width:72%;align-items:center;justify-content:flex-end;gap:.6cqw;color:#e5cc83;font-size:1.5cqw}.save-backup-actions button{border:1px solid #80672e;padding:.38cqw .8cqw;background:#030611d1;color:#f1ead7;cursor:pointer}.save-backup-actions button:active{background:#85211f}.save-backup-actions button[data-state=on]{border-color:#c4a75b;background:#85211f}.save-backup-actions button:disabled{cursor:wait;opacity:.55}.save-backup-status{position:absolute;z-index:2;top:10.8%;left:9.375%;width:81.25%;margin:0;overflow:hidden;color:#e5cc83;font-size:1.25cqw;text-overflow:ellipsis;white-space:nowrap}.save-slot-grid{position:absolute;z-index:1;top:14.8148%;left:9.375%;display:grid;width:81.25%;height:51.8519%;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:46%;gap:3%;overflow-y:auto;overscroll-behavior:contain;padding:.4%;scrollbar-color:#9f8646 transparent}.save-slot{position:relative;display:grid;min-width:0;grid-template-columns:46% minmax(0,1fr);grid-template-rows:auto 1fr auto;gap:2% 4%;border:1px solid rgb(194 161 79 / 60%);padding:3%;background:#030611c7;color:#f0e6c6;font-size:clamp(.5rem,1.35vw,.82rem)}.save-slot__preview{grid-row:1 / -1;overflow:hidden;border:1px solid rgb(194 161 79 / 45%);background:#0000008c}.save-slot__preview img{display:block;width:100%;height:100%;object-fit:cover}.save-slot strong,.save-slot span,.save-slot time{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.save-slot time{color:#b6a982;font-size:.86em}.save-slot button{border:1px solid #9e7830;background:#5b0f12e0;color:#e5cc83;cursor:pointer;font-family:var(--font-display)}.save-slot button:disabled{cursor:default;opacity:.4}.save-slot__delete{position:absolute;top:3%;right:3%;border:0!important;padding:0;background:transparent!important;color:#c6b173!important;font-size:.8em}.menu-back-button{position:absolute;z-index:2;left:45.8333%;top:74.0741%;width:8.9583%;height:14.8148%;border:0;padding:0;background:transparent;cursor:pointer}.menu-back-button img{display:block;width:100%;height:100%;object-fit:contain}.query-values,.query-value{position:absolute;z-index:1}.query-values{inset:0}.query-value{color:#fff8df;font-family:var(--font-display);font-size:clamp(.62rem,2.5vw,1.5rem);font-size:2.5cqw;text-align:left;text-shadow:1px 1px 0 #05070d;transform:translateY(-50%)}.replay-content{position:absolute;z-index:1;top:7.4074%;left:6.25%;width:87.5%;height:59.2593%;overflow-y:auto;overscroll-behavior:contain;padding:0;color:#fff8df;font-size:clamp(.62rem,2.5vw,1.5rem);font-size:2.5cqw;line-height:1.2;text-shadow:1px 1px 0 #05070d;scrollbar-color:#9f8646 transparent}.replay-content p{margin:0}.menu-notice{margin:0;color:#e5cc83}@media(max-height:34rem),(max-width:50rem){.save-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.save-slot{grid-template-columns:40% minmax(0,1fr)}}.player-sheet{display:flex;max-height:92dvh;flex-direction:column;background:var(--color-guide-surface)}.player-sheet--menu{width:min(88vw,22rem);margin-inline:auto}.player-header{display:flex;min-height:var(--size-control);align-items:center;justify-content:space-between;gap:var(--space-sm);border-bottom:var(--rule-thin) solid var(--color-guide-rule);padding:var(--space-sm) var(--space-md)}.player-header h2,.stats-section h3{margin:0;font-family:var(--font-display)}.player-header h2{font-size:var(--text-lg)}.player-header-actions{display:flex;align-items:center;gap:var(--space-xs)}.player-close,#cheat-toggle,.player-menu-actions button{min-height:var(--size-control);border:var(--rule-thin) solid var(--color-guide-rule);border-radius:var(--radius-control);padding-inline:var(--space-sm);background:var(--color-guide-surface);color:var(--color-ink);cursor:pointer}#cheat-toggle[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-accent-ink)}.player-header-actions .player-close,.player-header-actions #cheat-toggle{min-height:auto;border:0;border-radius:0;padding:var(--space-xs) var(--space-sm);background:transparent}.player-header-actions #cheat-toggle[aria-pressed=true]{background:transparent;color:var(--color-accent)}.player-menu-actions{display:grid;gap:var(--space-xs);padding:var(--space-md)}.player-menu-actions button{width:100%}#menu-title-screen{color:var(--color-error)}.stats-content{overflow:auto;overscroll-behavior:contain;padding:0 var(--space-md) var(--space-md)}.stats-section{padding-block-start:var(--space-md)}.stats-section h3{position:sticky;z-index:1;top:0;padding-block:var(--space-xs);background:var(--color-guide-surface);color:var(--color-guide-gold);font-size:var(--text-base)}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3xs) var(--space-md)}.stats-row{display:flex;min-width:0;min-height:var(--size-control);align-items:center;justify-content:space-between;gap:var(--space-xs);border-bottom:var(--rule-thin) solid var(--color-guide-rule)}.stats-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-row input{width:5.5rem;border:var(--rule-thin) solid transparent;border-radius:var(--radius-control);padding:var(--space-2xs) var(--space-xs);background:transparent;color:var(--color-ink);font:inherit;text-align:right}.stats-row input:not([readonly]){border-color:var(--color-guide-gold);background:var(--color-guide-raised)}@media(max-width:42rem){.player-dialog,.player-sheet{width:min(96vw,50rem);max-height:96dvh}.player-header{padding:var(--space-xs) var(--space-sm)}.stats-content{padding-inline:var(--space-sm)}.stats-grid{grid-template-columns:1fr}}.guide-dialog{position:fixed;inset:0 0 0 auto;width:min(calc(100dvw - var(--size-control)),var(--size-guide-sheet));max-width:none;height:100dvh;max-height:none;margin:0;overflow:visible;border:0;padding:0;background:transparent;color:var(--color-ink)}.guide-dialog::backdrop{background:var(--color-guide-backdrop)}.guide-sheet{display:grid;width:100%;min-width:0;height:100%;grid-template-rows:auto auto auto minmax(0,1fr);overflow:clip;border-inline-start:var(--rule-thin) solid var(--color-guide-rule);background:var(--color-guide-surface);color:var(--color-ink);contain:inline-size;animation:guide-sheet-enter .3s var(--ease-out) both}@keyframes guide-sheet-enter{0%{opacity:0;transform:translate(var(--space-lg))}to{opacity:1;transform:none}}.guide-header{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:var(--space-md);padding-block:max(var(--space-sm),env(safe-area-inset-top));padding-inline:var(--space-md) max(var(--space-md),env(safe-area-inset-right));border-block-end:var(--rule-thin) solid var(--color-guide-rule);background:var(--color-guide-raised);color:var(--color-ink)}.guide-header h2{min-width:0;margin:0;overflow-wrap:anywhere;font-family:var(--font-display);font-size:var(--text-lg);line-height:1.2}.guide-close,.guide-follow,.guide-route,.guide-route-toggle,.guide-original,.guide-image-close,.guide-image-page-button,.guide-image-zoom button{min-height:var(--size-control);border:var(--rule-thin) solid var(--color-guide-rule);border-radius:var(--radius-control);background:var(--color-guide-surface);color:var(--color-ink);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.guide-close,.guide-follow,.guide-route-toggle,.guide-original,.guide-image-close,.guide-image-page-button,.guide-image-zoom button{padding-inline:var(--space-sm)}.guide-close:active,.guide-follow:active,.guide-route:active,.guide-route-toggle:active,.guide-original:active,.guide-image-close:active,.guide-image-page-button:active,.guide-image-zoom button:active{transform:translateY(var(--space-3xs))}.guide-close:disabled,.guide-follow:disabled,.guide-route:disabled,.guide-route-toggle:disabled,.guide-original:disabled,.guide-image-close:disabled,.guide-image-page-button:disabled,.guide-image-zoom button:disabled,.guide-close[aria-disabled=true],.guide-follow[aria-disabled=true],.guide-route[aria-disabled=true],.guide-route-toggle[aria-disabled=true],.guide-original[aria-disabled=true],.guide-image-close[aria-disabled=true],.guide-image-page-button[aria-disabled=true],.guide-image-zoom button[aria-disabled=true]{cursor:not-allowed;opacity:.55}.guide-close[data-state=loading],.guide-follow[data-state=loading],.guide-route[data-state=loading],.guide-route-toggle[data-state=loading],.guide-original[data-state=loading],.guide-image-close[data-state=loading],.guide-image-page-button[data-state=loading],.guide-image-zoom button[data-state=loading]{cursor:wait;opacity:.72}.guide-close[data-state=error],.guide-follow[data-state=error],.guide-route[data-state=error],.guide-route-toggle[data-state=error],.guide-original[data-state=error],.guide-image-close[data-state=error],.guide-image-page-button[data-state=error],.guide-image-zoom button[data-state=error]{border-color:var(--color-error)}.guide-close[data-state=success],.guide-follow[data-state=success],.guide-route[data-state=success],.guide-route-toggle[data-state=success],.guide-original[data-state=success],.guide-image-close[data-state=success],.guide-image-page-button[data-state=success],.guide-image-zoom button[data-state=success]{border-color:var(--color-success)}.guide-follow[aria-pressed=true],.guide-route[aria-pressed=true]{border-color:var(--color-guide-gold);background:var(--color-accent);color:var(--color-accent-ink)}.guide-controls{display:grid;position:relative;z-index:var(--z-raised);width:100%;min-width:0;max-width:100%;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-2xs);padding-block:max(var(--space-2xs),env(safe-area-inset-top)) var(--space-2xs);padding-inline:var(--space-xs) max(var(--space-xs),env(safe-area-inset-right));border-block-end:var(--rule-thin) solid var(--color-rule);background:var(--color-guide-surface);color:var(--color-ink)}.guide-field{display:grid;min-width:0;max-width:100%}.guide-route-control{position:relative;min-width:0}.guide-route-toggle{min-width:calc(var(--size-control) + var(--space-xs));font-family:var(--font-display);font-weight:700}.guide-route-drawer{position:absolute;z-index:var(--z-raised);inset-block-start:calc(100% + var(--space-xs));inset-inline-start:0;display:grid;width:min(12rem,calc(100vw - var(--space-md)));grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2xs);padding:var(--space-xs);border:var(--rule-thin) solid var(--color-guide-rule);background:var(--color-guide-raised);box-shadow:0 var(--space-xs) var(--space-lg) var(--color-guide-backdrop)}.guide-route-drawer[hidden]{display:none}.guide-route{min-width:0;padding-inline:var(--space-xs);font-family:var(--font-display);font-weight:700}.guide-field--chapter{min-width:0;max-width:100%;overflow:hidden}.guide-select{width:100%;min-width:0;max-width:100%;height:var(--size-control);overflow:hidden;border:var(--rule-thin) solid var(--color-guide-rule);border-radius:var(--radius-control);padding-inline:var(--space-sm);background:var(--color-guide-raised);color:var(--color-ink);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out)}.guide-select:active{background:var(--color-guide-surface);color:var(--color-ink)}.guide-select:disabled{cursor:not-allowed;opacity:.55}.guide-select[data-state=loading]{cursor:wait}.guide-select[data-state=error]{border-color:var(--color-error)}.guide-select[data-state=success]{border-color:var(--color-success)}.guide-current{display:block;align-items:center;min-height:0;padding:var(--space-xs) max(var(--space-xs),env(safe-area-inset-right));border-block-end:var(--rule-thin) solid var(--color-guide-rule);background:var(--color-guide-raised);color:var(--color-ink);line-height:1.4}.guide-current[hidden],.guide-current [hidden]{display:none}.guide-current:focus{outline:0}.guide-current__text{display:flex;min-width:0;align-items:baseline;flex-wrap:wrap;gap:var(--space-xs)}.guide-current strong,.guide-current__text span{min-width:0;max-width:100%;overflow-wrap:anywhere;white-space:normal}.guide-current__text span{color:var(--color-muted);font-size:var(--text-sm)}.guide-steps{min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--color-guide-rule) var(--color-guide-surface)}.guide-steps{background:var(--color-guide-surface);color:var(--color-ink)}.guide-steps:focus-visible{outline:var(--rule-thin) solid var(--color-guide-rule);outline-offset:calc(-1 * var(--rule-thin))}.guide-steps[hidden]{display:none}.guide-step-list{width:100%;min-width:0;padding-block-end:max(var(--space-lg),env(safe-area-inset-bottom))}.guide-step-group{display:grid;width:100%;grid-template-columns:clamp(5.25rem,24%,7rem) minmax(0,1fr);overflow:hidden;border-block-end:var(--rule-thin) solid var(--color-rule);background:var(--color-guide-surface);color:var(--color-ink)}.guide-step-group[data-current=true]{background:var(--color-guide-raised);color:var(--color-ink)}.guide-step-heading{min-width:0;margin:0;padding:var(--space-sm);border-inline-end:var(--rule-thin) solid var(--color-rule);color:var(--color-guide-gold);font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;line-height:1.45;overflow-wrap:anywhere}.guide-step-items{min-width:0;max-width:100%;margin:0;padding:0;list-style:none}.guide-step-item{display:grid;min-width:0;max-width:100%;grid-template-columns:1.5rem minmax(0,1fr);align-items:start;overflow:hidden;gap:var(--space-xs);padding:var(--space-sm);line-height:1.55}.guide-step-item+.guide-step-item{border-block-start:var(--rule-thin) solid var(--color-rule)}.guide-step-mark{display:grid;width:1.5rem;height:1.5rem;place-items:center;color:var(--color-muted);font-size:var(--text-xs);line-height:1}.guide-step-text{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere;white-space:normal;word-break:break-word}.guide-step-item[data-tone=main] .guide-step-mark,.guide-step-item[data-tone=main] .guide-step-text{color:var(--color-guide-main)}.guide-step-item[data-tone=favor] .guide-step-mark,.guide-step-item[data-tone=favor] .guide-step-text{color:var(--color-guide-favor)}.guide-step-item[data-tone=optional] .guide-step-mark,.guide-step-item[data-tone=optional] .guide-step-text{color:var(--color-guide-optional)}.guide-step-empty{margin:0;padding:var(--space-xl) var(--space-md);color:var(--color-muted);text-align:center}.guide-image-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;padding:0;background:var(--color-stage);color:var(--color-ink)}.guide-image-dialog::backdrop{background:var(--color-guide-backdrop)}.guide-image-shell{display:grid;width:100%;height:100%;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;background:var(--color-stage)}.guide-image-close{position:absolute;z-index:var(--z-raised);top:max(var(--space-xs),env(safe-area-inset-top));right:max(var(--space-xs),env(safe-area-inset-right));background:var(--color-guide-surface)}.guide-image-stage{position:relative;min-width:0;min-height:0;overflow:hidden;touch-action:none;cursor:grab;background:var(--color-stage-raised)}.guide-image-stage:active{cursor:grabbing}.guide-image-full{display:block;max-width:none;max-height:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.guide-image-toolbar{display:grid;grid-template-columns:auto minmax(8rem,min(34%,26rem)) auto auto;align-items:center;justify-content:center;gap:var(--space-2xs);padding-block:var(--space-2xs) max(var(--space-2xs),env(safe-area-inset-bottom));padding-inline:max(var(--space-xs),env(safe-area-inset-left)) max(var(--space-xs),env(safe-area-inset-right));border-block-start:var(--rule-thin) solid var(--color-guide-rule);background:var(--color-guide-surface)}.guide-image-page-select{width:100%;min-width:0;height:var(--size-control);border:var(--rule-thin) solid var(--color-guide-rule);border-radius:var(--radius-control);padding-inline:var(--space-xs);background:var(--color-guide-raised);color:var(--color-ink);cursor:pointer;transition:background-color var(--dur-short) var(--ease-out)}.guide-image-page-select:active{background:var(--color-guide-surface)}.guide-image-page-select:disabled{cursor:not-allowed;opacity:.55}.guide-image-page-select[data-state=loading]{cursor:wait}.guide-image-page-select[data-state=error]{border-color:var(--color-error)}.guide-image-page-select[data-state=success]{border-color:var(--color-success)}.guide-image-zoom{display:flex;min-width:0;gap:var(--space-2xs)}.guide-image-zoom button{min-width:var(--size-control)}@media(hover:hover)and (pointer:fine){.guide-follow:hover,.guide-route:hover,.guide-close:hover,.guide-route-toggle:hover,.guide-original:hover,.guide-image-close:hover,.guide-image-page-button:hover,.guide-image-zoom button:hover{background:var(--color-accent-hover);color:var(--color-accent-ink)}.guide-tab:hover{opacity:.76}.guide-select:hover,.guide-image-page-select:hover{background:var(--color-guide-surface);color:var(--color-ink)}}@media(min-width:40rem){.guide-dialog{width:min(var(--size-guide-sheet),72%)}}@media(max-height:30rem){.guide-header{display:none}.guide-current{padding-block:var(--space-2xs)}}@media(max-width:40rem){.guide-header{display:none}}@media(max-width:34rem){.guide-step-group{grid-template-columns:clamp(4.5rem,22%,5.75rem) minmax(0,1fr)}.guide-image-toolbar{grid-template-columns:auto minmax(6rem,34%) auto auto;gap:var(--space-3xs);padding-inline:var(--space-2xs)}.guide-image-zoom{grid-column:auto;gap:var(--space-3xs)}.guide-image-zoom button{min-width:2rem;padding-inline:var(--space-2xs)}.guide-image-page-button{padding-inline:var(--space-xs)}}@media(orientation:portrait)and (pointer:coarse){html,body,.game-shell{width:100dvw;height:100dvh;min-height:0}.game-shell{padding:0}.stage-frame{position:fixed;top:50%;left:50%;width:min(100dvh,calc(100dvw * 16 / 9));height:auto;max-height:none;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center}.guide-dialog{inset:50% auto auto 50%;width:min(100dvh,calc(100dvw * 16 / 9));height:min(100dvw,56.25dvh);transform:translate(-50%,-50%) rotate(90deg);transform-origin:center}.guide-dialog .guide-sheet{width:min(72%,var(--size-guide-sheet));margin-inline-start:auto}.game-menu-dialog{position:fixed;inset:50% auto auto 50%;width:min(100dvh,calc(100dvw * 16 / 9));height:auto;max-height:none;margin:0;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center}.player-dialog:not(.game-menu-dialog){position:fixed;inset:50% auto auto 50%;width:min(92dvh,50rem);max-height:92dvw;margin:0;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center}.player-dialog:not(.game-menu-dialog) .player-sheet{width:100%;max-height:92dvw}.guide-image-dialog{inset:50% auto auto 50%;width:100dvh;height:100dvw;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center}}@media(pointer:coarse){.guide-header{display:none}.action-button{min-height:3rem}.guide-close,.guide-follow,.guide-route,.guide-route-toggle,.guide-original,.guide-select,.guide-image-close,.guide-image-page-button,.guide-image-page-select,.guide-image-zoom button{min-height:var(--size-control)}}@supports (-webkit-touch-callout: none){@media(pointer:coarse){.guide-controls{padding-block-start:max(1.5rem,env(safe-area-inset-top))}}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:var(--dur-micro)!important;animation-iteration-count:1!important;transition-duration:var(--dur-micro)!important}.action-button:hover,.action-button:active,.guide-tab,.guide-sheet,.guide-close,.guide-follow,.guide-route,.guide-route-toggle,.guide-original,.guide-image-close,.guide-image-page-button,.guide-image-zoom button{transform:none}}
