:root{--board-last-move:#f2d04a73;--board-selected:#edbf2aad;--board-check:#e3262b;--board-fog-hatch:#ffffff17;--board-fog-edge:#101114;--board-invalid:#d2302a66;--board-invalid-mark:#b42318;--board-coord-on-fog:#ffffffa6;--og-ice-core:#fff;--og-ice-1:#c9daf3;--og-ice-2:#9cb5db;--og-ice-3:#7392be;--og-ice-4:#405a81;--og-title-size:84px;--og-tag-size:22px;--og-desc-size:31px;--og-safe:60px;--board-capturer:#e02828;--board-burn:#c8621e73;--board-knock-blocked:#e3a33b59;--board-knock-arrow:#8f5b00;--card-fire:#e36d07;--card-ice:#6a8cc2;--card-knockback:#8a8f99;--card-reveal:#c9a040;--card-ink:#14110e;--status-plate:#121314d9;--status-hp-on:#f3f0e9;--status-hp-off:#f3f0e940;--status-damage:#e5484d;--status-damage-ink:#fff;--status-edge:#ffffffeb;--status-frozen:#4f86c6;--status-shield:#c8621e;--status-ink:#fff;--piece-white-fill:#fbfaf6;--piece-white-stroke:#2a2a2a;--piece-black-fill:#2c2f38;--piece-black-stroke:#f1efe9;--side-white:#fbfaf6;--side-black:#2c2f38;--side-edge:#00000059;--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", "Segoe UI Mono", Menlo, Consolas, "Roboto Mono", monospace;--font-jp:system-ui, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", Meiryo, "Noto Sans JP", sans-serif;--text-2xs:11px;--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:20px;--text-xl:28px;--text-clock:30px;--weight-regular:400;--weight-strong:600;--line-tight:1.25;--line-body:1.5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-pill:4px;--control-height-sm:28px;--border-width:1px;--focus-width:2px;--focus-gap:2px;--icon-size:18px;--side-column:360px;--side-column-compact:300px;--content-max:1040px;--motion-ui:.12s;--motion-splash:.16s;--motion-rise:4px;--motion-fast:.12s;--motion-normal:.18s;--motion-piece:var(--motion-fast);--motion-burn:.9s;--motion-attention:.7s;--ease-out:cubic-bezier(.2, .7, .3, 1);--z-splash:15;--z-dialog:20;--z-toast:25;--z-cover:30}:root[data-motion=normal]{--motion-piece:var(--motion-normal)}:root[data-motion=none]{--motion-piece:0s;--motion-ui:0s;--motion-splash:0s;--motion-burn:0s;--motion-attention:0s}@media (prefers-reduced-motion:reduce){:root{--motion-piece:0s;--motion-ui:0s;--motion-splash:0s;--motion-burn:0s;--motion-attention:0s}}:root,[data-style=quiet]{--radius-control:4px;--radius-card:4px;--radius-dialog:6px;--control-height:36px;--control-pad-y:10px}[data-style=clear]{--radius-control:6px;--radius-card:6px;--radius-dialog:8px;--control-height:40px;--control-pad-y:12px}:root,[data-style=quiet]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f4f2ee;--surface:#faf9f7;--surface-raised:#fff;--surface-sunken:#edeae5;--border:#ddd9d2;--border-strong:#bdb8af;--ink:#1d1b18;--ink-muted:#6a655d;--ink-faint:#9a958c;--accent:#26221d;--accent-hover:#3a352f;--accent-ink:#faf9f7;--accent-subtle:#1d1b1812;--clock-bg:#0000;--clock-ink:#6a655d;--danger:#b42318;--danger-ink:#fff;--danger-subtle:#b4231814;--warning:#8f5b00;--warning-subtle:#8f5b0014;--hover-overlay:#0000000a;--press-overlay:#00000014;--elevation-shadow:#1d1b1824;--scrim:#1d1b1866}:root[data-theme=dark],[data-theme=dark] [data-style=quiet]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#1c1c1b;--surface:#232322;--surface-raised:#2b2b29;--surface-sunken:#191918;--border:#383734;--border-strong:#4e4c48;--ink:#eceae5;--ink-muted:#a29e96;--ink-faint:#6f6c66;--accent:#ece6da;--accent-hover:#fff;--accent-ink:#1c1c1b;--accent-subtle:#eceae517;--clock-bg:#0000;--clock-ink:#a29e96;--danger:#f0645a;--danger-ink:#1c1c1b;--danger-subtle:#f0645a24;--warning:#e3a33b;--warning-subtle:#e3a33b24;--hover-overlay:#ffffff0d;--press-overlay:#ffffff17;--elevation-shadow:#00000073;--scrim:#0000008c}[data-style=clear]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#eef0ee;--surface:#fff;--surface-raised:#fff;--surface-sunken:#e6e9e7;--border:#d3d7d4;--border-strong:#b5bbb7;--ink:#141816;--ink-muted:#58615c;--ink-faint:#8a928e;--accent:#23613f;--accent-hover:#1b5034;--accent-ink:#fff;--accent-subtle:#23613f17;--clock-bg:#e6e9e7;--clock-ink:#141816;--danger:#b42318;--danger-ink:#fff;--danger-subtle:#b4231814;--warning:#8f5b00;--warning-subtle:#8f5b0014;--hover-overlay:#0000000a;--press-overlay:#00000014;--elevation-shadow:#1d1b1824;--scrim:#1d1b1866}:root[data-theme=dark][data-style=clear],[data-theme=dark] [data-style=clear]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#191a1a;--surface:#212323;--surface-raised:#2a2c2c;--surface-sunken:#161717;--border:#363a39;--border-strong:#4c5150;--ink:#edefee;--ink-muted:#9ba39f;--ink-faint:#6c7370;--accent:#357a52;--accent-hover:#3a8257;--accent-ink:#fff;--accent-subtle:#357a5233;--clock-bg:#2a2c2c;--clock-ink:#edefee;--danger:#f0645a;--danger-ink:#1c1c1b;--danger-subtle:#f0645a24;--warning:#e3a33b;--warning-subtle:#e3a33b24;--hover-overlay:#ffffff0d;--press-overlay:#ffffff17;--elevation-shadow:#00000073;--scrim:#0000008c}:root,[data-board-theme=original]{--board-cell-light:#ece3d0;--board-cell-dark:#b48f63;--board-coord-on-light:#7a5a34;--board-coord-on-dark:#3a2914;--board-legal-dot:#281c1066;--board-capture-ring:#281c1066;--board-zone:#3c8cff33;--board-zone-edge:#2f6fd0;--board-fog:#474d5c}[data-board-theme=green]{--board-cell-light:#ebecd0;--board-cell-dark:#779556;--board-coord-on-light:#4f6b35;--board-coord-on-dark:#1d2a10;--board-legal-dot:#10240866;--board-capture-ring:#10240866;--board-zone:#3c78ff38;--board-zone-edge:#2f5fd0;--board-fog:#363b44}[data-board-theme=blue]{--board-cell-light:#eae9d2;--board-cell-dark:#4b7399;--board-coord-on-light:#3b6185;--board-coord-on-dark:#f2f1de;--board-legal-dot:#08162869;--board-capture-ring:#08162869;--board-zone:#ffa0283d;--board-zone-edge:#c77a12;--board-fog:#262931}[data-board-theme=purple]{--board-cell-light:#f0f1f0;--board-cell-dark:#8476ba;--board-coord-on-light:#5f5297;--board-coord-on-dark:#f7f7f7;--board-legal-dot:#1c123c66;--board-capture-ring:#1c123c66;--board-zone:#28aa6e3a;--board-zone-edge:#1e8655;--board-fog:#30343d}[data-board-theme=slate]{--board-cell-light:#8d9bb0;--board-cell-dark:#4e5b71;--board-coord-on-light:#1f2633;--board-coord-on-dark:#dde3ec;--board-legal-dot:#ffffff80;--board-capture-ring:#ffffff80;--board-zone:#ffaa3c45;--board-zone-edge:#e09a3a;--board-fog:#2a2e26}*{box-sizing:border-box}html,body{background:var(--background);color:var(--ink);margin:0}body{font-family:var(--font-ui);font-size:var(--text-md);line-height:var(--line-body);-webkit-font-smoothing:antialiased}:lang(ja) body,body:lang(ja){font-family:var(--font-jp)}button,input,select{font:inherit;color:inherit}h1,h2,h3,p{margin:0}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}:focus-visible{outline:var(--focus-width) solid var(--accent);outline-offset:var(--focus-gap)}[hidden]{display:none!important}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.icon{flex:none;display:block}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:calc(var(--control-pad-y) - var(--border-width)) var(--space-4);line-height:var(--space-4);border:var(--border-width) solid transparent;border-radius:var(--radius-control);font-size:var(--text-sm);font-weight:var(--weight-strong);color:var(--ink);cursor:pointer;transition:background-color var(--motion-ui), box-shadow var(--motion-ui);background:0 0;display:inline-flex}.btn .icon{width:16px;height:16px}.btn-block{width:100%;display:flex}.btn-sm{padding-block:calc((var(--control-height-sm) - var(--space-4)) / 2 - var(--border-width));padding-inline:var(--space-3)}.btn-lg{padding-block:calc(var(--control-pad-y) + 5px);font-size:var(--text-md)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-secondary{background:var(--surface-raised);border-color:var(--border-strong)}.btn-ghost{font-weight:var(--weight-regular);color:var(--ink-muted)}.btn-ghost:hover:not(:disabled){color:var(--ink)}.btn-danger{border-color:var(--danger);color:var(--danger)}.btn-danger-solid{background:var(--danger);border-color:var(--danger);color:var(--danger-ink)}.btn-secondary:hover:not(:disabled),.btn-ghost:hover:not(:disabled),.btn-danger:hover:not(:disabled){box-shadow:inset 0 0 0 100vmax var(--hover-overlay)}.btn:active:not(:disabled){box-shadow:inset 0 0 0 100vmax var(--press-overlay)}.btn:disabled,.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn{width:var(--control-height);height:var(--control-height);border-radius:var(--radius-control);color:var(--ink-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.icon-btn:hover:not(:disabled){background:var(--hover-overlay);color:var(--ink)}.icon-btn:active:not(:disabled){background:var(--press-overlay)}.icon-btn[aria-pressed=true]{color:var(--ink)}.icon-btn[aria-pressed=false],.icon-btn[aria-pressed=false]:hover:not(:disabled){color:var(--ink-muted)}.icon-btn .icon-slash{display:none}.icon-btn[aria-pressed=false] .icon-slash{display:block}[data-tooltip]:hover:after,[data-tooltip]:focus-visible:after{content:attr(data-tooltip);left:50%;bottom:calc(100% + var(--space-2));padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);background:var(--ink);color:var(--background);font-size:var(--text-xs);font-weight:var(--weight-regular);line-height:var(--line-tight);white-space:nowrap;pointer-events:none;z-index:var(--z-toast);position:absolute;transform:translate(-50%)}.toggle{border-radius:var(--radius-pill);background:var(--border-strong);cursor:pointer;width:36px;height:20px;transition:background-color var(--motion-ui);border:0;flex:none;padding:0;position:relative}.toggle-thumb{background:var(--surface-raised);width:14px;height:14px;transition:transform var(--motion-ui);border-radius:2px;position:absolute;top:3px;left:3px}.toggle[aria-checked=true]{background:var(--accent)}.toggle[aria-checked=true] .toggle-thumb{background:var(--accent-ink);transform:translate(16px)}.toggle:disabled{opacity:.4;cursor:not-allowed}.toggle-row{align-items:center;gap:var(--space-3);color:var(--ink-muted);font-size:var(--text-sm);display:flex}.segmented{border-radius:var(--radius-control);background:var(--surface-sunken);flex-wrap:wrap;gap:2px;max-width:100%;padding:2px;display:inline-flex}.segment{display:flex;position:relative}.segment-input{opacity:0;pointer-events:none;position:absolute}.segment-label{text-align:center;min-height:calc(var(--control-height) - 4px);padding:var(--space-1) var(--space-3);border-radius:calc(var(--radius-control) - 1px);font-size:var(--text-sm);line-height:var(--line-tight);color:var(--ink);cursor:pointer;transition:background-color var(--motion-ui);justify-content:center;align-items:center;display:flex}.segment-label:hover{background:var(--hover-overlay)}.segment-input:checked+.segment-label{background:var(--accent);color:var(--accent-ink);font-weight:var(--weight-strong)}.segment-input:focus-visible+.segment-label{outline:var(--focus-width) solid var(--accent);outline-offset:var(--focus-gap)}.segmented-long{flex-wrap:nowrap;display:flex}.segmented-long .segment{flex:1 1 0;min-width:0}.segmented-long .segment-label{flex:1}.select{align-items:center;min-width:200px;display:inline-flex;position:relative}.select-input{appearance:none;width:100%;padding:calc(var(--control-pad-y) - var(--border-width)) var(--space-7) calc(var(--control-pad-y) - var(--border-width)) var(--space-3);line-height:var(--space-4);font-size:var(--text-sm);border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface-raised);cursor:pointer}.select .icon{right:var(--space-3);pointer-events:none;color:var(--ink-muted);position:absolute}.text-input{width:100%;max-width:240px;padding:calc(var(--control-pad-y) - var(--border-width)) var(--space-3);line-height:var(--space-4);font-size:var(--text-sm);border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface-raised)}.scrim{z-index:var(--z-dialog);padding:var(--space-4);background:var(--scrim);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.board-overlay .scrim{position:absolute}.dialog{width:min(400px,100%);max-height:calc(100vh - var(--space-6));padding:var(--space-5);border-radius:var(--radius-dialog);background:var(--surface-raised);color:var(--ink);box-shadow:0 8px 24px var(--elevation-shadow);animation:rise-in var(--motion-splash) var(--ease-out) both;overflow:auto}.dialog:focus{outline:none}.dialog-eyebrow{font-size:var(--text-xs);font-weight:var(--weight-strong);color:var(--ink-muted)}.dialog-title{font-size:var(--text-md);font-weight:var(--weight-strong);align-items:center;gap:var(--space-2);display:flex}.dialog-title .icon{color:var(--warning)}.dialog-body{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--ink-muted)}.dialog-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.dialog-stack{gap:var(--space-2);margin-top:var(--space-5);flex-direction:column;display:flex}.toast{left:50%;bottom:var(--space-5);z-index:var(--z-toast);align-items:center;gap:var(--space-2);max-width:calc(100vw - var(--space-6));padding:var(--space-2) var(--space-4);border-radius:var(--radius-control);background:var(--ink);color:var(--background);font-size:var(--text-sm);animation:rise-in var(--motion-splash) var(--ease-out) both;display:flex;position:fixed;transform:translate(-50%)}@keyframes rise-in{0%{opacity:0;transform:translateY(var(--motion-rise))}}.toast{animation-name:toast-in}@keyframes toast-in{0%{opacity:0;transform:translate(-50%, var(--motion-rise))}}.screen{max-width:var(--content-max);padding:var(--space-6) var(--space-5);margin:0 auto}.screen-head{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.screen-head h1{font-size:var(--text-xl);font-weight:var(--weight-strong);line-height:var(--line-tight);flex:1}.group-label{font-size:var(--text-xs);font-weight:var(--weight-strong);color:var(--ink-muted);margin-bottom:var(--space-2)}.help{font-size:var(--text-xs);color:var(--ink-muted);line-height:var(--line-tight)}.note{font-size:var(--text-sm);color:var(--ink-muted)}.warn-text{color:var(--warning)}.rules-pending{margin-top:var(--space-2)}.army-palette-note{margin-top:var(--space-4)}.player-swatch{margin-top:5px}figure.home-preview{margin:0}.callout{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);background:var(--warning-subtle);font-size:var(--text-sm);display:flex}.callout .icon{color:var(--warning);margin-top:2px}.swatch{border:var(--border-width) solid var(--side-edge);border-radius:2px;flex:none;width:12px;height:12px}.swatch-w{background:var(--side-white)}.swatch-b{background:var(--side-black)}.swatch-lg{border-radius:var(--radius-card);width:48px;height:48px}.thumb{width:64px;height:64px;display:block}.thumb .cell.light{fill:var(--board-cell-light)}.thumb .cell.dark{fill:var(--board-cell-dark)}.choice-tile{align-items:center;gap:var(--space-1);padding:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-card);background:var(--surface);color:var(--ink-muted);font-size:var(--text-xs);line-height:var(--line-tight);text-align:center;cursor:pointer;flex-direction:column;display:flex}.choice-tile:hover{border-color:var(--border-strong)}.choice-tile[aria-checked=true],.segment-input:checked+.choice-tile{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);color:var(--ink);font-weight:var(--weight-strong)}.segment-input:focus-visible+.choice-tile{outline:var(--focus-width) solid var(--accent);outline-offset:var(--focus-gap)}.board{-webkit-user-select:none;user-select:none;touch-action:manipulation;width:100%;height:auto;display:block}.cell.light{fill:var(--board-cell-light)}.cell.dark{fill:var(--board-cell-dark)}.coord{font-family:var(--font-ui);font-size:13px;font-weight:var(--weight-strong);pointer-events:none}.coord.on-light{fill:var(--board-coord-on-light)}.coord.on-dark{fill:var(--board-coord-on-dark)}.coord.on-fog{fill:var(--board-coord-on-fog)}.coord.outside{fill:var(--ink-muted);font-size:16px;font-weight:var(--weight-regular);text-anchor:middle}.board.preview .coord.outside{font-size:26px}.coord.end{text-anchor:end}.board.no-coords .coord{display:none}.hit{fill:#0000;cursor:pointer}.mark-last{fill:var(--board-last-move)}.mark-selected{fill:var(--board-selected)}.check-stop{stop-color:var(--board-check)}.mark-burn{fill:var(--board-burn);animation:burn var(--motion-burn) ease-out}@keyframes burn{0%{opacity:1}to{opacity:.6}}.mark-zone{fill:var(--board-zone)}.zone-edge{stroke:var(--board-zone-edge);stroke-width:2.5px;stroke-linecap:square;fill:none}.mark-invalid{fill:var(--board-invalid)}.invalid-x{stroke:var(--board-invalid-mark);stroke-width:3px;stroke-linecap:round}.mark-capturer{fill:none;stroke:var(--board-capturer);stroke-width:4px;stroke-dasharray:12 7}.mark-knock-blocked{fill:var(--board-knock-blocked);stroke:var(--board-knock-arrow);stroke-width:2px}.knock-arrow{stroke:var(--board-knock-arrow);stroke-width:3px;fill:none;stroke-linecap:round;stroke-linejoin:round}.piece{transition:transform var(--motion-piece) ease-out;pointer-events:none}.glyph path{stroke-width:3.5px;stroke-linejoin:round}.glyph-w path{fill:var(--piece-white-fill);stroke:var(--piece-white-stroke)}.glyph-b path{fill:var(--piece-black-fill);stroke:var(--piece-black-stroke)}.fog{fill:var(--board-fog)}.fog-layer rect{shape-rendering:crispedges}.fog-hatch-line{stroke:var(--board-fog-hatch);stroke-width:3px}.fog-edge{stroke:var(--board-fog-edge);stroke-width:2px;stroke-linecap:square}.hint-move{fill:var(--board-legal-dot);pointer-events:none}.hint-capture{fill:none;stroke:var(--board-capture-ring);stroke-width:8px;pointer-events:none}.board.no-dots .hint-move,.board.no-dots .hint-capture{display:none}.outline-edge{fill:none;stroke:var(--status-edge);stroke-width:7px;pointer-events:none}.hint-card{fill:none;stroke-width:3.5px;pointer-events:none}.hint-card.card-fire{stroke:var(--card-fire)}.hint-card.card-ice{stroke:var(--card-ice)}.hint-card.card-knock{stroke:var(--card-knockback)}.hint-card.chosen{stroke-width:4.5px}.hidden-board{visibility:hidden}.hp-plate{fill:var(--status-plate)}.hp-seg{fill:var(--status-hp-on)}.hp-seg.lost{fill:var(--status-hp-off)}.hp-seg.just-lost{fill:var(--status-damage)}.marker-edge{fill:none;stroke:var(--status-edge);stroke-width:1.5px}.status-frozen .marker-fill{fill:var(--status-frozen)}.status-shield .marker-fill{fill:var(--status-shield)}.marker-glyph{stroke:var(--status-ink);stroke-width:1.4px;stroke-linecap:round;fill:none}.marker-text{font-family:var(--font-ui);text-anchor:middle;fill:var(--status-ink);font-size:10px;font-weight:700}.damage-tag rect{fill:var(--status-damage)}.damage-tag text{font-family:var(--font-ui);text-anchor:middle;fill:var(--status-damage-ink);font-size:11px;font-weight:700}.piece-icon{flex:none;display:block}.piece-icon .glyph path{stroke-width:4px}.card-icon-svg{flex:none;display:block}.card-icon-svg path{fill:currentColor}.card-icon-svg.card-ice path{fill:none;stroke:currentColor;stroke-width:8px;stroke-linecap:round}.card-icon-svg.card-reveal path{fill-rule:evenodd}.tint-fire{color:var(--card-fire)}.tint-ice{color:var(--card-ice)}.tint-knock{color:var(--card-knockback)}.tint-reveal{color:var(--card-reveal)}.game-screen,.army-screen{--board-size:min(calc(100vh - 2 * 34px), calc(100vw - var(--side-column) - var(--space-6) - 2 * var(--space-5)));grid-template-columns:var(--board-size) var(--side-column);gap:var(--space-6);padding:34px var(--space-5);justify-content:center;align-items:start;min-height:100vh;display:grid}.board-col{width:var(--board-size);position:relative}.board-wrap{width:100%;position:relative}.board-overlay{z-index:var(--z-dialog);position:absolute;inset:0}.board-overlay:empty{display:none}.board-overlay .scrim{padding:var(--space-5)}.board-overlay .scrim.low{background:0 0;align-items:flex-end;padding-bottom:18%}.side-col{height:var(--board-size);flex-direction:column;min-width:0;min-height:560px;display:flex}.player-bar{align-items:flex-start;gap:var(--space-3);min-height:46px;display:flex}.player-bar .who{flex:1;min-width:0}.player-bar .name-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.player-bar .name{font-size:var(--text-md);font-weight:var(--weight-strong);line-height:var(--line-tight);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.player-bar .level{font-size:var(--text-sm);color:var(--ink-muted);white-space:nowrap}.captured{min-height:18px;font-size:var(--text-xs);color:var(--ink-muted);align-items:center;gap:0;margin-top:2px;display:flex}.captured .piece-icon{margin-right:-3px}.captured .material{margin-left:var(--space-1)}.opp-cards{align-items:center;gap:var(--space-1);margin-top:var(--space-2);font-size:var(--text-xs);color:var(--ink-muted);display:flex}.mini-back{border:var(--border-width) solid var(--border-strong);background:var(--surface-sunken);border-radius:2px;width:12px;height:16px}.mini-back+.mini-back{margin-left:-6px}.clock{align-items:center;gap:var(--space-2);min-width:92px;padding:2px var(--space-3);border-radius:var(--radius-control);background:var(--clock-bg);color:var(--clock-ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-clock);font-weight:var(--weight-strong);border:1.5px solid #0000;justify-content:flex-end;line-height:1.3;display:inline-flex}.clock.running{background:var(--accent);color:var(--accent-ink)}.clock.low{background:var(--danger-subtle);border-color:var(--danger);color:var(--danger)}.clock.flagged{background:var(--danger);border-color:var(--danger);color:var(--danger-ink)}.clock.paused{color:var(--ink-muted);background:0 0}.clock .icon{width:20px;height:20px}.clock.untimed{font-size:var(--text-lg)}.moves-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-top:var(--space-5);display:flex}.moves-head .group-label{margin:0}.moves-meta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-muted);white-space:nowrap}.log{min-height:80px;margin:var(--space-2) 0 0;font-size:var(--text-sm);flex:1;padding:0;list-style:none;overflow-y:auto}.log li{column-gap:var(--space-3);grid-template-columns:40px minmax(0,1fr) minmax(0,1fr);display:grid}.log .num{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-muted);text-align:right;line-height:28px}.log .turn{min-width:0}.log .mv{align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-3);border-radius:var(--radius-pill);white-space:nowrap;margin-bottom:2px;display:flex;overflow:hidden}.log .mv>span{text-overflow:ellipsis;overflow:hidden}.log .mv .target{margin-left:var(--space-1)}.log .mv.hidden{color:var(--ink-muted)}.log .mv.current{background:var(--accent-subtle);font-weight:var(--weight-strong)}.utility{align-items:center;gap:var(--space-1);margin-top:var(--space-4);display:flex}.utility .spacer{flex:1}.utility{row-gap:var(--space-2);flex-wrap:wrap}.utility .btn{white-space:nowrap}.utility .game-actions{gap:var(--space-1);margin-left:auto;display:flex}.utility .dimmed{opacity:.4}.attention,.icon-btn.attention,.icon-btn.attention:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-ink);animation:attention var(--motion-attention) var(--ease-out) 3}.btn-primary.attention:hover:not(:disabled),.icon-btn.attention:hover:not(:disabled){background:var(--accent-hover)}@keyframes attention{0%,to{box-shadow:0 0 0 0 var(--accent-subtle);transform:translateY(0)}45%{transform:translateY(calc(-1 * var(--motion-rise) / 2));box-shadow:0 0 0 var(--motion-rise) var(--accent-subtle)}}.status{margin-top:var(--space-5);min-height:24px}.status-main{align-items:baseline;gap:var(--space-2);font-size:var(--text-md);font-weight:var(--weight-strong);line-height:var(--line-tight);flex-wrap:wrap;display:flex}.status-main .dot-sep{color:var(--ink-faint);font-weight:var(--weight-regular)}.status-main .check{color:var(--danger)}.status-main .aside{color:var(--ink-muted);font-weight:var(--weight-regular);font-size:var(--text-sm)}.status-sub{font-size:var(--text-sm);color:var(--ink-muted);margin-top:2px}.hand{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.card{border:var(--border-width) solid var(--border);border-radius:var(--radius-card);background:var(--surface-raised);height:104px;color:var(--ink);text-align:left;cursor:pointer;flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.card:hover:not(:disabled){border-color:var(--border-strong)}.card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.card-art{object-fit:cover;background:var(--surface-sunken);flex:1;width:100%;min-height:0;display:block}.card-name{align-items:center;gap:var(--space-1);padding:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-strong);line-height:var(--line-tight);white-space:nowrap;display:flex;overflow:hidden}.card-name>span{text-overflow:ellipsis;overflow:hidden}.card.not-playable .card-art{opacity:.45}.card.not-playable .card-name{color:var(--ink-muted)}.card .ban{top:var(--space-2);right:var(--space-2);background:var(--surface-raised);width:22px;height:22px;color:var(--ink-muted);border-radius:50%;padding:3px;position:absolute}.card.used,.card.back{cursor:default;background:var(--surface-sunken);color:var(--ink-muted);text-align:center;font-size:var(--text-sm);border-color:#0000;justify-content:center;align-items:center;gap:2px}.card.used .used-label{font-size:var(--text-xs)}.card.used .card-icon-svg{opacity:.6}.hand-cover{gap:var(--space-2);cursor:pointer;text-align:center;background:0 0;border:0;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;display:grid}.hand-cover .card{cursor:pointer}.hand-cover .cover-label{font-size:var(--text-xs);color:var(--ink-muted);grid-column:1/-1}.you-bar{padding-top:var(--space-4);margin-top:auto}.game-over-dim .hand,.game-over-dim .status{opacity:.55}.promo-choices{gap:var(--space-2);margin-top:var(--space-4);display:flex}.promo-choices .btn{padding:var(--space-2);flex-direction:column;flex:1}.game-over-dialog .result{font-size:var(--text-xl);font-weight:var(--weight-strong);line-height:var(--line-tight);margin-top:var(--space-1)}.game-over-dialog .reason{font-size:var(--text-sm);color:var(--ink-muted);margin-top:var(--space-1)}.game-over-dialog .summary{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-muted);margin-top:var(--space-1)}.knock-dialog{width:min(380px,100%)}.splash-host{z-index:var(--z-splash);padding:var(--space-4);background:var(--scrim);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.splash-host:empty{display:none}.card-splash{border-radius:var(--radius-dialog);background:var(--surface-raised);width:min(600px,100%);color:var(--ink);text-align:left;cursor:pointer;box-shadow:0 8px 24px var(--elevation-shadow);animation:rise-in var(--motion-splash) var(--ease-out) both;border:0;flex-direction:column;padding:0;display:flex;overflow:hidden}.splash-frame{aspect-ratio:3/2;background:var(--surface-sunken);justify-content:center;align-items:center;max-height:70vh;display:flex;position:relative}.splash-name{font-size:var(--text-xl);font-weight:var(--weight-strong);color:var(--ink-muted)}.splash-img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.splash-foot{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4) var(--space-3) var(--space-5);display:flex}.splash-foot .title{font-size:var(--text-lg);font-weight:var(--weight-strong)}.splash-foot .by{font-size:var(--text-sm);color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.splash-foot .close{font-size:var(--text-xs);color:var(--ink-muted)}.pass-cover{z-index:var(--z-cover);justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--background);text-align:center;cursor:pointer;flex-direction:column;display:flex;position:fixed;inset:0}.pass-cover h2{margin-top:var(--space-5);font-size:var(--text-xl);font-weight:var(--weight-strong);line-height:var(--line-tight)}.pass-cover .note{font-size:var(--text-md)}.pass-cover .btn{margin-top:var(--space-4)}.pass-clock{align-items:center;gap:var(--space-2);margin-top:var(--space-4);font-size:var(--text-sm);color:var(--ink-muted);display:flex}.pass-clock .mono{color:var(--ink-muted)}.army-head{align-items:center;gap:var(--space-2);display:flex}.army-head h1{font-size:var(--text-lg);font-weight:var(--weight-strong);line-height:var(--line-tight)}.points-row{margin-top:var(--space-5);justify-content:space-between;align-items:baseline;display:flex}.points{font-family:var(--font-mono);font-size:var(--text-xl);font-weight:var(--weight-strong)}.points.over{color:var(--danger)}.progress{height:4px;margin-top:var(--space-2);background:var(--surface-sunken);border-radius:2px;overflow:hidden}.progress>span{background:var(--accent);height:100%;display:block}.progress.over>span{background:var(--danger)}.palette{margin-top:var(--space-4);flex-direction:column;gap:2px;display:flex}.pal{align-items:center;column-gap:var(--space-3);min-height:52px;padding:var(--space-1) var(--space-2);border:var(--border-width) solid transparent;border-radius:var(--radius-control);cursor:pointer;grid-template-columns:40px minmax(0,1fr) auto;display:grid}.pal:hover{background:var(--hover-overlay)}.pal.selected{background:var(--accent-subtle);border-color:var(--accent)}.pal-name{font-size:var(--text-sm);font-weight:var(--weight-strong);line-height:var(--line-tight)}.pal-cost{font-size:var(--text-xs);color:var(--ink-muted)}.pal-ctrl{align-items:center;gap:var(--space-1);display:flex}.pal-ctrl .icon-btn{width:var(--control-height-sm);height:var(--control-height-sm);color:var(--ink)}.pal-count{text-align:center;min-width:52px;font-family:var(--font-mono);font-size:var(--text-sm)}.pal.limit .pal-count{color:var(--ink-muted)}.errors{margin:var(--space-3) 0 0;gap:var(--space-2);font-size:var(--text-sm);flex-direction:column;padding:0;list-style:none;display:flex}.errors li.err{color:var(--danger)}.army-actions{gap:var(--space-2);padding-top:var(--space-4);flex-wrap:wrap;margin-top:auto;display:flex}.army-actions .btn-primary{margin-top:var(--space-3)}.home{gap:var(--space-8);min-height:100vh;padding:var(--space-6) var(--space-5);grid-template-columns:minmax(0,440px) minmax(0,640px);justify-content:center;align-items:center;display:grid}.home h1{font-size:var(--text-xl);font-weight:var(--weight-strong);line-height:var(--line-tight)}.home .tagline{margin-top:var(--space-4);color:var(--ink-muted)}.home .logo{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.beta-tag{padding:0 var(--space-2);border:var(--border-width) solid var(--border-strong);border-radius:var(--radius-control);color:var(--ink-muted);font-size:var(--text-xs);font-weight:var(--weight-regular);letter-spacing:.04em;text-transform:uppercase;line-height:1.6;display:inline-block}.resume-panel{margin-top:var(--space-6);padding:var(--space-4);border:var(--border-width) solid var(--border);border-radius:var(--radius-card);background:var(--surface-raised);width:100%;max-width:360px}.resume-facts{margin-top:var(--space-2);color:var(--ink)}.feedback-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.game-over-dialog .feedback-row{margin-top:var(--space-4);justify-content:center}.version{font-family:var(--font-mono);color:var(--ink-muted);font-size:var(--text-sm)}.small-screen{justify-content:center;align-items:flex-start;gap:var(--space-4);max-width:420px;min-height:100vh;padding:var(--space-5);flex-direction:column;margin:0 auto;display:flex}.small-screen h1{font-size:var(--text-xl);font-weight:var(--weight-strong)}.small-screen-text{color:var(--ink-muted)}.text-link{color:var(--ink);text-underline-offset:2px;text-decoration:underline}.home-footer{gap:var(--space-2);margin-top:var(--space-5);margin-left:calc(-1 * var(--space-3));display:flex}.privacy-body{max-width:680px}.privacy-body section{margin-top:var(--space-6)}.privacy-body h2{font-size:var(--text-lg);font-weight:var(--weight-strong)}.privacy-body p{margin-top:var(--space-3);color:var(--ink)}.resume-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.home-actions{gap:var(--space-2);width:280px;margin-top:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.home-actions .home-new-game{grid-column:1/-1}.home-boards{margin-top:var(--space-6);padding-top:var(--space-5);border-top:var(--border-width) solid var(--border)}.thumb-row{gap:var(--space-4);flex-wrap:wrap;display:flex}.thumb-item{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--ink-muted);flex-direction:column;display:flex}.home-preview .help{margin-top:var(--space-3);color:var(--ink-muted)}.setup-screen{max-width:calc(1120px + 2 * var(--space-5))}.setup-grid{gap:var(--space-7);grid-template-columns:minmax(0,1fr) 400px;align-items:start;display:grid}.form-row{column-gap:var(--space-4);padding:var(--space-2) 0;grid-template-columns:170px minmax(0,1fr);align-items:start;display:grid}.form-row>.label{font-size:var(--text-md);padding-top:7px}.form-row .control{align-items:flex-start;gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.form-row .control>.segmented-long{width:100%}.board-choices{gap:var(--space-2);flex-wrap:wrap;display:flex}.board-choices .choice-tile{width:88px}.setup-preview h2{margin-top:var(--space-4);font-size:var(--text-lg);font-weight:var(--weight-strong)}.summary{margin:var(--space-1) 0 0}.summary div{justify-content:space-between;gap:var(--space-3);padding:1px 0;display:flex}.summary dt{font-size:var(--text-sm);color:var(--ink-muted)}.summary dd{font-family:var(--font-mono);font-size:var(--text-sm);text-align:right;margin:0}.setup-preview .btn-primary{margin-top:var(--space-5)}.settings-grid{gap:var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.settings-group+.settings-group{margin-top:var(--space-5)}.setting{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--border);display:flex}.setting.stack{flex-direction:column;align-items:stretch}.setting .text{flex:1;min-width:0}.setting>.segmented,.setting>.select,.setting>.toggle{flex:none}.setting .title{font-size:var(--text-md);line-height:var(--line-tight)}.setting .help{font-size:var(--text-sm);margin-top:2px}.style-tiles{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.style-tile{gap:var(--space-1);padding:var(--space-2);text-align:left;border:var(--border-width) solid var(--border);border-radius:var(--radius-card);background:var(--surface);color:var(--ink);cursor:pointer;flex-direction:column;display:flex}.style-tile[aria-checked=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.style-tile .name{margin-top:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-strong)}.style-tile .help{font-size:var(--text-xs)}.style-preview{border-radius:var(--radius-control);background:var(--background);width:100%;height:auto;display:block}.style-preview .line{fill:var(--border-strong)}.style-preview .line.strong{fill:var(--ink-muted)}.style-preview .danger{fill:var(--danger)}.style-preview .accent{fill:var(--accent)}.theme-picker{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.theme-preview{width:64px;height:64px;display:block}.theme-preview .cell.light{fill:var(--board-cell-light)}.theme-preview .cell.dark{fill:var(--board-cell-dark)}.settings-dialog{width:min(1040px,100%);max-height:calc(100vh - var(--space-6))}.settings-dialog .screen{padding:0}.rules-grid{gap:var(--space-8);grid-template-columns:200px minmax(0,1fr);align-items:start;display:grid}.rules-nav{top:var(--space-5);flex-direction:column;gap:2px;display:flex;position:sticky}.rules-nav a{padding:var(--space-1) var(--space-3);border-radius:var(--radius-control);font-size:var(--text-sm);color:var(--ink-muted);text-decoration:none}.rules-nav a:hover{background:var(--hover-overlay);color:var(--ink)}.rules-nav a.current{background:var(--accent-subtle);color:var(--ink);font-weight:var(--weight-strong)}.rules-body section{margin-bottom:var(--space-7);scroll-margin-top:var(--space-5)}.rules-body h2{font-size:var(--text-lg);font-weight:var(--weight-strong);margin-bottom:var(--space-3)}.rules-body p,.rules-body li{line-height:1.6}.rules-body p+p{margin-top:var(--space-3)}.rules-body ul{margin:var(--space-2) 0 0;padding-left:var(--space-5)}.rules-cards{gap:var(--space-5);margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.rules-card{gap:var(--space-4);grid-template-columns:150px minmax(0,1fr);display:grid}.rules-card img{aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius-card);background:var(--surface-sunken);width:150px;display:block}.rules-card .name{align-items:center;gap:var(--space-2);font-weight:var(--weight-strong);display:flex}.rules-card .help{font-size:var(--text-sm);margin-top:var(--space-1)}.hp-row{gap:var(--space-5);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.hp-item{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--ink-muted);flex-direction:column;display:flex}.hp-item svg{display:block}.boards-table{border-collapse:collapse;width:100%;margin-top:var(--space-4);font-size:var(--text-sm)}.boards-table th{text-align:left;font-size:var(--text-xs);font-weight:var(--weight-strong);color:var(--ink-muted);padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border)}.boards-table td{padding:var(--space-2) var(--space-3);border-bottom:var(--border-width) solid var(--border);font-family:var(--font-mono)}.boards-table td.name{font-family:var(--font-ui);font-weight:var(--weight-strong)}.boards-table td:first-child{width:96px;padding-left:0}@media (width<=1100px){:root{--side-column:var(--side-column-compact)}.card-name{font-size:var(--text-xs);padding-inline:var(--space-1)}.setup-grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr) 320px}.home{gap:var(--space-6)}}@media (width<=860px){.game-screen,.army-screen{--board-size:calc(100vw - 2 * var(--space-4));padding:var(--space-4);gap:var(--space-4);grid-template-columns:minmax(0,1fr)}.side-col{height:auto;min-height:0}.log{max-height:200px}.home,.setup-grid,.settings-grid,.rules-grid{grid-template-columns:minmax(0,1fr)}.home{gap:var(--space-5)}.home-actions{width:100%}.rules-nav{flex-flow:wrap;position:static}.rules-cards,.rules-card,.form-row{grid-template-columns:minmax(0,1fr)}.form-row>.label{padding-top:0}.screen{padding:var(--space-4)}.boards-table td:first-child{width:auto}.theme-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}
