.game-hero{padding:46px 0 30px;border-bottom:1px solid var(--line)}.game-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.65fr);gap:28px;align-items:end}.game-hero h1{margin:8px 0 14px}.hero-principles{padding:20px}.hero-principles>div{display:grid;gap:2px;padding:11px 0;border-top:1px solid var(--line)}.hero-principles b{font-size:.9rem}.hero-principles span{color:var(--muted);font-size:.8rem}.game-shell-section{padding:26px 0 54px}.game-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:14px}.toolbar-group{display:flex;gap:8px;flex-wrap:wrap}.game-toolbar label{display:grid;gap:4px;color:var(--subtle);font:700 .69rem/1.2 var(--cw-mono);text-transform:uppercase;letter-spacing:.08em}.game-toolbar select{min-height:40px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-2);color:var(--text);padding:0 34px 0 12px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.45fr);gap:16px;align-items:start}.board-wrap{padding:14px}.status-strip{display:flex;justify-content:space-between;gap:12px;padding:2px 2px 12px;font:700 .78rem/1.4 var(--cw-mono);color:var(--muted)}#turn-label{color:var(--cyan-strong)}.chessboard{width:min(100%,760px);aspect-ratio:1;margin:auto;display:grid;grid-template-columns:repeat(8,1fr);border:1px solid #43515f;border-radius:12px;overflow:hidden;box-shadow:0 28px 70px rgb(0 0 0/.35);touch-action:manipulation}.square{position:relative;display:grid;place-items:center;border:0;border-radius:0;padding:0;cursor:pointer;user-select:none;font-family:"Segoe UI Symbol","Noto Sans Symbols 2","DejaVu Sans",sans-serif;font-size:clamp(2rem,7.3vw,5.25rem);line-height:1;color:#f6f8fb;text-shadow:0 2px 2px rgb(0 0 0/.35)}.square.light{background:#b9cad2}.square.dark{background:#496979}.square:hover{filter:brightness(1.06)}.square.selected{box-shadow:inset 0 0 0 5px #79efff;z-index:1}.square.legal::after{content:"";position:absolute;width:21%;aspect-ratio:1;border-radius:50%;background:rgb(4 20 25/.34);box-shadow:0 0 0 2px rgb(255 255 255/.18)}.square.capture::after{width:78%;border:5px solid rgb(11 31 37/.36);background:transparent}.square.last{box-shadow:inset 0 0 0 999px rgb(240 189 114/.18)}.square.in-check{box-shadow:inset 0 0 0 999px rgb(255 80 80/.32)}.piece-white{color:#fff;text-shadow:0 2px 1px #16242a,0 0 2px #16242a}.piece-black{color:#111b21;text-shadow:0 1px 0 rgb(255 255 255/.22)}.coord{position:absolute;font:800 clamp(.52rem,1.25vw,.72rem)/1 var(--cw-mono);opacity:.58;pointer-events:none}.coord.file{right:4px;bottom:3px}.coord.rank{left:4px;top:4px}.board-note{min-height:44px;padding:12px 4px 0;color:var(--muted);font-size:.84rem}.game-sidebar{display:grid;gap:12px}.game-sidebar>.panel{padding:18px}.lesson-card h2{font-size:1.42rem;margin:4px 0 9px}.lesson-card p{font-size:.9rem}.lesson-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.lesson-tags span{padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--cyan);font:700 .66rem/1.2 var(--cw-mono);text-transform:uppercase}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.panel-head #move-count{color:var(--subtle);font-size:.72rem}.move-log{max-height:210px;overflow:auto;margin:8px 0 0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:1px 12px;font:700 .78rem/1.6 var(--cw-mono);color:var(--muted)}.move-log li{display:flex;gap:7px;border-top:1px solid var(--line);padding:5px 0}.move-log b{color:var(--subtle);min-width:26px}.move-log span{color:var(--text)}.analogy-list{display:grid;gap:0;margin:6px 0 0}.analogy-list>div{display:grid;grid-template-columns:58px 1fr;gap:10px;padding:8px 0;border-top:1px solid var(--line)}.analogy-list dt{color:var(--cyan);font:800 .7rem/1.45 var(--cw-mono);text-transform:uppercase}.analogy-list dd{margin:0;color:var(--muted);font-size:.79rem;line-height:1.45}.promotion-modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:rgb(0 0 0/.68);backdrop-filter:blur(8px);padding:20px}.promotion-box{width:min(440px,100%);padding:24px}.promotion-box p{margin:8px 0 16px}.promotion-choices{display:grid;grid-template-columns:1fr 1fr;gap:8px}.promotion-choices button{min-height:48px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-2);color:var(--text);font-weight:750;cursor:pointer}.promotion-choices button:hover{border-color:var(--cyan)}@media(max-width:900px){.game-hero-grid,.game-layout{grid-template-columns:1fr}.game-sidebar{grid-template-columns:1fr 1fr}.game-sidebar>.lesson-card{grid-column:1/-1}}@media(max-width:620px){.game-hero{padding-top:30px}.game-sidebar{grid-template-columns:1fr}.game-toolbar,.toolbar-group{width:100%}.game-toolbar label{flex:1}.game-toolbar select{width:100%}.toolbar-group .button{flex:1}.board-wrap{padding:8px}.square{font-size:clamp(2rem,11vw,4rem)}.status-strip{font-size:.7rem}.analogy-list>div{grid-template-columns:52px 1fr}}

