:root{--bg-base: #08090b;--bg-surface: #101218;--bg-elevated: #171a22;--bg-panel: rgba(17, 19, 25, .86);--bg-card: rgba(24, 27, 35, .76);--bg-card-hover: rgba(32, 36, 46, .92);--bg-input: rgba(8, 10, 14, .84);--border-subtle: rgba(255, 255, 255, .055);--border-default: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .18);--border-accent: rgba(52, 211, 153, .35);--text-primary: #f2f3f5;--text-secondary: #b2b7c2;--text-tertiary: #949aa7;--text-heading: #ffffff;--text-muted: #7c8391;--accent: #2dd4bf;--accent-ink: #2dd4bf;--accent-hover: #34d399;--accent-muted: #0f766e;--accent-subtle: rgba(45, 212, 191, .14);--accent-glow: rgba(45, 212, 191, .26);--danger: #ef4444;--danger-subtle: rgba(239, 68, 68, .12);--warning: #f59e0b;--warning-subtle: rgba(245, 158, 11, .12);--success: #10b981;--success-subtle: rgba(16, 185, 129, .12);--info: #3b82f6;--info-subtle: rgba(59, 130, 246, .12);--glass-1: rgba(255, 255, 255, .025);--glass-2: rgba(255, 255, 255, .035);--glass-3: rgba(255, 255, 255, .05);--glass-4: rgba(255, 255, 255, .08);--glass-5: rgba(255, 255, 255, .12);--bg-scrim: rgba(11, 13, 17, .94);--bg-inset: rgba(8, 10, 14, .42);--bg-tooltip: rgba(6, 8, 12, .9);--tooltip-text: #ffffff;--backdrop: rgba(0, 0, 0, .66);--accent-chip-bg: #06110f;--accent-chip-text: #7defde;--graph-grid: rgba(240, 246, 252, .05);--graph-axis: rgba(240, 246, 252, .35);--graph-white: #f0f6fc;--graph-white-glow: rgba(240, 246, 252, .3);--graph-cursor: rgba(255, 255, 255, .8);--graph-draw: #ffb86c;--graph-black: #58a6ff;--quality-book: #cbd5e1;--quality-best: #10b981;--quality-good: #34d399;--quality-inaccuracy: #fbbf24;--quality-mistake: #f97316;--quality-blunder: #ef4444;--quality-pending: #71717a;--quality-good-ink: #34d399;--quality-blunder-ink: #f87171;--quality-pending-ink: #949aa7;--graph-height: 160px;--eval-col-w: 1.625rem;--eval-col-gap: .5rem;--stage-pad-x: 1.25rem;--stage-pad-y: 1.35rem;--board-frame: .55rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: .75rem;--space-lg: 1rem;--space-xl: 1.5rem;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-pill: 9999px;--shadow-sm: 0 4px 14px rgba(0, 0, 0, .26);--shadow-md: 0 10px 30px rgba(0, 0, 0, .42);--shadow-lg: 0 22px 60px rgba(0, 0, 0, .58);--shadow-glow: 0 0 24px var(--accent-glow);--font-heading: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;font-family:var(--font-body);line-height:1.5;font-weight:400;color:var(--text-primary);color-scheme:dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=light]{--bg-base: #eef0f3;--bg-surface: #f7f8fa;--bg-elevated: #ffffff;--bg-panel: rgba(255, 255, 255, .88);--bg-card: rgba(255, 255, 255, .84);--bg-card-hover: rgba(241, 243, 246, .96);--bg-input: rgba(255, 255, 255, .92);--border-subtle: rgba(15, 23, 42, .07);--border-default: rgba(15, 23, 42, .13);--border-strong: rgba(15, 23, 42, .24);--border-accent: rgba(13, 148, 136, .42);--text-primary: #111827;--text-secondary: #374151;--text-tertiary: #4b5563;--text-heading: #0b1220;--text-muted: #5b6470;--accent: #0d9488;--accent-ink: #115e59;--accent-hover: #0f766e;--accent-muted: #99f6e4;--accent-subtle: rgba(13, 148, 136, .12);--accent-glow: rgba(13, 148, 136, .22);--danger: #dc2626;--danger-subtle: rgba(220, 38, 38, .1);--warning: #b45309;--warning-subtle: rgba(180, 83, 9, .1);--success: #047857;--success-subtle: rgba(4, 120, 87, .1);--info: #1d4ed8;--info-subtle: rgba(29, 78, 216, .1);--glass-1: rgba(15, 23, 42, .03);--glass-2: rgba(15, 23, 42, .045);--glass-3: rgba(15, 23, 42, .06);--glass-4: rgba(15, 23, 42, .09);--glass-5: rgba(15, 23, 42, .13);--bg-scrim: rgba(247, 248, 250, .94);--bg-inset: rgba(15, 23, 42, .05);--bg-tooltip: rgba(17, 24, 39, .94);--tooltip-text: #ffffff;--backdrop: rgba(15, 23, 42, .42);--accent-chip-bg: #ccfbf1;--accent-chip-text: #0f766e;--graph-grid: rgba(15, 23, 42, .07);--graph-axis: rgba(15, 23, 42, .42);--graph-white: #334155;--graph-white-glow: rgba(51, 65, 85, .22);--graph-cursor: rgba(15, 23, 42, .75);--graph-draw: #b45309;--graph-black: #1d4ed8;--quality-book: #475569;--quality-best: #047857;--quality-good: #059669;--quality-inaccuracy: #b45309;--quality-mistake: #9a3412;--quality-blunder: #7f1d1d;--quality-pending: #6b7280;--quality-good-ink: #065f46;--quality-blunder-ink: #b91c1c;--quality-pending-ink: #4b5563;--shadow-sm: 0 4px 14px rgba(15, 23, 42, .08);--shadow-md: 0 10px 30px rgba(15, 23, 42, .12);--shadow-lg: 0 22px 60px rgba(15, 23, 42, .16);color-scheme:light}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;min-width:320px;background:var(--bg-base);scroll-behavior:smooth;overflow-x:hidden;max-width:100%}::selection{background:#2dd4bf47;color:var(--text-heading)}#root{width:100%}.app-error-shell{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:1rem;background:radial-gradient(circle at 50% 0%,rgba(45,212,191,.12),transparent 34rem),linear-gradient(180deg,#101218 0%,var(--bg-base) 100%)}.app-error-card{width:min(100%,31rem);padding:1.4rem;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-panel);box-shadow:var(--shadow-lg)}.app-error-kicker{margin:0 0 .45rem;color:var(--accent-ink);font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.app-error-card h1{margin:0;color:var(--text-heading);font-size:1.7rem}.app-error-card p{color:var(--text-secondary)}.app-error-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}@media(max-width:520px){.app-error-card h1{font-size:1.35rem}}.app-error-actions button{min-height:2.5rem;padding:0 .85rem;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);font:inherit;font-weight:650;cursor:pointer}.app-error-actions button:first-child{border-color:var(--border-accent);background:var(--accent-subtle);color:var(--accent-ink)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#6e76813d;border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:#6e768170}button.engine-details-trigger{display:flex;flex-direction:column;align-items:flex-start;gap:.12rem;min-width:44px;min-height:44px;padding:.22rem .45rem;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);font:600 .67rem / 1.3 var(--font-body);white-space:nowrap;cursor:pointer}.engine-details-popover{position:fixed;inset:auto 1rem 4rem auto;margin:0;width:min(28rem,calc(100vw - 2rem));max-height:calc(100dvh - 6rem);box-sizing:border-box;overflow:auto;overscroll-behavior:contain;padding:.7rem;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-base);color:var(--text-primary);box-shadow:var(--shadow-lg)}.engine-details-popover>header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.6rem}.engine-details-popover h2{margin:0;font-size:.85rem}.engine-details-popover header button{min-width:44px;min-height:44px}.engine-details-readings{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.engine-details-readings>.bottom-engine-info{flex-wrap:wrap}.engine-details-readings>.engine-command-inline,.engine-details-readings>.engine-telemetry-inline,.engine-details-readings>.best-move{max-width:100%;white-space:normal;overflow-wrap:anywhere;overflow:visible}.dialog-chunk-error{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);z-index:60;max-width:min(30rem,calc(100% - 2rem));padding:.6rem .9rem;border:1px solid var(--danger);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);font-size:.8rem;line-height:1.35;box-shadow:0 8px 24px #00000059}.phase-accuracy{display:flex;flex-direction:column;gap:.24rem;margin-bottom:.48rem}.phase-accuracy-row{display:grid;grid-template-columns:1fr auto auto;align-items:baseline;gap:.5rem;width:100%;padding:.3rem .5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.phase-accuracy-row:hover{border-color:var(--border-default)}.phase-accuracy-row.selected{border-color:var(--border-accent);background:var(--accent-subtle)}.phase-accuracy-label{color:var(--text-tertiary);font-size:.58rem;font-weight:700;text-transform:uppercase}.phase-accuracy-scores{display:flex;gap:.4rem;font-family:var(--font-mono);font-size:.72rem}.phase-accuracy-scores strong{color:var(--text-primary);font-weight:700}.phase-accuracy-scores i{color:var(--text-tertiary);font-style:normal;font-size:.58rem;font-weight:700}.phase-accuracy-count{color:var(--text-tertiary);font-size:.6rem;white-space:nowrap}.input-textarea{width:100%;height:180px;resize:vertical;padding:.8rem;font-size:.82rem;font-family:var(--font-mono);color:var(--text-primary);background:var(--bg-inset);border:1px solid var(--border-default);border-radius:8px;box-shadow:inset 0 2px 6px #0000004d;outline:none;transition:border-color .15s ease;box-sizing:border-box}.input-textarea:focus{border-color:var(--accent);box-shadow:inset 0 2px 6px #0000004d,0 0 0 2px var(--accent-subtle)}.input-textarea[aria-invalid=true]{border-color:var(--danger);box-shadow:inset 0 2px 6px #0000004d,0 0 0 2px #f8514929}.input-textarea::placeholder{color:var(--text-tertiary)}.dialog-error{margin:.65rem 0 0;color:var(--danger);font-size:.8rem;line-height:1.4}.dialog-quick-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 .65rem}.dialog-quick-actions .btn-cancel{padding:.42rem .7rem;font-size:.74rem;min-height:36px}.dialog-file-input{display:none}.dialog-file-name{display:inline-flex;align-items:center;min-width:0;max-width:100%;color:var(--text-secondary);font-size:.76rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-file-summary{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.8rem;border:1px dashed var(--border-default);border-radius:8px;background:var(--bg-inset)}.dialog-file-summary p{margin:0;min-width:0;color:var(--text-secondary);font-size:.8rem;line-height:1.4}.dialog-file-summary .btn-cancel{flex:none;padding:.42rem .7rem;font-size:.74rem;min-height:36px}.dialog-share-fallback{display:grid;gap:.45rem}.dialog-share-fallback input{width:100%;min-width:0;min-height:38px;padding:.45rem .55rem;border:1px solid var(--border-default);border-radius:var(--radius-xs);background:var(--bg-inset);color:var(--text-primary);font-family:var(--font-mono);font-size:.72rem;box-sizing:border-box}.dialog-export-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:0 0 .65rem}.fen-setup-card{display:grid;gap:.45rem;margin:0 0 .65rem;padding:.5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-inset)}.fen-setup-palette{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:.24rem}.fen-piece-btn{min-width:0;min-height:34px;padding:0;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--bg-elevated);color:var(--text-primary);font-size:.98rem;line-height:1;cursor:pointer}.fen-piece-btn.eraser{color:var(--text-tertiary);font-size:1rem;font-weight:800}.fen-piece-btn.active{border-color:#7defde9e;background:var(--accent-subtle);color:var(--accent-ink)}.fen-setup-grid{display:grid;grid-template-columns:minmax(0,16.25rem) minmax(6.4rem,1fr);gap:.55rem;align-items:start}.fen-setup-board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));aspect-ratio:1;width:min(100%,16.25rem);border:1px solid var(--border-default);border-radius:var(--radius-sm);overflow:hidden;box-shadow:inset 0 0 0 1px #00000052}.fen-setup-square{min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:#f0d9b5;color:#f8fafc;font-size:1.2rem;line-height:1;display:grid;place-items:center;text-shadow:0 1px 3px rgba(0,0,0,.72);cursor:pointer}.fen-setup-square:nth-child(16n+2),.fen-setup-square:nth-child(16n+4),.fen-setup-square:nth-child(16n+6),.fen-setup-square:nth-child(16n+8),.fen-setup-square:nth-child(16n+9),.fen-setup-square:nth-child(16n+11),.fen-setup-square:nth-child(16n+13),.fen-setup-square:nth-child(16n+15){background:#b58863}.fen-setup-square.black-piece{color:#16191f;text-shadow:0 1px 2px rgba(255,255,255,.38)}.fen-setup-controls{display:grid;gap:.55rem}.fen-setup-control-block,.fen-side-toggle{display:grid;gap:.35rem}.fen-side-btn{min-height:34px;padding:.32rem .42rem}.fen-castling-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.fen-setup-control-block:has(>.fen-castling-grid){container:fen-castling / inline-size}@container fen-castling (max-width: 18rem){.fen-castling-grid{grid-template-columns:minmax(0,1fr)}.fen-castling-grid .fen-castling-option small{white-space:normal}}.fen-castling-option{justify-content:flex-start;min-height:38px;padding:.34rem .42rem}.fen-castling-option.disabled{opacity:.58;cursor:not-allowed}.fen-castling-option span{min-width:.8rem;color:var(--text-primary);font-family:var(--font-mono);font-size:.76rem}.fen-castling-option small{min-width:0;overflow:hidden;color:var(--text-tertiary);font-size:.62rem;font-weight:600;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.fen-castling-option.disabled span,.fen-castling-option.disabled small{color:var(--text-tertiary)}.fen-counter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.fen-counter-field{display:grid;gap:.25rem;min-width:0;color:var(--text-secondary);font-size:.68rem;font-weight:700}.fen-counter-field input{width:100%;min-width:0;min-height:34px;padding:.38rem .5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--bg-inset);color:var(--text-primary);font:inherit;font-size:.76rem;box-sizing:border-box}.dialog-check-option{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:34px;padding:.38rem .5rem;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--bg-elevated);color:var(--text-secondary);font-size:.72rem;font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none}.dialog-check-option input{width:.9rem;height:.9rem;margin:0;accent-color:var(--accent)}.pgn-dialog{max-width:560px}.pgn-dialog .fen-textarea{height:96px;min-height:82px}.dialog-backdrop{position:fixed;inset:0;z-index:3000;background:var(--backdrop);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:backdrop-in .18s ease}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.dialog-panel{display:flex;flex-direction:column;width:100%;max-width:460px;max-height:calc(100dvh - 2rem);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 32px 80px #0009,0 0 0 1px var(--border-subtle);overflow:hidden;animation:panel-in .24s cubic-bezier(.22,1,.36,1)}.dialog-body{flex:1 1 auto;min-height:0;max-height:min(74vh,720px);max-height:min(74dvh,720px);overflow-y:auto}@keyframes panel-in{0%{opacity:0}to{opacity:1}}.dialog-header{display:flex;align-items:center;gap:.6rem;padding:1.2rem 1.4rem 0}.dialog-icon{font-size:1.3rem;line-height:1;opacity:.85}.dialog-header h2{margin:0;font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:var(--text-heading);letter-spacing:0}.dialog-section{padding:1rem 1.4rem 0}.dialog-label{margin:0 0 .5rem;font-family:var(--font-heading);font-size:.68rem;font-weight:700;letter-spacing:0;text-transform:uppercase;color:var(--text-tertiary)}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.mode-card{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.7rem .5rem;min-width:0;border-radius:var(--radius-md);border:1.5px solid var(--border-subtle);background:var(--bg-elevated);cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1);font-family:inherit;text-align:center}@media(max-width:620px){.dialog-export-options{grid-template-columns:repeat(2,minmax(0,1fr))}.fen-setup-palette{grid-template-columns:repeat(auto-fit,minmax(44px,1fr))}.fen-setup-palette>.fen-piece-btn:nth-child(7){grid-column-start:1}.fen-piece-btn{min-height:44px;font-size:1.08rem}.fen-setup-grid{grid-template-columns:1fr}.fen-setup-board{width:min(100%,23rem);justify-self:center}.fen-setup-square{font-size:1.35rem}.fen-side-toggle{grid-template-columns:repeat(2,minmax(0,1fr))}.fen-side-btn,.fen-castling-option{min-height:44px}}.mode-card:hover{border-color:var(--border-accent);background:var(--accent-subtle);transform:translateY(-1px)}.mode-card.selected{border-color:var(--accent);background:var(--accent-subtle);box-shadow:0 0 0 3px #2dd4bf1f}.mode-icon{font-size:1.35rem;line-height:1}.mode-card strong{font-size:.74rem;font-weight:600;color:var(--text-primary);line-height:1.2}.mode-desc{font-size:.65rem;color:var(--text-tertiary);line-height:1.3}.color-picker{display:flex;gap:.45rem}.color-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem 1rem;border-radius:var(--radius-md);border:1.5px solid var(--border-subtle);background:var(--bg-elevated);font-family:inherit;font-size:.8rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1)}.color-btn:hover{border-color:var(--border-accent);background:var(--accent-subtle);transform:translateY(-1px)}.color-btn.selected{border-color:var(--accent);background:var(--accent-subtle);box-shadow:0 0 0 3px #2dd4bf1f}.color-piece{font-size:1.25rem;line-height:1}.color-piece.dark{filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.difficulty-label-value{color:var(--accent-ink);font-family:var(--font-mono)}.difficulty-slider{width:100%;accent-color:var(--accent);min-height:36px;height:36px;margin:.05rem 0 .1rem;cursor:pointer}.difficulty-ticks{display:flex;justify-content:space-between;margin:-.6rem -10px .25rem}.tick{appearance:none;-webkit-appearance:none;border:0;padding:0;width:36px;height:36px;border-radius:50%;background:transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.tick:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--border-strong);transition:background .15s ease,transform .15s ease}.tick.active:before{background:var(--accent);transform:scale(1.4)}.difficulty-desc{margin:0;font-size:.73rem;color:var(--text-secondary);line-height:1.45}.dialog-actions{display:flex;gap:.5rem;justify-content:flex-end;padding:1.1rem 1.4rem 1.2rem;margin-top:.5rem;border-top:1px solid var(--border-subtle)}.btn-cancel{min-height:36px;padding:.5rem 1rem;border-radius:9px;border:1px solid var(--border-default);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-cancel:hover{background:var(--bg-elevated);color:var(--text-primary)}.btn-start{min-height:36px;padding:.55rem 1.3rem;border-radius:9px;border:1px solid rgba(125,239,222,.58);background:linear-gradient(180deg,#38dcc8,#16b6a8);color:#041310;font-family:inherit;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1);box-shadow:0 10px 24px #2dd4bf29}.btn-start:hover{background:linear-gradient(180deg,#5eead4,#20c7b6);border-color:#a7f3e8c2;color:#02110f;box-shadow:0 12px 30px #2dd4bf3d;transform:translateY(-1px)}.btn-start:active{transform:translateY(0);box-shadow:none}.btn-start:disabled,.btn-cancel:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-elevated);border-color:var(--border-default);color:var(--text-secondary);box-shadow:none;transform:none}.ai-thinking-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:10}.ai-thinking-badge{background:var(--bg-panel);border:1px solid var(--border-default);color:var(--text-primary);font-size:.78rem;font-weight:600;padding:.45rem .95rem;border-radius:999px;display:flex;align-items:center;gap:.45rem;box-shadow:0 4px 16px #0006;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(max-width:560px){.dialog-backdrop{align-items:flex-end;padding:0}.dialog-panel{max-width:none;width:100%;max-height:calc(100dvh - env(safe-area-inset-top) - .5rem);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-left:0;border-right:0;border-bottom:0;overflow:hidden}.dialog-body{max-height:78vh;max-height:78dvh}.dialog-header,.dialog-section{padding-left:1rem;padding-right:1rem}.mode-grid{grid-template-columns:1fr}.pgn-dialog .mode-grid,.new-game-dialog .mode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mode-card{min-height:48px}.new-game-dialog .mode-card{min-height:96px;padding:.62rem .34rem}.new-game-dialog .mode-card strong{font-size:.68rem}.new-game-dialog .mode-desc{font-size:.6rem;line-height:1.22}.dialog-actions{flex-wrap:wrap;position:sticky;bottom:0;padding-left:1rem;padding-right:1rem;padding-bottom:calc(1.2rem + env(safe-area-inset-bottom));background:var(--bg-surface);z-index:2}}@media(max-width:620px){.dialog-quick-actions .btn-cancel,.dialog-file-summary .btn-cancel,.dialog-actions .btn-cancel,.dialog-actions .btn-start,.dialog-export-options .dialog-check-option,.fen-counter-field input{min-height:44px}}.dialog-note{margin:.5rem 0 0;font-size:.8125rem;line-height:1.45;color:var(--text-muted, #7c8391)}.time-control-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.4rem}.time-control-card{display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.45rem .35rem;min-width:0;border-radius:var(--radius-md);border:1.5px solid var(--border-subtle);background:var(--bg-elevated);cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1);font-family:inherit;text-align:center}.time-control-card:hover{border-color:var(--border-strong);background:var(--bg-card-hover)}.time-control-card.selected{border-color:var(--accent);background:var(--accent-subtle);box-shadow:0 0 0 3px #2dd4bf1f}.time-control-card strong{font-size:.82rem;font-weight:700;color:var(--text-heading);font-variant-numeric:tabular-nums;white-space:nowrap}.time-control-card span{font-size:.64rem;color:var(--text-muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-wrap:balance;max-width:100%}.time-control-card.selected span{color:var(--text-tertiary)}@media(max-width:620px){.time-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.dialog-external-link{margin:.5rem 0 0;font-size:.78rem;text-align:right}.dialog-external-link a{color:var(--accent-ink);text-decoration:none}.dialog-external-link a:hover,.dialog-external-link a:focus-visible{text-decoration:underline}.archive-fetch{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.9rem}.archive-source-row{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem}.archive-source-btn{padding:.45rem .6rem;border-radius:var(--radius-md);border:1.5px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text-primary);font-family:inherit;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1)}.archive-source-btn:hover{border-color:var(--border-strong);background:var(--bg-card-hover)}.archive-source-btn.selected{border-color:var(--accent);background:var(--accent-subtle);box-shadow:0 0 0 3px #2dd4bf1f}.archive-fetch-row{display:flex;align-items:stretch;gap:.4rem}.archive-input{flex:1 1 auto;min-width:0;padding:.5rem .65rem;border-radius:var(--radius-md);border:1.5px solid var(--border-subtle);background:var(--bg-input, var(--bg-elevated));color:var(--text-primary);font-family:inherit;font-size:.82rem}.archive-input:focus{outline:none;border-color:var(--accent)}.archive-input::placeholder{color:var(--text-tertiary)}.archive-count{display:flex;align-items:center;gap:.35rem;padding:0 .5rem;border-radius:var(--radius-md);border:1.5px solid var(--border-subtle);background:var(--bg-elevated)}.archive-count label{font-size:.7rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:0}.archive-count input{width:3.1rem;padding:.35rem .2rem;border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:.82rem;text-align:center}.archive-count input:focus{outline:none}.archive-fetch-btn{flex:0 0 auto;white-space:nowrap}.archive-hint{margin:0;font-size:.68rem;line-height:1.4;color:var(--text-tertiary)}.archive-paste-label{margin-top:.2rem}@media(max-width:620px){.archive-fetch-row{flex-wrap:wrap}.archive-input{flex:1 0 100%;min-height:44px}.archive-count{flex:1 1 auto;min-height:44px}.archive-count input,.archive-fetch-btn,.archive-source-btn{min-height:44px}}.color-piece.random{display:inline-flex;align-items:center}.color-piece.random svg:first-child{margin-right:-.42em}.color-piece.random svg:last-child{color:var(--text-tertiary)}.autosave-warning{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.5rem .75rem;background:var(--bg-panel);color:var(--text-primary);border-bottom:1px solid var(--border-subtle);font-size:.8rem}.autosave-warning p{flex:1 1 22rem;margin:0}.autosave-warning button{min-height:44px;padding:.55rem .75rem;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);font:inherit;cursor:pointer}.autosave-warning button:hover{background:var(--bg-card-hover)}.autosave-warning button:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}.analysis-guide{margin:.5rem 0;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-panel);color:var(--text-secondary);font-size:.8rem;line-height:1.55}.analysis-guide summary{overflow-wrap:anywhere;padding:.7rem;min-height:44px;cursor:pointer;color:var(--text-primary)}.analysis-guide>div{padding:0 .7rem .7rem}.analysis-guide p{margin:.65rem 0 0}.graph-guide-links{display:flex;flex-wrap:wrap;gap:0 .75rem;margin-top:.5rem}.graph-guide-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent-ink);text-underline-offset:.15em;overflow-wrap:anywhere}.saved-reviews{margin-bottom:1rem;min-width:0}.saved-reviews details{border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.saved-reviews summary{padding:.75rem;min-height:44px;box-sizing:border-box;cursor:pointer;font-size:.8rem;color:var(--text-primary)}.saved-reviews-content{display:grid;gap:.65rem;padding:0 .75rem .75rem;min-width:0}.saved-reviews label{font-size:.8rem;color:var(--text-secondary)}#saved-review-choice{width:100%;min-width:0;min-height:44px;padding:.5rem;font:inherit;font-size:.8rem;color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.saved-review-description,.saved-review-notice{overflow-wrap:anywhere}.saved-reviews .review-report-actions{margin-bottom:0}.saved-reviews .review-report-actions button{min-height:44px;min-width:min-content;overflow-wrap:anywhere}.saved-reviews>.review-report-actions,.saved-review-notice{margin-bottom:.75rem}.review-comparison{border-top:1px solid var(--border-subtle);padding-top:.75rem;min-width:0}.review-comparison h4{margin:0 0 .75rem}.review-comparison .panel-copy{overflow-wrap:anywhere}.review-comparison .comparison-filter{display:flex;align-items:center;gap:.5rem;min-height:44px;cursor:pointer}.comparison-positions{display:grid;gap:.75rem;list-style:none;padding:0}.comparison-positions li{min-width:0;padding:.6rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.review-comparison button.comparison-position{width:100%;min-height:44px;white-space:normal;text-align:left;color:var(--text-primary)}.comparison-positions dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.4rem;font-size:.75rem}.comparison-positions dt,.comparison-positions dd{margin:0;overflow-wrap:anywhere}.comparison-positions dt{color:var(--text-secondary)}.comparison-positions dd{font-variant-numeric:tabular-nums}.chess-clock{display:flex;align-items:center;gap:.3rem;flex:none}.clock-face{display:inline-flex;align-items:baseline;gap:.3rem;padding:.1rem .4rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-inset);line-height:1.25;transition:border-color .14s ease,background .14s ease,color .14s ease}.clock-face>i{font-style:normal;font-size:.62rem;font-weight:700;color:var(--text-muted)}.clock-face>strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:700;color:var(--text-secondary);min-width:3.4ch;text-align:right}.clock-face.running{border-color:var(--accent, #3fb950);background:#3fb9501f}.clock-face.running>strong{color:var(--text-heading)}.clock-face.low>strong{color:var(--warning)}.clock-face.running.low{border-color:var(--warning);background:#f0a04b24}.clock-face.flagged{border-color:var(--danger);background:#f8514929}.clock-face.flagged>strong{color:var(--danger)}.clock-paused{font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}@media(max-width:900px){.clock-face{padding:.05rem .3rem;gap:.22rem}.clock-face>strong{font-size:.76rem}.clock-face>i{font-size:.56rem}}.wdl-bar{position:relative;flex:1 1 auto;width:100%;min-height:0;border-radius:var(--radius-sm);overflow:hidden;display:flex;flex-direction:column;background:#0006;border:1px solid var(--border-subtle);box-shadow:inset 0 0 0 1px #00000059;z-index:5}.wdl-segment{width:100%;transition:height .5s cubic-bezier(.22,1,.36,1)}.wdl-white{background:linear-gradient(to bottom,#fff,#e2e8f0);box-shadow:0 0 8px #fff6;z-index:3}.wdl-draw{position:absolute;left:0;right:0;background:#94a3b824;box-shadow:inset 0 1px #e2e8f0bf,inset 0 -1px #0f172abf;pointer-events:none;z-index:4;transition:height .5s cubic-bezier(.22,1,.36,1),bottom .5s cubic-bezier(.22,1,.36,1),top .5s cubic-bezier(.22,1,.36,1)}.wdl-bar.is-flipped .wdl-draw{box-shadow:inset 0 1px #0f172abf,inset 0 -1px #e2e8f0bf}.wdl-black{background:linear-gradient(to bottom,#334155,#0f172a);box-shadow:inset 0 -4px 8px #000c;z-index:1}.horizontal-wdl-bar{display:flex;flex-direction:row;height:4px;width:100%;border-radius:2px;overflow:hidden;margin-top:6px;background:#0003;box-shadow:inset 0 1px 2px #0006}.hw-segment{height:100%;transition:width .4s cubic-bezier(.22,1,.36,1)}.hw-white{background:linear-gradient(to right,#e2e8f0,#fff);box-shadow:0 0 6px #fff6;z-index:3}.hw-draw{background:linear-gradient(to right,#94a3b8,#64748b);box-shadow:inset 1px 0 #ffffff73,inset -1px 0 #0000008c;z-index:2}.horizontal-wdl-bar.is-flipped .hw-draw{background:linear-gradient(to right,#64748b,#94a3b8);box-shadow:inset 1px 0 #0000008c,inset -1px 0 #ffffff73}.hw-black{background:linear-gradient(to right,#0f172a,#334155);z-index:1}.move-entry{margin-bottom:.6rem;font-size:.75rem;color:var(--text-secondary)}.move-entry summary{cursor:pointer;padding:.65rem 0;list-style:none}.move-entry summary::-webkit-details-marker{display:none}.move-entry summary:before{content:"";display:inline-block;width:0;height:0;margin-right:.5rem;border-top:.3rem solid transparent;border-bottom:.3rem solid transparent;border-left:.42rem solid currentColor;transition:transform .12s ease}.move-entry[open]>summary:before{transform:rotate(90deg)}@media(max-width:900px){.move-entry summary{min-height:44px;display:flex;align-items:center}}.move-entry form{display:grid;gap:.4rem;padding-bottom:.5rem}.move-entry-row{display:flex;gap:.4rem}.move-entry-row input{min-width:0;width:100%;padding:.5rem;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary);font:inherit}.move-entry-row input::placeholder{color:var(--text-secondary);opacity:1}.move-entry-row button{flex-shrink:0}.panel .move-entry-row input,.panel .move-entry-row button{min-height:2.75rem}.move-entry p{margin:0;line-height:1.5}.move-entry-row input[aria-disabled=true]{opacity:.48;cursor:not-allowed}.command-palette{max-width:32rem;width:min(32rem,calc(100% - 2rem))}.command-palette-input{width:100%;min-height:44px;padding:.5rem .625rem;border:1px solid var(--border-strong);border-radius:6px;background:var(--bg-inset);color:var(--text-primary);font:inherit;box-sizing:border-box}.command-palette .dialog-body{padding:.75rem 1rem 1rem}.command-palette-list{list-style:none;margin:.5rem 0 0;padding:0;max-height:min(24rem,50vh);max-height:min(24rem,50dvh);overflow-y:auto}.command-palette-row+.command-palette-row{margin-top:2px}.command-palette-button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.25rem .5rem;width:100%;padding:.5rem .625rem;border:1px solid transparent;border-radius:6px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.command-palette-row[data-active=true] .command-palette-button{border-color:var(--accent, #4f9d78);background:var(--glass-3)}.command-palette-button:disabled{cursor:default;opacity:.55}.command-palette-label{grid-area:1 / 1;min-width:0;overflow-wrap:anywhere}.command-palette-hint{grid-column:1 / -1;min-width:0;white-space:normal;overflow-wrap:anywhere;font-size:.75rem;opacity:.7}.command-palette-key{grid-area:1 / 2;justify-self:end;padding:.05rem .35rem;border:1px solid var(--border-strong);border-radius:4px;font-family:inherit;font-size:.7rem;opacity:.8}@media(any-hover:none)and (any-pointer:coarse){.command-palette-key{display:none}}.command-palette-count{margin:.5rem 0 0;font-size:.75rem;opacity:.65}@media(max-width:900px){.command-palette-button{min-height:44px}}@media(max-width:560px){.command-palette-list{height:min(24rem,50dvh)}.command-palette-count:last-child{margin-bottom:calc(min(24rem,50dvh) + .5rem)}}.app-shell{position:relative;width:100%;height:100vh;height:100dvh;font-family:var(--font-body);background:linear-gradient(180deg,var(--bg-surface) 0%,var(--bg-base) 52%,var(--bg-base) 100%);-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;box-sizing:border-box}body.resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.rem-probe{position:absolute;width:1rem;height:1rem;visibility:hidden;pointer-events:none}body.resizing *{cursor:col-resize!important}.main-container{flex:1;display:flex;position:relative;min-height:0;overflow-x:hidden;overflow-y:hidden;box-sizing:border-box}.panel{position:relative;transition:width .22s cubic-bezier(.22,1,.36,1);z-index:4;overflow:visible}.panel-inner{width:100%;height:100%;border:1px solid var(--border-subtle);background:var(--bg-panel);box-shadow:var(--shadow-md);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow:hidden;display:flex;flex-direction:column;transition:opacity .18s ease}.panel-inner[aria-hidden=true]{pointer-events:none}.panel.panel-collapsed .panel-inner{opacity:0;pointer-events:none}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:.78rem .9rem;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.panel-header h2{margin:0;font-family:var(--font-heading);font-size:.7rem;font-weight:700;letter-spacing:0;text-transform:uppercase;color:var(--text-primary)}.panel-content{padding:var(--space-md)}.panel-copy{margin:0 0 var(--space-md);color:var(--text-secondary);font-size:.8rem;line-height:1.55}.panel-copy.small{margin-top:var(--space-xs);font-size:.7rem;color:var(--text-tertiary)}.evaluation-source{overflow-wrap:anywhere}.review-report-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.review-report-actions button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px;min-width:min-content;flex:1 1 8rem;white-space:normal}.review-depth-guidance .review-report-actions button{min-height:44px;min-width:min-content}.review-report-actions svg{width:1rem;height:1rem;flex:0 0 auto}.panel button{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-panel);color:var(--text-primary);font-family:inherit;font-size:.78rem;font-weight:500;cursor:pointer;transition:all .15s cubic-bezier(.22,1,.36,1);display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:32px;min-height:32px;box-sizing:border-box;padding:.42rem .66rem;line-height:1;position:relative;overflow:hidden}.panel :is(input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea){min-height:32px;box-sizing:border-box}input[type=checkbox]{flex:none;width:1rem;height:1rem}@media(hover:hover)and (pointer:fine){.panel button:hover{background:var(--bg-card-hover);border-color:var(--border-strong);color:var(--text-heading)}.panel .analysis-tab-btn.active:hover,.panel .mode-pill.active:hover,.panel .gc-pill.gc-pill-active:hover{background:var(--accent-subtle);border-color:var(--border-accent);color:var(--accent-ink)}}.panel button:active{transform:scale(.97);box-shadow:inset 0 1px 3px #0000004d}.app-shell :is(button,summary,input,select,textarea,a,[role=button],[role=slider],[role=separator]):focus-visible{outline:2px solid var(--info);outline-offset:2px}.app-shell :is(button,summary,input,select,textarea,a,[role=button],[role=slider],[role=separator]):focus:not(:focus-visible){outline:none}.app-shell .board-wrap [data-square]:focus-visible,.app-shell .board-wrap [data-square] *:focus-visible{outline-color:var(--board-ink, #101218);outline-offset:-3px}.btn-primary{background:linear-gradient(180deg,#38dcc8,#16b6a8)!important;color:#041310!important;border-color:#7defde94!important;font-weight:600!important;box-shadow:0 8px 22px #2dd4bf29!important}@media(hover:hover)and (pointer:fine){.btn-primary:hover{background:linear-gradient(180deg,#5eead4,#20c7b6)!important;border-color:#a7f3e8c2!important;box-shadow:0 10px 28px #2dd4bf3d!important;color:#02110f!important}}.btn-primary:active{background:#12a89a!important}.btn-primary:disabled{background:var(--bg-elevated)!important;border-color:var(--border-default)!important;color:var(--text-secondary)!important;box-shadow:none!important}.btn-icon{font-size:1rem;line-height:1;opacity:.7;transition:opacity .15s ease}@media(hover:hover)and (pointer:fine){.panel button:hover .btn-icon{opacity:1}}.top{width:100%;z-index:2000;flex-shrink:0;background:var(--bg-scrim);border-bottom:1px solid var(--border-subtle);box-shadow:0 1px 0 var(--glass-1)}.top .panel-inner{border:none;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;flex-direction:row;align-items:center;overflow:visible;padding:.44rem .9rem;padding-top:calc(.44rem + env(safe-area-inset-top));padding-left:calc(.9rem + env(safe-area-inset-left));padding-right:calc(.9rem + env(safe-area-inset-right))}.top .panel-header{display:none}.top .panel-content{padding:.38rem .85rem;flex:1;overflow:visible}.top .compact-grid{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;width:100%}@media(max-width:900px){.top .compact-grid{overflow:visible;box-sizing:border-box}.top .app-brand{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;white-space:nowrap;clip-path:inset(50%);min-height:0;border:0}.top .panel-inner{padding-inline:calc(.5rem + env(safe-area-inset-left)) calc(.5rem + env(safe-area-inset-right))}.top .mobile-modes-wrapper{display:flex;align-items:center;gap:.45rem;flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;overflow-anchor:none}.top .mobile-modes-wrapper::-webkit-scrollbar{display:none}.top .mobile-modes-wrapper>*{scroll-snap-align:start}.top .mobile-actions{gap:.2rem}.top .settings-menu{margin-left:auto}.top .settings-menu>summary .btn-label{display:none}.top .settings-menu>summary{padding-inline:.7rem!important}}.top .compact-grid::-webkit-scrollbar{display:none}@media(min-width:901px)and (max-width:1139.98px){.top .settings-menu>summary .btn-label{display:none}.top .settings-menu>summary{padding-inline:.7rem!important}}@media(min-width:901px)and (max-width:1099.98px){.top .app-brand-text{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;white-space:nowrap;clip-path:inset(50%)}}.skip-links{position:fixed;top:calc(.5rem + env(safe-area-inset-top));left:calc(.5rem + env(safe-area-inset-left));z-index:4000;display:flex;gap:.4rem;pointer-events:none}.skip-links a{position:absolute;min-width:max-content;padding:.45rem .65rem;border:1px solid rgba(125,239,222,.58);border-radius:var(--radius-md);background:var(--accent-chip-bg);color:var(--accent-chip-text);box-shadow:var(--shadow-md);font-size:.78rem;font-weight:700;line-height:1;text-decoration:none;transform:translateY(-220%);opacity:0;pointer-events:auto;transition:transform .14s ease,opacity .14s ease}.skip-links a:focus-visible{transform:translateY(0);opacity:1}.mobile-actions{display:flex;flex-shrink:0;gap:.35rem;background:var(--glass-2);padding:.2rem;border-radius:24px;border:1px solid var(--border-subtle)}.mobile-actions button{display:flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;min-height:unset;padding:0;border-radius:50%;background:transparent;border:none;color:var(--text-secondary);box-sizing:border-box}@media(hover:hover)and (pointer:fine){.mobile-actions button:hover{background:var(--glass-4);color:var(--text-primary)}}.mobile-actions button:active{background:var(--glass-5)}.mobile-actions .btn-label{display:none}.mobile-modes-wrapper{display:contents}.top-mode-pills{display:flex;flex-shrink:0;gap:.2rem;background:var(--glass-2);padding:.2rem;border-radius:24px;border:1px solid var(--border-subtle);margin:0;min-height:unset}.top .compact-grid button:not(.btn-icon-only),.top .settings-menu>summary{min-height:unset;height:2.2rem;padding:0 .8rem;font-size:.78rem;border-radius:20px;display:flex;align-items:center;justify-content:center;box-sizing:border-box}@media(min-width:1400px){.mobile-actions .btn-label{display:inline}.mobile-actions button{width:auto;min-width:2.2rem;padding:0 .7rem;border-radius:var(--radius-pill);gap:.35rem}}.top .settings-menu{flex-shrink:0;margin:0}.app-brand{display:flex;align-items:center;gap:.5rem;margin:0 .75rem 0 0;font-size:inherit;font-weight:inherit;padding-right:.75rem;border-right:1px solid var(--border-subtle);min-height:2.2rem}.app-brand-icon{font-size:1.05rem;line-height:1;color:var(--accent-ink);opacity:.95}.app-brand-text{font-size:.82rem;font-weight:700;letter-spacing:0;color:var(--text-heading)}.toolbar-divider{width:1px;height:16px;background:var(--border-default);margin:0 .1rem;flex-shrink:0}.top .settings-menu{margin-bottom:0;margin-left:.2rem;border:none;background:none;position:relative}.top .settings-menu>summary{max-width:max-content;white-space:nowrap;padding:.38rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);font-size:.76rem;font-weight:500;color:var(--text-primary);transition:all .15s ease;display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;list-style:none}.top .settings-menu>summary::-webkit-details-marker{display:none}@media(hover:hover)and (pointer:fine){.top .settings-menu>summary:hover{background:var(--bg-card-hover);border-color:var(--border-strong);color:var(--text-heading)}}.top .settings-menu[open]{position:relative}.top .settings-body{position:absolute;top:calc(100% + 6px);left:auto;right:0;z-index:1000;width:340px;max-height:72vh;max-height:72dvh;overflow-y:auto;padding:var(--space-lg);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--shadow-lg),0 0 0 1px var(--border-subtle);animation:dropdown-in .22s cubic-bezier(.22,1,.36,1)}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.board-stage{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--stage-pad-y) var(--stage-pad-x);z-index:1;min-width:0;position:relative}.board-layout{width:min-content;max-width:100%;display:flex;flex-direction:column;align-items:stretch;gap:.55rem}.board-meta-strip{width:100%;min-height:2.25rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.34rem .46rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-panel);box-shadow:var(--shadow-sm);color:var(--text-tertiary);font-size:.72rem;font-weight:600;white-space:nowrap}.board-meta-flow{display:flex;align-items:center;gap:.5rem;flex:1 1 auto;min-width:0}.board-meta-flow>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.board-meta-flow>.turn-pill,.board-meta-flow>.board-meta-move,.board-meta-flow>.board-meta-status{flex:none}.board-meta-flow>.board-meta-game{flex:1 1 auto;justify-content:flex-end}.board-meta-flow>.board-meta-practice{flex:1 1 auto;display:flex;align-items:center;justify-content:flex-end;gap:.42rem;overflow:visible;color:var(--info)}.board-meta-practice>span{min-width:0;overflow:hidden;text-overflow:ellipsis}.board-meta-practice.retry{color:var(--quality-inaccuracy)}.board-meta-practice.correct{color:var(--quality-best)}.board-meta-practice button{flex:none;min-height:1.75rem;padding:.22rem .5rem;border:1px solid currentColor;border-radius:var(--radius-pill);background:transparent;color:inherit;font-size:.65rem;font-weight:800}.board-meta-drill{flex:none;border:1px solid var(--border-default);border-radius:var(--radius-pill);padding:.12rem .44rem;background:var(--bg-card);color:var(--text-secondary);font-weight:700;white-space:nowrap}.board-meta-drill.ready{color:var(--info);border-color:color-mix(in srgb,var(--info) 42%,transparent)}.board-meta-drill.retry,.board-meta-drill.away{color:var(--quality-inaccuracy);border-color:color-mix(in srgb,var(--quality-inaccuracy) 42%,transparent)}.board-meta-drill.correct{color:var(--quality-best);border-color:color-mix(in srgb,var(--quality-best) 42%,transparent)}.board-quality-pill{flex:0 0 auto;border:1px solid var(--border-default);border-radius:var(--radius-pill);padding:.12rem .44rem;background:var(--bg-card);color:var(--text-primary);font-family:var(--font-mono);font-size:.64rem;text-transform:uppercase}.board-quality-pill.quality-book{border-color:#cbd5e16b;color:var(--quality-book)}.board-quality-pill.quality-best,.board-quality-pill.quality-excellent{border-color:#10b9816b;color:var(--quality-best)}.board-quality-pill.quality-good{border-color:#34d3996b;color:var(--quality-good)}.board-quality-pill.quality-inaccuracy{border-color:#fbbf2470;color:var(--quality-inaccuracy)}.board-quality-pill.quality-mistake{border-color:#f9731670;color:var(--quality-mistake)}.board-quality-pill.quality-blunder{border-color:#ef444470;color:var(--quality-blunder)}.turn-pill{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-primary)}.turn-pill:before{content:"";width:.58rem;height:.58rem;border-radius:50%;flex-shrink:0;border:1px solid var(--border-strong)}.turn-pill.white:before{background:#f4ead8}.turn-pill.black:before{background:#242936}.turn-pill.final{font-weight:700;animation:badge-pop .28s cubic-bezier(.22,1,.36,1)}.turn-pill.final:before{display:none}.board-meta-game{display:inline-flex;align-items:center;gap:.35rem;min-width:0;color:var(--text-secondary)}.board-meta-game>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-meta-game strong{flex:none;color:var(--text-primary);background:var(--glass-4);padding:1px 6px;border-radius:var(--radius-xs);border:1px solid var(--border-subtle);font-size:.8rem;letter-spacing:0}.board-opening-label{display:flex;justify-content:center;width:100%;min-width:0}.board-opening-label.is-empty .opening-pill{visibility:hidden}.board-meta-opening{display:inline-flex;flex:none;align-items:center;gap:.3rem;min-width:0;max-width:13rem;overflow:hidden;color:var(--text-secondary)}button.board-meta-opening{padding:0;border:0;background:none;font:inherit;cursor:pointer;min-height:44px}.board-meta-opening.is-expanded{max-width:none}.board-meta-opening>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-meta-opening>strong{flex:none;padding:.08rem .34rem;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--glass-4);font-family:var(--font-mono);font-size:.92em;color:var(--text-primary)}.opening-pill{display:inline-flex;align-items:center;gap:.45rem;max-width:100%;padding:.24rem .62rem;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--bg-panel);box-shadow:var(--shadow-sm);color:var(--text-secondary);font-size:.74rem;font-weight:600;line-height:1.2}.opening-pill strong{flex:none;padding:.1rem .44rem;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--glass-4);color:var(--text-primary);font-family:var(--font-mono);font-size:.7rem;letter-spacing:.02em}.opening-pill>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-from-here-row{margin-top:calc(-1 * var(--space-md) + .35rem)}.play-from-here-btn{justify-content:center;white-space:nowrap}.play-from-here-btn:not(:disabled){border-color:#3fb95057;color:var(--quality-good, #34d399)}.play-from-here-btn:not(:disabled):hover{border-color:#3fb95099}.fade-in-slide{animation:slideDownFade .3s cubic-bezier(.22,1,.36,1) forwards}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.batch-review-btn{min-width:140px}.pulsing.btn-primary{animation:bgPulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes bgPulse{0%,to{box-shadow:0 0 #3fb95066}50%{box-shadow:0 0 0 6px #3fb95000}}.board-wrap{position:relative;z-index:2;display:flex;align-items:stretch;gap:var(--eval-col-gap);border-radius:14px;transition:transform .3s cubic-bezier(.22,1,.36,1);touch-action:none;width:min-content;max-width:100%;margin:0 auto}@supports selector(:has(*)){.board-wrap{touch-action:pan-y}.board-wrap [data-square]:has([data-piece],svg,img){touch-action:none}}.eval-column{position:relative;flex:none;width:var(--eval-col-w);display:flex;flex-direction:column;border-radius:var(--radius-sm);overflow:hidden}.board-area{position:relative;border-radius:14px;padding:var(--board-frame);background:linear-gradient(145deg,var(--glass-4),var(--glass-1)),var(--bg-surface);border:1px solid var(--border-default);box-shadow:0 24px 64px #00000075,inset 0 1px 0 var(--glass-3)}.board-surface{width:min-content;max-width:100%}.board-surface,.eval-column{forced-color-adjust:none}[data-piece]>svg{display:block}.eval-bar-label{position:absolute;left:1px;right:1px;bottom:1px;padding:3px 0 4px;border-radius:0 0 var(--radius-xs) var(--radius-xs);font-size:.56rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--tooltip-text);background:var(--bg-tooltip);line-height:1;pointer-events:none;white-space:nowrap;text-align:center;z-index:6}.turn-thinking{display:inline-flex;align-items:center;margin-left:.4rem}.thinking-dots{display:flex;gap:3px;align-items:center}.promotion-overlay{position:absolute;inset:0;z-index:6;display:flex;align-items:center;justify-content:center;padding:16px;border-radius:14px;background:var(--bg-inset)}.promotion-chooser{width:min(420px,100%);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-panel);box-shadow:var(--shadow-lg)}.promotion-choice{min-width:0;min-height:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 6px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-primary);font-weight:700}.promotion-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.promotion-choice kbd,.promotion-cancel kbd{font-family:var(--font-mono);font-size:.6rem;line-height:1;padding:2px 4px;border-radius:var(--radius-xs);border:1px solid var(--border-default);background:var(--glass-3);color:var(--text-tertiary)}@media(any-hover:none)and (any-pointer:coarse){.promotion-choice kbd,.promotion-cancel kbd{display:none}}.promotion-glyph{font-size:2.35rem;line-height:1}.promotion-cancel{grid-column:1 / -1;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.4rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:transparent;color:var(--text-secondary)}.thinking-dots span{width:4px;height:4px;border-radius:50%;background:var(--accent);animation:thinking-bounce 1.2s ease-in-out infinite}.thinking-dots span:nth-child(2){animation-delay:.15s}.thinking-dots span:nth-child(3){animation-delay:.3s}@keyframes thinking-bounce{0%,80%,to{transform:scale(.7);opacity:.4}40%{transform:scale(1);opacity:1}}.left{height:100%}.app-shell[data-workspace-mode=play] .left{display:none!important}.left .panel-inner{border-left:none;border-top:none;border-bottom:none;border-radius:0;box-shadow:1px 0 0 var(--border-subtle)}.right{height:100%}.right .panel-inner{border-right:none;border-top:none;border-bottom:none;border-radius:0;box-shadow:-1px 0 0 var(--border-subtle)}.left .panel-content,.right .panel-content{flex:1;overflow-y:auto;padding:.8rem;min-width:0}.left .panel-header{display:none}@media(min-width:901px){.right .panel-inner{overflow-y:auto;scroll-padding-top:var(--analysis-header-offset, 0px);scroll-padding-bottom:8px}.right .panel-content{flex:none;overflow:visible}.right .analysis-header{position:sticky;top:0;z-index:4;background:linear-gradient(var(--bg-panel),var(--bg-panel)),var(--bg-base)}.right.header-in-scroll .analysis-header{position:static}}.bottom{width:100%;z-index:100;flex-shrink:0;background:var(--bg-scrim);border-top:1px solid var(--border-subtle)}.bottom .panel-inner{border-left:none;border-right:none;border-bottom:none;border-radius:0;background:var(--bg-scrim);box-shadow:0 -1px 0 var(--border-subtle);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.bottom .panel-header{display:none}.bottom .panel-content{padding:.38rem .9rem;display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm);min-height:2.45rem}.bottom .best-move{margin:0 0 0 auto;font-size:.74rem;font-weight:600;color:var(--accent-ink);display:flex;align-items:center;gap:.35rem}.bottom .best-move:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0}.top.hidden,.bottom.hidden{height:0;min-height:0;flex-basis:0;overflow:visible;pointer-events:none}.top.hidden .panel-inner,.bottom.hidden .panel-inner{display:none}.top.hidden .resize-handle,.bottom.hidden .resize-handle{pointer-events:auto}.top.hidden .resize-pill,.bottom.hidden .resize-pill{width:56px;height:4px;background:#6e76818c}.resize-handle{position:absolute;display:flex;align-items:center;justify-content:center;z-index:110;-webkit-user-select:none;user-select:none}.resize-handle-left,.resize-handle-right{top:0;bottom:0;width:14px;cursor:col-resize}.resize-handle-right{right:-7px}.resize-handle-left{left:-7px}.panel.collapsed .resize-handle-right{right:-14px}.panel.collapsed .resize-handle-left{left:-14px}.panel.collapsed .resize-handle{cursor:pointer}.panel.collapsed .resize-pill{width:4px;height:56px;background:#6e76818c}.resize-handle-top,.resize-handle-bottom{left:0;right:0;height:14px;cursor:pointer}.resize-handle-top{top:-7px}.resize-handle-bottom{bottom:-7px}.top.hidden .resize-handle-bottom{bottom:-14px}.bottom.hidden .resize-handle-top{top:-14px}.resize-pill{width:3px;height:32px;border-radius:2px;background:#6e768126;transition:all .2s ease}.resize-pill.horizontal{flex-direction:row;width:32px;height:3px}@media(hover:hover)and (pointer:fine){.resize-handle:hover .resize-pill{background:#6e76815c}}@media(hover:hover)and (pointer:fine){.resize-handle-left:hover .resize-pill,.resize-handle-right:hover .resize-pill{height:48px;width:4px}}@media(hover:hover)and (pointer:fine){.resize-handle-top:hover .resize-pill,.resize-handle-bottom:hover .resize-pill{width:48px;height:4px}}.settings-menu{margin-bottom:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card)}.settings-menu>summary,.advanced-settings>summary{cursor:pointer;padding:.5rem .65rem;font-family:inherit;font-size:.78rem;font-weight:600;color:var(--text-primary);list-style:none}.settings-menu>summary::-webkit-details-marker,.advanced-settings>summary::-webkit-details-marker{display:none}.settings-backdrop{display:none}.settings-menu:not([open]) .settings-body{display:none}.settings-menu[open] .settings-backdrop{display:block;position:fixed;inset:0;z-index:990;cursor:default}.settings-body{padding:0 .65rem .65rem}.settings-header{display:none}.advanced-settings{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--glass-1);margin-bottom:.55rem}.advanced-section{padding:.45rem .55rem .55rem;border-top:1px solid var(--border-subtle)}.advanced-settings:not([open])>.advanced-section{display:none}.control{display:grid;gap:.28rem;margin-bottom:.7rem}.control span{font-size:.74rem;color:var(--text-tertiary)}.control strong{font-size:.76rem;color:var(--text-primary);font-variant-numeric:tabular-nums}.control input[type=range]{accent-color:var(--accent);min-height:32px;height:32px;width:100%;margin-inline:0;cursor:pointer}.compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.compact-grid button{padding:.5rem}.switch-control{display:flex;align-items:center;gap:.45rem;margin-bottom:.65rem;font-size:.76rem;color:var(--text-secondary);cursor:pointer}.switch-control input{accent-color:var(--accent);cursor:pointer}.engine-options h3{margin:.3rem 0 .4rem;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary)}.engine-options{max-height:220px;overflow:auto;border:1px solid var(--border-subtle);border-radius:9px;padding:.4rem;background:var(--bg-input)}.engine-option-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;margin-bottom:.4rem}.engine-lab-card:has(>.profile-picker){container-type:inline-size}.engine-option-row.profile-picker select{width:auto;max-width:100%}@container (max-width: 20rem){.profile-picker{grid-template-columns:minmax(0,1fr)}.engine-option-row.profile-picker select{width:100%;max-width:none}}.engine-option-row span{font-size:.73rem;color:var(--text-secondary)}.engine-option-row input,.engine-option-row select,.engine-lab-console input{padding:.36rem .46rem;border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-primary);font-family:inherit;font-size:.73rem;transition:border-color .15s ease,box-shadow .15s ease}.engine-option-row input:focus,.engine-option-row select:focus,.engine-lab-console input:focus{outline:none;border-color:#2dd4bf6b;box-shadow:0 0 0 2px var(--accent-subtle)}.engine-option-row input[aria-invalid=true]{border-color:#f85149c2;box-shadow:0 0 0 2px #f8514929}.panel button:disabled,.panel input:disabled,.panel select:disabled{opacity:.48;cursor:not-allowed}.engine-option-row input{width:80px}.engine-option-row input[type=text],.engine-option-row input[type=password]{width:min(100%,13rem)}.engine-option-row select{width:min(100%,10rem)}.profile-picker{margin-bottom:.3rem}.status{text-transform:capitalize;font-weight:600;display:inline-flex;align-items:center;gap:.28rem}.status:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;flex-shrink:0}.status.loading{color:var(--warning)}.status.loading:before{background:var(--warning);animation:pulse-dot 1.2s ease-in-out infinite}.status.ready{color:var(--accent-ink)}.status.ready:before{background:var(--accent)}.status.paused{color:var(--text-secondary)}.status.paused:before{background:var(--text-secondary)}.status.analyzing{color:var(--info)}.status.analyzing:before{background:var(--info);animation:pulse-dot 1s ease-in-out infinite}.status.thinking{color:var(--info)}.status.thinking:before{background:var(--info);animation:pulse-dot 1s ease-in-out infinite}.status.disabled{color:var(--text-muted)}.status.disabled:before{background:var(--text-muted)}.status.error{color:var(--danger)}.status.error:before{background:var(--danger)}.status.disabled,.status.unloaded,.status.standby{color:var(--text-tertiary)}.status.disabled:before,.status.unloaded:before,.status.standby:before{background:var(--text-tertiary)}.lazy-dialog-backdrop{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:1rem;background:var(--backdrop);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lazy-dialog-panel{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;width:min(100%,20rem);min-height:4.25rem;max-height:calc(100dvh - 2rem);overflow:auto;padding:1rem 1.1rem;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-lg);color:var(--text-primary);font-size:.92rem;font-weight:700;text-align:center}.lazy-dialog-panel button{min-width:44px;min-height:44px}.lazy-dialog-spinner{flex-shrink:0;width:1rem;height:1rem;border-radius:50%;border:2px solid var(--border-default);border-top-color:var(--accent);animation:lazy-dialog-spin .8s linear infinite}@keyframes lazy-dialog-spin{to{transform:rotate(360deg)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.65)}}.inline-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:var(--space-md)}.inline-actions>*{flex:1 1 0}.panel .inline-actions{container-type:inline-size}@container (max-width: 10rem){.panel .inline-actions>button{flex-wrap:wrap;row-gap:.2rem}}.analysis-actions button{min-height:44px}.inline-actions>.analysis-stop{flex:0 0 auto;padding-inline:1rem}.show-insights-button{min-height:36px;display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem}.inline-actions button{min-height:2rem;padding:.4rem .7rem;min-width:min-content}.analysis-header{display:flex;flex-direction:column;gap:.45rem;align-items:stretch}.analysis-tab-strip{display:flex;flex-wrap:wrap;gap:.32rem}.analysis-tab-btn{flex:1 1 auto}.analysis-tab-btn{min-height:32px;box-sizing:border-box;border:1px solid var(--border-subtle);background:var(--glass-2);color:var(--text-secondary);font-size:.7rem;font-weight:600;padding:.42rem .46rem;border-radius:var(--radius-sm)}.panel .analysis-tab-btn{padding-inline:min(.66rem,10.56px)}@media(hover:hover)and (pointer:fine){.analysis-tab-btn:hover{border-color:var(--border-default);color:var(--text-primary)}}.analysis-tab-btn.active{border-color:#2dd4bf5c;background:var(--accent-subtle);color:var(--accent-ink)}.analysis-context-row{display:flex;align-items:center;gap:.45rem;min-width:0;color:var(--text-muted);font-size:.66rem;white-space:nowrap}.analysis-context-row span{min-width:0;overflow:hidden;text-overflow:ellipsis}.analysis-context-row .status{flex-shrink:0}.analysis-mode-pills{display:flex;flex-wrap:wrap;gap:.32rem;margin-bottom:.5rem}.analysis-experience-toggle{display:flex;align-items:center;gap:.32rem;margin:.52rem 0 .5rem;padding:.14rem;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--bg-card)}.analysis-experience-toggle .mode-pill{flex:1;justify-content:center;border-radius:var(--radius-pill);min-height:32px;box-sizing:border-box}.coach-card{container:coach / inline-size;margin-bottom:var(--space-md);border:1px solid rgba(63,185,80,.22);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--accent-subtle),var(--bg-inset)),var(--bg-card);padding:.68rem}.coach-card h3{margin:0 0 .5rem;font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary);display:flex;align-items:center;gap:.35rem}.coach-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.4rem;margin-bottom:.5rem}@container coach (min-width: 13rem){.coach-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.coach-grid div{min-width:0;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-inset);padding:.38rem .44rem}.coach-grid span{display:block;margin-bottom:.12rem;font-size:.58rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:0}.coach-grid strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary);font-family:var(--font-mono);font-size:.78rem}.coach-card p{margin:0;color:var(--text-secondary);font-size:.75rem;line-height:1.5;overflow-wrap:anywhere}.coach-insight{margin-top:.55rem;padding-top:.55rem;border-top:1px solid var(--border-subtle)}.coach-tags,.coach-metrics{display:flex;flex-wrap:wrap;gap:.3rem}.coach-tags{margin-bottom:.42rem}.coach-tags span,.coach-metrics span{display:inline-flex;align-items:center;min-height:1.45rem;padding:.18rem .42rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--glass-3);color:var(--text-secondary);font-size:.66rem;font-weight:700;line-height:1}.coach-tags span{border-color:#2dd4bf3d;color:var(--accent-ink);background:#2dd4bf14}.coach-metrics{margin-top:.45rem}.coach-metrics span{font-family:var(--font-mono);color:var(--text-tertiary)}.coach-card .coach-opening{margin-top:.38rem;color:var(--text-tertiary)}.coach-opening strong{color:var(--accent-ink);font-family:var(--font-mono);margin-right:.2rem}.tablebase-card{margin-bottom:var(--space-md);border:1px solid var(--border-strong);border-left:3px solid var(--info);border-radius:var(--radius-md);background:var(--bg-card);padding:.62rem}.tablebase-card h3{margin:0 0 .45rem;font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary);display:flex;align-items:center;gap:.35rem}.tablebase-move-list{display:grid;gap:.3rem}button.tablebase-move-row{border:1px solid var(--border-subtle);background:var(--bg-card);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.68rem;display:grid;grid-template-columns:minmax(3rem,.7fr) minmax(0,1.2fr) auto;align-items:center;gap:.42rem;text-align:left;padding:.3rem .45rem}button.tablebase-move-row.compact{grid-template-columns:minmax(3rem,.7fr) minmax(0,1fr)}.tablebase-move-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.tablebase-move-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tablebase-move-row span:last-child{font-family:var(--font-mono);color:var(--text-muted)}.preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.38rem;margin-bottom:.55rem}.preset-grid .preset-card{text-align:left;border:1px solid var(--border-subtle);background:var(--bg-card);border-radius:var(--radius-sm);padding:.4rem .48rem;color:var(--text-secondary);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.16rem}.preset-card strong{font-size:.68rem;color:var(--text-primary)}.preset-card span{font-size:.63rem;color:var(--text-muted)}.preset-card.active{border-color:var(--accent-muted);background:#58a6ff1f}.preset-card.active span{color:var(--text-tertiary)}.mode-pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;box-sizing:border-box;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--glass-2);color:var(--text-secondary);font-size:.68rem;font-weight:600;padding:.2rem .55rem;cursor:pointer}.mode-pill.active{border-color:#2dd4bf66;background:var(--accent-subtle);color:var(--accent-ink)}.command-summary{margin:-.18rem 0 .45rem;font-family:var(--font-mono);color:var(--text-muted)}.opening-intel-card{margin-bottom:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);padding:.62rem}.opening-intel-card h3{margin:0 0 .45rem;font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary);display:flex;align-items:center;gap:.35rem}.opening-intel-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.45rem;margin-bottom:.45rem}.opening-intel-card .engine-option-row{grid-template-columns:minmax(0,1fr)}.opening-intel-card .engine-option-row :is(input,select){width:100%;min-width:0}.opening-source-toggle,.opening-speed-toggle{display:flex;flex-wrap:wrap;gap:.28rem}.opening-speed-toggle{margin-bottom:.45rem}.opening-token-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin:-.18rem 0 .5rem;font-size:.68rem;color:var(--text-muted)}.opening-token-meta a{color:var(--info);text-decoration:none;white-space:nowrap}@media(hover:hover)and (pointer:fine){.opening-token-meta a:hover{color:var(--text-primary);text-decoration:underline}}.opening-move-list{display:grid;gap:.3rem;margin-bottom:.45rem}button.opening-move-row{border:1px solid var(--border-subtle);background:var(--bg-card);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.68rem;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.4rem;text-align:left;padding:.26rem .4rem}.opening-move-row strong{color:var(--text-primary)}.opening-move-row span:last-child{font-family:var(--font-mono);color:var(--text-muted)}.cloud-eval-card{margin-bottom:var(--space-md);border:1px solid rgba(88,166,255,.22);border-radius:var(--radius-md);background:var(--bg-card);padding:.62rem}.cloud-eval-card h3{margin:0 0 .45rem;font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary);display:flex;align-items:center;gap:.35rem}.cloud-line-list{display:grid;gap:.32rem}.cloud-line-row{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card);padding:.42rem .5rem}.cloud-line-row header{display:flex;gap:var(--space-sm);align-items:baseline;font-size:.71rem;color:var(--text-tertiary);margin-bottom:.22rem}.cloud-line-row header strong{color:var(--info);font-weight:700}.cloud-line-row header span:last-child{font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:.78rem}.cloud-line-row p{margin:0;font-size:.73rem;color:var(--text-secondary);line-height:1.45;overflow-wrap:anywhere}.cloud-line-row p.pv-uci{margin-top:.18rem;font-size:.63rem;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:0}.engine-command-inline{font-family:var(--font-mono);font-size:.66rem;color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:.16rem .35rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42%}.engine-telemetry-inline{font-family:var(--font-mono);font-size:.66rem;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-inset);padding:.16rem .35rem;white-space:nowrap}.engine-lab-card{margin-bottom:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);padding:.62rem}.engine-lab-card h3{margin:0 0 .5rem;font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary);display:flex;align-items:center;gap:.35rem}.engine-lab-card .command-summary{overflow-wrap:anywhere}.engine-lab-card:has(>.engine-lab-console){container:lab-console / inline-size}.engine-lab-console{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;margin-bottom:.5rem}@container lab-console (max-width: 10.5rem){.engine-lab-console{grid-template-columns:minmax(0,1fr)}}.engine-lab-console input{grid-column:1 / -1;min-width:0;width:100%;font-family:var(--font-mono);font-size:.72rem}.engine-lab-console button{min-width:0}.diagnostics-actions{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:.45rem}.expert-toggle{margin-top:.2rem}.warning-copy,.panel-copy.warning-copy{color:var(--warning)}.danger-lite{border-color:#f8514959!important;color:var(--danger)!important}.danger-lite:disabled{opacity:.45;cursor:not-allowed}.lab-history{margin-bottom:.45rem}.lab-history h4{margin:0 0 .3rem;font-size:.61rem;letter-spacing:0;text-transform:uppercase;color:var(--text-tertiary)}.lab-history-list{display:flex;gap:.28rem;flex-wrap:wrap}.lab-history-list button{max-width:100%;min-width:0;overflow-wrap:anywhere;font-size:.64rem;padding:.2rem .4rem;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-secondary)}.engine-lab-output{margin:0;min-height:8.75rem;max-height:16.25rem;overflow:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#0c1118;color:#c7d2df;font-size:.68rem;line-height:1.45;padding:.45rem .5rem;font-family:var(--font-mono)}.engine-lab-inline{margin-top:.4rem;display:grid;gap:.35rem}.error-copy,.panel-copy.error-copy{color:var(--danger)}.right-section{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-subtle)}.panel-content>.right-section:first-child{margin-top:0;padding-top:0;border-top:0}.right-section h3,.review-scaffold h3,.pv-list h3{margin:0 0 .5rem;font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary);display:flex;align-items:center;gap:.35rem}.section-icon{font-size:.8rem;opacity:.5;line-height:1}.analyze-move-card .mtree-scroll{height:11.25rem}.pv-list{margin-top:var(--space-md);min-height:15.625rem}.pv-list article{border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:.5rem .6rem;margin-bottom:.35rem;background:var(--bg-card);transition:border-color .15s ease,background .15s ease;cursor:default}.pv-list article,.cloud-line-row,.moves-list li,.mtree-row,.mtree-variation{contain:layout paint style;content-visibility:auto}.pv-list article,.cloud-line-row{contain-intrinsic-size:auto 92px}.moves-list li,.mtree-row,.mtree-variation{contain-intrinsic-size:auto 36px}@media(hover:hover)and (pointer:fine){.pv-list article:hover{border-color:var(--border-default);background:var(--bg-card-hover)}}.pv-list article header{display:flex;gap:var(--space-sm);align-items:baseline;font-size:.71rem;color:var(--text-tertiary);margin-bottom:.25rem}.pv-list article header strong{color:var(--accent-ink);font-weight:700}.pv-list article header span:last-child{font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:.78rem}.pv-list article p{margin:0;font-size:.75rem;color:var(--text-secondary);overflow-wrap:anywhere;line-height:1.5}.pv-moves{display:flex;flex-wrap:wrap;gap:.05rem .1rem;align-items:baseline}button.pv-move{border:1px solid transparent;background:transparent;color:var(--text-secondary);font-size:.75rem;font-weight:600;min-width:0;min-height:0;padding:.1rem .22rem;border-radius:var(--radius-sm);line-height:1.45;transition:background .12s ease,color .12s ease,border-color .12s ease}@media(hover:hover)and (pointer:fine){button.pv-move:hover{background:var(--bg-card-hover);border-color:var(--border-subtle);color:var(--text-heading)}}button.pv-move:focus-visible{border-color:var(--border-strong);color:var(--text-heading)}@media(pointer:coarse){button.pv-move{padding:.3rem .4rem}}.pv-move-number{color:var(--text-tertiary);font-weight:500;margin-right:.1rem}.coach-line-moves{margin:.35rem 0 0}.pv-list article p.pv-uci{margin-top:.18rem;font-size:.64rem;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:0}.best-move{margin:.45rem 0 0;font-size:.76rem;font-weight:600;color:var(--accent-ink);display:flex;align-items:center;gap:.3rem}.review-scaffold{margin-top:var(--space-md);border-top:1px solid var(--border-subtle);padding-top:var(--space-md)}.review-book-card{margin-top:var(--space-md)}.review-book-token-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;width:100%;min-height:34px;margin:.15rem 0 .55rem}.critical-moments-card{margin-top:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);padding:.62rem}.critical-moments-card h3{margin:0 0 .45rem;font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary);display:flex;align-items:center;gap:.35rem}.critical-moment-list{display:grid;gap:.34rem}button.critical-moment-row{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:.45rem;padding:.42rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);border-left:3px solid transparent;background:var(--bg-card)}.panel .critical-moment-main{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.panel .critical-moment-main:disabled{opacity:.5;cursor:not-allowed}.panel .critical-moment-main:focus-visible,.panel .critical-moment-best-action:focus-visible{outline:2px solid var(--info);outline-offset:2px}.panel .critical-moment-best-action{align-self:center;display:inline-flex;align-items:center;gap:.28rem;min-height:1.95rem;padding:.32rem .48rem;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--info) 42%,var(--border-subtle));background:color-mix(in srgb,var(--info) 10%,transparent);color:var(--info);font-size:.68rem;font-weight:800;line-height:1;white-space:nowrap;cursor:pointer}.panel .critical-moment-best-action:hover{background:color-mix(in srgb,var(--info) 16%,transparent)}.panel .critical-moment-best-action svg{width:.74rem;height:.74rem;flex:0 0 auto}.critical-moment-move{display:grid;gap:.12rem;min-width:0}.critical-moment-move strong{color:var(--text-primary);font-size:.76rem}.critical-moment-move span,.critical-moment-impact{color:var(--text-secondary);font-size:.68rem}.critical-moment-impact{font-family:var(--font-mono);white-space:nowrap}.critical-moment-best{grid-column:1 / -1;min-width:0;color:var(--info);font-size:.68rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-book-list{display:grid;gap:.28rem;min-height:25rem;align-content:start}.review-book-list:empty{min-height:0}.review-book-row{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-card);padding:.22rem .4rem;display:grid;grid-template-columns:auto 1fr auto;gap:.35rem;align-items:center;font-size:.68rem;color:var(--text-secondary)}.review-book-row span:first-child{color:var(--text-muted);font-family:var(--font-mono)}.review-book-row strong{color:var(--text-primary)}.review-book-row.in-book{border-color:#3fb95047}.review-book-row.out-of-book{border-color:#f0883e52}.review-book-row.after-novelty{opacity:.62}.review-book-row.loading{opacity:.72}.review-book-row.error{border-color:#f851495c;background:#f8514914}.review-filter-row{display:flex;flex-wrap:wrap;gap:.36rem;margin:-.12rem 0 .52rem}.accuracy-summary{display:flex;flex-wrap:wrap;gap:.38rem;margin-bottom:.48rem}.accuracy-summary div{flex:1 1 4.6rem;min-width:0;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--accent-subtle),var(--bg-inset)),var(--bg-card);padding:.48rem .5rem}.accuracy-summary span{display:block;margin-bottom:.14rem;color:var(--text-tertiary);font-size:.58rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.accuracy-summary strong{color:var(--text-primary);font-family:var(--font-mono);font-size:.92rem;line-height:1.15}@media(max-width:520px){.accuracy-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.accuracy-summary>div:last-child:nth-child(odd){grid-column:1 / -1}.board-meta-game>span{display:none}}.review-chips{display:flex;flex-wrap:wrap;gap:.28rem}.review-chip-notes{margin:.3rem 0 0;font-size:.7rem;line-height:1.4;color:var(--text-tertiary)}.review-chips span{padding:.2rem .5rem;border-radius:var(--radius-pill);border:1px solid transparent;font-size:.67rem;font-weight:600;transition:transform .15s ease,box-shadow .15s ease}@media(hover:hover)and (pointer:fine){.review-chips span:hover{transform:translateY(-1px)}}.review-jump-row{display:flex;flex-direction:column;gap:.3rem;margin-top:.1rem}.review-jump-actions{display:flex;gap:.4rem}.review-jump-btn{font-weight:600;white-space:nowrap}.review-jump-actions .review-jump-btn{flex:1 1 0;min-width:0}.review-jump-btn svg{width:.85em;height:.85em;flex:none}.review-jump-count{font-size:.68rem;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}@media(pointer:coarse){.review-jump-actions .review-jump-btn{min-height:2.75rem}}.chip-narrative{background:var(--bg-elevated);color:var(--text-secondary);border-color:var(--border-default)!important}.chip-narrative-good{background:#3fb9501f;color:var(--quality-best);border-color:#3fb95038!important}.chip-narrative-bad{background:#f851491f;color:var(--quality-blunder);border-color:#f8514938!important}.chip-book{background:#cbd5e11a;color:var(--quality-book);border-color:#cbd5e133!important}.chip-best,.chip-excellent{background:#3fb9501f;color:var(--quality-best);border-color:#3fb95038!important}.chip-good{background:#7ee7871a;color:var(--quality-good-ink);border-color:#7ee7872e!important}.chip-inaccuracy{background:#e3b3411f;color:var(--quality-inaccuracy);border-color:#e3b34138!important}.chip-mistake{background:#f0883e1f;color:var(--quality-mistake);border-color:#f0883e38!important}.chip-blunder{background:#f851491f;color:var(--quality-blunder-ink);border-color:#f8514938!important}.chip-pending{background:#6e76811a;color:var(--quality-pending-ink);border-color:#6e76812e!important}.moves-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.2rem;max-height:220px;overflow:auto}.moves-list>li{flex:0 0 auto}.moves-list li{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);border-left:3px solid transparent;background:var(--bg-card);transition:background .12s ease,border-color .12s ease;animation:move-fade-in .22s cubic-bezier(.22,1,.36,1)}.review-move-list li{padding:0;overflow:hidden}.review-move-row{width:100%;display:grid!important;grid-template-columns:auto auto minmax(0,1fr) auto auto;grid-template-areas:"index san uci clock quality" "index best impact clock confidence";gap:.32rem;row-gap:.16rem;align-items:center;padding:.32rem .48rem;border:0!important;border-radius:0!important;background:transparent!important;color:inherit!important;text-align:left;box-shadow:none!important}.review-move-row.compact{grid-template-columns:auto auto minmax(0,1fr) auto auto auto;grid-template-areas:"index san best impact clock quality"}.review-move-row .move-index{grid-area:index;align-self:start}.review-move-row strong{grid-area:san}.review-move-row .move-uci{grid-area:uci}.review-move-row .move-best{grid-area:best;min-width:0}.review-move-row .move-impact{grid-area:impact}.review-move-row .move-confidence{grid-area:confidence}.review-move-row .move-quality{grid-area:quality;align-self:center}.review-move-row.active{background:#3fb95017!important}.review-move-row.active .move-index,.review-move-row.active .move-impact,.review-move-row.active .move-confidence,.review-move-row.active .move-uci{color:var(--text-secondary)!important}.review-move-row:disabled{cursor:default;opacity:.65}@media(max-width:900px){.panel .review-move-row{min-height:44px;padding:.5rem .58rem}}.move-best{min-width:0;color:var(--info);font-size:.66rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.review-move-row{grid-template-areas:"index san uci quality" "index best best quality" "index impact confidence quality"}.review-move-row.compact{grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-areas:"index san san quality" "index best best quality" "index impact impact quality"}}@keyframes move-fade-in{0%{opacity:0;transform:translate(-3px)}to{opacity:1;transform:translate(0)}}@media(hover:hover)and (pointer:fine){.moves-list li:hover{background:var(--bg-card-hover);border-color:var(--border-default)}}.moves-list li span{font-size:.71rem;color:var(--text-secondary)}.moves-list li strong{font-size:.76rem;color:var(--text-primary);font-weight:600}.move-index{min-width:1.5rem;color:var(--text-muted)!important;font-variant-numeric:tabular-nums}.move-uci{font-family:var(--font-mono);color:var(--text-muted)!important;font-size:.66rem!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.move-impact{font-family:var(--font-mono);color:var(--text-muted)!important;font-size:.66rem!important;white-space:nowrap}.move-confidence{color:var(--text-muted)!important;font-size:.64rem!important;white-space:nowrap}.confidence-shallow{color:var(--warning)!important}.confidence-deep{color:var(--accent-ink)!important}.move-quality{text-transform:capitalize;justify-self:end;font-weight:600!important;font-size:.66rem!important;white-space:nowrap}.quality-book:not(.board-quality-pill){border-left-color:var(--quality-book)!important}.quality-book .move-quality{color:var(--quality-book)}.quality-best:not(.board-quality-pill),.quality-excellent:not(.board-quality-pill){border-left-color:var(--quality-best)!important}.quality-best .move-quality,.quality-excellent .move-quality{color:var(--quality-best)}.quality-good:not(.board-quality-pill){border-left-color:var(--quality-good)!important}.quality-good .move-quality{color:var(--quality-good-ink)}.quality-inaccuracy:not(.board-quality-pill){border-left-color:var(--quality-inaccuracy)!important}.quality-inaccuracy .move-quality{color:var(--quality-inaccuracy)}.quality-mistake:not(.board-quality-pill){border-left-color:var(--quality-mistake)!important}.quality-mistake .move-quality{color:var(--quality-mistake)}.quality-blunder:not(.board-quality-pill){border-left-color:var(--quality-blunder)!important}.quality-blunder .move-quality{color:var(--quality-blunder-ink)}.analytics-card,.sample-library-card,.opening-intel-card,.cloud-eval-card,.engine-lab-card,.critical-moments-card,.tablebase-card{box-shadow:inset 0 1px 0 var(--glass-2)}.analytics-card{margin-bottom:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);padding:.55rem}.analytics-card{container:analytics-card / inline-size}@container analytics-card (max-width: 9rem){.section-heading .section-icon{display:none}}.graph-summary{display:flex;flex-direction:column;gap:.2rem;padding:.65rem .7rem;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-inset);color:var(--text-secondary);font-size:.72rem;line-height:1.35}.graph-summary strong{color:var(--text-primary);font-family:var(--font-mono);font-size:1.15rem;font-variant-numeric:tabular-nums}.graph-summary small{color:var(--text-tertiary);font-size:.68rem}.section-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.section-heading h2{margin:0;min-width:0;display:flex;align-items:center;gap:.35rem;color:var(--text-tertiary);font-size:.63rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.section-heading strong{color:var(--text-primary);font-family:var(--font-mono);font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums}.graph-wrap{width:100%;border:1px solid var(--glass-3);border-radius:var(--radius-sm);background:var(--bg-inset);padding:.4rem;overflow:hidden}.graph-scroll{width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.winrate-graph{width:max-content;min-width:100%;height:var(--graph-height);display:block}.winrate-graph[role=slider]:focus-visible{outline-offset:-3px}.graph-grid-line{stroke:var(--graph-grid);stroke-width:1;stroke-dasharray:3 4}.graph-grid-text{font-size:13px;fill:var(--text-secondary);font-family:inherit}.graph-tick-line{stroke:var(--graph-axis);stroke-width:1}.graph-cursor-line{stroke:var(--graph-cursor);stroke-width:2;stroke-dasharray:4 4;pointer-events:none}.graph-hover-line{stroke:var(--graph-axis);stroke-width:1}.graph-readout{font-size:12px;font-weight:600;fill:var(--text-primary);font-family:inherit;paint-order:stroke;stroke:var(--bg-elevated);stroke-width:4px;stroke-linejoin:round}.graph-area{fill:url(#graph-gradient)}.graph-line{fill:none;stroke:var(--accent);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px var(--accent-glow))}.graph-line-white{stroke:var(--graph-white);filter:drop-shadow(0 0 3px var(--graph-white-glow))}.graph-line-draw{stroke:var(--graph-draw);stroke-dasharray:4 3;filter:drop-shadow(0 0 3px rgba(255,184,108,.3))}.graph-line-black{stroke:var(--graph-black);filter:drop-shadow(0 0 3px rgba(88,166,255,.35))}.graph-bar-white{fill:var(--graph-white);opacity:.9}.graph-bar-black{fill:var(--graph-black);opacity:.9}.graph-point{fill:var(--accent);stroke:var(--bg-base);stroke-width:1.3}.graph-point-white{fill:var(--graph-white)}.graph-point-draw{fill:var(--graph-draw)}.graph-point-black{fill:var(--graph-black)}.graph-legend{margin-top:.45rem;display:flex;flex-wrap:wrap;gap:.35rem .5rem;justify-content:space-between;align-items:center;font-size:.72rem;color:var(--text-secondary)}.graph-legend span{display:flex;align-items:center;gap:.3rem}.graph-legend span:before{content:"";display:inline-block;width:8px;height:3px;border-radius:2px;background:var(--accent)}.graph-legend strong{color:var(--accent-ink);font-weight:700;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.graph-legend.wdl{justify-content:flex-start;gap:.9rem;flex-wrap:wrap}.graph-legend.wdl span{gap:.36rem}.graph-legend.wdl span:before{width:10px;height:3px}.graph-legend .wdl-white-label:before{background:var(--graph-white)}.graph-legend .wdl-draw-label:before{background:var(--graph-draw)}.graph-legend .wdl-black-label:before{background:var(--graph-black)}.sample-library-card{margin-top:var(--space-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);padding:.52rem}.sample-library-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.45rem}.sample-library-head h2{margin:0;font-size:.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0;color:var(--text-tertiary);display:flex;align-items:center;gap:.35rem}.sample-library-head span{font-size:.66rem;color:var(--text-muted);font-family:var(--font-mono)}.sample-filter-row{display:flex;flex-wrap:wrap;gap:.28rem;margin-bottom:.45rem}.sample-game-list{display:grid;gap:.36rem;max-height:320px;overflow:auto}.sample-game-row{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-inset);padding:.36rem .44rem}.sample-game-row header{display:flex;justify-content:space-between;gap:.42rem;align-items:baseline;margin-bottom:.16rem}.sample-game-row header strong{font-size:.7rem;color:var(--text-primary)}.sample-game-row header span{font-size:.64rem;color:var(--text-muted);font-family:var(--font-mono)}.sample-game-row p{margin:0 0 .2rem;font-size:.66rem;color:var(--text-secondary);line-height:1.35}.sample-game-row p.sample-game-opening{color:var(--text-muted)}.sample-sweep-copy{margin:0 0 .45rem;color:var(--text-muted)}.sample-game-actions{display:flex;align-items:center;justify-content:space-between;gap:.42rem;margin-top:.24rem}.sample-game-actions p{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sample-game-actions button{flex:none;font-size:.66rem;padding:.24rem .6rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-md);text-align:center;gap:var(--space-sm)}.empty-state-icon{font-size:1.6rem;opacity:.18;line-height:1}.empty-state p{margin:0;font-size:.76rem;color:var(--text-tertiary);line-height:1.55;max-width:200px}.review-empty-state{padding:var(--space-lg) var(--space-sm)}.analyzing-bar{width:100%;height:2px;background:var(--border-subtle);overflow:hidden;border-radius:1px;position:relative}.analyzing-bar.active:after{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:analyzing-slide 1.4s ease-in-out infinite}@keyframes analyzing-slide{0%{left:-40%}to{left:100%}}@keyframes badge-pop{0%{transform:scale(.75);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:900px){:root{--stage-pad-x: .5rem;--stage-pad-y: .35rem;--board-frame: .25rem}.app-shell{height:100vh;height:100dvh;width:100%;max-width:100%;overflow:hidden;padding:0}.main-container{flex-direction:column;width:100%;max-width:100%;overflow-y:auto;overflow-x:hidden;scroll-padding-bottom:calc(4.5rem + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.panel-header-title-only{position:absolute;width:1px;height:1px;min-height:0;margin:-1px;padding:0;overflow:hidden;white-space:nowrap;clip-path:inset(50%);border:0}.top{position:relative!important;top:auto!important;order:0}.eval-bar-label{left:0}.board-stage{order:1;padding:var(--stage-pad-y) var(--stage-pad-x);min-height:auto;width:100%;max-width:100%;box-sizing:border-box;flex:none;display:flex;justify-content:center;align-items:center;background:var(--bg-base)}.board-layout{gap:.3rem}.board-meta-strip{min-height:1.85rem;padding:.22rem .38rem;font-size:.68rem}.board-meta-flow{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:.38rem;scroll-snap-type:none;overflow-anchor:none}.top .mobile-modes-wrapper,.top .mobile-actions,.board-meta-flow{--edge-w: 1.25rem;--edge-lead: 0;--edge-trail: 1;mask-image:linear-gradient(to right,rgba(0,0,0,calc(1 - var(--edge-lead))) 0,#000 var(--edge-w),#000 calc(100% - var(--edge-w)),rgba(0,0,0,calc(1 - var(--edge-trail))) 100%);-webkit-mask-image:linear-gradient(to right,rgba(0,0,0,calc(1 - var(--edge-lead))) 0,#000 var(--edge-w),#000 calc(100% - var(--edge-w)),rgba(0,0,0,calc(1 - var(--edge-trail))) 100%)}@supports (animation-timeline: scroll()){.top .mobile-modes-wrapper,.top .mobile-actions,.board-meta-flow{--edge-trail: 0;animation:edge-lead-in linear both,edge-trail-out linear both;animation-timeline:scroll(self inline),scroll(self inline);animation-range:0 1.25rem,calc(100% - 1.25rem) 100%}}.board-meta-flow::-webkit-scrollbar{display:none}.board-meta-flow>*{flex:none}.board-meta-flow>.board-meta-game,.board-meta-flow>.board-meta-practice{flex:none}.board-meta-flow>.chess-clock{order:-1}.board-meta-flow>.board-meta-drill{order:0}.board-meta-flow>.board-meta-move{order:1}.board-meta-flow>.board-meta-opening{order:2}.board-meta-flow>.board-meta-material{order:3}.board-meta-flow>.board-meta-game{order:4;max-width:11rem}@media(max-width:520px){.board-meta-flow>.board-meta-game{order:2}.board-meta-flow>.board-meta-opening{order:3}.board-meta-flow>.board-meta-material{order:4}}.board-meta-opening{max-width:8.5rem}.board-meta-status{display:none}.board-meta-practice button{min-width:44px;min-height:44px}.opening-pill{padding:.18rem .5rem;gap:.35rem;font-size:.68rem;line-height:1.1}.opening-pill strong{padding:.08rem .38rem;font-size:.68rem}.right{order:3;padding:0 var(--space-sm) calc(4.5rem + env(safe-area-inset-bottom))!important;width:100%!important;height:auto;align-self:stretch}.left{order:4;padding:0 var(--space-sm) calc(5rem + env(safe-area-inset-bottom))!important;width:100%!important;height:auto;align-self:stretch}.panel.panel-collapsed{display:none!important}.left .panel-inner,.right .panel-inner{border-radius:var(--radius-lg)!important;border:1px solid var(--border-default)!important;box-shadow:var(--shadow-sm)!important;height:auto;max-height:none;overflow:visible}.left .panel-content,.right .panel-content{overflow:visible}.right .analysis-header{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"title context" "tabs tabs";align-items:center;gap:.35rem .55rem;padding:.55rem .7rem}.right .analysis-header h2{grid-area:title}.right .analysis-tab-strip{grid-area:tabs;min-width:0}.right .analysis-context-row{grid-area:context;justify-content:flex-end;min-width:0;overflow:hidden;white-space:nowrap}.bottom{position:relative!important;bottom:auto!important;order:2;width:100%!important;overflow-x:hidden;background:var(--bg-inset);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);z-index:200}.top .panel-inner{padding-top:env(safe-area-inset-top)}.top .panel-content{padding:.35rem .5rem}.top .compact-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"actions settings" "modes modes";align-items:center;gap:.4rem;overflow-x:visible}.mobile-actions{grid-area:actions;justify-self:center;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;overflow-anchor:none}.mobile-actions::-webkit-scrollbar{display:none}.top .compact-grid .mobile-actions button{width:2.75rem;height:2.75rem;min-width:2.75rem;min-height:2.75rem}.top .compact-grid .mobile-actions button:first-child{width:auto;padding-inline:.65rem}.top .mobile-actions button:first-child .btn-label{display:inline}@media(min-width:400px){.top .mobile-actions button:first-child .btn-label{white-space:nowrap}}@media(max-width:399.98px){.top .mobile-actions button:first-child .btn-label{display:none}.top .compact-grid .mobile-actions button:first-child{width:2.75rem;padding-inline:0}}@media(max-width:339.98px){.top .compact-grid .mobile-actions{gap:0}}.mobile-modes-wrapper{grid-area:modes;display:flex;flex-wrap:wrap;gap:.35rem;min-width:0;overflow:visible}.top .settings-menu{grid-area:settings;justify-self:end}.top .settings-menu>summary{width:2.75rem;min-width:2.75rem;height:2.75rem;min-height:2.75rem;max-width:none;padding:0;font-size:0}.top .settings-menu>summary .btn-icon{font-size:1rem}.top-mode-pills{flex:1 1 10rem;min-width:0;max-width:100%;flex-wrap:wrap;justify-content:flex-start}.top-mode-pills[aria-label="Workspace mode"]{flex-basis:9rem}.top-mode-pills[aria-label="Workspace mode"] .gc-pill{flex-grow:1;flex-shrink:0;justify-content:center}.top .compact-grid .top-mode-pills[aria-label="Game mode"]{display:none}.top .settings-menu[open] .settings-backdrop{background:var(--backdrop);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);width:100%;height:100dvh}.top .settings-body{position:fixed;inset:auto 0 0;transform:none;width:100%;max-width:36rem;margin-inline:auto;max-height:85vh;max-height:85dvh;z-index:1000;box-shadow:0 -12px 48px #0009,0 -1px 0 0 var(--border-subtle);padding:1.5rem 1.25rem calc(1.5rem + env(safe-area-inset-bottom));border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:none;overflow-y:auto;border:none;border-top:1px solid var(--border-strong)}.top .settings-body:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:40px;height:4px;background:var(--border-strong);border-radius:4px;z-index:1001;pointer-events:none}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-subtle)}.settings-header h2{margin:0;font-size:1.1rem;color:var(--text-heading);font-weight:600}.settings-close-btn{background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-primary);padding:.35rem .85rem;border-radius:var(--radius-pill);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .14s ease}.top .compact-grid .settings-body button:not(.btn-icon-only),.top .settings-menu .settings-body .advanced-settings>summary{height:auto;min-height:44px}.top .settings-menu .settings-body .switch-control{min-height:44px;padding:.25rem 0;box-sizing:border-box}.top .settings-menu .settings-body .control input[type=range],.top .settings-menu .settings-body .engine-option-row input,.top .settings-menu .settings-body .engine-option-row select{min-height:44px}@media(hover:hover)and (pointer:fine){.settings-close-btn:hover{background:var(--bg-card-hover);border-color:var(--border-strong)}}.desktop-only{display:none!important}.top-mode-pills,.wc-nav,.wc-speed{min-height:2.5rem;padding:.18rem}.top-mode-pills{overflow:visible}.gc-pill,.wc-speed-pill,.mode-pill,.analysis-tab-btn,.panel .gc-pill,.panel .wc-speed-pill,.panel .mode-pill,.panel .analysis-tab-btn{min-height:44px;padding:.4rem .8rem;font-size:.85rem}.top .compact-grid button:not(.btn-icon-only){padding:0 .5rem;font-size:.78rem}.watch-controls button.wc-btn{min-width:44px;min-height:44px;padding:.35rem .55rem;font-size:1.15rem}.watch-controls{flex-wrap:wrap;row-gap:.6rem;column-gap:.6rem}.bottom .panel-content{display:flex;flex-direction:column;align-items:stretch;gap:.5rem;padding:.5rem var(--space-md)}.bottom-status-row{display:flex!important;justify-content:center;width:100%;margin-left:0!important;min-height:1.45rem;gap:.32rem;overflow:hidden}.app-shell[data-workspace-mode=analysis] .bottom-status-row{display:none!important}.bottom-status-row .bottom-engine-info{justify-content:center;flex-wrap:wrap;row-gap:0;min-width:0;max-width:100%;text-align:center}.bottom-status-row .engine-command-inline,.bottom-status-row .engine-telemetry-inline,.bottom-status-row .best-move{display:none}.watch-controls{justify-content:center;flex-wrap:wrap;gap:.4rem}.resize-handle{display:none!important}.preset-grid{grid-template-columns:1fr}.inline-actions button{min-height:2.5rem}.diagnostics-actions{grid-template-columns:repeat(2,1fr)}.bottom-engine-info{font-size:.85rem;margin-bottom:.4rem}.panel-copy.small{font-size:.78rem}.sample-game-row{padding:.6rem;box-shadow:inset 0 0 0 1px var(--glass-3)}.sample-game-actions button{min-height:44px;padding:.42rem .6rem}.sample-filter-row .mode-pill{min-width:44px;min-height:44px}.sample-game-row header strong{font-size:.8rem}.control,.engine-option-row{margin-bottom:1rem;padding-bottom:.4rem}.control span,.engine-option-row span{font-size:.9rem;font-weight:500}.control strong{font-size:.95rem}.switch-control{min-height:44px;padding:.25rem 0;box-sizing:border-box;margin-bottom:1rem}.switch-control span{font-size:.9rem}input[type=range]{height:16px;border-radius:8px}input[type=checkbox]{width:1.3rem;height:1.3rem}.engine-options{max-height:40vh;max-height:40dvh;padding:.6rem}.engine-option-row input,.engine-option-row select{padding:.45rem .55rem;font-size:.85rem}}.gc-pill{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:var(--radius-pill);border:1px solid transparent;background:transparent;color:var(--text-tertiary);font-family:inherit;font-size:.68rem;font-weight:600;cursor:pointer;transition:all .13s ease;white-space:nowrap}@media(hover:hover)and (pointer:fine){.top-mode-pills .gc-pill:not(.gc-pill-active):hover{color:var(--text-secondary);background:var(--bg-elevated)}}.top-mode-pills .gc-pill-active{background:var(--accent-subtle);border-color:var(--border-accent);color:var(--accent-ink)}.gc-pill-icon{width:.75rem;height:.75rem;flex:none;opacity:.8}.gc-pill-active .gc-pill-icon{opacity:1}.bottom-status-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-left:auto}.bottom-engine-info{font-size:.71rem;color:var(--text-tertiary);display:flex;align-items:center;gap:.3rem}.bottom-status-row .best-move{margin:0;white-space:nowrap}@media(max-width:900px)and (max-height:520px)and (orientation:landscape){:root{--stage-pad-y: .5rem}.promotion-overlay{position:fixed;z-index:3000;border-radius:0;background:var(--backdrop)}.promotion-chooser{background:var(--bg-elevated)}.board-stage.promoting{z-index:2500}.main-container{flex-direction:row;align-items:stretch;overflow:hidden}.board-stage{order:0;flex:none;width:auto;max-width:none;padding:var(--stage-pad-y) var(--stage-pad-x)}.board-opening-label{display:none}.right,.left{flex:1 1 0;width:auto!important;min-width:0;height:100%;overflow-y:auto;padding:var(--space-sm)!important}.right{order:1}.left{order:2}.top .compact-grid{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"actions modes settings"}.mobile-modes-wrapper,.top .top-mode-pills{flex-wrap:nowrap}.top .top-mode-pills .gc-pill{flex:none}.mobile-modes-wrapper{overflow-x:auto;scrollbar-width:none}.board-meta-strip{width:0;min-width:100%}.top .panel-inner{padding-block:.2rem}.top .panel-content{padding-block:.15rem}.bottom .panel-content{flex-direction:row;align-items:center;justify-content:center;padding-block:.25rem;gap:.6rem}.bottom-status-row{width:auto!important;flex:0 1 auto;min-width:0}.app-shell[data-workspace-mode=analysis] .bottom-status-row{display:flex!important}.board-meta-status{display:none}}@media(min-width:901px){.main-container{justify-content:center}.board-stage{max-width:80rem;overflow:auto;align-items:flex-start;justify-content:flex-start;scroll-padding:8px}.board-stage .board-layout{margin-block:auto;margin-inline:auto;max-width:none;flex-shrink:0}.panel.left .empty-state{flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;padding:var(--space-sm) var(--space-xs);gap:var(--space-sm)}.panel.left .empty-state-icon{font-size:1.1rem}.panel.left .empty-state p{max-width:none}.board-meta-status{display:none}.panel.left .panel-content{display:flex;flex-direction:column;min-height:0}.panel.left .analytics-card{flex:none}.panel.left .sample-library-card{flex:1 1 auto;min-height:13rem;display:flex;flex-direction:column}.panel.left .sample-game-list{flex:1 1 auto;min-height:0;max-height:none}}.panel-copy.engine-error-copy{color:var(--danger);margin:.1rem 0 0;padding:.35rem .45rem;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);background:var(--danger-subtle)}.settings-subhead{margin:.9rem 0 0;font-size:.72rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--text-secondary)}.shortcut-heading:focus{outline:none}.shortcut-list{display:flex;flex-direction:column;gap:.4rem;margin:.6rem 0 .75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-subtle)}.shortcut-list>div{display:flex;align-items:baseline;gap:.6rem}.shortcut-list dt{display:flex;gap:.25rem;flex:none;min-width:5.5rem}.shortcut-list dd{margin:0;font-size:.78rem;color:var(--text-secondary)}.shortcut-list kbd{font-family:var(--font-mono);font-size:.68rem;line-height:1;padding:3px 5px;border-radius:var(--radius-xs);border:1px solid var(--border-default);border-bottom-width:2px;background:var(--bg-elevated);color:var(--text-primary)}.watch-controls{display:flex;align-items:center;gap:.55rem;flex-shrink:0}.wc-nav{display:flex;gap:.15rem;align-items:center;padding:.12rem;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--glass-2)}button.wc-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;padding:.22rem .54rem;border-radius:var(--radius-pill);border:1px solid transparent;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:background .11s ease,color .11s ease;white-space:nowrap}@media(hover:hover)and (pointer:fine){.wc-btn:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}}.wc-btn:disabled{opacity:.28;cursor:default}.wc-play{display:flex;gap:.2rem}.wc-btn-pause{background:var(--bg-elevated)!important;border-color:var(--border-default)!important;color:var(--text-secondary)!important}@media(hover:hover)and (pointer:fine){.wc-btn-pause:hover{border-color:#d2992266!important;color:var(--warning)!important;background:var(--warning-subtle)!important}}.wc-btn-resume{background:var(--accent-subtle)!important;border-color:var(--border-accent)!important;color:var(--accent-ink)!important}@media(hover:hover)and (pointer:fine){.wc-btn-resume:hover{background:#3fb95038!important;box-shadow:0 0 10px var(--accent-glow)!important}}.wc-btn-resume:disabled,.wc-btn-step:disabled{background:var(--bg-elevated)!important;border-color:var(--border-default)!important;color:var(--text-secondary)!important;box-shadow:none!important}.wc-btn-step{background:var(--info-subtle)!important;border-color:#58a6ff4d!important;color:var(--info)!important}.wc-paused-label{font-size:.7rem;font-weight:600;color:var(--warning);padding:.18rem .55rem;border-radius:var(--radius-pill);border:1px solid rgba(210,153,34,.25);background:var(--warning-subtle);white-space:nowrap;animation:badge-pop .2s cubic-bezier(.22,1,.36,1)}.wc-speed{display:flex;align-items:center;gap:.18rem;padding:.12rem;border-radius:var(--radius-pill);border:1px solid var(--border-subtle);background:var(--glass-2)}.wc-speed-label{font-size:.63rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:0;padding:0 .25rem 0 .35rem;-webkit-user-select:none;user-select:none}button.wc-speed-pill{display:inline-flex;align-items:center;justify-content:center;min-height:32px;box-sizing:border-box;padding:.18rem .5rem;border-radius:var(--radius-pill);border:1px solid transparent;background:transparent;color:var(--text-tertiary);font-family:inherit;font-size:.67rem;font-weight:600;cursor:pointer;transition:all .12s ease}@media(hover:hover)and (pointer:fine){.wc-speed-pill:hover{color:var(--text-secondary);background:var(--bg-elevated)}}.wc-speed-active{background:var(--accent-subtle)!important;border-color:var(--border-accent)!important;color:var(--accent-ink)!important}.mtree-scroll{height:16.25rem;overflow-y:auto;outline:none;padding:.1rem 0}@media(max-width:900px){.mtree-scroll{height:auto;max-height:16.25rem}.analyze-move-card .mtree-scroll{height:auto;max-height:11.25rem}}.mtree-row{display:grid;grid-template-columns:2rem 1fr 1fr;align-items:center;gap:.15rem;margin-bottom:.12rem}.mtree-num{font-size:.67rem;color:var(--text-muted);font-variant-numeric:tabular-nums;font-family:var(--font-mono);padding-left:.1rem;-webkit-user-select:none;user-select:none}.mtree-spacer{display:block}button.mtree-chip{display:inline-flex;align-items:center;gap:.25rem;width:100%;padding:.22rem .4rem;border-radius:var(--radius-xs);border:1px solid transparent;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.76rem;font-weight:500;cursor:pointer;text-align:left;transition:background .1s ease,color .1s ease,border-color .1s ease}@media(hover:hover)and (pointer:fine){.mtree-chip:hover{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-subtle)}}.mtree-chip-active{background:var(--accent-subtle)!important;border-color:var(--border-accent)!important;color:var(--accent-ink)!important;font-weight:700!important}.game-over-card{display:flex;flex-direction:column;gap:.45rem;margin-bottom:var(--space-md);padding:.7rem .75rem;border:1px solid rgba(63,185,80,.34);border-radius:var(--radius-md);background:#3fb95012}.game-over-card h3{margin:0;color:var(--text-heading);font-size:.92rem;font-weight:700}.game-over-card p{margin:0}.game-over-review-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:2.1rem;padding:.4rem .7rem}.coach-threat{display:flex;flex-direction:column;gap:.35rem;margin-top:.5rem}.coach-threat-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;width:100%;min-height:2rem;padding:.35rem .6rem;border:1px solid rgba(167,139,250,.34);border-radius:var(--radius-md);background:#a78bfa14;color:#a78bfa;font-size:.72rem;font-weight:600;cursor:pointer}.coach-threat-btn:hover:not(:disabled){border-color:#a78bfa99;background:#a78bfa24}.coach-threat-btn:disabled{opacity:.65;cursor:default}.coach-threat-answer{margin:0;color:var(--text-secondary);font-size:.74rem}.coach-threat-answer strong{color:#a78bfa}.mtree-branch-actions{display:flex;gap:.35rem;padding:.4rem 0 0}.mtree-promote-btn{display:inline-flex;align-items:center;gap:.35rem;width:100%;justify-content:center;min-height:2rem;padding:.35rem .6rem;border:1px solid rgba(63,185,80,.34);border-radius:var(--radius-md);background:#3fb95014;color:var(--quality-good, #34d399);font-size:.72rem;font-weight:600;cursor:pointer}.mtree-promote-btn:hover{border-color:#3fb95099;background:#3fb95024}.mtree-delete-btn{flex:0 0 auto;min-height:2rem;padding:.35rem .6rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:transparent;color:var(--text-tertiary);font-size:.72rem;font-weight:600;white-space:nowrap;cursor:pointer}.mtree-delete-btn:hover{border-color:var(--border-default);color:var(--text-secondary)}.mtree-delete-btn.armed,.mtree-delete-btn.armed:hover{border-color:#f851498c;background:#f851491f;color:var(--danger)}.mtree-var-more{flex:0 0 auto;align-self:center;padding:.05rem .34rem;border:1px dashed var(--border-default);border-radius:var(--radius-pill);color:var(--text-tertiary);font-family:var(--font-mono);font-size:.62rem;line-height:1.5;cursor:help}.mtree-chip-markers{display:inline-flex;align-items:center;gap:.18rem;margin-left:auto;flex-shrink:0}.mtree-quality-dot{display:inline-block;width:5px;height:5px;border-radius:50%;flex-shrink:0}.mtree-comment-dot{display:inline-block;width:5px;height:5px;border-radius:50%;border:1px solid var(--text-muted);background:var(--bg-elevated);flex-shrink:0}.quality-book .mtree-quality-dot{background:var(--quality-book)}.quality-best .mtree-quality-dot,.quality-excellent .mtree-quality-dot{background:var(--quality-best)}.quality-good .mtree-quality-dot{background:var(--quality-good)}.quality-inaccuracy .mtree-quality-dot{background:var(--quality-inaccuracy)}.quality-mistake .mtree-quality-dot{background:var(--quality-mistake)}.quality-blunder .mtree-quality-dot{background:var(--quality-blunder)}.mtree-variation{display:flex;align-items:center;gap:.15rem;padding:.06rem 0 .06rem 2rem;border-left:2px solid var(--border-subtle);margin:.1rem 0 .1rem .9rem;flex-wrap:wrap}.mtree-var-marker{font-size:.7rem;color:var(--text-muted);margin-right:.15rem;flex-shrink:0}button.mtree-chip-compact{padding:.15rem .35rem;font-size:.71rem;width:auto}.mtree-chip-num{color:var(--text-muted);font-family:var(--font-mono);font-size:.64rem;font-weight:500}.mtree-chip-nag{color:var(--text-muted);font-size:.7em;margin-left:.1rem}.mtree-var-paren{color:var(--text-muted);font-size:.72rem;line-height:1;padding:0 .05rem;-webkit-user-select:none;user-select:none}.mtree-current-comment{margin-top:.5rem;padding:.55rem .65rem;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--bg-card);color:var(--text-secondary)}.mtree-glyph-row{display:flex;gap:.3rem;margin-bottom:.5rem}.panel button.mtree-glyph-btn{flex:1;min-width:0;padding:.24rem 0;font-family:var(--font-mono);font-size:.74rem;font-weight:700;line-height:1;border-radius:var(--radius-xs)}.panel button.mtree-glyph-btn.active{background:var(--accent-subtle);border-color:var(--border-accent);color:var(--accent-ink)}.mtree-current-comment label,.mtree-current-comment-label{display:block;margin-bottom:.25rem;color:var(--text-muted);font-family:var(--font-mono);font-size:.62rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.mtree-current-comment p{margin:0;font-size:.8rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.mtree-comment-input{display:block;width:100%;min-height:4.6rem;resize:vertical;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--bg-elevated);color:var(--text-primary);font:inherit;font-size:.78rem;line-height:1.45;padding:.45rem .5rem;box-sizing:border-box}.mtree-comment-input::placeholder{color:var(--text-muted)}@media(max-width:900px){.top .compact-grid .top-mode-pills .gc-pill{height:auto;min-height:44px;padding:.45rem .8rem}.right .inline-actions button,.right .mtree-glyph-btn,.right .preset-card,.right .tablebase-move-row,.right .opening-move-row,.right .review-book-token-btn,.right .engine-lab-console input,.right .engine-lab-console button,.right .diagnostics-actions button,.right .engine-option-row input,.right .engine-option-row select,.app-shell .panel.right .engine-option-row input,.app-shell .panel.right .engine-option-row select,.app-shell .panel.right :is(input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea),.app-shell .panel.right .engine-lab-card button,.right .opening-source-toggle .mode-pill,.right .opening-speed-toggle .mode-pill{min-height:44px}.app-shell .panel.right .engine-lab-card button{min-width:44px}.app-shell .panel.right .engine-lab-card .inline-actions button,.app-shell .panel.right .engine-lab-card .engine-lab-console button{min-width:min-content}.panel .wc-btn,.panel .wc-speed-pill{min-width:44px;min-height:44px}.panel .mtree-chip{box-sizing:border-box;min-height:44px;padding:.42rem .5rem}.panel .mtree-chip-compact{min-height:40px;min-width:2.5rem;padding:.34rem .48rem}.panel .mtree-row,.panel .mtree-variation{gap:.28rem}}button:active:not(:disabled),.wc-btn:active:not(:disabled),.gc-pill:active,.mode-pill:active,.analysis-tab-btn:active,summary:active{transform:scale(.96);transition:transform 50ms ease}@media(prefers-reduced-motion:reduce){.app-shell *,.app-shell *:before,.app-shell *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.app-shell .panel{transition:none!important}.analyzing-bar.active:after,.thinking-dots span,.lazy-dialog-spinner,.pulsing.btn-primary,.status.loading:before,.status.analyzing:before,.status.thinking:before{animation:none!important}}.board-theme-row{display:flex;flex-direction:column;gap:.35rem;margin:.15rem 0 .35rem}.board-theme-row+.board-theme-row{margin-top:.6rem}.board-theme-label{font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--text-tertiary)}.board-theme-swatches{display:flex;flex-wrap:wrap;gap:.35rem}button.board-theme-swatch{display:flex;flex-direction:column;align-items:center;gap:.2rem;min-width:0;min-height:0;padding:.28rem .3rem;border-radius:var(--radius-md);border:1.5px solid var(--border-subtle);background:var(--bg-elevated);overflow:visible}button.board-theme-swatch.selected{border-color:var(--accent);background:var(--accent-subtle)}.board-theme-chip{display:grid;grid-template-columns:1fr 1fr;width:2.6rem;height:1.3rem;border-radius:3px;overflow:hidden;border:1px solid rgba(0,0,0,.35)}.board-theme-chip>span{display:flex;align-items:flex-end;justify-content:flex-end;padding-right:2px;font-size:.56rem;font-weight:700;line-height:1}.board-theme-name{font-size:.6rem;font-weight:600;color:var(--text-tertiary)}button.board-theme-swatch.selected .board-theme-name{color:var(--text-heading)}.takeback-row{margin-top:.5rem}button.takeback-btn{width:100%;justify-content:center;gap:.35rem;font-weight:600}@property --edge-lead{syntax: "<number>"; inherits: false; initial-value: 0;}@property --edge-trail{syntax: "<number>"; inherits: false; initial-value: 1;}@keyframes edge-lead-in{0%{--edge-lead: 0}to{--edge-lead: 1}}@keyframes edge-trail-out{0%{--edge-trail: 1}to{--edge-trail: 0}}.pointer-coarse-only{display:none}@media(pointer:coarse){.pointer-fine-only{display:none}.pointer-coarse-only{display:block}}.hint-row{margin-top:.5rem}button.hint-btn{width:100%;justify-content:center;gap:.35rem;font-weight:600}.hint-answer{margin-top:.4rem;color:var(--text-secondary)}.hint-answer strong{color:var(--accent-ink);font-family:var(--font-mono)}.blunder-nudge{margin-top:.5rem;padding:.5rem .6rem;border:1px solid rgba(249,115,22,.38);border-radius:var(--radius-md);background:#f9731614;color:var(--text-secondary);font-size:.78rem}.blunder-nudge.blunder{border-color:#ef44446b;background:#ef444414}.blunder-nudge p{margin:0}.blunder-nudge strong{color:var(--text-primary);font-family:var(--font-mono)}.blunder-nudge-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.45rem}.blunder-nudge-actions button{flex:1 1 auto;width:auto;white-space:nowrap}.review-move-row .move-clock{grid-area:clock;justify-self:end;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.66rem;color:var(--text-muted);white-space:nowrap}.coach-verdict{margin:0 0 .5rem;font-size:.8rem;font-weight:600;color:var(--text-secondary)}.resign-btn.armed{border-color:var(--danger, var(--danger));color:var(--danger, var(--danger))}.board-meta-flow>.board-meta-material{flex:none;color:var(--text-secondary)}.dialog-database-offer{display:flex;margin:.6rem 0 .2rem}.board-surface.previewing :is(.board,[data-column]){outline:none}.board-surface.previewing{box-shadow:0 0 0 2px #3fb9508c;border-radius:14px}.board-meta-preview{flex:0 0 auto;border:1px solid rgba(63,185,80,.5);border-radius:var(--radius-pill);padding:.12rem .44rem;background:#3fb95024;color:var(--quality-best);font-family:var(--font-mono);font-size:.64rem;white-space:nowrap}.app-notice-region{position:fixed;left:0;right:0;bottom:3.4rem;z-index:2100;display:flex;justify-content:center;padding-inline:1rem;pointer-events:none}.app-notice{max-width:32rem;padding:.42rem .85rem;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-elevated);color:var(--text-primary);font-size:.8rem;line-height:1.35;text-align:center;text-wrap:balance;box-shadow:var(--shadow-md);animation:app-notice-in .16s ease-out}@keyframes app-notice-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.app-notice{animation:none}}.board-stage.blindfold [data-piece]{opacity:0}.board-stage.blindfold [data-piece]:focus-visible{opacity:.35}.board-blindfold-pill{padding:.1rem .45rem;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text-secondary);font-family:var(--font-heading);font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.drill-btn{padding:.4rem .7rem;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text-secondary);font-family:inherit;font-size:.72rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .15s cubic-bezier(.22,1,.36,1)}.drill-btn:hover:not(:disabled){border-color:var(--border-strong);background:var(--bg-card-hover);color:var(--text-primary)}.drill-btn:disabled{opacity:.5;cursor:not-allowed}.drill-progress{margin:0 0 .4rem;font-size:.8rem;color:var(--text-primary)}.drill-miss{margin:0 0 .5rem;color:var(--text-secondary)}.drill-row{align-items:center;gap:.4rem;margin-top:.35rem}.drill-row-label{font-family:var(--font-heading);font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary);margin-right:auto;flex:0 0 auto;white-space:nowrap}.start-card{margin-bottom:var(--space-md);padding:.65rem;border:1px solid var(--border-accent);border-radius:var(--radius-md);background:var(--bg-card)}.start-card h3{margin:0 0 .5rem;display:flex;align-items:center;gap:.35rem;color:var(--text-tertiary);font-size:.63rem;font-weight:700;text-transform:uppercase}.start-card-primary{width:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.35rem .45rem;min-height:44px;margin-bottom:.45rem}.start-card-summary{flex-basis:100%;font-size:.68rem;font-weight:500;opacity:.85}.start-card-row{gap:.4rem;margin-bottom:.4rem}.start-card-row button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:40px;white-space:normal}.start-card-row:last-child{margin-bottom:0}.game-over-card .game-over-actions{display:grid;grid-auto-flow:row;grid-template-columns:1fr;gap:.4rem}.game-over-card .game-over-actions>button{width:100%;margin:0}.game-over-again-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:40px}.board-draw-controls{display:none;flex:none}.board-draw-layer{position:absolute;inset:0;z-index:6;touch-action:none;cursor:crosshair}.board-surface.drawing{position:relative;border-radius:12px;box-shadow:0 0 0 2px #3b82f6d9}@media(pointer:coarse){.board-draw-controls{display:inline-flex;align-items:center;gap:.3rem;margin-left:auto}.board-draw-controls button{display:inline-flex;align-items:center;gap:.25rem;min-height:44px;padding:0 .55rem;border:1px solid var(--border-default);border-radius:var(--radius-pill);background:var(--bg-card);color:var(--text-secondary);font-size:.68rem;font-weight:600;line-height:1}.board-draw-toggle.active{border-color:#3b82f6d9;background:#3b82f629;color:#93c5fd}.bottom .board-draw-controls{margin-left:0}}.app-shell[data-scroll-chrome=true]{overflow-y:auto;scroll-padding-block:8px}.app-shell[data-scroll-chrome=true]>:is(.top,.bottom)>.resize-handle{scroll-margin-block:8px}.app-shell[data-scroll-chrome=true] .main-container{flex:none;height:100vh;height:100dvh}.app-shell[data-scroll-chrome=true] .dialog-backdrop{padding:.5rem}.app-shell[data-scroll-chrome=true] .dialog-panel{max-height:calc(100dvh - 1rem);overflow-y:auto;scroll-padding-block:8px}.app-shell[data-scroll-chrome=true] .new-game-dialog{max-width:28.75rem}.app-shell[data-scroll-chrome=true] .engine-details-popover{bottom:1rem;max-height:calc(100dvh - 2rem)}.app-shell[data-scroll-chrome=true] .command-palette-input{position:sticky;top:0;z-index:1;background:var(--bg-base)}.app-shell[data-scroll-chrome=true] .dialog-panel>:is(.dialog-header,.dialog-body,.dialog-actions){flex:none}.app-shell[data-scroll-chrome=true] .dialog-actions{flex-wrap:wrap}@media(max-height:320px){.app-shell[data-scroll-chrome=true] .new-game-dialog .mode-desc{display:none}}.app-shell[data-scroll-chrome=true] .dialog-panel>.dialog-body{max-height:none;overflow:visible}.app-shell[data-compact-chrome=true] .top .app-brand{position:absolute;width:1px;height:1px;min-height:0;margin:-1px;padding:0;overflow:hidden;white-space:nowrap;clip-path:inset(50%);border:0}.app-shell[data-compact-chrome=true] .top .panel-inner{padding-block:calc(.2rem + env(safe-area-inset-top)) .2rem}.app-shell[data-compact-chrome=true] .top .compact-grid{display:grid;grid-template-columns:minmax(0,1fr) max-content max-content;grid-template-areas:"actions workspace settings" "game game game";gap:.3rem;padding:.2rem .4rem}.app-shell[data-compact-chrome=true] .top .toolbar-divider,.app-shell[data-compact-chrome=true] .top .btn-label{display:none}.app-shell[data-compact-chrome=true] .top .mobile-modes-wrapper{display:contents}.app-shell[data-compact-chrome=true] .top [data-mode-group=workspace]{grid-area:workspace}.app-shell[data-compact-chrome=true] .top [data-mode-group=game]{grid-area:game;justify-self:center;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:thin}.app-shell[data-compact-chrome=true] .top .gc-pill{flex-shrink:0;min-height:44px}.app-shell[data-compact-chrome=true] .top .mobile-actions{grid-area:actions;justify-self:start;min-width:0;max-width:100%;gap:.2rem;overflow-x:auto;scrollbar-width:thin}.app-shell[data-compact-chrome=true] .top .mobile-actions button,.app-shell[data-compact-chrome=true] .top .settings-menu>summary{flex-shrink:0;width:max(44px,1.6rem);min-width:max(44px,1.6rem);height:max(44px,1.6rem);min-height:max(44px,1.6rem);padding:0}.app-shell[data-compact-chrome=true] .top .settings-menu{grid-area:settings;margin:0}.bottom[data-compact-status=true] .panel-content{flex-wrap:nowrap;gap:.35rem;min-width:0}.bottom[data-compact-status=true] .watch-controls{flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:thin;padding:3px}.bottom[data-compact-status=true] .watch-controls>*{flex-shrink:0}.bottom[data-compact-status=true] .bottom-status-row{flex:none}.bottom[data-compact-status=true] .watch-controls button{min-width:44px;min-height:44px}.app-shell select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23888888' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:.58rem auto;padding-right:1.5rem}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
