:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--text-fine:.6771rem;--text-body:.8125rem;--text-lead:.975rem;--text-display:1.404rem;--text-banner:2.0218rem;--text-hero:3.4936rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--tracking:.12em;--edge:1px solid var(--grid-line);--bg:#201f1d;--panel:#292825;--board-bg:var(--panel);--control:var(--bg);--fg:#e8e5e0;--muted:#9b968d;--cell-even:#34322e;--cell-odd:#3d3a35;--grid-line:#55524b;--label:#8a857c;--white-piece:#efede8;--white-outline:#14141a;--black-piece:#45423c;--black-outline:#dad7d0;--accent:#d08a4a;--accent-soft:color-mix(in srgb, var(--accent) 45%, transparent);--danger:#c05454;--focus:#6fb2d4}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f2ee;--panel:#ecebe6;--fg:#2b2b2b;--muted:#6a665f;--cell-even:#e6e3dc;--cell-odd:#dcd8cf;--grid-line:#b8b3a8;--white-piece:#faf9f6;--white-outline:#3a3a38;--black-piece:#3a3a38;--black-outline:#14141a;--accent:#b0682a;--danger:#a03232;--focus:#2f6f8f}:root[data-contrast=more]{--bg:#000;--panel:#000;--fg:#fff;--muted:#e0e0e0;--cell-even:#000;--cell-odd:#303030;--grid-line:#fff;--label:#ededed;--white-piece:#fff;--white-outline:#000;--black-piece:#1a1a1a;--black-outline:#fff;--accent:#ffb066;--accent-soft:color-mix(in srgb, var(--accent) 75%, transparent);--danger:#ff8b8b;--focus:#8ecbff}@media (prefers-contrast:more){:root:not([data-contrast=normal]){--bg:#000;--panel:#000;--fg:#fff;--muted:#e0e0e0;--cell-even:#000;--cell-odd:#303030;--grid-line:#fff;--label:#ededed;--white-piece:#fff;--white-outline:#000;--black-piece:#1a1a1a;--black-outline:#fff;--accent:#ffb066;--accent-soft:color-mix(in srgb, var(--accent) 75%, transparent);--danger:#ff8b8b;--focus:#8ecbff}}:root[data-theme=light][data-contrast=more]{--bg:#fff;--panel:#fff;--fg:#000;--muted:#262626;--cell-even:#fff;--cell-odd:#c9c9c9;--grid-line:#000;--label:#1a1a1a;--white-piece:#fff;--white-outline:#000;--black-piece:#000;--black-outline:#fff;--accent:#7a2e00;--accent-soft:color-mix(in srgb, var(--accent) 75%, transparent);--danger:#a30000;--focus:#0033a0}@media (prefers-contrast:more){:root[data-theme=light]:not([data-contrast=normal]){--bg:#fff;--panel:#fff;--fg:#000;--muted:#262626;--cell-even:#fff;--cell-odd:#c9c9c9;--grid-line:#000;--label:#1a1a1a;--white-piece:#fff;--white-outline:#000;--black-piece:#000;--black-outline:#fff;--accent:#7a2e00;--accent-soft:color-mix(in srgb, var(--accent) 75%, transparent);--danger:#a30000;--focus:#0033a0}}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--fg);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:var(--text-body);margin:0;line-height:1.45}.level,.slice-view,.spatial-view,.ai-panel,.diagnostics,.hud,.promotion-dialog{background:var(--panel);border:var(--edge)}.section-title,.hud h2,.ai-panel h2{margin:0 0 var(--space-2);font-size:var(--text-fine);letter-spacing:var(--tracking);color:var(--muted);font-weight:600}:is(.hud,.ai-panel,.slice-controls,.view-toggles,.spatial-header,.promotion-choices) :is(button,select):not(.ply){font:inherit;font-size:var(--text-body);padding:var(--space-1) var(--space-2);background:var(--control);color:var(--fg);border:var(--edge);cursor:pointer}:is(.hud,.ai-panel) button:disabled{opacity:.45;cursor:default}:where(button,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--focus);outline-offset:1px}.app-header{padding:var(--space-4) var(--space-6) 0}.app-main{gap:var(--space-4);padding:var(--space-4) var(--space-6);flex-wrap:wrap;align-items:flex-start;display:flex}.boards-column{gap:var(--space-4);flex-direction:column;flex:560px;min-width:0;display:flex}.layer-view{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(278px,max-content));display:grid}.level{padding:var(--space-2)}.spatial-header{justify-content:space-between;align-items:baseline;gap:var(--space-2);padding:var(--space-2) var(--space-3) 0;flex-wrap:wrap;display:flex}.spatial-canvas{touch-action:none;cursor:grab;width:100%;height:clamp(340px,46vh,540px);display:block}.spatial-canvas:active{cursor:grabbing}.spatial-note{padding:var(--space-3);color:var(--muted);font-size:var(--text-fine);margin:0}.view-toggles{gap:var(--space-2);flex-wrap:wrap;display:flex}.view-toggles .view-toggle{background:var(--panel);color:var(--muted)}.slice-view{width:100%;max-width:44rem;padding:var(--space-2) var(--space-3) var(--space-3)}.slice-body{align-items:center;gap:var(--space-2);flex-direction:column;width:100%;display:flex}.plane-preview{padding:var(--space-1);background:var(--control);border:var(--edge);cursor:pointer;line-height:0}.plane-preview canvas{display:block}.slice-header{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.slice-badge,.level-badge{color:var(--accent)}.slice-controls{gap:var(--space-2);flex-wrap:wrap;display:flex}.slice-modes,.slice-tabs{gap:var(--space-1);display:flex}.slice-tabs button{min-width:2rem}.slice-modes button[aria-pressed=true],.slice-tabs button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.plane-stack,.level-stack{width:max-content;position:relative}.plane-stack{touch-action:pan-y}.plane-canvas,.level-canvas{display:block}.cell-grid{flex-direction:column;display:flex;position:absolute;inset:22px}.cell-grid [role=row]{flex:1;display:flex}button.cell{cursor:pointer;background:0 0;border:none;border-radius:0;flex:1;padding:0}button.cell:focus-visible{outline-offset:-3px}.sidebar{gap:var(--space-4);flex-direction:column;flex:0 300px;min-width:260px;display:flex}.ai-panel{padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.ai-status{min-height:1.2em;margin:0}.ai-pv{font-size:var(--text-fine);color:var(--muted);overflow-wrap:anywhere;min-height:1em;margin:0}.ai-breakdown,.metric-list{gap:var(--space-1) var(--space-2);font-size:var(--text-fine);grid-template-columns:1fr auto;margin:0;display:grid}.metric-list{grid-template-columns:auto}.ai-breakdown dt,.metric-list dt{color:var(--muted)}.ai-breakdown dd,.metric-list dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.metric-list dd{text-align:left;margin-bottom:var(--space-1)}.ai-breakdown dt:last-of-type,.ai-breakdown dd:last-of-type{border-top:var(--edge);padding-top:var(--space-1);margin-top:var(--space-1);color:var(--fg);font-weight:600}.diagnostics{padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.hud{padding:var(--space-4);gap:var(--space-3);flex-direction:column;flex:auto;min-width:260px;display:flex}.hud h2{margin:var(--space-2) 0 0}.status{font-size:var(--text-lead);margin:0;font-weight:600}.controls{gap:var(--space-2);flex-wrap:wrap;display:flex}.history{counter-reset:ply;max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.history li{align-items:baseline;gap:var(--space-2);counter-increment:ply;display:flex}.history li:before{content:counter(ply) ".";text-align:right;min-width:4ch;color:var(--muted);flex:none}.history .ply{padding:0 var(--space-1);font:inherit;color:var(--fg);cursor:pointer;background:0 0;border:none}.history .ply[aria-current=step]{color:var(--accent);font-weight:700}.history .ply.future{color:var(--muted)}.io-text{width:100%;font:inherit;font-size:var(--text-fine);background:var(--control);color:var(--fg);border:var(--edge);resize:vertical}.io-message,.panel-note{font-size:var(--text-fine);color:var(--muted);margin:0}.help{padding:0 var(--space-6) var(--space-6);color:var(--muted);font-size:var(--text-fine);max-width:60rem;margin:0}.promotion-dialog{color:var(--fg);padding:var(--space-4);font-family:inherit}.promotion-dialog::backdrop{background:#14141473}.promotion-dialog h2{margin:0 0 var(--space-3);font-size:var(--text-lead);letter-spacing:.08em}.promotion-choices{gap:var(--space-2);flex-direction:column;display:flex}.promotion-choices button{padding:var(--space-2) var(--space-3);text-align:left}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){.history .ply,.hud button,.promotion-choices button{transition:color .12s,background-color .12s}}@media (max-width:640px){.app-header{padding:var(--space-3) var(--space-2) 0}.app-main{gap:var(--space-2);padding:var(--space-2)}.help{padding:0 var(--space-2) var(--space-4)}.boards-column{flex-basis:100%}.sidebar{flex-basis:100%;min-width:0}.slice-view{padding:var(--space-2)}.slice-controls{justify-content:space-between;width:100%}:is(.hud,.ai-panel,.slice-controls,.view-toggles,.spatial-header,.promotion-choices) :is(button,select):not(.ply){min-width:44px;min-height:44px;padding:var(--space-2) var(--space-3)}.history .ply{min-height:32px}.spatial-canvas{height:clamp(220px,32vh,320px)}}.skip-link{left:var(--space-2);top:var(--space-2);z-index:10;padding:var(--space-2) var(--space-3);background:var(--panel);border:var(--edge);color:var(--fg);position:absolute;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-nav{align-items:baseline;gap:var(--space-3) var(--space-6);padding:var(--space-3) var(--space-6);border-bottom:var(--edge);background:var(--bg);flex-wrap:wrap;display:flex}.site-mark{font-size:var(--text-lead);letter-spacing:.35em;color:var(--fg);font-weight:700;text-decoration:none}.site-nav ul{gap:var(--space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.site-nav a{color:var(--muted);letter-spacing:var(--tracking);text-decoration:none}.site-nav a:hover,.site-nav a:focus-visible{color:var(--fg)}.theme-toggle{padding:var(--space-1) var(--space-3);font:inherit;font-size:var(--text-fine);letter-spacing:var(--tracking);color:var(--muted);border:var(--edge);cursor:pointer;background:0 0;margin-left:auto}.theme-toggle:hover,.theme-toggle:focus-visible{color:var(--fg);border-color:var(--accent)}.site-nav a[aria-current=page]{color:var(--accent);border-bottom:2px solid var(--accent)}.site-foot{justify-content:space-between;gap:var(--space-3) var(--space-6);padding:var(--space-8) var(--space-6);margin-top:var(--space-12);border-top:var(--edge);color:var(--muted);font-size:var(--text-fine);flex-wrap:wrap;display:flex}.site-foot a{color:var(--muted)}.page{max-width:62rem;padding:var(--space-12) var(--space-6) 0;margin:0 auto}.page-lede{max-width:46rem;font-size:var(--text-lead);color:var(--muted);margin:var(--space-4) 0 0}.page h1{font-size:var(--text-banner);letter-spacing:.02em;margin:0;line-height:1.15}.page h2{font-size:var(--text-lead);letter-spacing:var(--tracking);margin:var(--space-12) 0 var(--space-4);padding-bottom:var(--space-2);border-bottom:var(--edge)}.page>h2:first-child{margin-top:0}.page h3{font-size:var(--text-body);letter-spacing:var(--tracking);margin:var(--space-6) 0 var(--space-2)}.page p,.page li{max-width:46rem;line-height:1.65}.page p{margin:var(--space-4) 0}.page ul,.page ol{margin:var(--space-4) 0;padding-left:var(--space-6)}.page li{margin:var(--space-2) 0}.page a{color:var(--accent)}.page code{padding:0 var(--space-1);background:var(--panel);color:var(--fg);font-family:inherit}.page strong{font-weight:700}.callout{max-width:46rem;margin:var(--space-6) 0;padding:var(--space-4);background:var(--panel);border:var(--edge);border-left:3px solid var(--accent)}.callout p{margin:0}.hero{align-items:center;gap:var(--space-8);max-width:62rem;padding:var(--space-16) var(--space-6) var(--space-12);grid-template-columns:minmax(0,1fr) minmax(0,22rem);margin:0 auto;display:grid}.hero h1{font-size:var(--text-hero);letter-spacing:.18em;margin:0;line-height:1}.hero-claim{font-size:var(--text-banner);max-width:22rem;margin:var(--space-4) 0 0;line-height:1.2}.hero-sub{max-width:30rem;color:var(--muted);margin:var(--space-4) 0 0;line-height:1.65}.hero-actions{gap:var(--space-3);margin-top:var(--space-8);flex-wrap:wrap;display:flex}a.button{padding:var(--space-3) var(--space-6);border:var(--edge);background:var(--control);color:var(--fg);letter-spacing:var(--tracking);text-decoration:none;display:inline-block}a.button:hover{border-color:var(--accent);color:var(--accent)}a.button-primary{background:var(--accent);border-color:var(--accent);color:var(--bg)}a.button-primary:hover{color:var(--bg);filter:brightness(1.08)}.hero-figure{justify-self:end;width:100%;max-width:22rem}.hero-figure canvas{width:100%;height:auto;display:block}.card-grid{gap:var(--space-4);max-width:62rem;padding:0 var(--space-6);grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr));margin:0 auto;display:grid}.card{padding:var(--space-4);background:var(--panel);border:var(--edge)}.card h3{margin:0 0 var(--space-2);font-size:var(--text-fine);letter-spacing:var(--tracking);color:var(--muted)}.card p{margin:0;line-height:1.65}.stat-row{gap:var(--space-6);max-width:62rem;margin:var(--space-12) auto 0;padding:var(--space-8) var(--space-6);border-top:var(--edge);border-bottom:var(--edge);grid-template-columns:repeat(auto-fit,minmax(min(9rem,100%),1fr));display:grid}.stat-value{font-size:var(--text-banner);font-variant-numeric:tabular-nums;line-height:1.1;display:block}.stat-label{margin-top:var(--space-2);font-size:var(--text-fine);letter-spacing:var(--tracking);color:var(--muted);display:block}.piece-grid{gap:var(--space-4);margin:var(--space-6) 0;grid-template-columns:repeat(auto-fit,minmax(min(23rem,100%),1fr));display:grid}.piece-card{align-items:start;gap:var(--space-4);padding:var(--space-4);background:var(--panel);border:var(--edge);grid-template-columns:auto minmax(0,1fr);display:grid}.piece-card canvas{display:block}.piece-card h3{font-size:var(--text-body);letter-spacing:var(--tracking);margin:0}.piece-card p{margin:var(--space-2) 0 0;max-width:none;font-size:var(--text-fine);color:var(--muted);line-height:1.55}.piece-card .piece-set{color:var(--accent)}@media (max-width:720px){.hero{padding:var(--space-8) var(--space-4) var(--space-8);grid-template-columns:minmax(0,1fr)}.hero-figure{justify-self:start;max-width:17rem}.page,.card-grid,.stat-row{padding-left:var(--space-4);padding-right:var(--space-4)}.page h2{margin-top:var(--space-12)}.site-nav,.site-foot{padding-left:var(--space-4);padding-right:var(--space-4)}.site-nav a,.site-foot a{padding:var(--space-2) 0;display:inline-block}}@media (max-width:1024px){.theme-toggle{border-color:#0000;min-width:44px;min-height:44px;padding-left:0;padding-right:0}.theme-toggle:hover{border-color:#0000}}