/* Chesstomer Success game cockpit: keep the Clintware type system and chess clarity. */
.qbrook-powered{margin:-7px 0 13px;color:var(--cyan);font:700 .66rem/1.3 var(--cw-mono);letter-spacing:.19em}
.game-hero{padding:26px 0 22px}
.game-hero h1{margin:6px 0 12px}
.game-hero .lede{max-width:70ch;font-size:.94rem;line-height:1.6}
.game-hero .chip-row{margin-top:13px}
.game-hero-grid{align-items:center;gap:18px}
.hero-principles{padding:14px 18px}
.hero-principles>div{padding:7px 0}
.game-shell-section{padding-top:20px}
.game-toolbar{margin-bottom:12px}
.game-layout{grid-template-columns:minmax(0,1fr) minmax(278px,.42fr);gap:14px}
.board-wrap{overflow:hidden;padding:14px;background:radial-gradient(ellipse at 50% 0,rgba(47,106,125,.13),transparent 55%),#080e15!important;border:1px solid #304454!important;box-shadow:0 15px 45px rgba(0,0,0,.3)!important}
.turn-hud{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:78px;padding:14px 17px;margin-bottom:9px;overflow:hidden;border:1px solid #317582;border-left:4px solid #62e9f5;background:linear-gradient(110deg,rgba(13,44,53,.96),rgba(9,19,28,.98) 70%);color:#eafcff;transition:background-color .22s ease,border-color .22s ease}
.turn-hud::after{content:"";position:absolute;right:-30px;top:-65px;width:175px;height:175px;pointer-events:none;background:radial-gradient(circle,rgba(98,233,245,.1),transparent 66%)}
.turn-head{display:flex;align-items:center;gap:13px;min-width:0}
.turn-beacon{width:15px;height:15px;flex:0 0 15px;border:3px solid #9df8ff;border-radius:50%;background:#1ee8d0;box-shadow:0 0 0 5px rgba(98,233,245,.12),0 0 20px rgba(98,233,245,.45);animation:turnBeacon 2.2s ease-in-out infinite}
.turn-text{min-width:0;display:grid;gap:3px}
#turn-label{font:800 clamp(.96rem,1.7vw,1.25rem)/1.15 var(--cw-display);letter-spacing:.005em;color:#f2ffff}
#turn-detail{font:.75rem/1.4 var(--cw-sans);color:#abced5}
.turn-state{padding:7px 9px;border:1px solid #25505e;background:rgba(2,11,16,.55);white-space:nowrap;color:#b7dbe0;font:700 .66rem/1.25 var(--cw-mono);letter-spacing:.03em;z-index:1}
.turn-hud[data-turn="black"][data-phase="ready"]{border-color:#927846;border-left-color:#f5bf73;background:linear-gradient(110deg,rgba(56,40,23,.94),rgba(14,21,29,.98) 70%)}
.turn-hud[data-turn="black"][data-phase="ready"] .turn-beacon{border-color:#ffe3aa;background:#f7bc66;box-shadow:0 0 0 5px rgba(247,188,102,.11),0 0 18px rgba(247,188,102,.32)}
.turn-hud[data-phase="thinking"]{border-color:#85764b;border-left-color:#ffd18a;background:linear-gradient(100deg,rgba(45,36,24,.92),rgba(10,17,25,.98) 65%)}
.turn-hud[data-phase="thinking"] .turn-beacon{border-color:#ffdaa5;background:#f4b65e;box-shadow:0 0 0 5px rgba(255,218,165,.12);animation:thinkBeacon .95s ease-in-out infinite}
.turn-hud[data-phase="over"]{border-color:#59707b;border-left-color:#b2c4cc;background:#121b22}
.turn-hud[data-phase="over"] .turn-beacon{animation:none;background:#879ca6;border-color:#c3d3d9;box-shadow:none}
.player-rails{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.player-rail{display:flex;align-items:center;gap:10px;min-height:52px;padding:9px 12px;border:1px solid #243742;background:#0c141b;color:#7f93a2;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
.player-rail.is-active{border-color:#447f8c;background:linear-gradient(100deg,#102b32,#0c171e);color:#eefcff;box-shadow:inset 0 -2px 0 #62e9f5}
#black-player.is-active{border-color:#86704d;background:linear-gradient(100deg,#2e261d,#10181e);box-shadow:inset 0 -2px 0 #f2be77}
.player-disc{display:block;flex:0 0 17px;width:17px;height:17px;border-radius:50%}
.disc-white{background:#f1f9fb;border:2px solid #d1e5ed;box-shadow:0 1px 7px #a8dce54d}
.disc-black{background:#18252d;border:2px solid #a8bfca;box-shadow:inset 0 0 0 2px #0d161e}
.player-rail>div{display:grid;gap:2px;min-width:0}
.player-rail b{font:800 .75rem/1 var(--cw-mono);letter-spacing:.09em}
.player-rail small{font:600 .69rem/1.2 var(--cw-sans);color:#8198a6}
.player-rail.is-active small{color:#c6dfe5}
.rail-indicator{margin-left:auto;width:8px;height:8px;border-radius:50%;background:#273943}
.player-rail.is-active .rail-indicator{background:#54f0e3;box-shadow:0 0 9px rgba(84,240,227,.7)}
#black-player.is-active .rail-indicator{background:#f8c777;box-shadow:0 0 9px rgba(248,199,119,.65)}
.board-stage{max-width:820px;margin:0 auto;padding:5px;background:#0b141a;border:1px solid #2a4350}
.chessboard{position:relative;width:100%;max-width:none;border:2px solid #344e5c;border-radius:2px;box-shadow:0 8px 32px rgba(0,0,0,.4);isolation:isolate}
.square{transition:filter .12s ease,background-color .2s ease;outline-offset:-4px}
.square.light{background:#bfd1d6}.square.dark{background:#567887}
.square:hover{filter:brightness(1.1)}
.square:focus-visible{outline:4px solid #ffdc92;z-index:3}
.square.selected{box-shadow:inset 0 0 0 5px #3af0e9,0 0 0 1px #09252b;z-index:2}
.square.legal::after{width:23%;background:rgba(6,48,56,.45);border:2px solid rgba(235,255,254,.38);box-shadow:0 0 0 3px rgba(13,99,110,.1)}
.square.capture::after{width:82%;border:5px solid rgba(3,65,73,.66);background:transparent;box-shadow:inset 0 0 0 1px rgba(250,255,255,.42)}
.square.last-from{background-image:linear-gradient(rgba(244,191,102,.24),rgba(244,191,102,.24))}
.square.last-to{background-image:linear-gradient(rgba(253,207,123,.30),rgba(253,207,123,.30));box-shadow:inset 0 0 0 3px rgba(255,216,140,.85)}
.square.last-from.last-to{box-shadow:inset 0 0 0 3px #ffcf85}
.square.selected.last-to{box-shadow:inset 0 0 0 5px #32ffea}
.square.in-check,.square.in-check.last-to{background-image:linear-gradient(rgba(255,67,75,.5),rgba(255,67,75,.5));box-shadow:inset 0 0 0 4px #fa6574}
.square.just-moved::before{content:"";position:absolute;inset:3px;z-index:2;border:3px solid rgba(255,243,203,.9);pointer-events:none;animation:arriveFlash .54s ease-out both}
.piece-white{color:#fff;text-shadow:0 2px 1px #101b23,0 0 3px #0b1a26,0 0 8px rgba(12,25,31,.45)}
.piece-black{color:#0b1720;text-shadow:0 1px 0 rgba(255,255,255,.4),0 0 1px #020a10}
.square .coord{opacity:.75;color:#102d37;text-shadow:0 1px 0 rgba(240,253,255,.16)}
.square.dark .coord{color:#e2f3f8;text-shadow:0 1px 2px #233b45}
.square.arriving>.piece-white,.square.arriving>.piece-black{opacity:0}
.piece-flight{position:absolute;z-index:5;display:grid;place-items:center;width:12.5%;height:12.5%;pointer-events:none;font-family:"Segoe UI Symbol","Noto Sans Symbols 2","DejaVu Sans",sans-serif;font-size:clamp(2rem,7.3vw,5.25rem);line-height:1;transition:transform .24s cubic-bezier(.21,.75,.33,1);will-change:transform}
.last-move-info{display:flex;align-items:center;gap:12px;min-height:45px;margin-top:10px;padding:8px 12px;border:1px solid #334b57;border-left:3px solid #eab36e;background:linear-gradient(100deg,rgba(66,48,28,.37),rgba(9,18,26,.95));font-family:var(--cw-mono)}
.last-move-kicker{color:#d7ae71;font-size:.62rem;letter-spacing:.11em;font-weight:800;white-space:nowrap}
#last-move-text{font-size:.8rem;color:#fff;letter-spacing:.02em;white-space:nowrap}
#last-move-side{margin-left:auto;color:#aebfc6;font:500 .72rem/1.35 var(--cw-sans);text-align:right}
.last-move-info[data-by="none"]{border-left-color:#55717d;background:#0c161e}
.last-move-info[data-by="none"] .last-move-kicker{color:#7b9bab}
.board-note{padding-top:10px;min-height:32px;font-size:.78rem}
.move-log{max-height:250px}
.move-log li.current-move{border-top-color:#d4a264;background:linear-gradient(90deg,rgba(231,174,96,.13),transparent)}
.move-log li.current-move span{color:#ffe3b4}
.game-toolbar select,.game-toolbar .button{transition:border-color .15s ease,background-color .15s ease}
.game-toolbar select:focus-visible,.game-toolbar button:focus-visible{outline:2px solid #93f9f5;outline-offset:3px}
@keyframes turnBeacon{0%,100%{box-shadow:0 0 0 5px rgba(98,233,245,.12),0 0 14px rgba(98,233,245,.3)}50%{box-shadow:0 0 0 7px rgba(98,233,245,.05),0 0 24px rgba(98,233,245,.55)}}
@keyframes thinkBeacon{0%,100%{opacity:.55;transform:scale(.85)}50%{opacity:1;transform:scale(1.12)}}
@keyframes arriveFlash{0%{opacity:1;transform:scale(.78)}100%{opacity:0;transform:scale(1.04)}}
@media(max-width:900px){.game-layout{grid-template-columns:1fr}.game-sidebar{grid-template-columns:1fr 1fr}}
@media(max-width:620px){
 .game-hero{padding:21px 0 14px}.hero-principles{display:none}
 .game-shell-section{padding-top:13px}
 .board-wrap{padding:8px}
 .turn-hud{padding:10px 11px;min-height:68px;gap:6px}
 #turn-label{font-size:.95rem}
 #turn-detail{font-size:.7rem}
 .turn-state{font-size:.58rem;padding:5px 6px}
 .player-rails{gap:5px}.player-rail{padding:7px 8px;min-height:45px;gap:7px}
 .player-disc{flex-basis:13px;width:13px;height:13px}
 .player-rail b{font-size:.67rem}.player-rail small{font-size:.62rem}
 .board-stage{padding:2px}.chessboard{border-width:1px}
 .square{font-size:clamp(1.85rem,10.5vw,4rem)}
 .piece-flight{font-size:clamp(1.85rem,10.5vw,4rem)}
 .last-move-info{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;min-height:51px}
 #last-move-side{grid-column:2;margin-left:0;text-align:left;font-size:.68rem}
 .last-move-kicker{grid-row:span 2;align-self:center}
}
@media(prefers-reduced-motion:reduce){
 .turn-beacon{animation:none!important}
 .square.just-moved::before{animation:none!important;opacity:0}
 .piece-flight{display:none!important;transition:none!important}
}

/* Hidden promotion choices must remain hidden until a legal promotion. */
.promotion-modal[hidden]{display:none!important}


/* Strategy Lab V2: responsive glass cockpit, restrained motion and readable history. */
.game-hero{position:relative;background:radial-gradient(ellipse at 70% 0%,rgba(26,111,137,.16),transparent 65%),radial-gradient(ellipse at 6% 80%,rgba(78,58,143,.1),transparent 48%)}
.game-shell-section{position:relative;background:radial-gradient(ellipse at 70% 15%,rgba(60,101,128,.11),transparent 65%)}
.game-shell-section .panel,.game-hero .panel{
 background:linear-gradient(142deg,rgba(24,42,56,.76),rgba(7,15,23,.9) 55%,rgba(18,31,46,.78))!important;
 border:1px solid rgba(152,213,235,.23)!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 17px 50px rgba(0,0,0,.22)!important;
 backdrop-filter:blur(19px) saturate(145%);-webkit-backdrop-filter:blur(19px) saturate(145%);
}
.game-shell-section .board-wrap.panel{background:radial-gradient(circle at 50% -15%,rgba(76,199,218,.14),transparent 58%),linear-gradient(146deg,rgba(18,34,47,.89),rgba(4,12,19,.95))!important}
.game-shell-section .game-toolbar{padding:13px 15px;border:1px solid rgba(152,213,235,.17);background:rgba(8,20,30,.68);backdrop-filter:blur(15px)}
.game-toolbar .playback-speed{min-width:125px}
.game-toolbar button:disabled,.game-toolbar select:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.3)}
.turn-hud[data-phase="demo"]{border-color:#5295ac;border-left-color:#bba9ff;background:linear-gradient(110deg,rgba(39,34,71,.82),rgba(12,25,37,.75))}
.turn-hud[data-phase="demo"] .turn-beacon{border-color:#d3c3ff;background:#9f81ff;box-shadow:0 0 0 5px rgba(157,129,255,.12),0 0 20px rgba(157,129,255,.27)}
.game-sidebar>.panel{min-width:0}
.strategy-card h2,.strategy-compare h2{font-size:1.05rem!important;margin:8px 0 13px}
.strategy-live{color:#8ce9dc;font:700 .6rem/1.3 var(--cw-mono);letter-spacing:.07em}
.strategy-selectors{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.strategy-selectors label{display:grid;gap:5px;min-width:0;color:#c4dbe3;font:700 .64rem/1.3 var(--cw-mono);text-transform:uppercase;letter-spacing:.07em}
.strategy-selectors select{width:100%;min-height:39px;border:1px solid rgba(145,218,237,.32);background:#0b1c28;color:#f5fcff;padding:7px;border-radius:4px;font-size:.75rem}
.strategy-selectors select:focus-visible{outline:2px solid #72e8ef;outline-offset:2px}
.strategy-tradeoffs{display:grid;gap:7px}
.strategy-tradeoff{display:grid;gap:4px;padding:9px 10px;border:1px solid rgba(130,184,205,.15);background:rgba(10,26,38,.57)}
.strategy-tradeoff strong{font:750 .73rem/1.2 var(--cw-mono);color:#d6f2fb}
.strategy-tradeoff span{font-size:.75rem;line-height:1.45;color:#aebdc7}
.strategy-disclaimer{margin:10px 0 0;color:#91aaba;font-size:.71rem;line-height:1.45}
.strategy-options{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:5px}
.strategy-options li{display:grid;grid-template-columns:minmax(100px,.82fr) minmax(0,1fr);gap:3px 9px;align-items:start;padding:8px 10px;border:1px solid rgba(127,164,181,.18);background:rgba(4,19,30,.45)}
.strategy-options li.strategy-selected{border-color:rgba(102,238,238,.62);background:rgba(37,118,134,.15)}
.strategy-options strong{font-size:.73rem;color:#d6e9f0}
.strategy-options span{font:700 .71rem/1.3 var(--cw-mono);color:#c9faff;text-align:right}
.strategy-options small{grid-column:1/-1;font-size:.68rem;color:#9fb6c4}
.ledger-intro{font-size:.77rem;color:#acbfca;margin:7px 0 11px}
.move-log{max-height:440px;display:grid;grid-template-columns:1fr;gap:5px;padding-right:3px;font-family:var(--cw-sans)}
.move-log li{display:grid;grid-template-columns:29px 30px minmax(0,1fr);gap:8px;align-items:start;padding:9px;border:1px solid rgba(139,189,210,.17);background:rgba(3,13,21,.47)}
.move-log li.current-move{border-color:rgba(248,193,112,.75);background:linear-gradient(100deg,rgba(153,101,44,.22),rgba(8,23,34,.53))}
.move-log .ledger-turn{font:750 .72rem/1.6 var(--cw-mono);color:#9fb6c4;min-width:0}
.move-log .ledger-piece{font:2rem/1 "Segoe UI Symbol","Noto Sans Symbols 2",sans-serif}
.move-log .ledger-details{display:grid;gap:4px;min-width:0}
.move-log .ledger-details strong{font:750 .73rem/1.4 var(--cw-mono);color:#f1fcff;overflow-wrap:anywhere}
.move-log .ledger-cs-action{color:#75e6ef;font:700 .73rem/1.3 var(--cw-sans)}
.move-log .ledger-details small{font-size:.71rem;line-height:1.45;color:#afc0cc}
.capture-ledger{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.capture-ledger>div{display:grid;gap:6px;padding:11px;border:1px solid rgba(155,207,230,.2);background:rgba(7,20,31,.68)}
.capture-ledger strong{font:700 .67rem/1.3 var(--cw-mono);color:#cfedf4;text-transform:uppercase}
.capture-ledger span{min-height:21px;color:#edf9fe;font:1.1rem/1.2 "Segoe UI Symbol","Noto Sans Symbols 2",sans-serif;overflow-wrap:anywhere}
.capture-ledger small{font:.65rem/1.2 var(--cw-mono);color:#91b2c1}
@media(max-width:900px){
 .game-sidebar{grid-template-columns:1fr 1fr}
 .game-sidebar>.strategy-card,.game-sidebar>.strategy-compare,.game-sidebar>.timeline-card{grid-column:1/-1}
}
@media(max-width:620px){
 .game-toolbar .playback-speed{flex:1}
 .game-toolbar .button{min-height:40px}
 .game-sidebar{grid-template-columns:1fr}
 .game-sidebar>.panel{grid-column:auto!important}
 .strategy-selectors{grid-template-columns:1fr}
 .strategy-options li{grid-template-columns:minmax(0,1fr) auto}
 .move-log{max-height:360px}
 .capture-ledger{grid-template-columns:1fr 1fr}
 .game-shell-section .game-toolbar{padding:9px}
}
@media(prefers-reduced-motion:reduce){
 .game-shell-section *{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .game-shell-section .panel,.game-hero .panel{background:#0a1823!important}
}


/* V3: normalized vector chess silhouettes and a single compact game-record surface. */
.chessboard .square{overflow:hidden}
.chessboard .square .chess-piece{
 width:88%;height:88%;display:grid;place-items:center;position:relative;z-index:1;
 pointer-events:none;transition:filter .14s ease;flex-shrink:0
}
.piece-vector{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 2px 2px rgba(3,13,21,.38))}
.piece-vector-white .piece-vector g{fill:#f1f9fc;stroke:#2b4350}
.piece-vector-black .piece-vector g{fill:#122734;stroke:#b0d1df}
.chess-piece .piece-vector .piece-detail{fill:none;stroke:inherit;stroke-width:2.6}
.piece-vector-white .piece-vector .piece-eye{fill:#385467;stroke:#385467}
.piece-vector-black .piece-vector .piece-eye{fill:#6ee2f4;stroke:#6ee2f4}
.square.last-to .piece-vector{filter:drop-shadow(0 0 4px rgba(255,229,160,.36))}
.square.selected .piece-vector{filter:drop-shadow(0 0 4px rgba(56,237,226,.45))}
.piece-flight.chess-piece{width:12.5%;height:12.5%;display:grid;place-items:center;z-index:5}
.piece-flight.chess-piece .piece-vector{width:88%;height:88%}
.game-sidebar .compact-disclosure{padding:0!important;overflow:hidden}
.compact-disclosure>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:55px;padding:15px 18px;cursor:pointer}
.compact-disclosure>summary::-webkit-details-marker{display:none}
.compact-disclosure>summary::marker{content:''}
.compact-disclosure>summary:focus-visible{outline:2px solid var(--cyan);outline-offset:-3px}
.compact-disclosure>summary strong{margin-left:auto;font:750 .75rem/1.2 var(--cw-sans);color:#d6eaf1}
.disclosure-caret{color:#8cb2c1;font-size:1.15rem;line-height:1}
.compact-disclosure[open] .disclosure-caret{transform:rotate(180deg)}
.compact-disclosure .strategy-options,.compact-disclosure .analogy-list{margin:0 18px 15px}
.compact-disclosure>.strategy-disclaimer{margin:0 18px 17px}
.timeline-card .panel-head{margin-bottom:12px}
.best-score-badge{font:750 .66rem/1.3 var(--cw-mono);color:#b5e4e9;white-space:nowrap}
.ledger-tabs{display:grid;grid-template-columns:1fr 1fr;margin:0 0 12px;border:1px solid rgba(124,168,186,.28);background:rgba(4,15,24,.57)}
.ledger-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 11px;border:0;border-bottom:2px solid transparent;background:transparent;color:#a4bbc8;cursor:pointer;font:750 .76rem/1.1 var(--cw-sans)}
.ledger-tabs button[aria-selected="true"]{color:#edfaff;border-bottom-color:#6de7f0;background:rgba(70,164,188,.15)}
.ledger-tabs button:focus-visible{outline:2px solid #8de5f7;outline-offset:-3px}
.ledger-tabs #move-count{color:#8baab8;font:700 .62rem/1.2 var(--cw-mono)}
.ledger-view[hidden],.score-finish[hidden]{display:none!important}
.ledger-view{min-width:0}
.ledger-view .ledger-intro{margin:0 0 10px}
.score-finish{margin:10px 0 14px;padding:14px;border:1px solid rgba(108,234,239,.46);border-left:3px solid #62e9f5;background:linear-gradient(120deg,rgba(28,85,97,.25),rgba(9,25,37,.65))}
.score-finish>strong{display:block;color:#d1f8fb;font:800 .82rem/1.2 var(--cw-display)}
.score-finish p{margin:7px 0 12px;color:#b0cbd4;font-size:.74rem;line-height:1.45}
.score-name-form{display:grid;gap:5px}
.score-name-form label{font:700 .64rem/1.2 var(--cw-mono);text-transform:uppercase;color:#abc8d1}
.score-name-form>div{display:flex;gap:6px}
.score-name-form input{width:100%;min-width:0;flex:1;min-height:39px;padding:7px 9px;border-radius:3px;border:1px solid #47687b;background:#081924;color:#fff;font-size:.85rem}
.score-name-form button{flex:0 0 auto;min-height:39px;padding:6px 11px;border:1px solid #77dfe8;border-radius:3px;background:#14343f;color:#efffff;font:700 .74rem var(--cw-sans);cursor:pointer}
.score-name-form input:focus-visible,.score-name-form button:focus-visible{outline:2px solid #a2f9f5;outline-offset:2px}
.score-name-message{display:block;margin-top:6px;color:#8df4e2;font-size:.73rem}
.score-list{max-height:325px;overflow:auto;margin:0;padding:0;display:grid;gap:5px;list-style:none}
.score-list .score-entry{display:grid;grid-template-columns:29px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid rgba(132,178,194,.18);background:rgba(4,18,28,.55)}
.score-list .score-entry.score-latest{border-color:rgba(235,186,106,.7);background:rgba(109,76,37,.13)}
.score-rank{font:700 .78rem var(--cw-mono);color:#80b8c7}
.score-entry>div{min-width:0;display:grid;gap:3px}
.score-entry strong{font:.78rem/1.2 var(--cw-sans);color:#ecf9fd;overflow-wrap:anywhere}
.score-entry small{font:.66rem/1.2 var(--cw-mono);color:#8ea6b5}
.score-points{font:800 .87rem var(--cw-mono);color:#d0faff;font-variant-numeric:tabular-nums}
.score-empty{padding:16px 12px;border:1px dashed #355668;color:#adc6ce;font-size:.8rem}
.score-rule{margin:13px 0 7px;color:#aec1cb;font-size:.72rem;line-height:1.5}
.score-storage-status{color:#8fa8b6;font:700 .67rem/1.4 var(--cw-mono)}
@media(max-width:620px){
 .chessboard .square .chess-piece{width:91%;height:91%}
 .compact-disclosure>summary{padding:13px}
 .compact-disclosure .strategy-options,.compact-disclosure .analogy-list{margin-inline:13px}
 .score-name-form>div{flex-wrap:wrap}
 .score-name-form input{flex-basis:150px}
 .score-name-form button{flex:1}
 .ledger-tabs button{min-height:46px}
}
@media(prefers-reduced-motion:reduce){
 .chessboard .square .chess-piece{transition:none!important}
}

/* The QBRook title is the public game identity; keep the console-like visual language. */
.game-hero h1{letter-spacing:-.045em}
.game-hero .qbrook-powered{display:inline-flex;margin:0 0 14px;padding:5px 10px;border-left:2px solid var(--cyan);background:rgba(104,228,246,.055);color:#afe9f3;letter-spacing:.11em}
