.stage-letterbox{pointer-events:none;z-index:40;opacity:0;transition:opacity .4s;position:fixed;inset:0}.stage-letterbox.is-on{opacity:1}.stage-letterbox:before,.stage-letterbox:after{content:"";background:#050506;height:10vh;position:absolute;left:0;right:0}.stage-letterbox:before{top:0}.stage-letterbox:after{bottom:0}.stage-tint{pointer-events:none;z-index:39;transition:background-color .6s,opacity .6s;position:fixed;inset:0}.stage-tint[data-preset=sepia]{background:#69482247}.stage-tint[data-preset=night]{background:#08123a57}.stage-tint[data-preset=dusk]{background:#5c244a33}.stage-tint[data-preset=dawn]{background:#ffc46829}.stage-tint[data-preset=pale]{background:#e2efff4d}.stage-tint[data-preset=red]{background:#820c1242}.stage-tint[data-preset=twilight]{background:#2e22683d}.stage-emote{color:#fff5c7;text-shadow:0 2px 4px #000;pointer-events:none;font-size:1.35rem;font-weight:800;position:absolute;transform:translate(-50%,-100%)}.stage-bubble{border:1px solid var(--gold-faint);color:#fff;text-shadow:0 1px 2px #000;pointer-events:none;white-space:pre-wrap;background:#050814e6;border-radius:.45em;max-width:18em;padding:.25em .55em;position:absolute;transform:translate(-50%,-100%)}.stage-flash{z-index:90;pointer-events:none;opacity:0;transition:opacity .18s;position:fixed;inset:0}.codex-view{grid-template-columns:minmax(12em,.8fr) minmax(16em,1.4fr);gap:.7em;max-height:100%;padding:.7em;display:grid;overflow:auto}.codex-head{grid-column:1/-1;justify-content:flex-end;display:flex}.codex-detail{border:1px solid var(--gold-faint);white-space:pre-line;background:#060c2080;border-radius:.5em;padding:.8em;line-height:1.7}.codex-detail h2{color:var(--gold-hi);margin-top:0}.codex-source{color:var(--text-dim);font-size:.85em}.recap-list{flex-direction:column;gap:.55em;display:flex}.recap-row{border:1px solid var(--gold-faint);cursor:pointer;background:#060c2073;border-radius:.5em;padding:.65em .8em}.recap-row h3{color:var(--gold-hi);margin:0 0 .25em}.recap-row p{white-space:pre-line;margin:0;line-height:1.6}@media (max-width:640px){.codex-view{grid-template-columns:1fr}}:root{--navy-950:#04070f;--navy-900:#070d1f;--navy-800:#0b1430;--navy-700:#12204a;--navy-600:#1b2f66;--navy-500:#28438a;--gold:#d9b45a;--gold-hi:#f3d98b;--gold-lo:#8a6a2a;--gold-line:#d9b45ad9;--gold-faint:#d9b45a52;--text:#f4f1e8;--text-dim:#aeb7d2;--text-mute:#7d87a6;--text-off:#5f6886;--hp:#5fd47e;--hp-lo:#2e8a4a;--mp:#5aaaf2;--mp-lo:#2a5fa8;--kp:#f2b64a;--kp-lo:#a8702a;--danger:#ff5d5d;--heal:#72ffa3;--crit:#ffd84a;--buff:#8fd6ff;--win-bg:linear-gradient(180deg, #18295ced 0%, #0d1738f0 55%, #080e24f2 100%);--win-shadow:0 0 0 1px #0000008c, 0 .5em 1.8em #00000080, inset 0 0 1.6em #608cff29, inset 0 1px 0 #fff0c81f;--radius:.55em;--font-body:"Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Hiragino Sans", "Yu Gothic UI", "Meiryo", system-ui, sans-serif;--font-display:"Cinzel", "Trajan Pro", "Times New Roman", "Yu Mincho", serif;--ui-scale:1;--ui-font:clamp(14px, calc(14.5px * var(--ui-scale)), 44px);--lm-row-h:2.25em;--dlg-h:8.4em;--dlg-bottom:calc(.9em + var(--safe-b));--stick-w:clamp(116px, 24vmin, 180px);--pad:clamp(64px, 13vmin, 92px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--navy-950);width:100%;height:100%;color:var(--text);font-family:var(--font-body);overscroll-behavior:none;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;margin:0;overflow:hidden}#app{background:radial-gradient(ellipse at 50% 40%, var(--navy-800), var(--navy-950) 75%);position:fixed;inset:0;overflow:hidden}#gl{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}#ui,.ui-root{pointer-events:none;font-family:var(--font-body);font-size:var(--ui-font);color:var(--text);-webkit-user-select:none;user-select:none;font-feature-settings:"palt" 1;text-rendering:optimizelegibility;line-height:1.5;position:absolute;inset:0;overflow:hidden}.ui-layer{pointer-events:none;position:absolute;inset:0}.layer-dialogue{overflow:hidden}.layer-hud{z-index:10}.layer-world{z-index:20}.layer-cg{z-index:30}.layer-dialogue{z-index:40}.layer-window{z-index:50}.layer-toast{z-index:60}.layer-flash{z-index:70}.layer-touch{z-index:80}.layer-fade{z-index:90}.layer-dialogue:has(.dlg.open,.dlg-narration.open){pointer-events:auto;cursor:pointer}.layer-hud>*,.layer-window>*{pointer-events:auto}.layer-hud>.hud-passive{pointer-events:none}img{-webkit-user-drag:none}.boot-error{max-width:90vw;color:var(--text);background:var(--navy-800);border:1px solid var(--danger);font:16px/1.6 var(--font-body);z-index:1000;border-radius:.5em;padding:1em 1.4em;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.ui-window,.ui-panel,.dlg,.toast{color:var(--text);background:var(--win-bg);border:1px solid var(--gold-line);border-radius:var(--radius);box-shadow:var(--win-shadow);-webkit-backdrop-filter:blur(3px)saturate(1.1);position:relative}.ui-window:before,.ui-panel:before,.dlg:before{content:"";border-radius:calc(var(--radius) - 3px);pointer-events:none;border:1px solid #f3d98b29;position:absolute;inset:3px}.ui-window:after,.dlg:after{content:"";pointer-events:none;background:radial-gradient(circle, var(--gold-hi) 0 1.6px, transparent 2.4px) top left / 8px 8px no-repeat, radial-gradient(circle, var(--gold-hi) 0 1.6px, transparent 2.4px) top right / 8px 8px no-repeat, radial-gradient(circle, var(--gold-hi) 0 1.6px, transparent 2.4px) bottom left / 8px 8px no-repeat, radial-gradient(circle, var(--gold-hi) 0 1.6px, transparent 2.4px) bottom right / 8px 8px no-repeat;opacity:.9;position:absolute;inset:-3px}.ui-window{min-width:8em;max-width:calc(100% - 16px - var(--safe-l) - var(--safe-r));max-height:calc(100% - 16px - var(--safe-t) - var(--safe-b));pointer-events:auto;flex-direction:column;animation:.16s ease-out win-in;display:flex;position:absolute}.ui-window.ui-center{animation-name:win-in-center;top:50%;left:50%;transform:translate(-50%,-50%)}.ui-window-title{letter-spacing:.08em;color:var(--gold-hi);text-shadow:0 1px #0009,0 0 .6em #d9b45a59;border-bottom:1px solid #0000;border-image:linear-gradient(90deg, transparent, var(--gold-line) 15%, var(--gold-line) 85%, transparent) 1;white-space:nowrap;text-overflow:ellipsis;flex:none;padding:.5em 1.1em .45em;font-size:1.02em;font-weight:700;overflow:hidden}.ui-window-body{scrollbar-width:thin;scrollbar-color:var(--gold-lo) transparent;flex:auto;min-height:0;padding:.35em;position:relative;overflow:auto}.ui-backdrop{pointer-events:auto;background:radial-gradient(#0408162e,#0408166b);animation:.15s ease-out fade-in;position:absolute;inset:0}@keyframes win-in{0%{opacity:0;transform:translateY(.4em)scale(.98)}to{opacity:1;transform:none}}@keyframes win-in-center{0%{opacity:0;transform:translate(-50%,calc(.4em - 50%))scale(.98)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.list-menu{flex-direction:column;min-width:0;min-height:0;display:flex}.lm-items{min-height:0;max-height:calc(var(--lm-rows,8) * var(--lm-row-h) + .4em);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--gold-lo) transparent;-webkit-overflow-scrolling:touch;flex:auto;margin:0;padding:.2em;list-style:none;overflow:hidden auto}.lm-items.lm-grid{grid-template-columns:repeat(var(--lm-cols,2), minmax(0, 1fr));gap:.1em .3em;display:grid}.lm-item{min-height:var(--lm-row-h);cursor:pointer;white-space:nowrap;color:var(--text);border-radius:.38em;align-items:center;gap:.55em;padding:.3em .9em .3em 1.7em;transition:background-color 80ms,color 80ms;display:flex;position:relative}.lm-item .lm-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.lm-item.selected{background:linear-gradient(90deg,#d9b45a4d,#d9b45a1a 65%,#d9b45a05);box-shadow:inset 0 0 0 1px #f3d98b47}.list-menu:not(.focused) .lm-item.selected{box-shadow:none;background:#d9b45a1a}.list-menu.focused .lm-item.selected:before{content:"";background:linear-gradient(135deg, var(--gold-hi), var(--gold) 55%, var(--gold-lo));clip-path:polygon(0 0,100% 50%,0 100%);filter:drop-shadow(0 0 .25em #f3d98bcc);width:.62em;height:.72em;margin-top:-.36em;animation:.8s ease-in-out infinite cursor-bob;position:absolute;top:50%;left:.55em}.lm-item.disabled,.lm-item.disabled .lm-right{color:var(--text-off)}.lm-icon{object-fit:contain;filter:drop-shadow(0 1px 1px #0009);flex:none;width:1.6em;height:1.6em}.lm-right{color:var(--text-dim);font-variant-numeric:tabular-nums;margin-left:auto;padding-left:1em}.lm-empty{color:var(--text-mute);padding:.5em 1em;list-style:none}.lm-desc{border-top:1px solid var(--gold-faint);min-height:3.1em;color:var(--text-dim);white-space:normal;overscroll-behavior:contain;overflow-wrap:anywhere;flex:none;max-height:min(9em,24vh);margin:.2em .1em 0;padding:.5em .9em .45em;font-size:.9em;line-height:1.55;overflow-y:auto}.lm-desc:empty:before{content:" "}@keyframes cursor-bob{0%,to{transform:translate(0)}50%{transform:translate(.18em)}}.lm-items::-webkit-scrollbar{width:6px}.ui-window-body::-webkit-scrollbar{width:6px}.lm-items::-webkit-scrollbar-thumb{background:linear-gradient(var(--gold), var(--gold-lo));border-radius:3px}.ui-window-body::-webkit-scrollbar-thumb{background:linear-gradient(var(--gold), var(--gold-lo));border-radius:3px}.toast-stack{top:calc(.9em + var(--safe-t));flex-direction:column;align-items:center;gap:.45em;width:max-content;max-width:calc(100% - 24px);display:flex;position:absolute;left:50%;transform:translate(-50%)}.toast{text-align:center;white-space:pre-wrap;opacity:0;border-radius:999px;padding:.5em 1.4em;font-size:.95em;transition:opacity .22s,transform .22s;transform:translateY(-.6em)}.toast.show{opacity:1;transform:none}.toast.hide{opacity:0;transform:translateY(-.4em)}.ui-banner{text-align:center;opacity:0;background:linear-gradient(90deg,#0000,#040816a8 20% 80%,#0000);flex-direction:column;align-items:center;gap:.35em;padding:1.2em 1em;transition:opacity .6s;display:flex;position:absolute;top:36%;left:0;right:0}.ui-banner.show{opacity:1}.ui-banner.hide{opacity:0}.ui-banner-sub{font-family:var(--font-display);letter-spacing:.4em;color:var(--gold);text-transform:uppercase;font-size:.95em}.ui-banner-title{letter-spacing:.12em;background:linear-gradient(180deg, #fff6d6, var(--gold-hi) 45%, var(--gold) 70%, var(--gold-lo));color:#0000;filter:drop-shadow(0 2px 3px #000000b3);-webkit-background-clip:text;background-clip:text;font-size:2.1em;font-weight:700}.ui-banner-line{background:linear-gradient(90deg, transparent, var(--gold-hi), transparent);width:0;height:1px;transition:width 1.2s .15s}.ui-banner.show .ui-banner-line{width:min(28em,80%)}.ui-partcard{text-align:center;opacity:0;pointer-events:none;background:#000;flex-direction:column;justify-content:center;align-items:center;gap:.5em;padding:1em;transition:opacity .8s;display:flex;position:absolute;inset:0}.ui-partcard.show{opacity:1}.ui-partcard.hide{opacity:0}.ui-partcard-sub{font-family:var(--font-display);letter-spacing:.5em;color:var(--gold);padding-left:.5em;font-size:1.25em}.ui-partcard-title{letter-spacing:.16em;background:linear-gradient(180deg, #fff6d6, var(--gold-hi) 45%, var(--gold) 70%, var(--gold-lo));color:#0000;filter:drop-shadow(0 2px 4px #000c);-webkit-background-clip:text;background-clip:text;font-size:min(3.2em,9vw);font-weight:700}.ui-partcard-line{background:linear-gradient(90deg, transparent, var(--gold-hi), transparent);width:0;height:1px;transition:width 1.6s .2s}.ui-partcard.show .ui-partcard-line{width:min(36em,86%)}.menu-window{min-width:11em}.confirm-window{min-width:15em;max-width:min(30em,100% - 24px)}.confirm-text{white-space:pre-wrap;text-align:center;padding:.85em 1.2em .55em;line-height:1.7}.confirm-list .lm-items{justify-content:center;gap:.6em;padding-bottom:.4em;display:flex}.confirm-list .lm-item{justify-content:center;min-width:6em}.ui-window.choice-window.ui-center{top:auto;left:auto;right:max(calc(50% - 31em), calc(12px + var(--safe-r)));bottom:calc(var(--dlg-bottom) + var(--dlg-h) + 1.5em);min-width:12em;animation-name:win-in;transform:none}.dlg{left:50%;bottom:calc(var(--dlg-bottom) + .8em + 4px);width:min(calc(100% - 20px - var(--safe-l) - var(--safe-r)), 62em);height:min(var(--dlg-h), calc(100% - var(--dlg-bottom) - 4px - 1.2em));min-height:0;max-height:calc(100% - var(--dlg-bottom) - 4px - 1.2em);pointer-events:none;opacity:0;visibility:hidden;align-items:stretch;transition:opacity .18s,transform .22s,bottom .22s,visibility 0s linear .22s;display:flex;position:absolute;transform:translate(-50%)}.dlg.open{pointer-events:auto;opacity:1;visibility:visible;bottom:var(--dlg-bottom);transition:opacity .18s,transform .22s,bottom .22s,visibility;transform:translate(-50%)}.dlg-face{flex:none;width:10em;display:none;position:relative}.dlg.has-face .dlg-face{display:block}.dlg-face-img{object-fit:contain;object-position:bottom left;filter:drop-shadow(0 .25em .6em #0009);width:auto;max-width:11.5em;height:12.5em;position:absolute;bottom:0;left:.3em;-webkit-mask-image:linear-gradient(#000 82%,#0000 100%);mask-image:linear-gradient(#000 82%,#0000 100%)}.dlg-face.pop .dlg-face-img{animation:.28s cubic-bezier(.2,.9,.3,1.2) face-in}@keyframes face-in{0%{opacity:0;transform:translate(-.8em)}to{opacity:1;transform:none}}.dlg-main{flex-direction:column;flex:auto;min-width:0;min-height:0;padding:1.15em 1.6em 1.25em;display:flex;position:relative;overflow:visible}.dlg.has-face .dlg-main{padding-left:.6em}.dlg-name{letter-spacing:.1em;color:var(--gold-hi);text-shadow:0 1px #000000b3;white-space:nowrap;background:linear-gradient(180deg, var(--navy-600), var(--navy-800));border:1px solid var(--gold-line);border-radius:.35em;padding:.12em 1.1em .16em;font-size:1.02em;font-weight:700;position:absolute;top:0;left:1.1em;transform:translateY(-58%);box-shadow:0 .2em .6em #00000073,inset 0 0 .6em #d9b45a2e}.dlg.has-face .dlg-name{left:.2em}.dlg-name.empty{display:none}.dlg-text{letter-spacing:.03em;text-shadow:0 1px 1px #000000bf;white-space:normal;overflow-wrap:anywhere;line-break:strict;touch-action:pan-y;overscroll-behavior:contain;scrollbar-width:thin;flex:auto;min-height:0;font-size:1.12em;line-height:1.78;overflow-y:auto}.dlg-text .ch,.dlg-narration-text .ch{opacity:0}.dlg-text .ch.on,.dlg-narration-text .ch.on{opacity:1;transition:opacity 70ms linear}.dlg-next{opacity:0;background:linear-gradient(180deg, var(--gold-hi), var(--gold));clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 0 .3em #f3d98be6);pointer-events:none;width:.8em;height:.62em;position:absolute;bottom:.6em;right:1.1em}.dlg-next.show{opacity:1;animation:.9s ease-in-out infinite next-bob}@keyframes next-bob{0%,to{transform:translateY(0)}50%{transform:translateY(.25em)}}.dlg-narration{pointer-events:none;opacity:0;visibility:hidden;background:linear-gradient(90deg,#0000,#030610bd 16% 84%,#0000);flex-direction:column;align-items:center;padding:1.8em 1.2em 2.1em;transition:opacity .3s,visibility 0s linear .3s;display:flex;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.dlg-narration:before,.dlg-narration:after{content:"";background:linear-gradient(90deg, transparent, var(--gold-faint), transparent);height:1px;position:absolute;left:18%;right:18%}.dlg-narration:before{top:.5em}.dlg-narration:after{bottom:.5em}.dlg-narration.open{pointer-events:auto;opacity:1;visibility:visible;transition:opacity .3s,visibility}.dlg-narration-text{letter-spacing:.08em;text-align:center;text-shadow:0 1px 2px #000000e6;overflow-wrap:anywhere;max-width:min(40em,100%);font-size:1.16em;line-height:2}.dlg-narration .dlg-next{margin-top:.7em;position:relative;bottom:auto;right:auto}.bg-view{opacity:0;visibility:hidden;transition:opacity var(--bg-fade,.6s) ease, visibility 0s linear var(--bg-fade,.6s);background:#04060cf0;position:absolute;inset:0;overflow:hidden}.bg-view.show{opacity:1;visibility:visible;transition:opacity var(--bg-fade,.6s) ease, visibility 0s}.bg-img{object-fit:cover;opacity:0;filter:brightness(.86)saturate(1.02);width:100%;height:100%;transition:opacity var(--bg-fade,.6s) ease;position:absolute;inset:0}.bg-img.on{opacity:1;animation:40s ease-out forwards bg-drift}@keyframes bg-drift{0%{transform:scale(1.02)}to{transform:scale(1.06)translate(-.6%)}}.bg-shade{pointer-events:none;background:linear-gradient(#0000 45%,#00000038 66%,#0000009e 100%),radial-gradient(at 50% 42%,#0000 55%,#00000059 100%);position:absolute;inset:0}.cg-view{opacity:0;visibility:hidden;transition:opacity var(--cg-fade,.7s) ease, visibility 0s linear var(--cg-fade,.7s);background:#000;position:absolute;inset:0;overflow:hidden}.cg-view.show{opacity:1;visibility:visible;transition:opacity var(--cg-fade,.7s) ease, visibility 0s}.cg-bg{filter:blur(26px)brightness(.5)saturate(1.1);background-position:50%;background-size:cover;position:absolute;inset:-6%}.cg-img{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.cg-view.show .cg-img{animation:24s ease-out forwards cg-drift}@keyframes cg-drift{0%{transform:scale(1)}to{transform:scale(1.045)}}.dmg-num{font-family:var(--font-display);color:#fff;white-space:nowrap;pointer-events:none;text-shadow:0 0 2px #000,1px 1px #1a0f05,-1px 1px #1a0f05,1px -1px #1a0f05,-1px -1px #1a0f05,0 2px #1a0f05,0 .15em .4em #000000b3;will-change:transform, opacity;flex-direction:column;align-items:center;font-size:1.9em;font-weight:900;line-height:1;animation:1.15s cubic-bezier(.2,.8,.3,1) both dmg-pop;display:flex;position:absolute;transform:translate(-50%,-100%)}.dmg-num.crit{color:var(--crit);font-size:2.55em;animation:1.45s cubic-bezier(.2,.8,.3,1) both dmg-pop-crit}.dmg-num.heal{color:var(--heal)}.dmg-num.miss{letter-spacing:.12em;color:#cfd6e6;font-size:1.35em}.dmg-cap{letter-spacing:.22em;color:#fff3b0;margin-bottom:.12em;font-size:.4em}@keyframes dmg-pop{0%{opacity:0;transform:translate(-50%,-60%)scale(.4)}12%{opacity:1;transform:translate(-50%,-125%)scale(1.25)}24%{transform:translate(-50%,-112%)scale(1)}72%{opacity:1;transform:translate(-50%,-150%)scale(1)}to{opacity:0;transform:translate(-50%,-185%)scale(.95)}}@keyframes dmg-pop-crit{0%{opacity:0;transform:translate(-50%,-60%)scale(.3)rotate(-6deg)}10%{opacity:1;transform:translate(-50%,-130%)scale(1.45)rotate(2deg)}20%{transform:translate(-50%,-115%)scale(1)rotate(0)}28%{transform:translate(-50%,-118%)scale(1.08)}76%{opacity:1;transform:translate(-50%,-150%)scale(1)}to{opacity:0;transform:translate(-50%,-185%)scale(.95)}}.screen-flash{pointer-events:none;position:absolute;inset:0}.fade-overlay{opacity:0;pointer-events:none;background:#000;position:absolute;inset:0}.fade-overlay.blocking{pointer-events:auto}.touch-controls{pointer-events:none;display:none;position:absolute;inset:0}.touch-controls.visible{display:block}.touch-stick{left:calc(16px + var(--safe-l));bottom:calc(16px + var(--safe-b));width:var(--stick-w);aspect-ratio:1;pointer-events:auto;touch-action:none;opacity:.72;background:radial-gradient(circle,#1b2f6647 0 40%,#0b143080 72%);border:2px solid #d9b45a8c;border-radius:50%;transition:opacity .12s;position:absolute;box-shadow:inset 0 0 1.2em #00000073,0 0 0 1px #0006}.touch-stick.active{opacity:1}.touch-knob{aspect-ratio:1;background:radial-gradient(circle at 36% 30%, #fff1c2, var(--gold-hi) 25%, var(--gold) 55%, var(--gold-lo));pointer-events:none;border-radius:50%;width:44%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 .2em .5em #0000008c,inset 0 -.2em .4em #0000004d}.touch-btn{width:var(--pad);height:var(--pad);pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;font-family:var(--font-display);font-weight:700;font-size:calc(var(--pad) * .36);color:var(--gold-hi);text-shadow:0 1px 2px #000c;border:2px solid var(--gold-line);opacity:.82;background:radial-gradient(circle at 36% 30%,#3452a8f2,#0d1738f2 70%);border-radius:50%;padding:0;transition:transform 60ms,opacity 60ms;position:absolute;box-shadow:0 .25em .7em #00000080,inset 0 0 .8em #6ea0ff40}:is(body:has(.dlg.open) .tw-keys,body:has(.dlg.open) .dg-keys,body:has(.dlg.open) .wm-keys){visibility:hidden}body:has(.layer-window .ui-window) .touch-stick{visibility:hidden}body:has(.layer-window .ui-window) .touch-btn:not(.down){opacity:.45}.touch-btn.down{opacity:1;background:radial-gradient(circle at 36% 30%,#5a78d2,#14224e 70%);transform:scale(.9)}.touch-a{right:calc(18px + var(--safe-r));bottom:calc(18px + var(--pad) * .62 + var(--safe-b))}.touch-b{right:calc(18px + var(--pad) * 1.12 + var(--safe-r));bottom:calc(14px + var(--safe-b))}body.touch-ui.ui-portrait{--dlg-bottom:calc(var(--stick-w) + 26px + var(--safe-b))}body.touch-ui:not(.ui-portrait) .dlg{left:calc(var(--stick-w) + 26px + var(--safe-l));right:calc(var(--pad) * 2.12 + 30px + var(--safe-r));width:auto;transform:none}body.touch-ui:not(.ui-portrait) .dlg.open{transform:none}body.touch-ui:not(.ui-portrait) .ui-window.choice-window.ui-center{right:calc(var(--pad) * 2.12 + 30px + var(--safe-r))}body.touch-ui .lm-item{min-height:max(var(--lm-row-h), 44px)}.ui-panel{pointer-events:auto;padding:.6em .9em}.ui-btn{min-height:2.2em;font:inherit;letter-spacing:.05em;color:var(--text);background:linear-gradient(180deg, var(--navy-600), var(--navy-800));border:1px solid var(--gold-line);cursor:pointer;pointer-events:auto;border-radius:.4em;justify-content:center;align-items:center;gap:.4em;padding:.3em 1.1em;font-weight:700;transition:filter .1s,transform 60ms;display:inline-flex;box-shadow:0 .15em .4em #00000073,inset 0 1px #fff0c81f}.ui-btn:hover{filter:brightness(1.18)}.ui-btn:active{transform:translateY(1px)}.ui-btn:disabled,.ui-btn.disabled{color:var(--text-off);filter:grayscale(.6);cursor:default}.ui-btn:focus-visible,.lm-item:focus-visible{outline:2px solid var(--gold-hi);outline-offset:2px}.gauge{background:#0000008c;border:1px solid #d9b45a73;border-radius:.3em;height:.55em;position:relative;overflow:hidden}.gauge-fill{border-radius:inherit;background:linear-gradient(180deg, #fff 0%, var(--g-hi,var(--hp)) 30%, var(--g-lo,var(--hp-lo)) 100%);width:100%;transition:width .35s;position:absolute;inset:0 auto 0 0}.gauge-lag{background:#ff5a5abf;transition:width .8s .25s;position:absolute;inset:0 auto 0 0}.gauge-text{font-size:.75em;position:absolute;top:50%;right:.3em;transform:translateY(-50%)}.gauge.hp{--g-hi:var(--hp);--g-lo:var(--hp-lo)}.gauge.mp{--g-hi:var(--mp);--g-lo:var(--mp-lo)}.gauge.kp{--g-hi:var(--kp);--g-lo:var(--kp-lo)}.gauge.low{--g-hi:var(--danger);--g-lo:#8a2020}.ui-tabs{border-bottom:1px solid var(--gold-faint);scrollbar-width:none;gap:.25em;padding:.25em .4em 0;display:flex;overflow-x:auto}.ui-tab{color:var(--text-dim);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-bottom:none;border-radius:.4em .4em 0 0;flex:none;padding:.3em 1em}.ui-tab.active{color:var(--gold-hi);border-color:var(--gold-faint);background:linear-gradient(#d9b45a38,#0000)}.ui-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.ui-table th,.ui-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #d9b45a1f;padding:.22em .6em}.ui-table th{color:var(--gold);font-weight:500}.ui-table td.num,.ui-table th.num{text-align:right}.ui-face{object-fit:cover;object-position:50% 15%;background:var(--navy-700);border:1px solid var(--gold-line);border-radius:50%;width:3.2em;height:3.2em}kbd,.key{min-width:1.6em;font-family:var(--font-display);text-align:center;color:var(--gold-hi);border:1px solid var(--gold-faint);background:#00000059;border-bottom-width:2px;border-radius:.3em;padding:.02em .4em;font-size:.82em;font-weight:700;display:inline-block}.num,.font-display{font-family:var(--font-display);font-variant-numeric:lining-nums tabular-nums}.gold{color:var(--gold-hi)}.dim{color:var(--text-dim)}.mute{color:var(--text-mute)}.stat-up{color:var(--heal)}.stat-down{color:var(--danger)}.hidden{display:none!important}.ui-bubble{color:#1a1a24;border:2px solid var(--gold);pointer-events:none;background:#fbf7ea;border-radius:.9em;max-width:18em;padding:.45em .9em;animation:.15s ease-out win-in;position:absolute;transform:translate(-50%,-100%);box-shadow:0 .3em .8em #00000073}.ui-bubble:after{content:"";background:var(--gold);clip-path:polygon(0 0,100% 0,50% 100%);width:.9em;height:.6em;margin-left:-.45em;position:absolute;bottom:-.55em;left:50%}.ui-bubble .bubble-title{color:#7a1c1c;font-weight:700;display:block}.test-hud{left:calc(10px + var(--safe-l));top:calc(10px + var(--safe-t));pointer-events:none;max-width:min(23em,100% - 20px);padding:.6em .9em .7em;font-size:.82em;line-height:1.6;position:absolute}.test-hud h1{font-family:var(--font-display);letter-spacing:.08em;color:var(--gold-hi);margin:0 0 .25em;font-size:1.15em;font-weight:700}.test-hud ul{margin:0;padding:0;list-style:none}.test-hud li{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.test-hud .test-stat{color:var(--text-mute);font-family:var(--font-display);margin-top:.35em;font-size:.9em}.test-buttons{right:calc(10px + var(--safe-r));top:calc(10px + var(--safe-t));flex-wrap:wrap;justify-content:flex-end;gap:.35em;max-width:50%;display:flex;position:absolute}.test-buttons .ui-btn{font-size:.82em}body.ui-compact{--lm-row-h:2.1em;--dlg-h:7.6em}body.ui-compact .dlg-face{width:7em}body.ui-compact .dlg-face-img{max-width:8.4em;height:9.2em}body.ui-compact .dlg-main{padding:1em 1em 1.1em}body.ui-compact .dlg-text{font-size:1.04em;line-height:1.7}body.ui-compact .test-hud{font-size:.74em}body.ui-portrait .dlg.has-face .dlg-face{width:7em;height:0;position:absolute;bottom:calc(100% - .7em);left:.4em}body.ui-portrait .dlg-face-img{max-width:8em;height:8.5em;-webkit-mask-image:none;mask-image:none}body.ui-portrait .dlg.has-face .dlg-main{padding-left:1.1em}body.ui-portrait .dlg.has-face .dlg-name{left:7.6em}body.ui-portrait .ui-window.choice-window.ui-center{right:calc(10px + var(--safe-r))}body.ui-portrait .test-buttons{flex-direction:column;align-items:stretch;max-width:30%}@media (max-width:420px){.lm-item{padding-left:1.5em;padding-right:.6em}.confirm-window{width:calc(100% - 24px);min-width:0}.ui-banner-title,.dmg-num{font-size:1.6em}}@media (min-width:2200px) and (min-height:1200px){.ui-window,.ui-panel,.dlg{border-width:2px}}@media (hover:hover){.lm-item:not(.selected):not(.disabled):hover{background:#d9b45a14}}@media (prefers-reduced-motion:reduce){.ui-window,.ui-backdrop,.dlg-face.pop .dlg-face-img,.cg-view.show .cg-img,.bg-img.on,.list-menu.focused .lm-item.selected:before,.dlg-next.show{animation:none!important}.dlg,.toast,.ui-banner,.ui-banner-line{transition-duration:10ms!important}}
