@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--topbar:56px;--bg:#121110;--surface:#1b1916;--surface-2:#24211d;--surface-3:#302b25;--border:#dec2961f;--border-2:#dec29638;--text:#f3eee5;--muted:#b4aa9c;--faint:#a49b8e;--ivory:#efe9dc;--ink:#15130f;--accent:#dec296;--accent-2:#c6a77d;--accent-hover:#edd4af;--on-accent:#19150f;--brand-soft:#dec29613;--brand-line:#dec2964d;--surface-top:#181613;--card-shadow:0 8px 28px #00000029;--danger:#ef6b62;--on-accent-muted:#15130f8c;--think-on-accent:#7a5a00;--win:#8fc25a;--loss:#e0574f;--draw:#8b877f;--win-ink:#b6e07d;--loss-ink:#f5948d;--draw-ink:#c4c0b8;--win-bg:#8fc25a29;--loss-bg:#e0574f29;--draw-bg:#ffffff14;--danger-bg:#ef6b621f;--danger-border:#ef6b6259;--hover-border:#dec29661;--selection:#dec29640;--selected-bg:#dec29614;--bar-fill:#ece7de8c;--stripe:#ffffff17;--eval-white:#efe9dc;--eval-dark:#2f2d29;--eval-ink:#15130f;--clock-bg:var(--surface);--dot-border:#ffffff4d;--promo-black:#d9d9d9;--graph-bg:#2b2925;--graph-fill:#ece7de;--graph-fill-spark:#ece7de73;--graph-mid:#ffffff4d;--graph-cursor:#ece7de;--graph-halo:#121110b3;--graph-pending:#ffffff0b;--graph-grid:#ffffff14;--c-brilliant:#26c2a3;--c-great:#749bbf;--c-best:#81b64c;--c-excellent:#96bc4b;--c-good:#96af8b;--c-book:#a88865;--c-forced:#96af8b;--c-inaccuracy:#f7c631;--c-mistake:#ffa459;--c-miss:#ff7769;--c-blunder:#fa412d;--c-brilliant-ink:#4fcdb3;--c-great-ink:#90b1cc;--c-best-ink:#9cc66d;--c-excellent-ink:#aac96e;--c-good-ink:#a9bd9f;--c-book-ink:#bda184;--c-forced-ink:#a9bd9f;--c-inaccuracy-ink:#ecc95a;--c-mistake-ink:#f4b47a;--c-miss-ink:#f4908a;--c-blunder-ink:#f4705f;--c-foe:#b98ad6;--c-foe-ink:#c9a4e2;--c-guard:#46bcd4;--pv-1:#9cc66d;--pv-2:#90b1cc;--pv-3:#e0b76a;--radius:16px;--radius-s:10px;--radius-xs:6px;--font:"IBM Plex Sans Variable", "Segoe UI Variable", "Segoe UI", system-ui, sans-serif;--mono:"IBM Plex Mono", "Cascadia Mono", Consolas, monospace;--fig:"Segoe UI Symbol", "DejaVu Sans", "Noto Sans Symbols2", sans-serif;--shadow:0 12px 32px #00000080, 0 1px 0 #ffffff0a inset;--drop:#00000059;--scrim:#0000008c;--gutter:52px;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-7:14px;--space-8:16px;--space-9:20px;--space-10:24px;--space-11:32px;--space-12:40px;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:16px;--text-xl:20px;--text-2xl:28px;--text-3xl:40px;--tracking-caps:.05em;--icon-s:14px;--icon-m:16px;--icon-l:20px;--shadow-xs:0 1px 3px #0000004d;--shadow-sm:0 4px 12px #00000059;--shadow-md:var(--shadow);--shadow-lg:0 24px 64px #0000008c, 0 1px 0 #ffffff0d inset;--dur-instant:.1s;--dur-fast:.12s;--dur-base:.18s;--dur-moderate:.32s;--dur-slow:.6s;--ease-out:cubic-bezier(.16, .84, .44, 1);--ease-swift:cubic-bezier(.2, .7, .2, 1);--ease-soft:cubic-bezier(.16, .78, .4, 1);--z-sticky:5;--z-dropdown:20;--z-overlay:30;--z-toast:40;--z-modal:50;--tap:44px;--dock-h:56px;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px)}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--surface-3) transparent}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;font-size:14px;line-height:1.45}body{-webkit-font-smoothing:antialiased;overscroll-behavior-y:contain}a{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint);text-underline-offset:2px;transition:text-decoration-color .12s}a:hover{-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--selection)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}button,select,input,textarea{font:inherit;color:inherit;background:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--radius-s);min-height:36px;transition:background var(--dur-base), border-color var(--dur-base), color var(--dur-base), box-shadow var(--dur-base);padding:0 12px;font-size:13px}input,textarea{background:var(--surface)}input::placeholder,textarea::placeholder{color:var(--faint)}input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light] input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}input[type=checkbox]{width:15px;height:15px;min-height:0;accent-color:var(--ivory);vertical-align:middle;cursor:pointer;margin:0;padding:0}button{cursor:pointer;white-space:nowrap;font-weight:500}button:hover{background:var(--surface-3);border-color:var(--hover-border)}button:active{transform:translateY(.5px)}button.primary{background:var(--accent);color:var(--on-accent);border-color:#0000;font-weight:600}button.primary:hover{background:var(--accent-hover)}button.ghost{color:var(--muted);background:0 0;border-color:#0000}button.ghost:hover{background:var(--surface-2);color:var(--text);border-color:#0000}button.danger{color:var(--danger)}button.danger:hover{background:var(--danger-bg);border-color:var(--danger-border)}button:disabled{opacity:.45;cursor:default;transform:none}button:disabled:hover{background:var(--surface-2);border-color:var(--border-2)}button.ghost:disabled:hover{background:0 0;border-color:#0000}button.sm{min-height:26px;padding:0 9px;font-size:12px}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%239c968b' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}select:hover{border-color:var(--hover-border)}label{cursor:pointer}kbd{font-family:var(--mono);color:var(--muted);border:1px solid var(--border-2);border-radius:var(--radius-xs);border-bottom-width:2px;padding:0 5px;font-size:11px}.topbar{height:var(--topbar);background:var(--surface-top);border-bottom:1px solid var(--border);z-index:5;align-items:center;gap:16px;padding:0 20px;display:flex;position:sticky;top:0;overflow:hidden}.topbar .brand{letter-spacing:-.025em;align-items:center;gap:9px;font-size:18px;font-weight:600;text-decoration:none;display:flex}.brand-mark{width:24px;height:24px;color:var(--accent);flex:none;display:block}.road{font-family:var(--mono);color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.road-now{color:var(--text);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.road-track{background:var(--border-2);border-radius:1px;width:132px;height:2px;margin:0 6px 0 4px;position:relative}.road-track:after{content:"";background:var(--muted);border-radius:1px;width:2px;height:8px;position:absolute;top:-3px;right:0}.road-fill{background:var(--ivory);border-radius:1px;height:100%;transition:width .6s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;left:0}.road-dot{background:var(--ivory);width:10px;height:10px;box-shadow:0 0 0 3px var(--bg);border-radius:50%;margin-left:-5px;transition:left .6s cubic-bezier(.2,.7,.2,1);position:absolute;top:-4px}.road-goal{color:var(--faint)}.topbar nav{align-self:stretch;gap:2px;margin-left:6px;display:flex}.topbar nav a{color:var(--muted);border-bottom:2px solid #0000;align-items:center;margin-bottom:-1px;padding:0 11px;font-weight:500;text-decoration:none;transition:color .12s,border-color .12s;display:flex}.topbar nav a:hover{color:var(--text)}.topbar nav a.active{color:var(--accent);border-bottom-color:var(--accent);background:var(--brand-soft)}.topbar>*{flex:none}.topbar .spacer{flex:auto;min-width:0}.topbar .actions{align-items:center;gap:8px;display:flex}.queue:empty{display:none}.chip{background:var(--surface);border:1px solid var(--border);height:28px;color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 10px;font-size:12px;display:inline-flex}.chip.busy{color:var(--text)}.chip.error{color:var(--danger);border-color:var(--danger-border)}.chip-dot{background:var(--faint);border-radius:50%;flex:none;width:7px;height:7px}.chip.busy .chip-dot{background:var(--ivory);animation:1.4s ease-in-out infinite pulse}.chip.error .chip-dot{background:var(--danger)}.chip-bar{background:var(--border-2);border-radius:2px;width:56px;height:3px;overflow:hidden}.chip-bar>i{background:var(--ivory);height:100%;transition:width .5s;display:block}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}main{max-width:1400px;margin:0 auto;padding:24px 24px 56px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 24px;margin-bottom:24px;display:flex}.page-title{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:27px;font-weight:500;line-height:1.25}.page-sub{color:var(--muted);max-width:72ch;margin-top:6px;font-size:14px}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stack{flex-direction:column;gap:14px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--card-shadow);padding:18px 20px}.card-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.card-title{letter-spacing:-.01em;font-size:14px;font-weight:600}.card-hint{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.4}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.muted{color:var(--muted)}.faint{color:var(--faint)}.small{font-size:12px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.ta-r{text-align:right}.empty{text-align:center;color:var(--muted);padding:36px 20px}.empty b{color:var(--text);margin-bottom:4px;font-weight:600;display:block}.empty .row{justify-content:center;margin-top:14px}.loading{color:var(--muted);padding:14px 0}.loading:before{content:"";border:2px solid var(--faint);border-top-color:var(--ivory);vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:10px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;vertical-align:middle;padding:9px 10px}th{color:var(--muted);border-bottom-color:var(--border-2);font-size:12px;font-weight:500}tbody tr:last-child td{border-bottom:none}th.ta-r,td.ta-r{text-align:right}tr.clickable{cursor:pointer;transition:background .1s}tr.clickable:hover{background:var(--surface-2)}tr.selected{background:var(--selected-bg)}table.compact th,table.compact td{padding:6px 8px;font-size:13px}table.compact td{white-space:normal}td:has(.color-sq){white-space:nowrap}.card>table{width:calc(100% + 12px);margin:0 -6px}.pill{background:var(--surface-3);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;padding:1px 9px;font-size:12px;font-weight:500;line-height:1.5;display:inline-flex}.pill.win{color:var(--win-ink);background:var(--win-bg)}.pill.loss{color:var(--loss-ink);background:var(--loss-bg)}.pill.draw{color:var(--draw-ink);background:var(--draw-bg)}.color-sq{border:1px solid var(--dot-border);vertical-align:0;border-radius:50%;width:10px;height:10px;margin-right:7px;display:inline-block}.color-sq.white{background:var(--eval-white)}.color-sq.black{background:var(--eval-dark)}.err{font-family:var(--mono);border-radius:var(--radius-xs);margin-right:4px;padding:0 6px;font-size:12px;font-weight:600;display:inline-block}.err-blunder{color:var(--c-blunder-ink);background:color-mix(in srgb, var(--c-blunder) 14%, transparent)}.err-mistake{color:var(--c-mistake-ink);background:color-mix(in srgb, var(--c-mistake) 14%, transparent)}.err-brilliant{color:var(--c-brilliant-ink);background:color-mix(in srgb, var(--c-brilliant) 14%, transparent)}.err-great{color:var(--c-great-ink);background:color-mix(in srgb, var(--c-great) 14%, transparent)}.status-queued,.status-running{color:var(--text)}.status-running:before,.status-queued:before{content:"";background:var(--ivory);vertical-align:1px;border-radius:50%;width:6px;height:6px;margin-right:7px;display:inline-block}.status-running:before{animation:1.4s ease-in-out infinite pulse}.status-done,.status-none,.status-skipped{color:var(--muted)}.status-error{color:var(--danger)}.queue{color:var(--muted);font-size:12px}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar input[type=date]{width:148px}.toolbar .sep{background:var(--border-2);width:1px;height:20px;margin:0 4px}.pager{color:var(--muted);align-items:center;gap:10px;margin-top:12px;font-size:13px;display:flex}.pager button{min-width:32px;padding:0}.toast{background:var(--surface-3);border:1px solid var(--border-2);border-radius:var(--radius-s);z-index:20;max-width:440px;box-shadow:var(--shadow);padding:10px 14px 10px 16px;font-size:13px;animation:.18s ease-out toast-in;position:fixed;bottom:20px;right:20px}.toast:before{content:"";background:var(--ivory);border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.toast.error:before{background:var(--danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}dialog{background:var(--surface);color:var(--text);border:1px solid var(--border-2);border-radius:var(--radius);min-width:min(520px,100vw - 32px);max-width:calc(100vw - 32px);box-shadow:var(--shadow);padding:20px 22px}dialog::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}dialog h3{letter-spacing:-.01em;margin:0 0 14px;font-size:16px;font-weight:600}textarea{width:100%;min-height:160px;font-family:var(--mono);padding:10px 12px;font-size:13px;line-height:1.5}.menu-body{z-index:30;background:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--radius-s);min-width:220px;max-height:calc(100vh - 16px);box-shadow:var(--shadow);padding:6px;display:none;position:fixed;overflow-y:auto}.menu-body.open{flex-direction:column;align-items:stretch;gap:2px;display:flex}.menu-body label{border-radius:var(--radius-xs);align-items:center;gap:10px;padding:7px 10px;font-size:13px;display:flex}.menu-body label:hover{background:var(--surface-3)}.menu-body .menu-sep{background:var(--border);height:1px;margin:4px 6px}.menu-item{text-align:left;justify-content:flex-start;width:100%;min-height:0;padding:7px 10px;font-weight:400}.menu-item.danger:hover{background:var(--danger-bg)}.view-menu{display:inline-flex;position:relative}.menu-btn{color:var(--muted);padding:0 9px;font-size:16px;line-height:1}.menu-btn.active,.menu-btn:hover{color:var(--text)}.row-menu .menu-btn{letter-spacing:1px;min-height:26px;font-size:16px}.cls-brilliant{--cls:var(--c-brilliant);--cls-ink:var(--c-brilliant-ink)}.cls-great{--cls:var(--c-great);--cls-ink:var(--c-great-ink)}.cls-best{--cls:var(--c-best);--cls-ink:var(--c-best-ink)}.cls-excellent{--cls:var(--c-excellent);--cls-ink:var(--c-excellent-ink)}.cls-good{--cls:var(--c-good);--cls-ink:var(--c-good-ink)}.cls-book{--cls:var(--c-book);--cls-ink:var(--c-book-ink)}.cls-forced{--cls:var(--c-forced);--cls-ink:var(--c-forced-ink)}.cls-inaccuracy{--cls:var(--c-inaccuracy);--cls-ink:var(--c-inaccuracy-ink)}.cls-mistake{--cls:var(--c-mistake);--cls-ink:var(--c-mistake-ink)}.cls-miss{--cls:var(--c-miss);--cls-ink:var(--c-miss-ink)}.cls-blunder{--cls:var(--c-blunder);--cls-ink:var(--c-blunder-ink)}[class*=cls-]{color:var(--cls-ink,var(--cls))}.cls-chip{background:color-mix(in srgb, var(--cls,var(--muted)) 16%, transparent);color:var(--cls-ink,var(--muted));border-radius:999px;align-items:center;gap:7px;padding:2px 10px 2px 8px;font-size:13px;font-weight:600;display:inline-flex}.cls-chip .sym{align-items:center;display:inline-flex}.sym>.cls-mark-svg{display:block}.moves .mv .sym,.moves-strip .sym{vertical-align:-2px;align-items:center;display:inline-flex}.bg-brilliant{background:var(--c-brilliant)}.bg-great{background:var(--c-great)}.bg-best{background:var(--c-best)}.bg-excellent{background:var(--c-excellent)}.bg-good{background:var(--c-good)}.bg-book{background:var(--c-book)}.bg-forced{background:var(--c-forced)}.bg-inaccuracy{background:var(--c-inaccuracy);color:#2c2822}.bg-mistake{background:var(--c-mistake);color:#2c2822}.bg-miss{background:var(--c-miss)}.bg-blunder{background:var(--c-blunder)}.san .fig{font-family:var(--fig);font-size:max(15px,1.1em);line-height:1;display:none}body.figurines .san .fig{display:inline}body.figurines .san .ltr{display:none}.board-frame{grid-template-rows:auto 16px;grid-template-columns:16px minmax(0,1fr);display:grid}.board-wrap{aspect-ratio:1;grid-area:1/2;width:100%;position:relative;container-type:inline-size}.board-wrap .cg-wrap-el{width:100%;height:100%}.board-wrap cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop);border-radius:3px;overflow:hidden}.coords-ranks,.coords-files{color:var(--faint);font-size:12px;font-family:var(--mono);font-weight:500;display:flex}.coords-ranks{flex-direction:column;grid-area:1/1}.coords-files{grid-area:2/2}.coords-ranks span,.coords-files span{flex:1 1 0;justify-content:center;align-items:center;display:flex}.cls-marker{pointer-events:none;z-index:4;border-radius:50%;width:max(20px,4.4cqw);height:max(20px,4.4cqw);position:absolute;transform:translate(-50%)}.cls-marker .cls-mark-svg{color:inherit;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@supports (width:round(10px, 2px)){.cls-marker{width:round(max(20px,4.4cqw),2px);height:round(max(20px,4.4cqw),2px)}}.cls-marker .cls-mark-svg{width:var(--mark-sym,74%);height:var(--mark-sym,74%)}.cls-marker,:where(body[data-mark=coin]) .cls-marker,.mark-thumb[data-mark=coin] .cls-marker{color:var(--cls-ink,var(--cls));box-shadow:0 0 0 max(2px, .32cqw) var(--cls), 0 0 10px #0000008c;background:#201e1b}:where(body[data-mark=ink]) .cls-marker,.mark-thumb[data-mark=ink] .cls-marker{background:var(--cls);color:#2c2822;box-shadow:0 0 0 max(1px, .12cqw) color-mix(in srgb, var(--cls) 70%, #000), 0 0 9px #00000073}:where(body[data-mark=white]) .cls-marker,.mark-thumb[data-mark=white] .cls-marker{background:color-mix(in srgb, var(--cls) 50%, #1a1917);color:#fff;box-shadow:0 0 0 max(1.5px, .22cqw) var(--cls), 0 0 9px #00000080}:where(body[data-mark=ring]) .cls-marker,.mark-thumb[data-mark=ring] .cls-marker{color:color-mix(in srgb, var(--cls) 68%, #000);box-shadow:inset 0 0 0 max(2px, .3cqw) color-mix(in srgb, var(--cls) 78%, #000), 0 0 9px #0006;background:#f7f2e6}:where(:root[data-theme=light] body:is(:not([data-mark]),[data-mark=coin])) .cls-marker,:root[data-theme=light] .mark-thumb[data-mark=coin] .cls-marker{color:color-mix(in srgb, var(--cls) 70%, #241f1a);box-shadow:0 0 0 max(2px, .32cqw) var(--cls), 0 0 10px #3a352e4d;background:#f7f2e6}:root{--medal-win:#ffc83a;--medal-draw:#62a0e0;--medal-loss:#d2564d}.res-medal.res-win{--cls:var(--medal-win);--cls-ink:var(--medal-win)}.res-medal.res-draw{--cls:var(--medal-draw);--cls-ink:var(--medal-draw)}.res-medal.res-loss{--cls:var(--medal-loss);--cls-ink:var(--medal-loss)}.cls-marker.appear,body[data-mark-anim=stamp] .cls-marker.appear{animation:.32s cubic-bezier(.16,.9,.35,1) fx-stamp}body[data-mark-anim=halo] .cls-marker.appear{animation:.18s ease-out fx-appear}body[data-mark-anim=settle] .cls-marker.appear{animation:.3s cubic-bezier(.16,.84,.44,1) fx-mk-settle}body[data-mark-anim=fade] .cls-marker.appear{animation:.2s ease-out fx-appear}body[data-mark-anim=none] .cls-marker.appear{animation:none}body[data-mark-anim=halo] .board-wrap[class*=fx-] .fx-ring.r1{animation:.7s cubic-bezier(.16,.78,.4,1) fx-wave}body[data-mark-anim=halo] .board-wrap[class*=fx-] .fx-ring.r2{animation:.7s cubic-bezier(.16,.78,.4,1) .12s fx-wave}@keyframes fx-appear{0%{opacity:0;transform:translate(-50%)scale(.94)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes fx-stamp{0%{opacity:0;transform:translate(-50%)scale(.5)}62%{opacity:1;transform:translate(-50%)scale(1.06)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes fx-mk-settle{0%{opacity:0;transform:translate(-50%,-14%)scale(.96)}to{opacity:1;transform:translate(-50%)scale(1)}}.board-wrap cg-container{transition:box-shadow .45s cubic-bezier(.16,.84,.44,1)}.board-wrap.res-ok cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop), 0 0 14px 1px color-mix(in srgb, var(--c-best) 62%, transparent), 0 0 34px 8px color-mix(in srgb, var(--c-best) 46%, transparent), 0 0 76px 24px color-mix(in srgb, var(--c-best) 26%, transparent), 0 0 150px 56px color-mix(in srgb, var(--c-best) 14%, transparent)}.board-wrap.res-bad cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop), 0 0 14px 1px color-mix(in srgb, var(--c-blunder) 56%, transparent), 0 0 34px 8px color-mix(in srgb, var(--c-blunder) 40%, transparent), 0 0 76px 24px color-mix(in srgb, var(--c-blunder) 22%, transparent), 0 0 150px 56px color-mix(in srgb, var(--c-blunder) 12%, transparent)}.board-wrap.mv-brilliant{--mv:var(--c-brilliant)}.board-wrap.mv-great{--mv:var(--c-great)}.board-wrap.mv-best{--mv:var(--c-best)}.board-wrap.mv-excellent{--mv:var(--c-excellent)}.board-wrap.mv-good{--mv:var(--c-good)}.board-wrap.mv-book{--mv:var(--c-book)}.board-wrap.mv-forced{--mv:var(--c-forced)}.board-wrap.mv-inaccuracy{--mv:var(--c-inaccuracy)}.board-wrap.mv-mistake{--mv:var(--c-mistake)}.board-wrap.mv-miss{--mv:var(--c-miss)}.board-wrap.mv-blunder{--mv:var(--c-blunder)}.board-wrap[class*=mv-] cg-board square.last-move{background-color:color-mix(in srgb, var(--mv) 36%, transparent);transition:background-color .3s ease-out}.cls-fx{pointer-events:none;z-index:2;width:12.5%;height:12.5%;position:absolute}.cls-fx .fx-tint{background:var(--cls);opacity:0;border-radius:2px;position:absolute;inset:0}.cls-fx .fx-ring{border:max(1.5px, .28cqw) solid var(--cls);opacity:0;border-radius:50%;width:112%;height:112%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.board-wrap.fx-brilliant{--cls:var(--c-brilliant)}.board-wrap.fx-great{--cls:var(--c-great)}.board-wrap.fx-best{--cls:var(--c-best)}.board-wrap.fx-excellent{--cls:var(--c-excellent)}.board-wrap.fx-good{--cls:var(--c-good)}.board-wrap.fx-book{--cls:var(--c-book)}.board-wrap.fx-forced{--cls:var(--c-forced)}.board-wrap.fx-inaccuracy{--cls:var(--c-inaccuracy)}.board-wrap.fx-mistake{--cls:var(--c-mistake)}.board-wrap.fx-miss{--cls:var(--c-miss)}.board-wrap.fx-blunder{--cls:var(--c-blunder)}.board-wrap.fx-good .cls-marker,.board-wrap.fx-book .cls-marker,.board-wrap.fx-forced .cls-marker{animation:.34s cubic-bezier(.16,.84,.44,1) fx-breath}.board-wrap.fx-best .cls-marker,.board-wrap.fx-excellent .cls-marker{animation:.38s cubic-bezier(.16,.84,.44,1) fx-settle}.board-wrap.fx-great .cls-marker{animation:.42s cubic-bezier(.16,.84,.44,1) fx-pop}.board-wrap.fx-great .fx-ring.r1{animation:.68s cubic-bezier(.16,.78,.4,1) fx-wave}.board-wrap.fx-brilliant .cls-marker{animation:.5s cubic-bezier(.16,.84,.44,1) fx-pop,2.4s ease-in-out fx-halo}.board-wrap.fx-brilliant .fx-ring.r1{animation:1.1s cubic-bezier(.16,.7,.35,1) fx-wave}.board-wrap.fx-brilliant .fx-tint{animation:.9s ease-out fx-tint}.board-wrap.fx-strong.fx-best .cls-marker,.board-wrap.fx-strong.fx-excellent .cls-marker,.board-wrap.fx-strong.fx-good .cls-marker{animation:.42s cubic-bezier(.16,.84,.44,1) fx-pop}.board-wrap.fx-strong.fx-best .fx-ring.r1,.board-wrap.fx-strong.fx-excellent .fx-ring.r1,.board-wrap.fx-strong.fx-good .fx-ring.r1{animation:.7s cubic-bezier(.16,.78,.4,1) fx-wave}.board-wrap.fx-inaccuracy .cls-marker{animation:.4s cubic-bezier(.16,.84,.44,1) fx-drop}.board-wrap.fx-inaccuracy .fx-tint{animation:.45s ease-out fx-tint}.board-wrap.fx-mistake .cls-marker{animation:.42s cubic-bezier(.16,.84,.44,1) fx-drop}.board-wrap.fx-mistake .fx-ring.r1{animation:.6s cubic-bezier(.25,.6,.25,1) fx-implode}.board-wrap.fx-mistake .fx-tint{animation:.6s ease-out fx-tint-hold}.board-wrap.fx-blunder .cls-marker,.board-wrap.fx-miss .cls-marker{animation:.46s cubic-bezier(.16,.84,.44,1) fx-slam}.board-wrap.fx-blunder .fx-ring.r1,.board-wrap.fx-miss .fx-ring.r1{animation:.62s cubic-bezier(.25,.6,.25,1) fx-implode}.board-wrap.fx-blunder .fx-tint,.board-wrap.fx-miss .fx-tint{animation:.7s ease-out fx-tint-hold}.board-wrap.fx-blunder,.board-wrap.fx-miss{animation:.5s cubic-bezier(.2,.7,.3,1) fx-quake}@keyframes fx-breath{0%{transform:translate(-50%)scale(.97)}to{transform:translate(-50%)scale(1)}}@keyframes fx-settle{0%{transform:translate(-50%,-4%)scale(.94)}to{transform:translate(-50%)scale(1)}}@keyframes fx-pop{0%{transform:translate(-50%)scale(.94)}45%{transform:translate(-50%)scale(1.09)}to{transform:translate(-50%)scale(1)}}@keyframes fx-wave{0%{opacity:.5;transform:translate(-50%,-50%)scale(.55)}to{opacity:0;transform:translate(-50%,-50%)scale(1.8)}}@keyframes fx-halo{0%{box-shadow:0 1px 4px #0000008c, 0 0 18px 4px color-mix(in srgb, var(--cls) 62%, transparent)}30%{box-shadow:0 1px 4px #0000008c, 0 0 9px 1px color-mix(in srgb, var(--cls) 30%, transparent)}62%{box-shadow:0 1px 4px #0000008c, 0 0 17px 4px color-mix(in srgb, var(--cls) 55%, transparent)}to{box-shadow:0 1px 4px #0000008c,0 0 #0000}}@keyframes fx-drop{0%{transform:translate(-50%,-8%)scale(1.04)}55%{transform:translate(-50%,2%)scale(.97)}to{transform:translate(-50%)scale(1)}}@keyframes fx-slam{0%{transform:translate(-50%,-12%)scale(1.14)}55%{transform:translate(-50%,3%)scale(.93)}to{transform:translate(-50%)scale(1)}}@keyframes fx-implode{0%{opacity:0;transform:translate(-50%,-50%)scale(2.2)}40%{opacity:.6}to{opacity:0;transform:translate(-50%,-50%)scale(.45)}}@keyframes fx-tint{0%{opacity:.32}to{opacity:0}}@keyframes fx-tint-hold{0%{opacity:.36}55%{opacity:.2}to{opacity:0}}@keyframes fx-quake{0%,to{transform:translate(0)}18%{transform:translate(-2px,1px)}42%{transform:translate(2px,-1px)}68%{transform:translate(-1px)}}@media (prefers-reduced-motion:reduce){.verdict-ok .wipe,.step-dots.lit .dot.hit{animation:none!important}.verdict-ok .tick path{stroke-dashoffset:0;animation:none!important}.board-wrap[class*=fx-],.board-wrap[class*=fx-] .cls-marker,.cls-marker.appear,.board-wrap[class*=fx-] .fx-ring,.board-wrap[class*=fx-] .fx-tint{animation:none!important}}.eval-bar{width:28px;height:var(--board);background:linear-gradient(180deg, color-mix(in srgb, var(--eval-dark) 86%, #fff), var(--eval-dark) 38%, color-mix(in srgb, var(--eval-dark) 88%, #000));box-shadow:inset 0 0 0 1px #0000004d, 0 1px 3px var(--drop);border-radius:8px;flex:none;position:relative;overflow:hidden}.eval-bar .white{background:linear-gradient(180deg, #fff, var(--eval-white) 42%, color-mix(in srgb, var(--eval-white) 92%, #000));transition:height .38s cubic-bezier(.22,.75,.28,1);position:absolute;bottom:0;left:0;right:0;box-shadow:0 0 9px #00000042}.eval-bar .mid{background:#96969680;height:1px;position:absolute;top:50%;left:4px;right:4px}.eval-bar .label{text-align:center;font-family:var(--mono);color:var(--eval-white);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:11px;font-weight:700;position:absolute;left:0;right:0}.eval-bar .label-top{top:6px}.eval-bar .label-bottom{bottom:6px}.eval-bar .label.on-white{color:var(--eval-ink)}.board-head{align-items:center;display:flex}.coach-review:empty{display:none}.coach-review{margin:0 0 12px}.review-bar{border-radius:var(--radius-s);background:var(--surface-2);border:1px solid var(--border-2);flex-direction:column;gap:8px;padding:10px 12px;font-size:13px;display:flex}.review-line{align-items:center;gap:10px;min-width:0;display:flex}.review-step{white-space:nowrap;font-weight:600}.review-dots{flex:none;align-items:center;gap:4px;display:flex}.review-dot{background:var(--border-2);border-radius:50%;width:6px;height:6px;transition:background .15s,transform .15s}.review-dot.done{background:var(--faint)}.review-dot.current{background:var(--accent);transform:scale(1.4)}.review-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);flex:auto;overflow:hidden}.review-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.review-opts{flex-wrap:wrap;align-items:center;gap:12px;margin-right:auto;display:flex}.review-asks{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.review-prev{min-height:28px;padding:0 9px}.review-prev:disabled{opacity:.35}.review-next{align-items:center;gap:6px;display:inline-flex}.review-bar.await .review-text{color:var(--c-best-ink);font-weight:600;animation:1.7s ease-in-out infinite review-pulse}.review-bar.await .review-text:before{content:"▸";margin-right:8px}.review-bar.await-theirs .review-text{color:var(--c-great-ink);font-weight:600;animation:1.7s ease-in-out infinite review-pulse}.review-bar.await-theirs .review-text:before{content:"▸";margin-right:8px}.review-bar.ok{border-color:var(--c-best);background:#81b64c1a}.review-bar.ok .review-text{color:var(--c-best-ink);font-weight:600}.review-bar.ok .review-text:before{content:"✓";margin-right:8px}.review-bar.great{border-color:var(--c-great);background:#749bbf1a}.review-bar.great .review-text{color:var(--c-great-ink);font-weight:600}.review-bar.great .review-text:before{content:"!";margin-right:8px}.review-bar.brilliant{border-color:var(--c-brilliant);background:#26c2a31a}.review-bar.brilliant .review-text{color:var(--c-brilliant-ink);font-weight:600}.review-bar.brilliant .review-text:before{content:"!!";margin-right:8px}.review-bar.bad{border-color:var(--c-blunder);background:#fa412d1a}.review-bar.bad .review-text{color:var(--c-blunder-ink);font-weight:600}.review-bar.bad .review-text:before{content:"✗";margin-right:8px}.review-bar.done .review-step{color:var(--text)}@keyframes review-pulse{0%,to{opacity:.68}50%{opacity:1}}.review-bar.nudge{animation:.42s cubic-bezier(.36,.07,.19,.97) review-nudge}@keyframes review-nudge{0%,to{border-color:var(--border-2);transform:translate(0)}15%{border-color:var(--c-best);transform:translate(-5px)}40%{border-color:var(--c-best);transform:translate(5px)}65%{border-color:var(--c-best);transform:translate(-3px)}85%{transform:translate(2px)}}@media (prefers-reduced-motion:reduce){.review-bar.nudge{border-color:var(--c-best);animation:none}.review-bar.await .review-text{opacity:1;animation:none}}body.game-page .board-wrap.res-ok cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop), 0 0 14px 1px color-mix(in srgb, var(--c-best) 62%, transparent), 0 0 34px 8px color-mix(in srgb, var(--c-best) 46%, transparent), 0 0 62px 18px color-mix(in srgb, var(--c-best) 24%, transparent)}body.game-page .board-wrap.res-bad cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop), 0 0 14px 1px color-mix(in srgb, var(--c-blunder) 56%, transparent), 0 0 34px 8px color-mix(in srgb, var(--c-blunder) 40%, transparent), 0 0 62px 18px color-mix(in srgb, var(--c-blunder) 20%, transparent)}body.game-page .board-wrap.res-great cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop), 0 0 14px 1px color-mix(in srgb, var(--c-great) 66%, transparent), 0 0 34px 8px color-mix(in srgb, var(--c-great) 48%, transparent), 0 0 62px 18px color-mix(in srgb, var(--c-great) 26%, transparent)}body.game-page .board-wrap.res-brilliant cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop), 0 0 14px 1px color-mix(in srgb, var(--c-brilliant) 70%, transparent), 0 0 34px 8px color-mix(in srgb, var(--c-brilliant) 50%, transparent), 0 0 62px 18px color-mix(in srgb, var(--c-brilliant) 28%, transparent)}body.game-page .board-wrap.res-reveal cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop), 0 0 14px 1px color-mix(in srgb, var(--accent) 40%, transparent), 0 0 34px 8px color-mix(in srgb, var(--accent) 26%, transparent), 0 0 62px 18px color-mix(in srgb, var(--accent) 12%, transparent)}.board-foot{align-items:center;display:flex}:is(.board-head,.board-foot)>.player-bar{flex:auto;min-width:0;margin-left:0}.eval-cap{width:calc(var(--gutter) - 8px);cursor:default;height:26px;font-family:var(--mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:var(--surface-2);color:var(--faint);box-shadow:inset 0 0 0 1px var(--border);border-radius:7px;flex:none;justify-content:center;align-items:center;margin-right:8px;font-size:12px;font-weight:700;transition:background .28s,color .28s,box-shadow .28s;display:flex}.eval-cap.lead-white{background:var(--eval-white);color:var(--eval-ink);box-shadow:inset 0 0 0 1px #00000024, 0 1px 2px var(--drop)}.eval-cap.lead-black{background:var(--eval-dark);color:var(--eval-white);box-shadow:inset 0 0 0 1px #ffffff1a, 0 1px 2px var(--drop)}.eval-res{width:calc(var(--gutter) - 8px);cursor:default;height:22px;font-family:var(--mono);font-variant-numeric:tabular-nums;background:var(--surface-2);color:var(--muted);box-shadow:inset 0 0 0 1px var(--border);border-radius:6px;flex:none;justify-content:center;align-items:center;gap:2px;margin-right:8px;font-size:12px;font-weight:600;display:flex}.eval-res .ico{opacity:.75;margin-right:-1px}.eval-res.frac{font-family:var(--font);font-weight:700}body.game-page main{max-width:none;padding:12px 16px}.game-layout{--board-fit:calc(100vh - var(--topbar) - 24px - var(--board-chrome,200px));--board-max-h:max(var(--board-fit), 280px);--board-auto:min(var(--board-max-h), 46vw, 1000px);--board-raw:clamp(280px, min(var(--board-set,var(--board-auto)), var(--board-max-h), calc(100vw - 560px)), 1100px);--board:var(--board-raw);height:calc(100vh - var(--topbar) - 24px);grid-template-rows:minmax(0,1fr);grid-template-columns:auto 44px minmax(0,1fr);align-items:stretch;display:grid}.game-layout>.splitter{width:100%}@supports (width:round(down, 100px, 8px)){.game-layout{--board:round(down, var(--board-raw), var(--cg-step,8px))}}.board-col{--board-air:56px;min-height:0;width:calc(var(--board) + var(--gutter) + var(--board-air));padding-right:var(--board-air);margin-right:calc(-1 * var(--board-air));flex-direction:column;justify-content:safe center;gap:6px;display:flex;overflow:hidden auto;container:bcol/inline-size}.board-col>*{min-width:0}.board-row{align-items:flex-start;gap:8px;display:flex}.board-col .board-frame{width:calc(var(--board) + 16px)}.side{flex-direction:column;gap:14px;min-width:320px;display:flex}.player-bar{margin-left:var(--gutter);align-items:center;gap:10px;padding:4px 0 4px 4px;display:flex}.player-name{flex:0 auto;align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:600;display:flex}.player-name>*{flex:none}.player-name>.player-nick{flex:0 auto}.player-material{flex:none;min-width:0}.player-name .muted{font-weight:400;font-family:var(--mono);font-size:12px}.player-dot{border:1px solid var(--dot-border);border-radius:3px;flex:none;width:12px;height:12px}.dot-btn{background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:inline-flex;position:relative}.dot-btn:hover{background:var(--surface-3)}.dot-btn:active{transform:none}.dot-btn .player-dot,.dot-flip{transition:opacity .12s}.dot-btn:is(:hover,:focus-visible) .player-dot{opacity:0}.dot-flip{color:var(--text);opacity:0;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.dot-flip .ico{width:15px;height:15px}.dot-btn:is(:hover,:focus-visible) .dot-flip{opacity:1}.dot-white{background:var(--eval-white)}.dot-black{background:var(--eval-dark)}.player-me{color:var(--muted);border:1px solid var(--border-2);border-radius:999px;padding:0 7px;font-size:11px;font-weight:500;line-height:16px}.player-spent{color:var(--muted);font-size:12px;font-family:var(--mono)}.player-clock{font-family:var(--mono);text-align:center;min-width:4.4em;color:var(--muted);border-radius:var(--radius-xs);background:var(--clock-bg);border:1px solid var(--border);font-variant-numeric:tabular-nums;padding:2px 10px;font-size:20px;font-weight:600;transition:background .15s,color .15s}.player-bar.active .player-clock{color:var(--ink);background:var(--ivory);border-color:#0000}.player-bar.low .player-clock{color:#fff;background:var(--loss);border-color:#0000}.player-bar.res-won{--glow:var(--medal-win)}.player-bar.res-drew{--glow:var(--medal-draw)}.player-bar:is(.res-won,.res-drew){border-radius:var(--radius-s);background:radial-gradient(62% 50% at 0% 50%, color-mix(in srgb, var(--glow) 20%, transparent), transparent 100%);box-shadow:inset 2px 0 0 color-mix(in srgb, var(--glow) 72%, transparent);transition:background .32s ease-out,box-shadow .32s ease-out}.player-bar:is(.res-won,.res-drew) .score{box-shadow:0 0 0 1px color-mix(in srgb, var(--glow) 58%, transparent), 0 0 10px color-mix(in srgb, var(--glow) 40%, transparent)}.bar-controls{flex:none;align-items:center;gap:4px;display:flex}.bar-lead{flex:none;align-items:center;display:flex}.player-bar .seg{border-radius:9px;padding:2px}.player-bar .seg>button{min-width:32px;min-height:26px;padding:0 7px}.player-bar .nav-step{min-width:46px}.player-bar .menu-btn{min-width:28px;min-height:26px;color:var(--faint);background:0 0;border:1px solid #0000;border-radius:7px;padding:0 5px}.player-bar .menu-btn:hover,.player-bar .menu-btn.active{color:var(--text);background:var(--surface-3)}.player-bar .menu-btn .ico{width:16px;height:16px}.player-bar .jump-back{border-radius:8px;min-width:0;min-height:26px;padding:0 9px;font-size:12px}.player-bar .jump-back .ico{width:14px;height:14px}.player-bar .jump-back.is-hidden{display:none}@container bcol (width<=700px){.player-bar .player-material .fig,.player-bar .player-spent{display:none}}@container bcol (width<=560px){.player-bar .nav-edge{display:none}}@container bcol (width<=500px){.player-bar:has(.bar-controls) :is(.player-nick,.player-me,.score){display:none}.player-bar:has(.bar-controls) .player-name .muted{display:none}}.train-topbar{align-items:center;gap:10px;min-height:28px;display:flex}.train-topbar .steps-slot{flex:auto;min-width:0}.train-tools{flex:none;align-items:center;gap:2px;display:flex}.train-tools>button,.train-tools .menu-btn{min-width:28px;min-height:26px;color:var(--faint);background:0 0;border:1px solid #0000;border-radius:7px;padding:0 5px}.train-tools>button:hover,.train-tools .menu-btn:hover,.train-tools .menu-btn.active{color:var(--text);background:var(--surface-3)}.train-tools .ico{width:16px;height:16px}.is-hidden{visibility:hidden;pointer-events:none}.seg{background:var(--surface);border:1px solid var(--border);box-shadow:0 1px 2px var(--drop);border-radius:10px;align-items:center;gap:1px;padding:2px;display:inline-flex}.seg>button,.seg .menu-btn{min-width:34px;min-height:28px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:7px;padding:0 8px;font-size:13px}.seg>button:hover,.seg .menu-btn:hover{background:var(--surface-3);color:var(--text);border-color:#0000}.seg>button:active{background:color-mix(in srgb, var(--ivory) 14%, var(--surface-3));transform:none}.seg .menu-btn.active{background:var(--surface-3);color:var(--text)}.seg>button:disabled:hover{background:0 0}.nav-step{min-width:52px;color:var(--text)}.nav-step .ico{width:17px;height:17px}.nav-edge{color:var(--faint)}.nav-edge .ico{width:15px;height:15px}.seg .menu-btn .ico{width:16px;height:16px}.jump-back{min-width:4.4em;min-height:34px;font-family:var(--mono);background:var(--surface);border-color:var(--border);box-shadow:0 1px 2px var(--drop);border-radius:10px;padding:0 11px}.moves{max-height:42vh;font-family:var(--mono);grid-template-columns:2.4em minmax(0,1fr) minmax(0,1fr);align-content:start;gap:1px 4px;font-size:13px;line-height:1.55;display:grid;overflow:auto}.moves .num{color:var(--faint);align-self:center;font-size:11px}.moves .mv{border-radius:var(--radius-xs);cursor:pointer;min-width:0;color:var(--text);align-items:baseline;gap:6px;padding:1px 7px;transition:background .1s;display:flex}.moves .mv:hover{background:var(--surface-2)}.moves .mv.current{background:var(--ivory);color:var(--ink)}.moves .mv .sym{color:var(--cls-ink,var(--cls));font-weight:600}.moves .mv .clk{color:var(--faint);margin-left:auto;font-size:12px}.moves .mv.current .clk{color:var(--on-accent-muted)}.moves .mv.current .sym{color:var(--ink)}.moves .mv.start{border:1px solid var(--border-2);background:var(--surface-2);color:var(--muted);border-radius:999px;grid-column:1/-1;justify-self:start;margin-bottom:6px;padding:2px 11px;font-size:12px}.moves .mv.start:hover{background:var(--surface-3);color:var(--text);border-color:var(--hover-border)}.moves .mv.start.current{background:var(--ivory);color:var(--ink);border-color:#0000;font-weight:600}.moves .branch{border-left:2px solid var(--border-2);flex-wrap:wrap;grid-column:1/-1;align-items:baseline;gap:2px 4px;margin:4px 0 2px;padding-left:8px;display:flex}.moves .branch:empty{display:none}.moves .branch .mv{display:inline-flex}.moves .branch .num{margin-right:4px;display:inline}.moves .branch-head{color:var(--muted);font-style:italic}.moves .branch .save{min-height:0;color:var(--muted);text-underline-offset:3px;padding:0 6px;font-size:12px;line-height:1.4;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.moves .branch .save:hover:not(:disabled){color:var(--accent)}.moves .branch .save:disabled{opacity:.5;cursor:progress;text-decoration:none}.keymoments-list{max-height:34vh;margin:0 -6px;overflow:auto}.km{border-radius:var(--radius-xs);cursor:pointer;color:var(--text);align-items:center;gap:9px;padding:4px 8px;transition:background .1s;display:flex}.km:hover{background:var(--surface-2)}.km.current{background:var(--surface-2);box-shadow:inset 2px 0 0 var(--ivory)}.km-dot{background:var(--cls,var(--faint));border-radius:50%;flex:none;width:8px;height:8px}.km .mono{min-width:6.5em}.km-label{color:var(--muted)}.km.km-turn .km-label{color:var(--text);font-weight:500}.km .note-mark,.moves .mv .note-mark{color:var(--muted)}.km-note-count{color:var(--muted);margin-bottom:4px;font-size:12px}.coach .coach-head{min-height:24px;margin-bottom:8px}.coach .coach-head:empty{display:none}.coach .coach-body{font-size:14px;line-height:1.5}.panel-body .coach .coach-body{min-height:3em}.coach .coach-msg:not(:empty){border-radius:var(--radius-s);background:var(--surface-2);border:1px solid var(--border);margin-top:10px;padding:10px 12px;line-height:1.5}.coach .retry-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.coach .retry-actions button{min-height:26px;padding:0 10px;font-size:12px}.coach .retry-wait{color:var(--muted);margin-top:8px;font-size:12px}.coach .intent-label{color:var(--muted);font-size:12px;font-weight:600}.coach:has(.intent-quiz)>:is(.coach-head,.coach-legend){display:none}.coach:has(.intent-quiz) .review-opts{display:none}.coach:has(.intent-quiz[data-stage=intent]) .review-next{color:var(--muted);border-color:var(--border);background:0 0}.coach .intent-quiz p{margin:8px 0}.intent-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.intent-choices button{white-space:normal;text-align:left;min-height:44px;padding:8px 10px;line-height:1.3}.intent-choices button:last-child{grid-column:1/-1}.review-resume{white-space:normal}body:has(.intent-quiz) .panel:has(.game-eval-graph){display:none}@container (width<=280px){.intent-choices{grid-template-columns:1fr}}.coach .retry-wait:after{content:"";vertical-align:middle;background:currentColor;border-radius:50%;width:4px;height:4px;margin-left:6px;animation:1s ease-in-out infinite retry-wait;display:inline-block}@keyframes retry-wait{0%,to{opacity:.25}50%{opacity:1}}.coach .coach-msg .muted{margin-top:4px;font-size:12px}.note-title{border-top:1px solid var(--border);color:var(--muted);margin-top:12px;padding-top:10px;font-size:12px;font-weight:600}.note-title+.note{border-top:none;margin-top:4px;padding-top:0}.note{border-top:1px dashed var(--border-2);margin-top:8px;padding-top:8px;line-height:1.55}.note p,.note ul{margin:0 0 8px}.note p:last-child,.note ul:last-child{margin-bottom:0}.note ul{padding-left:18px}.note .md-h{margin-bottom:2px;font-weight:600}.note code{background:var(--surface-2);font-size:92%;font-family:var(--mono);border-radius:4px;padding:0 4px}.coach-text{line-height:1.5}:is(.sum-acc,.sum-est,.sum-table){max-width:560px;margin-inline:auto}.sum-acc{grid-template-columns:1fr auto 1fr;align-items:baseline;gap:10px;display:grid}.sum-acc .sum-big{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:600;line-height:1}.sum-acc .sum-side{color:var(--muted);margin-top:4px;font-size:12px;display:block}.sum-acc .sum-mid{color:var(--muted);text-align:center;font-size:12px}.sum-acc .ta-r{text-align:right}.sum-est{font-family:var(--mono);grid-template-columns:1fr auto 1fr;align-items:baseline;gap:10px;margin-top:8px;font-size:13px;display:grid}.sum-est .sum-mid{font-family:var(--font);color:var(--muted);text-align:center;font-size:12px}.sum-table{margin-top:10px}.sum-table td{border-bottom:1px solid var(--border);padding:4px 6px;font-size:13px}.sum-table tr:last-child td{border-bottom:none}.sum-table .sum-mid{text-align:center}.sum-table .lab{align-items:center;gap:6px;display:inline-flex}.sum-moves{margin-left:7px}.sum-table .lab .sym{justify-content:flex-end;align-items:center;min-width:1.6em;display:inline-flex}.table-card{padding:4px 14px 8px}.sum-foot{color:var(--faint);font-size:12px;font-family:var(--mono);margin-top:10px}.engine-line{font-family:var(--mono);align-items:baseline;gap:10px;padding:3px 0;font-size:13px;display:flex}.engine-line b{flex:0 0 4.6em;font-weight:600}.engine-line .pv{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.engine-body{flex-direction:column;gap:8px;min-height:60px;display:flex}.engine-bar{align-items:center;gap:10px;font-size:12px;display:flex}.engine-progress{background:var(--border-2);border-radius:2px;flex:0 120px;height:3px;overflow:hidden}.engine-progress>i{background:var(--muted);border-radius:2px;height:100%;transition:width .4s ease-out;display:block}.engine-progress.live>i{background:var(--ivory)}.engine-lines{flex-direction:column;gap:3px;display:flex}.engine-lines .engine-line{border-radius:var(--radius-xs);border-left:3px solid var(--border-2);background:var(--surface-2);cursor:pointer;gap:8px;padding:4px 8px}.engine-lines .engine-line:hover{background:var(--surface-3)}.engine-lines .engine-line.pv-1{border-left-color:var(--pv-1)}.engine-lines .engine-line.pv-2{border-left-color:var(--pv-2)}.engine-lines .engine-line.pv-3{border-left-color:var(--pv-3)}.engine-lines .engine-line.ghost{cursor:default;border-left-color:var(--border-2)}.engine-lines .engine-line.ghost:hover{background:var(--surface-2)}.engine-line.ghost .pv-rank{background:var(--border-2);color:var(--muted)}.engine-line.ghost b{color:var(--faint)}.engine-line.ghost .pv:after{content:"";background:var(--border-2);opacity:.5;border-radius:3px;width:45%;height:.5em;display:inline-block}.engine-lines .engine-line.note{cursor:default;border-left-color:var(--border-2);flex-wrap:wrap;align-items:center;min-height:24px;margin:0;font-family:inherit}.engine-lines .engine-line.note:hover{background:var(--surface-2)}.engine-lines .engine-line.note .sm{min-height:19px;padding:0 7px;font-size:11.5px}.engine-lines .engine-line .pv{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.engine-lines .engine-line.active .pv{white-space:normal;line-height:1.9;overflow:visible}.engine-lines .engine-line.active .pv-rank{align-self:flex-start;margin-top:2px}.pv-rank,.pin-rank{border-radius:var(--radius-xs);width:16px;height:16px;font-family:var(--mono);color:var(--ink);background:var(--muted);flex:none;justify-content:center;align-self:center;align-items:center;font-size:10px;font-weight:700;display:inline-flex}.engine-line.pv-1 .pv-rank,.pin-rank.pv-1{background:var(--pv-1)}.engine-line.pv-2 .pv-rank,.pin-rank.pv-2{background:var(--pv-2)}.engine-line.pv-3 .pv-rank,.pin-rank.pv-3{background:var(--pv-3)}.engine-pin{border-radius:var(--radius-s);background:var(--surface-2);border:1px solid var(--border-2);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex}.engine-pin[hidden]{display:none}.engine-pin .pin-where{color:var(--muted)}.engine-depth-sel,.engine-pv-sel{min-height:24px;font-family:var(--mono);background-position:right 6px center;padding:0 22px 0 7px;font-size:11px}.panel.tile .engine-depth-sel,.panel.tile .engine-pv-sel{display:none}.engine-pin button{min-height:24px;padding:0 8px;font-size:12px}.engine-line .pv-mv{border-radius:var(--radius-xs);cursor:pointer;margin:0 1px;padding:0 4px;transition:background .1s,color .1s;display:inline-block}.engine-line .pv-mv:hover{background:var(--surface-3);color:var(--text)}.engine-line b{cursor:pointer;border-radius:var(--radius-xs);margin-left:-4px;padding:0 4px}.engine-lines .engine-line.active{background:var(--surface-3);box-shadow:0 0 0 1px var(--border-2) inset}.engine-line.active b{color:var(--text)}.engine-line .pv-mv.current{background:var(--ivory);color:var(--ink)}.engine-pin .pin-help{width:20px;min-height:20px;color:var(--muted);padding:0}.engine-pin .pin-help:hover{color:var(--text)}.engine-depth{color:var(--faint);font-size:12px;font-family:var(--mono);margin-bottom:4px}.eval-graph{border-radius:var(--radius-xs);cursor:crosshair;width:100%;min-width:0;height:110px;display:block}.eval-graph .graph-note{font-family:var(--mono);fill:var(--muted);pointer-events:none;font-size:11px}.panels{gap:14px;min-width:0;height:100%;min-height:0;display:flex}.panel-col{border-radius:var(--radius-s);flex-direction:column;flex:1 1 0;gap:12px;min-width:0;min-height:0;padding:0 4px 24px 0;display:flex;overflow-y:auto}.panel-tiles{flex-wrap:wrap;flex:none;align-items:flex-start;gap:12px;display:flex}.panel-col.drop-after{outline:1px dashed var(--muted);outline-offset:-1px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex:none;min-width:0;transition:border-color .12s}.panel:hover{border-color:var(--border-2)}.panel.dragging{opacity:.45}.panel.drop-before{box-shadow:0 -3px 0 var(--ivory)}.panel.drop-after{box-shadow:0 3px 0 var(--ivory)}.panel-head{border-bottom:1px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;min-height:38px;padding:7px 10px 7px 12px;display:flex}.panel-head:active{cursor:grabbing}.panel.collapsed .panel-head{border-bottom:none}.panel-title{border-radius:var(--radius-xs);min-width:0;min-height:0;color:var(--text);text-align:left;background:0 0;border:none;flex:auto;align-items:center;gap:6px;padding:0;font-size:13px;font-weight:600;display:flex}.panel-title:hover{background:0 0;border-color:#0000}.panel-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.panel-caret{color:var(--faint);transition:color .12s;display:inline-flex}.panel-caret .ico{width:14px;height:14px;display:block}.panel-title:hover .panel-caret{color:var(--text)}.panel-count{border:1px solid var(--border-2);font-family:var(--mono);color:var(--muted);border-radius:999px;flex:none;padding:0 7px;font-size:11px;font-weight:600;line-height:16px;display:inline-block}.panel.strip .panel-count,.panel.tile .panel-count{display:none}.panel-grip{color:var(--faint);opacity:0;margin-left:-6px;transition:opacity .12s}.panel:hover .panel-grip{opacity:1}.panel-actions{align-items:center;gap:6px;display:flex}.panel-actions button{min-height:26px;padding:0 9px;font-size:12px}.panel-actions label{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.panel-menu .menu-btn{color:var(--faint);opacity:.5;background:0 0;border:none;min-width:22px;min-height:24px;padding:0 4px;transition:opacity .12s,color .12s}.panel-menu .menu-btn:hover,.panel-menu .menu-btn.active{color:var(--text);background:0 0;border-color:#0000}.panel-menu .menu-btn .ico{width:15px;height:15px}.panel-menu .menu-body{min-width:190px}.panel:hover .panel-menu .menu-btn,.panel.collapsed .panel-menu .menu-btn,.panel-menu .menu-btn.active{opacity:1}.panel-body{padding:12px 14px}.panel.collapsed .panel-body{display:none}.panel-body .card{background:0 0;border:none;padding:0}.panel-body .moves{max-height:40vh}@media (width<=1180px){.game-layout{--board-auto:min(var(--board-max-h), 82vw, 820px);--board-raw:clamp(280px, min(var(--board-set,var(--board-auto)), calc(100vw - 90px)), 1100px);grid-template-rows:auto;grid-template-columns:minmax(0,1fr);height:auto}.game-layout>.splitter{display:none}.board-col{--board-air:0px}.panels{height:auto}.panel-col{padding-bottom:0;overflow:visible}}.board-slot-wrap{margin-left:var(--gutter);padding-bottom:8px}.panel-col.board-slot{padding:0;overflow:visible}.panel-col.board-slot:empty{min-height:0}body.panel-dragging .panel-col.board-slot:empty{border:1px dashed var(--border-2);border-radius:var(--radius-s);min-height:46px}body.panel-dragging .panel-col.board-slot:empty:after{content:"przeciągnij tutaj, pod szachownicę";text-align:center;color:var(--muted);padding:14px;font-size:12px;display:block}.splitter{cursor:col-resize;touch-action:none;flex:none;justify-content:center;align-self:stretch;align-items:center;width:16px;display:flex}.splitter:not(.splitter-y){background:linear-gradient(var(--border), var(--border)) center / 1px 100% no-repeat}.splitter:not(.splitter-y):hover,.splitter:not(.splitter-y).dragging{background-image:linear-gradient(var(--border-2), var(--border-2))}.splitter-grip{background:var(--border-2);border-radius:3px;width:4px;height:46px;transition:background .12s,height .12s}.splitter:hover .splitter-grip,.splitter.dragging .splitter-grip{background:var(--ivory);height:90px}body.col-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.panels>.splitter{height:100%}.grid-4{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}@media (width<=1000px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}}.kpi .kpi-l{color:var(--muted);font-size:12px;font-weight:500}.kpi .kpi-v{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:8px 0 6px;font-size:28px;font-weight:600;line-height:1.1}.bar{align-items:center;gap:8px;min-width:120px;display:flex;position:relative}.bar-fill{background:var(--bar-fill);border-radius:4px;flex:none;height:8px}.bar-fill.fill-danger{background:var(--c-blunder)}.bar-fill.fill-warn{background:var(--c-inaccuracy)}.bar-label{color:var(--muted);font-size:12px}.trend{border-bottom:1px solid var(--border-2);align-items:flex-end;gap:3px;height:110px;margin-top:12px;padding:4px 0;display:flex}.trend-bar{background:var(--muted);opacity:.9;border-radius:3px 3px 0 0;flex:1 1 0;min-width:4px;max-width:18px;transition:opacity .12s;display:block}.trend-bar:hover{opacity:1}.trend-bar.res-win{background:var(--win)}.trend-bar.res-loss{background:var(--loss)}.trend-bar.res-draw{background:var(--draw)}.trend-bar.no-data{background:repeating-linear-gradient(135deg, transparent 0 3px, var(--stripe) 3px 6px);opacity:.8}.trend-rating{border-bottom:none;height:70px}.trend-col{flex:1 1 0;min-width:8px;max-width:40px;height:100%;position:relative}.dot{border-radius:50%;width:7px;height:7px;margin-left:-3.5px;position:absolute;left:50%}.dot-rating{background:var(--ivory)}.dot-est{border:2px solid var(--muted);background:0 0;width:5px;height:5px}.legend{color:var(--muted);flex-wrap:wrap;gap:14px;margin-top:6px;font-size:12px;display:flex}.legend i{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.legend i.round{border-radius:50%;width:8px;height:8px}.train-layout,.drill-layout,.eg-layout{--board-fit:calc(100vh - 210px);--board-auto:min(max(calc(var(--board-fit) - var(--below-h,0px)), min(480px, var(--board-fit))), 46vw, 820px);--board-raw:clamp(360px, var(--board-set,var(--board-auto)), 1000px);flex-wrap:wrap;align-items:flex-start;gap:22px;display:flex}.train-layout{gap:6px}.train-board,.drill-board,.eg-board{width:var(--board-raw);flex:none}.train-layout .side,.drill-layout .side,.eg-layout .side{flex:340px}.task-title{letter-spacing:-.01em;font-size:16px;font-weight:600}.task-sub{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.45}.verdict{border-radius:var(--radius-s);background:var(--surface-2);margin-top:12px;padding:10px 12px;font-weight:600}.verdict-ok{background:var(--win-bg);color:var(--win-ink);align-items:center;gap:8px;display:flex;position:relative;overflow:hidden}.verdict-ok .wipe{pointer-events:none;background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--win) 22%, transparent), transparent);animation:.75s cubic-bezier(.16,.78,.4,1) 60ms fx-wipe;position:absolute;inset:0;transform:translate(-100%)}.verdict-ok .tick{flex:none}.verdict-ok .tick path{stroke:currentColor;stroke-width:2.4px;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24px;animation:.42s cubic-bezier(.16,.84,.44,1) .12s forwards fx-draw}@keyframes fx-wipe{to{transform:translate(100%)}}@keyframes fx-draw{to{stroke-dashoffset:0}}.verdict-bad{background:var(--loss-bg);color:var(--loss-ink)}.tabs{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);gap:2px;margin-bottom:16px;padding:3px;display:inline-flex}.tabs button{color:var(--muted);border-radius:var(--radius-xs);background:0 0;border-color:#0000;min-height:28px;padding:0 16px}.tabs button:hover{color:var(--text);background:var(--surface-2)}.tabs button.active{background:var(--surface-3);color:var(--text)}.rep-tree{font-family:var(--mono);font-size:13px;line-height:1.6}.rep-node{border-radius:var(--radius-xs);cursor:pointer;align-items:center;gap:8px;padding:1px 6px;display:flex}.rep-node:hover{background:var(--surface-2)}.rep-node .rep-san{min-width:5.5em}.rep-node .rep-san.mine{color:var(--c-best-ink);font-weight:600}.rep-node .rep-games{color:var(--muted);text-align:right;min-width:3em}.rep-node .rep-wdl{color:var(--faint);font-size:12px}.rep-children{border-left:1px solid var(--border-2);margin-left:18px;padding-left:6px}.rep-toggle{width:1em;color:var(--faint);display:inline-block}.theory-move{border-radius:var(--radius-xs);background:var(--surface-3);font-family:var(--mono);margin:2px 4px 2px 0;padding:1px 8px;font-size:13px;display:inline-block}.search-results{max-height:260px;margin-top:6px;overflow:auto}.search-results .hit{border-radius:var(--radius-xs);cursor:pointer;padding:6px 8px}.search-results .hit:hover{background:var(--surface-2)}.line-text{font-family:var(--mono);font-size:13px;line-height:1.6}.eg-cat{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:24px 0 8px;font-size:12px;font-weight:600}.eg-block.first .eg-cat{margin-top:4px}.eg-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px;display:grid}.eg-card{cursor:pointer;transition:border-color .12s,background .12s}.eg-card:hover{border-color:var(--border-2);background:var(--surface-2)}.eg-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.eg-card .eg-title{font-size:14px;font-weight:600;line-height:1.3}.eg-top .task-title{flex:auto;min-width:0}.eg-goal{white-space:nowrap;background:var(--surface-3);border-radius:999px;flex:none;margin-top:3px;padding:1px 8px;font-size:12px;font-weight:500}.eg-goal.win{color:var(--win-ink);background:var(--win-bg)}.eg-goal.draw{color:var(--draw-ink);background:var(--draw-bg)}.eg-card .eg-meta{color:var(--muted);margin-top:8px;font-size:12px}.eg-card .eg-meta b{color:var(--text);font-weight:500}.eg-log{font-family:var(--mono);max-height:160px;color:var(--muted);margin-top:10px;font-size:13px;line-height:1.7;overflow:auto}.eg-log .slip{color:var(--c-mistake-ink)}.promo-overlay{background:var(--scrim);z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.promo-box{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px}.promo-btn{flex-direction:column;align-items:center;gap:2px;min-height:0;padding:8px 14px;font-size:34px;line-height:1;display:flex}.promo-box.black .promo-btn{color:var(--promo-black)}.cc-layout{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:14px;display:grid}.cc-months{max-height:calc(100vh - 140px);padding:8px;overflow:auto}.cc-month{border-radius:var(--radius-xs);cursor:pointer;color:var(--muted);font-family:var(--mono);justify-content:space-between;align-items:center;padding:6px 10px;font-size:13px;display:flex}.cc-month:hover{background:var(--surface-2);color:var(--text)}.cc-month.active{background:var(--ivory);color:var(--ink)}.cc-month .cnt{opacity:.7;font-size:11px}.cc-months .card-head{margin:0;padding:4px 10px 6px}.toasts{z-index:20;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{align-items:center;gap:10px;display:flex;position:relative;bottom:auto;right:auto}.toast-x{min-width:26px;min-height:26px;padding:0 6px;font-size:14px}.player-name .score{font-family:var(--mono);border-radius:999px;padding:0 7px;font-size:12px;font-weight:600;line-height:18px}.score.win{color:var(--win-ink);background:var(--win-bg)}.score.loss{color:var(--loss-ink);background:var(--loss-bg)}.score.draw{color:var(--draw-ink);background:var(--draw-bg)}.game-line{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:10px;font-size:13px;display:flex}.game-line .muted[title]{text-overflow:ellipsis;white-space:nowrap;max-width:34ch;overflow:hidden}.sum-side .player-me{margin-left:6px}.menu-help{padding:4px 10px 6px;font-size:12px}.menu-title{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:600}.menu-help-row{justify-content:space-between;gap:16px;padding:2px 0;display:flex}.km:not(.mine) .mono{color:var(--muted)}.km.mine .mono{font-weight:600}.km[hidden]{display:none}.moves .mv .clk.think{color:var(--c-inaccuracy-ink);font-weight:500}.moves .mv.current .clk.think{color:var(--think-on-accent)}.nav-sep{background:var(--border-2);align-self:center;width:1px;height:18px;margin:0 6px}.panel-menu .menu-btn:focus-visible,.panel:focus-within .panel-menu .menu-btn{opacity:1}button kbd{margin-left:2px}.help{text-underline-offset:3px;cursor:help;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.grid-2{align-items:start}.focus-card{border-color:var(--border-2)}.focus-list{margin:0;padding-left:18px;font-size:14px;line-height:1.7}.wrp-bar{border-radius:3px;gap:2px;height:6px;margin:2px 0 8px;display:flex;overflow:hidden}.wrp-bar i{height:100%;display:block}.wrp-bar .w{background:var(--win)}.wrp-bar .d{background:var(--draw)}.wrp-bar .l{background:var(--loss)}.kpi-v.muted{color:var(--muted)}.trend{background:linear-gradient(to top, transparent calc(20% - 1px), var(--border-2) 20%, transparent calc(20% + 1px)), linear-gradient(to top, transparent calc(60% - 1px), var(--border-2) 60%, transparent calc(60% + 1px)), linear-gradient(to top, transparent calc(80% - 1px), var(--border-2) 80%, transparent calc(80% + 1px));padding:0}.trend-bar{min-width:8px;max-width:40px}.trend-rating{background:0 0}.dot-est.clipped{border-style:dashed}@supports (width:round(down, 100px, 8px)){.train-board,.drill-board,.eg-board{width:calc(round(down, calc(var(--board-raw) - 16px), var(--cg-step,8px)) + 16px)}}.task-title{align-items:center;gap:8px;font-size:16px;display:flex}.task-title.ok{color:var(--win-ink)}.task-title.bad{color:var(--loss-ink)}.task-lead{margin-top:8px;font-size:14px;line-height:1.5}.task-status{min-height:20px;margin-top:10px}.session-meta{color:var(--muted);font-size:13px}.session-meta b{color:var(--text);font-weight:600}tr.mine td:first-child{box-shadow:inset 3px 0 0 var(--ivory)}button.theory-move{cursor:pointer;border:none;min-height:0;font-weight:500}.theory-move.clickable:hover{background:var(--ivory);color:var(--ink)}.eg-state{font-weight:500}.eg-state.new{color:var(--muted)}.eg-state.ok{color:var(--win-ink)}.eg-state.redo{color:var(--loss-ink)}.cc-year{font-family:var(--mono);color:var(--faint);letter-spacing:.06em;padding:10px 10px 4px;font-size:11px}.lbl-short{display:none}@media (width<=1500px){.road-track{width:88px}.lbl-long{display:none}.lbl-short{display:inline}}@media (width<=1320px){.topbar{gap:12px;padding:0 14px}.road,.nav-sep{display:none}.topbar nav a{padding:0 9px}}.nav-menu .menu-body{min-width:190px}.nav-menu .menu-body :is(a,.nav-btn){border-radius:var(--radius-xs);width:100%;color:var(--text);text-align:left;background:0 0;border:none;align-items:center;gap:8px;margin:0;padding:7px 10px;font-size:13px;font-weight:500;text-decoration:none;display:flex}.nav-menu .menu-body :is(a,.nav-btn):hover{background:var(--surface-3)}.nav-menu .menu-body :is(a,.nav-btn).active{color:var(--ivory);background:var(--selected-bg);box-shadow:inset 2px 0 0 var(--ivory)}.nav-menu .menu-body .nav-btn .ico{opacity:.85;width:15px;height:15px}tr.small-sample td{color:var(--faint)}tr.small-sample .bar-fill{opacity:.5}.rep-head{color:var(--faint);gap:8px;padding:0 6px 4px;font-size:11px;display:flex}.rep-head span:first-child{min-width:6.5em}.rep-head .rep-games{text-align:right;min-width:3em}.panel{position:relative}.panel-resize{cursor:row-resize;z-index:2;justify-content:center;align-self:auto;align-items:center;width:auto;height:12px;display:flex;position:absolute;bottom:-7px;left:12px;right:12px}.panel-resize .splitter-grip{background:0 0;border-radius:2px;width:36px;height:3px;transition:background .12s,width .12s}.panel:hover .panel-resize .splitter-grip{background:var(--border-2)}.panel-resize:hover .splitter-grip,.panel-resize.dragging .splitter-grip{background:var(--ivory);width:56px;height:3px}.panel.collapsed .panel-resize{display:none}body.row-resizing{cursor:row-resize;-webkit-user-select:none;user-select:none}body.row-resizing .panel{transition:none}.panel-tile-body{display:none}.panel.sized{height:var(--panel-h);flex-direction:column;display:flex}.panel.sized .panel-head{flex:none}.panel.sized .panel-body{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.panel.sized .panel-body>*{flex:auto;min-height:0;overflow:auto}.panel.sized .moves{max-height:none}.panel.sized .keymoments{flex-direction:column;display:flex;overflow:hidden}.panel.sized .keymoments-list{flex:auto;min-height:0;max-height:none;overflow:auto}.panel.sized .eval-graph{height:100%}.board-slot .panel.sized{max-height:45vh}.panel-digest{flex:auto;align-items:center;min-width:0;margin:0 4px;display:none}.panel.strip .panel-head{border-bottom:none}.panel.strip .panel-body{display:none}.panel.strip .panel-title{color:var(--muted);flex:none;font-size:12px;font-weight:500}.panel.strip .panel-title:after{content:"";background:var(--border-2);flex:none;width:1px;height:14px;margin:0 0 0 6px}.panel.strip .panel-digest{display:flex}.panel.strip .panel-actions .km-first,.panel.collapsed .panel-digest{display:none}.digest{white-space:nowrap;flex:auto;align-items:center;gap:8px;min-width:0;font-size:13px;display:inline-flex;overflow:hidden}.panel-actions label{white-space:nowrap}.panel.tile{flex-direction:column;flex:none;width:176px;height:176px;display:flex}.panel.tile .panel-head{border-bottom:none;min-height:30px;padding:6px 6px 0 10px}.panel.tile .panel-title{color:var(--muted);font-size:12px;font-weight:500}.panel.tile .panel-body,.panel.tile .panel-actions,.panel.tile .panel-grip,.panel.tile .panel-menu{display:none}.panel.tile:hover .panel-menu,.panel.tile:focus-within .panel-menu{display:inline-flex}.panel.tile .panel-tile-body{flex:auto;min-height:0;padding:4px 12px 12px;display:flex;overflow:hidden}.panel.tile .panel-digest{align-items:stretch;margin:0;display:flex}.panel.tile .digest{white-space:normal;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:6px;width:100%;font-size:13px}.panel.tile .digest .txt{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.coach-intro-compact{align-items:center;gap:8px;min-width:0;display:inline-flex}.coach-intro-compact .txt{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.panel.tile .coach-intro-compact{flex-direction:column;align-items:flex-start}.panel.tile .coach-intro-compact .txt{white-space:normal;color:var(--text);font-size:14px;font-weight:500}.km-strip{scrollbar-width:none;gap:6px;padding:3px 4px;overflow-x:auto}.km-strip.fade-l{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12px);mask-image:linear-gradient(90deg,#0000,#000 12px)}.km-strip.fade-r{-webkit-mask-image:linear-gradient(270deg,#0000,#000 12px);mask-image:linear-gradient(270deg,#0000,#000 12px)}.km-strip.fade-l.fade-r{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12px calc(100% - 12px),#0000);mask-image:linear-gradient(90deg,#0000,#000 12px calc(100% - 12px),#0000)}.km-strip::-webkit-scrollbar{display:none}.km-pip{border:1.5px solid var(--cls-ink,var(--faint));background:0 0;border-radius:50%;flex:none;width:11px;height:11px;min-height:0;padding:0;transition:transform .12s,background .12s}.km-pip.mine{background:var(--cls-ink,var(--faint))}.km-pip:hover{background:var(--cls-ink,var(--faint));border-color:var(--cls-ink,var(--faint));transform:scale(1.35)}.km-pip.current{box-shadow:0 0 0 2px var(--surface), 0 0 0 3.5px var(--ivory)}.km-pip[hidden]{display:none}.km-pips{align-items:center;gap:6px;display:inline-flex}.km-brief{display:none}.panel.tile .km-strip{flex-direction:column;gap:8px;padding:4px 0 0;overflow:hidden;-webkit-mask-image:none;mask-image:none}.panel.tile .km-pips{flex-wrap:wrap;gap:7px}.panel.tile .km-pip{width:12px;height:12px}.panel.tile .km-brief{flex-direction:column;gap:2px;width:100%;display:flex}.km-brief-row{border-radius:var(--radius-xs);width:100%;min-height:0;color:var(--text);text-align:left;background:0 0;border:none;align-items:center;gap:7px;margin:0 -4px;padding:1px 4px;font-size:13px;display:flex}.km-brief-row:hover{background:var(--surface-3);border:none}.km-brief-row .mono{font-weight:600}.km-brief-label{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.km-brief-count{margin-top:2px;font-size:12px}.moves-strip{font-family:var(--mono);scrollbar-width:none;gap:2px;font-size:13px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 24px calc(100% - 24px),#0000);mask-image:linear-gradient(90deg,#0000,#000 24px calc(100% - 24px),#0000)}.moves-strip::-webkit-scrollbar{display:none}.moves-strip .mv{border-radius:var(--radius-xs);cursor:pointer;color:var(--text);flex:none;align-items:baseline;gap:3px;padding:1px 6px;transition:background .1s;display:inline-flex}.moves-strip .mv:hover{background:var(--surface-2)}.moves-strip .mv.current{background:var(--ivory);color:var(--ink)}.moves-strip .mv.current .sym,.moves-strip .mv.current .num{color:var(--ink)}.moves-strip .num{color:var(--faint);font-size:11px}.moves-strip .sym{color:var(--cls-ink,var(--cls));font-weight:600}.moves-strip .start{color:var(--faint);padding:1px 4px}.moves-strip .branch{border-left:2px solid var(--border-2);gap:2px;margin-left:4px;padding-left:6px;display:inline-flex}.moves-strip .branch:empty{display:none}.moves-strip .branch-head{color:var(--muted)}.panel.tile .moves-strip{flex-flow:wrap;align-content:flex-start;align-items:baseline;gap:2px 4px;font-size:13px;overflow:hidden;-webkit-mask-image:none;mask-image:none}.panel.tile .moves-strip .mv:not(.near):not(.current),.panel.tile .moves-strip .start,.panel.tile .moves-strip .branch{display:none}.panel.tile .moves-strip .mv.current{padding:2px 8px;font-size:16px;font-weight:600}.moves-strip .num-b{display:none}.panel.tile .moves-strip .mv.first .num-b{display:inline}.moves-pos{display:none}.panel.tile .moves-pos{width:100%;font-size:12px;font-family:var(--mono);margin-top:auto;display:block}.coach .coach-head{align-items:center;gap:10px;display:flex}.coach-move{color:var(--muted);font-size:13px}.coach-digest .cls-chip{flex:none;padding:0 8px 0 6px;font-size:12px}.coach-digest .coach-move{flex:none}.coach-digest .txt{text-overflow:ellipsis;min-width:0;color:var(--text);flex:auto;overflow:hidden}.panel.tile .coach-digest .cls-chip{font-size:13px}.panel.tile .coach-digest .coach-move{color:var(--text);font-size:16px}.panel.tile .coach-digest .txt{-webkit-line-clamp:3;color:var(--muted);-webkit-box-orient:vertical;flex:0 auto;line-height:1.4;display:-webkit-box}.sum-digest .sum-d{color:var(--muted);align-items:center;gap:5px;display:inline-flex}.sum-digest .sum-d.me{color:var(--text);font-weight:600}.sum-digest .pill{flex:none}.sum-top{align-items:center;gap:8px;display:inline-flex}.sum-digest .cap{display:none}.panel.tile .sum-digest{gap:3px}.panel.tile .sum-digest .sum-top{order:-2;margin-bottom:4px}.panel.tile .sum-digest .sum-d{align-items:baseline;gap:6px;display:flex}.panel.tile .sum-digest .sum-d.me{order:-1;display:block}.panel.tile .sum-digest .sum-d.me .mono{letter-spacing:-.03em;font-size:28px;line-height:1.05;display:block}.panel.tile .sum-digest .sum-d.me .player-dot{display:none}.panel.tile .sum-digest .cap{color:var(--muted);font-size:12px;font-family:var(--font);display:inline}.panel.tile .sum-digest .sum-d .player-dot{width:9px;height:9px}.panel.tile .sum-est-brief{margin-top:auto;display:block}.engine-digest .engine-line{min-width:0;padding:0;font-size:13px}.engine-digest .pv{flex:auto}.panel.tile .engine-digest .engine-line{flex-direction:column;align-items:flex-start;gap:4px}.panel.tile .engine-digest .engine-line b{letter-spacing:-.03em;font-size:28px;line-height:1.1}.panel.tile .engine-digest .pv{white-space:normal;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box}.panel.tile .engine-digest .faint{display:none}.eval-spark-wrap{flex:auto;min-width:80px;height:22px;display:block}.eval-spark{border-radius:var(--radius-xs);cursor:pointer;width:100%;height:22px}.panel.tile .eval-spark-wrap{align-self:stretch;min-width:0;height:100%}.panel.tile .eval-spark{border-radius:var(--radius-xs);height:100%}.notes-digest{color:var(--muted);text-overflow:ellipsis;display:block;overflow:hidden}.panel.tile .notes-digest{white-space:normal;-webkit-line-clamp:6;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box}.ico{vertical-align:middle;flex:none;display:inline-block}button>.ico:only-child{margin:0 -3px}.seg>button,.jump-back,.icon-btn,.menu-btn,.theme-btn{justify-content:center;align-items:center;gap:5px;display:inline-flex}.icon-btn{padding:0 9px}.panel-actions .icon-btn{padding:0 6px}.panel-grip .ico{width:14px;height:14px;display:block}.menu-btn .ico{width:17px;height:17px}.theme-btn{color:var(--muted);padding:0 8px}.theme-btn:hover{color:var(--text)}.row-menu .menu-btn{letter-spacing:0}.panel.fill{flex-direction:column;flex:0 auto;min-height:0;display:flex}.panel.fill .panel-head{flex:none}.panel.fill .panel-body{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.panel.fill .panel-body>*{flex:auto;min-height:0;overflow:auto}.panel.fill .moves{max-height:none}.panel.fill .keymoments{flex-direction:column;display:flex;overflow:hidden}.panel.fill .keymoments-list{flex:auto;min-height:0;max-height:none;overflow:auto}.panel.fill .eval-graph{height:100%}.panel-resize:focus-visible{outline:none}.panel-resize:focus-visible .splitter-grip{background:var(--ivory);width:56px}@media (width<=1499px){.panel.fill{flex:none;min-height:0}.panel.fill .panel-body>*{overflow:visible}.panel.fill .moves{max-height:42vh;overflow:auto}.panel.fill .keymoments-list{max-height:34vh;overflow:auto}}.board-slot .panel.fill{max-height:45vh}.moves .mv.has-task:after{content:"✓";color:var(--c-best-ink);opacity:.85;margin-left:3px;font-size:11px}.moves .mv.current.has-task:after{color:var(--ink)}.moves.picking .mv:not(.start):not(.has-task):hover{box-shadow:inset 0 0 0 1px var(--hover-border)}.moves.picking .mv.has-task{opacity:.5}.moves .mv.picked{background:var(--selected-bg);box-shadow:inset 0 0 0 1px var(--ivory)}.moves-pick-info{white-space:nowrap;font-size:12px}.menu-select,.menu-range{justify-content:space-between;align-items:center;gap:10px;display:flex}.menu-range input[type=range]{width:118px;accent-color:var(--ivory);flex:none}.menu-select select{min-height:26px;padding:0 26px 0 8px;font-size:12px}.km-task{opacity:.55;min-height:22px;color:var(--faint);background:0 0;border-color:#0000;flex:none;margin-left:2px;padding:0 5px}.km:hover .km-task,.km:focus-within .km-task,.km-task.done{opacity:1}.km-task:hover{background:var(--surface-3);color:var(--text);border-color:#0000}.km-task.done{color:var(--c-best-ink);opacity:.75}.km-task.done:disabled{cursor:default}.km-task.done:not(:disabled):hover{background:var(--danger-bg);color:var(--danger);opacity:1}.km-task.done:disabled:hover{background:0 0}.task-mine{border:1px solid var(--border-2);letter-spacing:.02em;color:var(--muted);vertical-align:1px;border-radius:999px;margin-right:8px;padding:0 7px;font-size:11px;font-weight:600;display:inline-block}.task-btn{background:var(--surface-2);border:1px solid var(--border-2);min-height:30px;color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:600;display:inline-flex}.task-btn[hidden]{display:none}.task-btn .ico{color:var(--muted)}.task-btn:hover{background:var(--surface-3);border-color:var(--hover-border)}.task-btn.done,.task-btn.done:disabled{color:var(--win-ink);background:var(--win-bg);border-color:color-mix(in srgb, var(--win) 45%, transparent);opacity:1}.task-btn.done .ico{color:var(--win-ink)}.task-btn.done:disabled{cursor:default}.task-btn.done:not(:disabled):hover{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-border)}.task-btn.done:not(:disabled):hover .ico{color:var(--danger)}.report-flag{min-height:30px;color:var(--muted);border:1px solid var(--border);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500;display:inline-flex}.report-flag .ico{width:13px;height:13px;color:var(--faint)}.report-flag:hover{color:var(--danger);background:var(--danger-bg);border-color:var(--danger-border)}.report-flag:hover .ico{color:var(--danger)}.link-btn{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint);text-underline-offset:3px;background:0 0;border:none;min-height:0;padding:0 4px;font-size:13px;font-weight:500}.link-btn:hover{-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text);background:0 0;border:none}.coach-hint{border-top:1px dashed var(--border-2);color:var(--muted);margin-top:12px;padding-top:10px;font-size:12px;line-height:1.5}.sum-ctx{font-family:var(--mono);color:var(--muted);margin-top:3px;font-size:12px;display:block}.sum-ctx.up{color:var(--win-ink)}.sum-ctx.down{color:var(--loss-ink)}.sum-est .sum-ctx{display:block}.player-material{color:var(--muted);align-items:center;gap:6px;min-width:0;display:inline-flex}.player-material .fig{font-family:var(--fig);letter-spacing:-2px;font-size:14px;line-height:1}.player-adv{color:var(--text);font-size:12px;font-weight:600}.menu-presets{flex-wrap:wrap;gap:4px;padding:4px 10px 6px;display:flex}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.panel.strip .panel-digest,.panel.tile .panel-tile-body,.panel{animation:.16s ease-out fade-in}body.row-resizing .panel,body.row-resizing .panel-digest,body.row-resizing .panel-tile-body{animation:none}:root[data-theme=light]{--bg:#f1ede5;--surface:#faf7f1;--surface-2:#fff;--surface-3:#e9e2d6;--border:#3a352e1c;--border-2:#3a352e33;--text:#2c2822;--muted:#655f55;--faint:#69645c;--ivory:#3a352e;--ink:#efe9dc;--accent:#79572a;--accent-2:#6c512e;--accent-hover:#684820;--on-accent:#fffaf2;--brand-soft:#79572a11;--brand-line:#79572a4d;--surface-top:#faf7f1;--card-shadow:0 6px 22px #4530150b;--danger:#c2382f;--on-accent-muted:#efe9dcad;--think-on-accent:#f2d27a;--win:#4d7d1e;--loss:#c2382f;--draw:#767268;--win-ink:#3f7a12;--loss-ink:#b5342b;--draw-ink:#5f5a52;--win-bg:#4d7d1e24;--loss-bg:#c2382f1f;--draw-bg:#3a352e14;--danger-bg:#c2382f1a;--danger-border:#c2382f59;--hover-border:#3a352e5c;--selection:#3a352e2e;--selected-bg:#3a352e0f;--bar-fill:#3a352e99;--stripe:#3a352e1c;--graph-bg:#dedad0;--graph-fill:#4a4540;--graph-fill-spark:#4a454073;--graph-mid:#3a352e5c;--graph-cursor:#3a352e;--graph-halo:#efe9dccc;--graph-pending:#3a352e0f;--graph-grid:#3a352e1f;--clock-bg:#fff;--dot-border:#3a352e6b;--promo-black:#2f2d29;--shadow:0 12px 32px #3a352e29, 0 1px 0 #ffffffb3 inset;--drop:#3a352e29;--scrim:#3a352e57;--c-brilliant-ink:#0b7561;--c-great-ink:#3a6592;--c-best-ink:#3f7318;--c-excellent-ink:#4d7616;--c-good-ink:#4d6b42;--c-book-ink:#7a5a38;--c-forced-ink:#5a7a4e;--c-inaccuracy-ink:#8a6d00;--c-mistake-ink:#a85a12;--c-miss-ink:#b8362a;--c-blunder-ink:#b32213;--pv-1:#4f8a1f;--pv-2:#3f6f9e;--pv-3:#8a6d00}:root[data-theme=light] .seg,:root[data-theme=light] .tabs{background:var(--surface-2)}.cl-cols{grid-template-columns:minmax(340px,430px) 1fr;align-items:start;gap:16px;display:grid}@media (width<=1100px){.cl-cols{grid-template-columns:1fr}}.cl-side{gap:16px;display:grid}.cl-card-wrap{top:calc(var(--topbar) + 16px);position:sticky}.cl-badge{font-family:var(--mono);letter-spacing:.04em;border-radius:var(--radius-xs);white-space:nowrap;border:1px solid;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}.cl-badge.sm{padding:0 4px;font-size:10px}.cl-badge.lines{color:var(--c-great-ink)}.cl-badge.knights{color:var(--c-book-ink)}.cl-badge.square{color:var(--c-best-ink)}.cl-badge.king{color:var(--c-blunder-ink)}.cl-badge.chances{color:var(--c-brilliant-ink)}.cl-badge.endgame,.cl-badge.other{color:var(--faint)}.cl-card{gap:14px;display:grid}.cl-step{border-left:2px solid var(--border-2);padding-left:12px}.cl-step-head{align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.cl-key{font-family:var(--mono);font-size:15px;font-weight:600}.cl-step-title{font-size:13px;font-weight:600}.cl-time{font-family:var(--mono);color:var(--faint);margin-left:auto;font-size:11px}.cl-lead{font-size:14px;line-height:1.5}.cl-lead.focus{background:var(--selected-bg);box-shadow:inset 0 0 0 1px var(--border-2);border-radius:var(--radius-s);margin:-4px -8px;padding:4px 8px}.cl-note{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.45}.cl-scan{border-radius:var(--radius-s);grid-template-columns:auto auto 1fr;align-items:baseline;gap:8px;padding:6px 8px;display:grid}.cl-scan.focus{background:var(--selected-bg);box-shadow:inset 0 0 0 1px var(--border-2)}.cl-num{font-family:var(--mono);color:var(--faint);font-weight:600}.cl-scan-text{font-size:13px;line-height:1.45}.cl-alarm{text-align:center;border-radius:var(--radius-s);color:var(--danger);background:var(--danger-bg);border:1px solid var(--danger-border);padding:9px 12px;font-size:13px;font-weight:600}.cl-rules{color:var(--muted);border-top:1px solid var(--border);gap:3px;padding-top:10px;font-size:12px;display:grid}.cl-focus-card{margin-bottom:16px}.cl-focus{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cl-focus-tag{letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-size:11px;font-weight:600}.cl-focus-what{font-size:15px;font-weight:600}.cl-focus-how{margin-top:8px;font-size:14px;line-height:1.5}.cl-focus-why{margin-top:6px}.cl-row.focus{background:var(--selected-bg)}.cl-step-tag{margin-left:6px}.cl-streak{color:var(--win-ink);font-weight:600}.cl-games{gap:10px;display:grid}.cl-game{border-top:1px solid var(--border);padding-top:9px}.cl-game:first-child{border-top:0;padding-top:0}.cl-game-top{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.cl-game-top .spacer{flex:1}.cl-game-name{font-weight:600;text-decoration:none}.cl-res{border-radius:var(--radius-xs);padding:0 6px;font-size:11px}.cl-res.win{color:var(--win-ink);background:var(--win-bg)}.cl-res.loss{color:var(--loss-ink);background:var(--loss-bg)}.cl-res.draw{color:var(--draw-ink);background:var(--draw-bg)}.cl-game-errors{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.cl-err{border:1px solid var(--border);border-radius:999px;align-items:center;gap:5px;padding:2px 7px;font-size:12px;text-decoration:none;display:inline-flex}.cl-err:hover{border-color:var(--hover-border)}body.card-only .topbar{display:none}body.card-only main{max-width:none;padding:14px}.cl-window{gap:12px;display:grid}.cl-focus.mini{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);padding:8px 10px}.session-meta{align-items:center;gap:12px;display:flex}.session-bar{background:var(--surface-3);border-radius:999px;width:132px;height:8px;display:flex;overflow:hidden}.session-bar .seg{height:100%;display:block}.session-bar .seg.due{background:var(--accent)}.session-bar .seg.fresh{background:var(--bar-fill);opacity:.45}.session-legend{align-items:center;gap:5px;display:flex}.session-legend b{font-family:var(--mono);color:var(--text);margin-left:2px;font-weight:600}.session-legend .ico{color:var(--faint);margin-left:6px}.session-legend .ico:first-child{margin-left:0}.session-legend .faint{margin-left:6px}.task-head{align-items:flex-start;gap:12px;display:flex}.task-head .task-title{flex:auto;min-width:0}.task-tags{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;display:flex}.kind-badge{border:1px solid var(--border-2);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 10px 2px 8px;font-size:12px;font-weight:500;display:inline-flex}.kind-badge .ico{color:var(--accent-2);flex:none}.task-jump{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:10px;display:flex}.jump{border-radius:var(--radius-s);border:1px solid var(--border-2);min-height:0;color:var(--muted);background:0 0;align-items:center;gap:7px;padding:5px 11px;font-size:13px;font-weight:500;text-decoration:none;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.jump:hover{background:var(--surface-2);color:var(--text);border-color:var(--hover-border)}.jump .ico{color:var(--accent-2)}.jump.on{background:var(--surface-3);color:var(--text);border-color:var(--hover-border)}.engine-card .card-head{margin-bottom:8px}.train-board-col{flex-direction:column;flex:none;gap:6px;display:flex}.steps-slot{min-height:18px}.step-dots{align-items:center;gap:6px;display:flex}.step-dots .dot{background:var(--surface-3);border:1.5px solid var(--border-2);border-radius:50%;width:9px;height:9px}.step-dots.lit .dot.hit{animation:.32s cubic-bezier(.16,.84,.44,1) backwards fx-light}.step-dots.lit .dot.hit:first-child{animation-delay:40ms}.step-dots.lit .dot.hit:nth-child(2){animation-delay:.14s}.step-dots.lit .dot.hit:nth-child(3){animation-delay:.24s}.step-dots.lit .dot.hit:nth-child(4){animation-delay:.34s}.step-dots.lit .dot.hit:nth-child(n+5){animation-delay:.44s}@keyframes fx-light{0%{background:var(--surface-3);border-color:var(--border-2);transform:scale(.5)}to{transform:scale(1)}}.step-dots .dot.hit{background:var(--accent);border-color:var(--accent)}.step-dots .step-label{color:var(--muted);margin-left:4px;font-size:12px}.line-badge{border:1px solid var(--border-2);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 10px 2px 8px;font-size:12px;font-weight:500;display:inline-flex}.line-badge .ico{color:var(--accent-2)}.solution-line{background:var(--surface-2);border-radius:var(--radius-s);align-items:baseline;gap:8px;margin-top:10px;padding:8px 11px;font-size:13px;display:flex}.solution-line .ico{color:var(--accent-2);flex:none;align-self:center}.stat-tiles{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.stat-tile{background:var(--surface-2);border-radius:var(--radius-s);gap:9px;padding:10px 11px;display:flex}.stat-ico{color:var(--accent-2);padding-top:2px;line-height:1}.stat-value{letter-spacing:-.02em;font-size:20px;font-weight:600;line-height:1.1}.stat-label{color:var(--muted);font-size:12px}.stat-sub{color:var(--faint);margin-top:2px;font-size:11px}.day-strip{align-items:center;gap:3px;margin-bottom:14px;display:flex}.day-strip .day{background:var(--surface-3);border-radius:3px;width:14px;height:14px}.day-strip .day.lvl-1{background:color-mix(in srgb, var(--accent) 28%, var(--surface-3))}.day-strip .day.lvl-2{background:color-mix(in srgb, var(--accent) 55%, var(--surface-3))}.day-strip .day.lvl-3{background:var(--accent)}.day-caption{margin-left:8px;font-size:11px}.kind-list{gap:2px;display:grid}.kind-row{border-radius:var(--radius-s);align-items:center;gap:10px;padding:4px 6px;display:flex}.kind-row.selected{background:var(--selected-bg)}.kind-row .kind-badge{color:var(--text);border-color:#0000;flex:none;padding-left:0}.kind-bar{background:var(--surface-3);border-radius:999px;flex:auto;min-width:40px;height:6px;overflow:hidden}.kind-bar .fill{background:var(--bar-fill);border-radius:999px;height:100%;display:block}.kind-bar .fill.low{background:var(--loss)}.kind-rate{text-align:right;flex:0 0 42px;font-size:12px}.kind-rate .faint{font-size:11px}.kind-count{text-align:right;flex:0 0 26px;font-size:12px}@media (width<=1100px){.stat-tiles{grid-template-columns:1fr 1fr}}@media (width<=1180px){.train-layout{gap:16px}.train-layout>.splitter{display:none}}.kind-head{align-items:baseline;gap:10px;padding:0 6px 5px;font-size:11px;display:flex}.kind-head .g{flex:auto}.kind-head .r{text-align:right;flex:0 0 42px}.kind-head .c{text-align:right;flex:0 0 26px}.train-board-col .board-row{align-items:stretch;gap:10px;display:flex}.train-board-col .board-row>.board{flex:none}.train-eval{flex:none;align-self:stretch;width:26px;height:auto}.train-eval.waiting{opacity:.45}.train-analysis{width:0;min-width:100%;margin-top:10px}.an-nav{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);align-items:center;gap:4px;padding:6px 8px;display:flex}.an-nav .sm{min-height:26px;padding:0 7px}.an-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:8px;font-size:12px}.an-line{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);flex-wrap:wrap;align-items:baseline;gap:2px;max-height:108px;margin-top:6px;padding:5px 7px;font-size:13px;display:flex;overflow-y:auto}.an-moves{flex-wrap:wrap;align-items:baseline;gap:2px;display:flex}.an-mv{border-radius:var(--radius-xs);min-height:26px;font-family:var(--mono);color:var(--text);background:0 0;border:1px solid #0000;padding:0 6px;font-size:12px}.an-mv:hover{background:var(--surface-2);border-color:#0000}.an-mv.start{font-family:var(--font);color:var(--muted)}.an-mv.task{border-color:var(--border-2)}.an-mv.current{background:var(--ivory);color:var(--ink);font-weight:600}.an-mv.current:hover{background:var(--accent-hover)}.an-end{flex:none;margin-left:auto}.coach .coach-head{flex-wrap:wrap;row-gap:4px}.coach-move{white-space:nowrap}.who-tag{color:var(--muted);align-items:center;gap:5px;font-size:12px;display:inline-flex}.who-tag .player-dot{width:9px;height:9px}.cost{font-family:var(--mono);white-space:nowrap;cursor:help;font-variant-numeric:tabular-nums;border-radius:999px;margin-left:auto;padding:1px 8px;font-size:12px;font-weight:600}.cost.bad{color:var(--loss-ink);background:var(--loss-bg)}.cost.good{color:var(--win-ink);background:var(--win-bg)}.state-pill{white-space:nowrap;cursor:help;border-radius:999px;margin-left:auto;padding:1px 8px;font-size:12px;font-weight:600}.state-pill.good{color:var(--win-ink);background:var(--win-bg)}.state-pill.bad{color:var(--loss-ink);background:var(--loss-bg)}.state-pill.even{color:var(--muted);background:var(--surface-2)}.coach-digest .state-pill,.coach-digest .cost{margin-left:0}.coach-say{max-width:68ch;color:var(--text);letter-spacing:-.004em;text-wrap:pretty;font-size:15px;line-height:1.6}.coach-say:empty{display:none}.coach-say.enter{animation:.18s ease-out coach-enter}@keyframes coach-enter{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}.sent{border-radius:4px;transition:background .12s,box-shadow .12s}.sent.role-thesis{font-weight:500}.sent.role-clock,.sent.role-context,.sent.role-line{color:var(--muted)}.sent.has-proof{cursor:pointer}.sent.has-proof:hover,.sent.has-proof.active{background:color-mix(in srgb, var(--sc,var(--muted)) 11%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--sc,var(--muted)) 11%, transparent)}.sent.tone-threat{--sc:var(--loss-ink)}.sent.tone-resource{--sc:var(--c-best-ink)}.sent.tone-square,.sent.tone-line{--sc:var(--c-inaccuracy-ink)}.tok{font:inherit;color:inherit;cursor:pointer;white-space:nowrap;text-align:left;background:0 0;border:0;border-radius:4px;min-height:0;margin:0 -1px;padding:0 2px;transition:background .1s,box-shadow .1s;display:inline}.tok.move{font-weight:600}.tok.move .n{color:var(--muted);margin-right:1px;font-weight:500}.tok.move .san .fig{font-size:1.08em;line-height:1}.tok.move.plain{cursor:text}.tok.sq{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:color-mix(in srgb, var(--sc,var(--muted)) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--sc,var(--muted)) 60%, transparent);text-underline-offset:3px}.tok:hover,.tok.active,.tok.current{background:color-mix(in srgb, var(--sc,var(--muted)) 22%, transparent)}.tok.current{box-shadow:0 0 0 2px color-mix(in srgb, var(--sc,var(--muted)) 40%, transparent)}.tok:active{transform:none}.tok:focus-visible{outline:2px solid var(--ivory);outline-offset:1px}.coach-line{border-top:1px dashed var(--border-2);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.coach-line:empty,.coach-line[hidden],.coach-line-actions[hidden],.coach-line .pv-back[hidden]{display:none}.pv{flex-wrap:wrap;flex:1;align-items:center;gap:2px 4px;min-width:0;display:flex}.pv-move,.played-move{font-family:var(--mono);border-radius:var(--radius-xs);min-height:0;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;padding:3px 6px;font-size:12px;transition:background .1s}.pv-move:hover,.played-move:hover{background:var(--surface-2);border-color:#0000}.pv-move.current{background:var(--ivory);color:var(--ink);font-weight:600}.pv-move .n,.played-move .n{color:var(--faint);margin-right:2px}.pv-move.current .n{color:var(--ink);opacity:.6}.pv-back{white-space:nowrap;align-items:center;gap:5px;margin-left:auto;display:inline-flex}.pv-back svg{width:13px;height:13px}.play-btn{border:1px solid var(--border-2);background:var(--surface-2);width:26px;height:26px;min-height:0;color:var(--text);cursor:pointer;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.play-btn svg{width:11px;height:11px}.play-btn:hover{background:color-mix(in srgb, var(--c-best) 20%, var(--surface-2));border-color:color-mix(in srgb, var(--c-best) 55%, transparent);color:var(--c-best-ink)}.play-btn.playing{background:var(--c-best);color:#1f2c17;border-color:#0000}.coach-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;padding-top:12px;display:flex}.coach-actions button:not(.task-btn){min-height:30px;padding:0 12px;font-size:13px}.coach-actions:not(:has(>:not([hidden]))){display:none}.cue-point{font-family:var(--mono);letter-spacing:.08em;color:var(--muted);vertical-align:1px;background:var(--surface-2);border:1px solid var(--border-2);border-radius:999px;flex:none;padding:1px 6px;font-size:10px;font-weight:600;text-decoration:none}.cue-point:hover{color:var(--text);border-color:var(--muted)}.coach-skeleton{background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface-3) 50%, var(--surface-2) 75%);background-size:200% 100%;border-radius:6px;height:2.4em;margin:2px 0;animation:1.2s linear infinite coach-skel;display:block}@keyframes coach-skel{0%{background-position:200% 0}to{background-position:-200% 0}}.coach.quiz>:is(.coach-say,.coach-gloss,.coach-line,.coach-notes),.coach.lean:not(.open) .sent.role-line:not(:only-child){display:none}.coach-start{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.term{vertical-align:middle;width:24px;height:24px;min-height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.term svg{width:14px;height:14px}.term[hidden]{display:none}.term:hover,.term.active{color:var(--text);background:var(--surface-3)}.term:focus-visible{outline:2px solid var(--ivory);outline-offset:2px}.coach-gloss{z-index:100;overscroll-behavior:contain;border:1px solid var(--border-2);background:var(--surface-2);width:min(360px,100vw - 24px);max-height:min(440px,100dvh - 24px);color:var(--text);border-radius:12px;flex-direction:column;gap:8px;margin:0;padding:12px 14px;font-size:13px;line-height:1.5;display:flex;position:fixed;inset:auto;overflow-y:auto;box-shadow:0 12px 36px #0000004d}.coach-gloss[hidden],.coach-gloss:empty{display:none}.coach-gloss::backdrop{pointer-events:none;background:0 0}.gloss-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.gloss-head b{font-size:14px}.gloss-close{border-radius:6px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;min-height:28px;padding:0;display:inline-flex}@media (pointer:coarse){.term{width:32px;height:32px}.gloss-close{width:36px;height:36px}}.gloss-tag{min-width:26px;color:var(--faint);text-transform:uppercase;letter-spacing:.04em;margin-right:6px;font-size:11px;display:inline-block}.gloss-how,.gloss-ex{color:var(--muted)}.gloss-train{align-self:flex-start;align-items:center;gap:4px;margin-top:2px;font-size:12px;display:inline-flex}.gloss-footer{border-top:1px solid var(--border);padding-top:8px}.gloss-known{text-align:left;white-space:normal;align-items:center;gap:6px;max-width:100%;display:inline-flex}.gloss-known svg{flex-shrink:0}.coach.quiz .coach-gloss{display:none}.story{flex-direction:column;gap:6px;font-size:13px;line-height:1.5;display:flex}.story-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:12px;font-weight:600}.story-line{grid-template-columns:48px 1fr;align-items:baseline;gap:8px;display:grid}.story-tag{color:var(--faint);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.story-turns{flex-direction:column;gap:4px;margin:0;padding:0 0 0 56px;list-style:none;display:flex}.story-turns li{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.story-move{font-weight:600}.story-move.opp{color:var(--muted)}.story-text{color:var(--muted);flex:100%}.story-line.lesson{border-top:1px dashed var(--border-2);padding-top:6px}.story-moments{color:var(--muted);margin-top:10px;font-size:13px}.story-train{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.kind-filter{color:var(--muted);align-items:center;gap:6px;margin-right:10px;font-size:12px;display:inline-flex}.kind-row.filtered{outline:1.5px solid var(--c-best-ink);outline-offset:-1.5px}.kind-row{cursor:pointer}.coach-start label{color:var(--muted);cursor:pointer;align-items:center;gap:6px;font-size:12px;display:inline-flex}.player-bar{flex-wrap:nowrap;min-width:0}.player-name{white-space:nowrap;flex:0 auto;min-width:0}.player-nick{text-overflow:ellipsis;min-width:0;overflow:hidden}.player-material{white-space:nowrap;flex:none}.player-spent{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.player-spent:empty{display:none}.player-clock{flex:none}.moves .mv .clk{align-items:center;gap:3px;display:inline-flex}table a,.cl-game-errors a,.focus-list a{text-decoration-color:#0000}table a:hover,.cl-game-errors a:hover,.focus-list a:hover{-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text)}a.pill{gap:5px;text-decoration:none}a.pill:hover{color:var(--text);background:var(--surface-2)}.pill.in-db{color:var(--muted)}.nowrap{white-space:nowrap}:is(.card:has(>table),.card:has(>div>table)){overflow-x:auto}.km-pip{position:relative}.km-pip:after{content:"";position:absolute;inset:-4px}:root[data-theme=light] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23655f55' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E")}.pill,.eg-goal,.score,.cl-res,.task-mine,.player-me,.kind-badge,.line-badge,.cl-badge{white-space:nowrap;letter-spacing:0;text-transform:none;font-size:12px;font-weight:500;line-height:18px;font-family:var(--font);border-radius:999px;align-items:center;gap:5px;padding:1px 9px;display:inline-flex}.score{font-family:var(--mono);padding:0 7px;font-weight:600}.task-mine,.player-me,.kind-badge,.line-badge,.cl-badge{border:1px solid var(--border-2);color:var(--muted);background:0 0}.cl-badge{border-color:currentColor;padding:0 7px;font-weight:600;line-height:17px}.cl-badge.sm{padding:0 6px;font-size:11px;line-height:15px}.kind-row .kind-badge{border-color:#0000;padding-left:0}.eg-goal{margin-top:2px}.steps-slot{align-items:center;gap:14px;display:flex}.session-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.session-end{flex-direction:column;gap:10px;display:flex}.session-score{align-items:baseline;gap:10px;margin-top:4px;display:flex}.session-big{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:40px;font-weight:600;line-height:1}.session-stats{color:var(--muted);flex-wrap:wrap;gap:8px 18px;font-size:13px;display:flex}.session-stat{align-items:center;gap:6px;display:inline-flex}.session-stat b{color:var(--text);font-weight:600}.session-stat .ico{color:var(--accent-2)}.palette{width:min(560px,100vw - 32px);min-width:0;margin:12vh auto 0;padding:0;overflow:hidden}.palette-head{border-bottom:1px solid var(--border);color:var(--muted);align-items:center;gap:10px;padding:10px 14px;display:flex}.palette-input{min-width:0;color:var(--text);background:0 0;border:none;flex:auto;min-height:30px;padding:4px 0;font-size:15px}.palette-input:focus-visible{outline:none}.palette-input::-webkit-search-cancel-button{display:none}.palette-list{flex-direction:column;gap:1px;max-height:min(52vh,440px);padding:6px;display:flex;overflow-y:auto}.palette-group{letter-spacing:.05em;text-transform:uppercase;color:var(--faint);padding:8px 10px 4px;font-size:11px}.palette-item{text-align:left;background:0 0;border-color:#0000;align-items:center;gap:10px;width:100%;min-height:34px;padding:0 10px;font-weight:500;display:flex}.palette-item .ico{width:15px;height:15px;color:var(--muted);flex:none}.palette-item .palette-label{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;overflow:hidden}.palette-item .palette-hint{min-width:0;color:var(--faint);white-space:nowrap;text-overflow:ellipsis;flex:auto;font-size:12px;font-weight:400;overflow:hidden}.palette-item.selected,.palette-item:hover{background:var(--surface-3);border-color:#0000}.palette-item.selected .ico{color:var(--text)}.palette-empty{color:var(--muted);text-align:center;padding:18px 12px}.palette-foot{border-top:1px solid var(--border);color:var(--faint);align-items:center;gap:6px;padding:8px 14px;font-size:11px;display:flex}.rep-toggle{vertical-align:-2px;justify-content:center;align-items:center;display:inline-flex}.note-mark .ico,.note-title .ico{vertical-align:-2px}a.road,a.road:hover{text-decoration:none}.eg-facts{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.eg-fact{background:var(--surface-2);border-radius:var(--radius-s);flex-direction:column;gap:2px;padding:8px 10px;display:flex}.eg-fact-v{letter-spacing:-.01em;font-size:16px;font-weight:600;line-height:1.2}.eg-fact-l{color:var(--muted);font-size:11px}.eg-principle{margin-top:12px;font-size:14px;line-height:1.55}.eg-info-links{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.drill-theory{flex-wrap:wrap;align-items:center;gap:4px;margin-top:8px;display:flex}.drill-theory .theory-move.played{background:var(--ivory);color:var(--ink)}.error-state{border:1px solid var(--danger-border)}.error-state b{color:var(--danger)}.link-btn.help{cursor:help;text-decoration-style:dotted}.rating-trend{display:block}.legend i.legend-line{vertical-align:2px;background:var(--graph-fill);border-radius:0;width:14px;height:2px;margin-right:6px;display:inline-block}.legend i.legend-line.dashed{border-top:2px dashed var(--muted);background:0 0;height:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rating-trend-wrap{height:70px;position:relative}.rt-lbl{font-family:var(--mono);color:var(--faint);pointer-events:none;background:color-mix(in srgb, var(--surface) 75%, transparent);border-radius:3px;padding:1px 3px;font-size:11px;line-height:1;position:absolute;left:2px;transform:translateY(-50%)}.rt-lbl.end{color:var(--text);font-weight:600;transform:translate(8px,-100%)}.rt-lbl.end.left{transform:translate(calc(-100% - 8px),-100%)}:root{--reveal-glow:var(--ivory)}:root[data-theme=light]{--reveal-glow:#b08d2a}.board-wrap.res-reveal cg-container{box-shadow:0 1px 0 #ffffff0f, 0 10px 30px var(--drop), 0 0 14px 1px color-mix(in srgb, var(--reveal-glow) 45%, transparent), 0 0 40px 10px color-mix(in srgb, var(--reveal-glow) 22%, transparent), 0 0 90px 28px color-mix(in srgb, var(--reveal-glow) 10%, transparent)}.trend-rating{margin-top:10px}.eg-state{align-items:center;gap:4px;display:inline-flex}.board-wrap .shape-layer{z-index:3;pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.shape-layer text{font-family:var(--font);font-weight:700}.play-btn.analyze{border-radius:var(--radius-s);letter-spacing:.01em;background:color-mix(in srgb, var(--c-best) 12%, var(--surface-2));border-color:color-mix(in srgb, var(--c-best) 48%, transparent);width:auto;min-width:0;height:auto;min-height:28px;color:var(--c-best-ink);box-shadow:none;gap:6px;padding:3px 10px 3px 8px;font-size:12px;font-weight:600;transition:background .14s,border-color .14s,color .14s,box-shadow .18s,transform .12s}.play-btn.analyze svg{flex:none;width:11px;height:11px;transform:translate(-.7px)}.play-btn.analyze:hover,.play-btn.analyze:focus-visible{color:#1f2c17;border-color:color-mix(in srgb, #1f2c17 20%, var(--c-best));background:linear-gradient(180deg, color-mix(in srgb, var(--c-best) 82%, #fff), var(--c-best) 58%, color-mix(in srgb, var(--c-best) 93%, #000));box-shadow:0 3px 9px color-mix(in srgb, var(--c-best) 26%, transparent), inset 0 1px 0 #ffffff57;transform:translateY(-1px)}.play-btn.analyze:active{transform:translateY(.5px);box-shadow:inset 0 1px 3px #1f2c1747}.play-btn.mini{vertical-align:middle;background:0 0;border:0;width:20px;height:20px;margin:-2px 0 0 2px;padding:0;line-height:0;position:relative}.play-btn.mini:hover{background:0 0}.play-btn.mini .bubble{z-index:2;background:color-mix(in srgb, var(--c-best) 18%, var(--surface-2));border:1px solid color-mix(in srgb, var(--c-best) 45%, transparent);height:20px;color:var(--c-best-ink);border-radius:999px;align-items:center;padding:0 4px;transition:background .14s,border-color .14s,color .14s,box-shadow .18s;display:inline-flex;position:absolute;top:50%;left:0;transform:translateY(-50%)}.play-btn.mini.flip .bubble{flex-direction:row-reverse;left:auto;right:0}.play-btn.mini svg{flex:none;width:10px;height:10px;margin:0;display:block;transform:translate(-.6px)}.play-btn.mini .lbl{align-items:center;max-width:0;font-size:11px;font-weight:600;line-height:1;transition:max-width .2s cubic-bezier(.2,.7,.3,1);display:flex;overflow:hidden}.play-btn.mini .lbl>span{white-space:nowrap;opacity:0;transition:opacity .12s,padding .2s}.play-btn.mini .lbl .on{display:none}.play-btn.mini.active .lbl .on{display:block}.play-btn.mini.active .lbl .off{display:none}.play-btn.mini:hover .lbl,.play-btn.mini:focus-visible .lbl{max-width:120px}.play-btn.mini:hover .lbl>span,.play-btn.mini:focus-visible .lbl>span{opacity:1;padding:0 3px 0 5px}.play-btn.mini.flip:hover .lbl>span,.play-btn.mini.flip:focus-visible .lbl>span{padding:0 5px 0 3px}.play-btn.mini:hover .bubble,.play-btn.mini:focus-visible .bubble{background:var(--c-best);color:#1f2c17;box-shadow:0 3px 10px var(--drop), 0 0 0 3px color-mix(in srgb, var(--surface) 74%, transparent);border-color:#0000}.play-btn.mini.active .bubble{background:var(--c-best);color:#1f2c17;border-color:#0000}@media (hover:none){.play-btn.mini .lbl{display:none}}.coach-line-label{color:var(--muted);font-size:12px}.coach-line-label b{color:var(--text);font-weight:600}.coach-line .more-dots{font-family:var(--mono);letter-spacing:2px;color:var(--muted);padding:3px 6px;font-size:13px}.coach-line .more-dots:hover{color:var(--text)}.coach-line .more-dots.busy{cursor:progress;animation:1s infinite dots-pulse}@keyframes dots-pulse{50%{opacity:.35}}.opening-tag{color:var(--c-book-ink);text-overflow:ellipsis;white-space:nowrap;max-width:30ch;font-size:12px;overflow:hidden}.coach-line{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-direction:column;align-items:stretch;gap:8px;padding:10px}.coach-line-head{flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0;display:flex}.coach-line-head .coach-line-label{overflow-wrap:anywhere;min-width:0}.coach-line-actions{border-top:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:6px;min-width:0;padding-top:8px;display:flex}.coach-line-tools{flex-wrap:wrap;gap:6px;display:flex}.coach-line .sm{min-height:28px;padding:3px 8px;font-size:12px}.coach-line-status{color:var(--muted);font-size:12px}.line-seg{max-width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;flex-wrap:wrap;gap:4px;padding:0}.line-seg select{min-height:28px}.coach-line-settings{gap:4px;display:inline-flex}.moves .variation{border-left:2px solid var(--border-2);padding-left:calc(8px + var(--lvl,0) * 14px);flex-wrap:wrap;grid-column:1/-1;align-items:baseline;gap:2px 4px;margin:4px 0 2px;display:flex}.moves .variation .mv{display:inline-flex}.moves .variation .num{margin-right:4px;display:inline}.moves .variation-head{color:var(--muted);font-style:italic}.moves .variation.status-running .variation-head{color:var(--c-book-ink)}.moves .variation.status-error .variation-head{color:var(--danger)}.moves .variation .del{min-height:0;color:var(--faint);opacity:0;padding:0 6px;font-size:13px;line-height:1;transition:opacity .12s}.moves .variation:hover .del,.moves .variation .del:focus-visible{opacity:1}.moves .variation .del:hover{color:var(--danger)}.moves .variation .fold{min-height:0;color:var(--faint);padding:0 4px;font-size:11px;line-height:1}.moves .variation .fold:hover,.moves .variation .fold:focus-visible{color:var(--accent)}.moves .variation.folded .more{display:none}.moves .variation .fold-more{color:var(--faint);font-size:12px}.topbar nav .nav-btn{min-height:0;color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:6px;margin-bottom:-1px;padding:0 11px;font-size:14px;font-weight:500;transition:color .12s;display:inline-flex}.topbar nav .nav-btn:hover{color:var(--text);background:0 0}.topbar nav .nav-btn:active{transform:none}.topbar nav .nav-btn .ico{opacity:.85;width:15px;height:15px}dialog.drawer{border:none;border-right:1px solid var(--border-2);border-radius:0 var(--radius) var(--radius) 0;background:var(--bg);width:min(920px,94vw);min-width:0;max-width:none;height:100dvh;max-height:100dvh;box-shadow:0 0 0 1px var(--border), 24px 0 60px var(--drop);margin:0;padding:0;position:fixed;inset:0 auto 0 0}dialog.drawer[open]{flex-direction:column;animation:.24s cubic-bezier(.2,.7,.2,1) drawer-in;display:flex}@keyframes drawer-in{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:none}}.drawer-head{border-bottom:1px solid var(--border);background:var(--bg);flex:none;align-items:center;gap:18px;padding:14px 18px 12px 22px;display:flex}.drawer-title{letter-spacing:-.02em;align-items:center;gap:10px;font-size:18px;font-weight:600;display:flex}.drawer-title .ico{color:var(--ivory)}.drawer-tabs{background:var(--surface);border:1px solid var(--border);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.drawer-tab{min-height:28px;color:var(--muted);background:0 0;border:none;border-radius:999px;padding:0 14px;font-size:13px;font-weight:500}.drawer-tab:hover{background:var(--surface-2);color:var(--text);border:none}.drawer-tab.active{background:var(--ivory);color:var(--ink);font-weight:600}.drawer-tab.active:hover{background:var(--accent-hover)}.drawer-close{color:var(--muted)}.drawer-body{flex:auto;min-height:0;padding:14px 20px 28px;overflow:auto}.drawer-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 18px;margin-bottom:12px;display:flex}.drawer-toolbar .toolbar{flex:auto}.drawer-count{white-space:nowrap}.drawer-body .cc-layout{grid-template-columns:176px minmax(0,1fr)}.drawer-body .cc-months{max-height:calc(100dvh - 150px)}.drawer-body .table-card{padding:4px 12px 8px}.drawer-body table th{background:var(--surface);z-index:1;position:sticky;top:0}.drawer-body tr.clickable:hover{background:var(--surface-3)}.drawer-body tr.clickable:hover td:first-child{box-shadow:inset 2px 0 0 var(--ivory)}.coach-intro{flex-direction:column;gap:12px;display:flex}.intro-hero{flex-direction:column;gap:10px;display:flex}.intro-hero-top{flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:13px;display:flex}.intro-opening{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:30ch;font-weight:500;overflow:hidden}.intro-ext{color:var(--muted);align-items:center;gap:3px;font-size:12px;text-decoration:none;display:inline-flex}.intro-ext:hover{color:var(--text)}.intro-actions{flex-wrap:wrap;align-items:center;gap:10px 12px;display:flex}.intro-actions .primary{min-height:34px;padding:0 16px}.intro-scope{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.intro-note{flex:100%;font-size:12px;line-height:1.45}.intro-tabs{z-index:3;border-bottom:1px solid var(--border);background:var(--surface);gap:2px;margin:2px 0 0;display:flex;position:sticky;top:0}.intro-tab{min-height:32px;color:var(--muted);letter-spacing:.01em;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:0 12px;font-size:13px;font-weight:500}.intro-tab:hover{border-color:#0000;border-bottom-color:var(--border-2);color:var(--text);background:0 0}.intro-tab.active{color:var(--text);border-bottom-color:var(--ivory);font-weight:600}.intro-tab:active{transform:none}.intro-body{animation:.16s ease-out fade-in}.intro-moments-bar{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;display:flex}.intro-moments-bar .icon-btn{min-height:26px;padding:0 7px}.intro-moments-bar .km-first{min-height:26px;padding:0 9px;font-size:12px}.intro-moments .keymoments-list{max-height:none}.intro-foot{border-top:1px solid var(--border);justify-content:flex-end;margin-top:12px;padding-top:10px;display:flex}.intro-notes-wrap{margin-top:12px}.intro-notes-wrap .note-title{border-top:none;align-items:center;gap:5px;margin-top:0;padding-top:0;display:flex}.intro-summary .sum-acc{margin-top:2px}.intro-summary .sum-acc .sum-big{font-size:30px}.sum-cell{vertical-align:middle}.sum-cell .mono{display:block}.sum-bar{background:var(--border);border-radius:2px;height:3px;margin-top:3px;display:block;overflow:hidden}.sum-bar>i{background:var(--cls,var(--muted));border-radius:2px;height:100%;transition:width .4s cubic-bezier(.2,.7,.2,1);display:block}.sum-cell.ta-r .sum-bar{direction:rtl}.sum-classes td{padding:5px 6px}.coach-intro.scratch{gap:14px}.intro-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.intro-lead{text-wrap:pretty;max-width:52ch;margin:-6px 0 0;font-size:15px;line-height:1.55}.intro-fen-row{align-items:center;gap:6px;display:flex}.intro-fen{flex:auto;min-width:0;font-size:12px}.intro-hints{border-top:1px dashed var(--border-2);flex-direction:column;gap:4px;padding-top:10px;font-size:12px;line-height:1.5;display:flex}.intro-hints kbd{margin-right:2px}.coach-moments{border-bottom:1px solid var(--border);margin:-2px 0 10px;padding-bottom:8px}.coach-moments[hidden]{display:none}.moments-strip{align-items:center;gap:4px;display:flex}.moments-strip .km-strip{flex-direction:row;flex:auto;min-width:0;padding:5px 6px;overflow-x:auto}.coach.quiz>.coach-moments,.moments-strip .km-brief{display:none}.moments-strip .icon-btn{min-height:24px;color:var(--muted);background:0 0;border-color:#0000;padding:0 5px}.moments-strip .icon-btn:hover{color:var(--text);background:var(--surface-2)}.coach-progress{border-radius:var(--radius-s);background:var(--surface-2);border:1px solid var(--border);flex-direction:column;gap:7px;padding:10px 12px;display:flex}.coach-progress-bar{background:var(--border-2);border-radius:2px;height:4px;display:block;overflow:hidden}.coach-progress-bar>i{background:var(--ivory);border-radius:2px;width:0;height:100%;transition:width .16s linear;display:block;position:relative}.coach-progress-bar>i:after{content:"";background:linear-gradient(90deg,#0000,#ffffff59,#0000);animation:1.4s ease-in-out infinite progress-sheen;position:absolute;inset:0}:root[data-theme=light] .coach-progress-bar>i:after{background:linear-gradient(90deg,#0000,#fff9,#0000)}@keyframes progress-sheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}.coach-progress-text{font-family:var(--mono);color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.coach-unjudged{flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.coach-host{flex-direction:column;min-height:0;display:flex}.panel.fill .panel-body>.coach-host,.panel.sized .panel-body>.coach-host{overflow:visible}.coach-host>.coach-scroll{flex:auto;min-height:0;overflow:auto}.engine-dock{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface-2) 55%, var(--surface));flex:none;margin:-12px -14px 12px;padding:8px 14px 10px}.engine-dock[hidden]{display:none}.engine-dock-head{flex-wrap:wrap;align-items:center;gap:8px;min-height:26px;margin-bottom:6px;font-size:12px;line-height:1.3;display:flex}.engine-dock-head select{flex:none}.engine-dock-fold{min-height:22px;color:var(--muted);letter-spacing:.01em;background:0 0;border:none;align-items:center;gap:6px;padding:0 4px 0 2px;font-size:12px;font-weight:600;display:inline-flex}.engine-dock-fold:hover{color:var(--text);background:0 0}.engine-dock-fold:active{transform:none}.engine-dock-fold .ico:first-child{color:var(--faint);transition:transform .15s ease-out}.engine-dock-fold .ico:nth-child(2){color:var(--ivory);opacity:.8}.engine-dock.folded .engine-dock-fold .ico:first-child{transform:rotate(-90deg)}.engine-dock.folded{margin-bottom:10px;padding-bottom:7px}.engine-dock.folded .engine-dock-head{flex-wrap:nowrap;margin-bottom:0}.engine-dock.folded .engine-body,.engine-dock.folded .engine-digest .faint{display:none}.engine-dock.folded .engine-dock-fold,.engine-dock.folded .engine-power,.engine-dock.folded .dock-out{flex:none}.engine-dock:not(.folded) .engine-digest{display:none}.engine-dock .engine-digest{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.engine-dock .engine-digest .pv{display:none}.engine-dock .spacer{flex:1}.engine-power{min-height:24px;color:var(--faint);background:0 0;border-color:#0000;padding:0 6px}.engine-power:hover{color:var(--text);background:var(--surface-2);border-color:#0000}.engine-power.on{color:var(--c-brilliant-ink)}.engine-power.on:hover{color:var(--c-brilliant-ink);background:var(--surface-2)}.engine-dock .dock-out{width:24px;min-height:24px;color:var(--faint);padding:0}.engine-dock .dock-out:hover{color:var(--text)}.engine-dock .engine-body{gap:6px;min-height:0}.engine-dock .engine-lines .engine-line{padding:3px 7px;font-size:12.5px}.engine-dock .engine-bar{font-size:11px}.col-close{width:22px;min-height:22px;color:var(--faint);opacity:.55;margin-left:2px;padding:0;transition:opacity .12s,color .12s}.panel-col:hover .col-close,.col-close:focus-visible,.panel-head:focus-within .col-close{opacity:1}.col-close:hover{color:var(--text);background:var(--surface-3)}.panel-rail{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);flex-direction:column;flex:0 0 34px;align-self:stretch;align-items:center;gap:12px;padding:6px 0 10px;animation:.16s ease-out fade-in;display:flex;overflow:hidden}.panel-rail .rail-open{width:26px;height:26px;min-height:0;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.panel-rail .rail-open:hover{color:var(--ink);background:var(--ivory);border-color:#0000}.panel-rail .rail-label{writing-mode:vertical-rl;letter-spacing:.06em;text-transform:uppercase;min-height:0;color:var(--faint);white-space:nowrap;background:0 0;border:none;padding:6px 0;font-size:11px;font-weight:600;transform:rotate(180deg)}.panel-rail .rail-label:hover{color:var(--text);background:0 0;border:none}.panel-rail .rail-label:active{transform:rotate(180deg)}@media (width<=1180px){.panel-rail{flex-direction:row;flex:none;justify-content:flex-start;gap:10px;width:100%;padding:6px 10px}.panel-rail .rail-label{writing-mode:horizontal-tb;padding:0 4px;transform:none}.panel-rail .rail-label:active{transform:none}}.topbar{transition:height .24s cubic-bezier(.2,.7,.2,1),opacity .16s ease-out,border-color .16s}body.topbar-hidden .topbar{opacity:0;pointer-events:none;border-bottom-color:#0000;height:0;overflow:hidden}body.topbar-hidden{--topbar:0px}.topbar-hide{padding:0 6px}.topbar-hide .ico{transform:rotate(180deg)}.topbar-hotzone{z-index:6;height:10px;display:none;position:fixed;top:0;left:0;right:0}body.topbar-hidden.topbar-edge .topbar-hotzone{display:block}body.topbar-hidden.topbar-edge .topbar-hotzone:after{content:"";background:var(--border-2);opacity:.8;border-radius:0 0 3px 3px;width:64px;height:3px;margin-left:-32px;position:absolute;top:0;left:50%}.topbar-tab{z-index:7;border:1px solid var(--border-2);background:var(--surface);width:120px;height:22px;min-height:0;color:var(--muted);box-shadow:0 2px 8px var(--drop);border-top:none;border-radius:0 0 10px 10px;justify-content:center;align-items:center;padding:0;display:none;position:fixed;top:0;left:50%;transform:translate(-50%)}.topbar-tab:active{transform:translate(-50%)}body.topbar-hidden .topbar-tab{display:inline-flex}.topbar-tab:hover{color:var(--text);background:var(--surface-2);border-color:var(--hover-border)}body.no-session .needs-session,body.beta .road,.account-menu-slot:empty{display:none}.account-menu .menu-btn{text-overflow:ellipsis;gap:6px;max-width:220px;font-size:13px;font-weight:500;overflow:hidden}a.menu-item{color:var(--muted);align-items:center;text-decoration:none;display:flex}a.menu-item:hover{background:var(--surface-2);color:var(--text)}.auth-screen{min-height:calc(100vh - var(--topbar));justify-content:center;align-items:center;padding:32px 16px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:460px;box-shadow:var(--shadow);padding:28px 26px}.auth-brand{letter-spacing:-.01em;color:var(--muted);margin-bottom:14px;font-size:13px;font-weight:600}.auth-title{letter-spacing:-.01em;margin:0 0 10px;font-size:19px;font-weight:600;line-height:1.3}.auth-card p{color:var(--muted);margin:0 0 10px;font-size:13px;line-height:1.5}.auth-note{background:var(--surface-3);color:var(--text);border-radius:999px;margin-bottom:10px;padding:3px 9px;font-size:12px;font-weight:500;display:inline-block}.auth-actions{margin-top:4px}.auth-link{font-size:13px}.field{margin:16px 0}.field-label{color:var(--muted);margin-bottom:6px;font-size:12px;font-weight:600}.field input[type=text],.field input:not([type]),.join-nick-input{width:100%}.field-hint{color:var(--faint);margin-top:5px;font-size:12px}.field-error{color:var(--danger);margin-top:5px;font-size:12px}.seg>button.active{background:var(--surface-3);color:var(--text)}.join-data-box{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-s);margin:16px 0;padding:12px 14px}.join-data-list{color:var(--muted);margin:8px 0 10px;padding-left:18px;font-size:12.5px;line-height:1.55}.join-data-list li+li{margin-top:3px}.join-data-box a{font-size:12.5px}.join-rules-hint{color:var(--faint);margin:10px 0 0;font-size:12.5px}.join-ack{align-items:flex-start;gap:9px;margin-top:10px;font-size:13px}.join-ack input{margin-top:3px}.dane-page{max-width:68ch;margin:0 auto}.dane-section{margin:22px 0}.dane-section h2{letter-spacing:-.01em;margin:0 0 8px;font-size:15px;font-weight:600}.dane-section p{color:var(--muted);margin:0 0 8px;font-size:13px;line-height:1.55}.dane-section p:last-child{margin-bottom:0}.dane-section b{color:var(--text)}.dane-list{color:var(--muted);margin:0 0 8px;padding-left:20px;font-size:13px;line-height:1.55}.dane-list li+li{margin-top:10px}.dane-section table{margin:4px 0 8px}.dane-section table td:first-child{color:var(--text);width:38%}@media (width<=560px){.auth-card{padding:22px 18px}.join-data-box{padding:10px 12px}}body.no-session .topbar-tab{display:none}@media (width<=1700px){.account-menu .menu-btn{max-width:150px}.account-site,.report-btn-label{display:none}}.shape-legend{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);margin-top:10px;overflow:hidden}.coach-legend:empty{display:none}.sl-head{cursor:pointer;width:100%;color:var(--muted);font:inherit;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:5px 10px;display:flex}.sl-head:hover{color:var(--text);background:var(--surface-2)}.sl-title{letter-spacing:.09em;text-transform:uppercase;font-size:10.5px}.sl-caret{color:var(--faint);transition:transform .18s;display:flex}.shape-legend.is-open .sl-caret{transform:rotate(180deg)}.sl-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:2px 12px;padding:0 10px 8px;display:grid}.shape-legend:not(.is-open) .sl-grid{display:none}.sl-item{opacity:.3;align-items:center;gap:8px;min-width:0;transition:opacity .2s;display:flex}.sl-item.is-on{opacity:1}.sl-swatch{flex:none;align-items:center;width:36px;display:flex}.sl-swatch.is-square{width:18px}.sl-swatch.is-lines{width:30px}.sl-sample{width:100%;height:auto;display:block}.sl-text{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.sl-item.is-on .sl-text{color:var(--text)}@media (width<=900px){.sl-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}.learning-profile{margin-block:16px}.learning-skills{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block:20px;display:grid}.learning-skill{border:1px solid var(--border);border-radius:8px;padding:12px}.learning-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.learning-actions a,.learning-history button,.learning-history summary{align-items:center;min-height:44px;display:inline-flex}.learning-history article{border-bottom:1px solid var(--border);padding-block:16px}.decision-layout{grid-template-columns:minmax(260px,580px) minmax(280px,480px);align-items:start;gap:24px;display:grid}.decision-board{aspect-ratio:1;width:100%;position:relative}.decision-coach{min-width:0}.decision-coach>button,.decision-coach>a{min-height:44px;margin:8px 12px 8px 0}.decision-coach .intent-label{font-size:1.25rem;font-weight:600}@media (width<=720px){.learning-skills,.decision-layout{grid-template-columns:minmax(0,1fr)}.decision-layout{gap:12px}.decision-board{max-width:480px;margin-inline:auto}}dialog.report-dlg{min-width:min(560px,100vw - 32px)}dialog.report-dlg .report-lead{color:var(--muted);margin:-6px 0 14px;font-size:13px}dialog.report-dlg .seg{margin-bottom:12px}dialog.report-dlg textarea{min-height:118px;font-family:var(--font);font-size:13.5px}dialog.report-dlg .report-count{color:var(--faint);text-align:right;margin-top:4px;font-size:12px}.report-what{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface-2);margin-top:12px}.report-what>summary{cursor:pointer;color:var(--muted);align-items:center;gap:8px;padding:9px 12px;font-size:13px;list-style:none;display:flex}.report-what>summary::-webkit-details-marker{display:none}.report-what>summary:after{content:"▾";color:var(--faint);margin-left:auto;font-size:11px}.report-what[open]>summary:after{content:"▴"}.report-what>summary:hover{color:var(--text)}.report-what dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;padding:2px 12px 12px;font-size:12.5px;display:grid}.report-what dt{color:var(--faint)}.report-what dd{color:var(--text);overflow-wrap:anywhere;margin:0}.report-what dd.report-errs{font-family:var(--mono);color:var(--muted);font-size:11.5px}.report-what dd.report-errs>div{margin-bottom:2px}.report-snap{border:1px solid var(--border);border-radius:var(--radius-s);margin-top:12px;padding:10px 12px}.report-snap>label{cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.report-snap p{color:var(--muted);margin:6px 0 0 23px;font-size:12px;line-height:1.5}.report-preview{margin:8px 0 0 23px}.report-preview>summary{cursor:pointer;color:var(--muted);align-items:center;gap:6px;font-size:12.5px;list-style:none;display:inline-flex}.report-preview>summary::-webkit-details-marker{display:none}.report-preview>summary:hover{color:var(--text)}.report-preview-scene{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-s);margin-top:8px;overflow:hidden}.report-preview-frame{transform-origin:0 0;border:0;display:block}dialog.report-dlg .report-foot{justify-content:flex-end;margin-top:16px}.report-btn{align-items:center;gap:6px;display:inline-flex}@media (width<=1180px){.report-btn-label{display:none}}.admin-nav{flex-wrap:wrap;gap:4px;margin-bottom:16px;display:flex}.admin-nav a{color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:5px 11px;font-size:13px;text-decoration:none}.admin-nav a:hover{color:var(--text);border-color:var(--hover-border)}.admin-nav a.active{background:var(--surface-3);color:var(--text);border-color:#0000}.report-filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.report-filters label{color:var(--muted);align-items:center;gap:6px;font-size:12.5px;display:flex}.report-list{flex-direction:column;gap:8px;display:flex}.report-item{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface)}.report-item.done{opacity:.62}.report-item>.report-sum{text-align:left;border-radius:var(--radius-s);white-space:normal;background:0 0;border:none;flex-wrap:wrap;align-items:baseline;gap:10px;width:100%;padding:11px 13px;font-weight:500;display:flex}.report-item>.report-sum:hover{background:var(--surface-2);border-color:#0000}.report-sum .report-id{color:var(--muted);font-variant-numeric:tabular-nums;-webkit-user-select:text;user-select:text;cursor:text;font-size:12.5px;font-weight:600}.report-sum .report-when{color:var(--faint);font-variant-numeric:tabular-nums;font-size:12px}.report-sum .report-who{color:var(--muted);font-size:12.5px}.report-sum .report-note{color:var(--text);flex:260px;font-size:13px;font-weight:400}.report-detail{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding:12px 13px;display:flex}.report-detail dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:12.5px;display:grid}.report-detail dt{color:var(--faint)}.report-detail dd{overflow-wrap:anywhere;margin:0}.report-detail .report-full{white-space:pre-wrap;font-size:13.5px;line-height:1.55}.report-what .report-coach-said{white-space:normal;line-height:1.45}.report-detail .report-coach{border-left:3px solid var(--border-2);color:var(--muted);margin:8px 0 0;padding:6px 10px;font-size:13px;line-height:1.5}.report-detail .report-fen{font-family:var(--mono);font-size:11.5px}.report-snapshot{flex-direction:column;gap:6px;display:flex}.report-scene-bar{flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;display:flex}.report-scene-open{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:3px 9px;font-size:12px;text-decoration:none}.report-scene-open:hover{color:var(--text);border-color:var(--hover-border)}.report-scene{background:var(--bg);border:1px solid var(--border-2);border-radius:var(--radius-s);overflow:hidden}.report-scene.one-to-one{overflow:auto}.report-frame{transform-origin:0 0;background:var(--bg);border:0;display:block}.report-pill{font-size:11.5px}.report-pill.bug{color:var(--loss-ink);background:var(--loss-bg)}.report-pill.suggestion{color:var(--win-ink);background:var(--win-bg)}.report-pill.coach{color:var(--c-book-ink);background:var(--draw-bg)}.report-pill.status-done{color:var(--draw-ink);background:var(--draw-bg)}@media (width<=620px){.report-detail dl,.report-what dl{grid-template-columns:1fr;gap:2px}}.an-body{flex-direction:column;gap:16px;display:flex}.an-tiles{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.an-tile{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--surface);padding:12px 14px}.an-tile-value{font-variant-numeric:tabular-nums;font-size:22px;font-weight:600;line-height:1.1}.an-tile.warn .an-tile-value{color:var(--loss-ink)}.an-tile-label{color:var(--muted);margin-top:4px;font-size:12px}.an-chart{width:100%;height:120px;display:block}.an-chart rect{fill:var(--ivory);opacity:.85}.an-chart rect:hover{opacity:1}.an-funnel{flex-direction:column;gap:8px;display:flex}.an-funnel-row{grid-template-columns:180px 1fr 44px;align-items:center;gap:10px;font-size:12.5px;display:grid}.an-funnel-label{color:var(--muted)}.an-funnel-track{background:var(--surface-2);border-radius:4px;height:8px;overflow:hidden}.an-funnel-fill{background:var(--ivory);border-radius:4px;height:100%;transition:width .3s;display:block}.an-funnel-n{text-align:right;font-variant-numeric:tabular-nums;color:var(--text)}.an-table{border-collapse:collapse;width:100%;font-size:12.5px}.an-table th{text-align:left;color:var(--faint);border-bottom:1px solid var(--border-2);white-space:nowrap;padding:6px 10px;font-weight:500}.an-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:6px 10px}.an-table tbody tr:hover{background:var(--surface-2)}.an-table code{font-family:var(--mono);color:var(--muted);font-size:11.5px}.an-warn-cell{color:var(--loss-ink);font-weight:600}.an-invite-form{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.an-invite-result{border:1px solid var(--border-2);border-radius:var(--radius-s);background:var(--surface-2);align-items:center;gap:8px;margin-bottom:12px;padding:8px 10px;display:flex}.an-invite-result code{font-family:var(--mono);overflow-wrap:anywhere;flex:1;font-size:12px}@media (width<=620px){.an-funnel-row{grid-template-columns:120px 1fr 36px}.an-table{display:block;overflow-x:auto}}.lc-opening{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.lc-more{justify-content:center;padding:10px 0 4px;display:flex}body.landing .topbar,body.landing .topbar-tab,body.landing .topbar-hotzone{display:none}body.landing main{max-width:none;padding:0}.lp{--lp-gold:var(--accent,#dec296);--lp-gap:clamp(32px, 5vw, 64px);max-width:1280px;margin:0 auto;padding:0 clamp(20px,4vw,48px)}.lp-top{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:25px 0;display:flex}.lp-brand{letter-spacing:-.025em;align-items:center;gap:11px;font-size:clamp(20px,3vw,25px);font-weight:600;display:inline-flex}.lp-brand .brand-mark{width:26px;height:26px;color:var(--lp-gold)}.lp-badge{color:var(--lp-gold);border:1px solid var(--border-2);white-space:nowrap;border-radius:99px;padding:6px 11px;font-size:12px;font-weight:500}.lp-eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--lp-gold);font-size:11px;font-weight:500;line-height:1.4;display:block}.lp-hero{padding:34px 0 var(--lp-gap)}.lp-hero-say{min-width:0}.lp-hero-eyebrow{margin-bottom:15px}.lp-h1{letter-spacing:-.047em;margin:0 0 20px;font-size:clamp(38px,7vw,61px);font-weight:600;line-height:1.035}.lp-title-accent{color:var(--lp-gold)}.lp-lead{max-width:52ch;color:var(--muted);margin:0;font-size:clamp(16px,2vw,18px);line-height:1.62}.lp-hero-actions{flex-wrap:wrap;align-items:center;gap:13px 18px;margin-top:24px;display:flex}.lp-hero-cta{border-radius:8px;justify-content:space-between;align-items:center;gap:25px;min-height:48px;padding:0 19px;font-size:14px;font-weight:600;display:inline-flex}.lp-hero-cta span{font-size:21px;line-height:1}.lp-hero-note{color:var(--muted);font-size:12px}.lp-sources{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:7px;margin:18px 0 27px;font-size:12px;display:flex}.lp-sources strong{font-family:var(--mono);color:var(--text);font-weight:500}.lp-demo{border:1px solid var(--border-2);background:var(--surface);box-shadow:0 15px 48px var(--drop);border-radius:13px;margin:0}.lp-demo-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:15px 16px;display:flex}.lp-demo-head .lp-eyebrow{letter-spacing:.08em;font-size:10px}.lp-demo-tabs{gap:5px;display:flex}.lp-demo-tab{min-height:38px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:6px;padding:0 11px;font-size:12px}.lp-demo-tab.active{background:var(--surface-3);color:var(--text);border-color:var(--border-2)}.lp-demo-content{grid-template-columns:minmax(0,1fr);gap:16px;padding:20px 16px 17px 9px;display:grid}.lp-demo-board{pointer-events:none;width:100%;min-width:0;max-width:410px;margin:0 auto}.lp-demo-coach{min-width:0;padding:0 7px}.lp-demo-verdict{flex-wrap:wrap;align-items:center;gap:8px 11px;margin-bottom:11px;display:flex}.lp-demo-move{font-family:var(--mono);font-size:15px;font-weight:600}.lp-demo-class{color:var(--c-blunder-ink);background:#fa412d1f;border-radius:5px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.lp-demo-class.is-better{color:var(--c-best-ink);background:#9dc27621}.lp-demo-title{letter-spacing:-.02em;margin:0 0 10px;font-size:18px;font-weight:600;line-height:1.2}.lp-demo-say{min-height:4.5em;color:var(--muted);margin:0;font-size:13px;line-height:1.58}.lp-demo-score{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:17px;padding-top:10px;font-size:11px;display:flex}.lp-demo-eval{font-family:var(--mono);color:var(--text);font-size:19px}.lp-demo-src{color:var(--muted);margin-top:10px;font-size:10.5px;line-height:1.5;display:block}.lp-form-card{background:var(--surface);border:1px solid var(--border-2);border-top:2px solid var(--lp-gold);box-shadow:var(--shadow-md);border-radius:13px;margin-top:30px;padding:26px 21px 23px;scroll-margin:24px}.lp-form-intro{margin-bottom:23px}.lp-form-title{letter-spacing:-.035em;margin:11px 0 10px;font-size:clamp(23px,4vw,28px);font-weight:600;line-height:1.12}.lp-form-intro p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.lp-field{margin-bottom:14px}.lp-label{color:var(--text);margin-bottom:7px;font-size:12px;font-weight:600;display:block}.lp-form input[type=email],.lp-form input[type=text]{border-radius:7px;width:100%;min-height:46px;padding:0 12px;font-size:16px}.lp-form input[type=email]:focus,.lp-form input[type=text]:focus{border-color:var(--lp-gold)}.lp-seg{gap:8px;display:flex}.lp-seg .seg-site{border-radius:7px;flex:1;min-height:44px;font-size:13px}.lp-seg .seg-site.active{background:var(--surface-3);color:var(--lp-gold);border-color:var(--lp-gold)}.lp-consent{color:var(--muted);grid-template-columns:auto 1fr;align-items:start;gap:10px;margin-top:13px;font-size:12px;line-height:1.55;display:grid}.lp-consent input[type=checkbox]{width:18px;height:18px;accent-color:var(--lp-gold);margin-top:2px}.lp-consent a{color:var(--text);text-underline-offset:3px}.lp-submit{border-radius:7px;width:100%;min-height:48px;margin-top:20px;font-size:14px}.lp-fine{color:var(--muted);margin:12px 0 0;font-size:11px;line-height:1.6}.lp-err{color:var(--danger);margin-top:6px;font-size:12px;line-height:1.5;display:none}.lp-err.on{display:block}.lp-submit+.lp-err.on{margin-top:10px}.lp-hp{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:auto;left:-9999px}.lp-done-title{letter-spacing:-.02em;margin:0 0 12px;font-size:24px;font-weight:600;line-height:1.2}.lp-done p{color:var(--muted);margin:0 0 12px;font-size:14px;line-height:1.65}.lp-done strong{color:var(--text);overflow-wrap:anywhere;font-weight:600}.lp-sec{border-top:1px solid var(--border);padding:var(--lp-gap) 0}.lp-h2{letter-spacing:-.04em;max-width:17ch;margin:0 0 25px;font-size:clamp(26px,4vw,36px);font-weight:600;line-height:1.1}.lp-h3{letter-spacing:-.025em;margin:12px 0 10px;font-size:18px;font-weight:600;line-height:1.25}.lp-sec p{color:var(--muted);max-width:66ch;margin:0;font-size:14px;line-height:1.68}.lp-what-grid{gap:24px;display:grid}.lp-what-item{border-top:1px solid var(--border-2);padding-top:15px;position:relative}.lp-feature-number{font-family:var(--mono);color:var(--lp-gold);font-size:12px}.lp-steps{counter-reset:steps;margin:0;padding:0;list-style:none}.lp-steps li{counter-increment:steps;color:var(--muted);padding:0 0 25px 48px;font-size:14px;line-height:1.7;position:relative}.lp-steps li:last-child{padding-bottom:0}.lp-steps li:before{content:"0" counter(steps);font-family:var(--mono);color:var(--lp-gold);font-size:15px;position:absolute;top:1px;left:0}.lp-beta-list{margin:0}.lp-beta-dt{color:var(--text);align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.lp-beta-dt:before{content:"";background:var(--lp-gold);border-radius:50%;flex:none;width:7px;height:7px}.lp-beta-dt.mark-ok:before{background:var(--c-best)}.lp-beta-dt.mark-warn:before{background:var(--c-inaccuracy)}.lp-beta-list dd{max-width:64ch;color:var(--muted);margin:7px 0 21px 17px;font-size:14px;line-height:1.65}.lp-beta-list dd:last-child{margin-bottom:0}.lp-who-text{color:var(--text)!important;font-size:16px!important;line-height:1.7!important}.lp-faq-item{border-top:1px solid var(--border)}.lp-faq-item:first-of-type{border-top:none}.lp-faq-item summary{cursor:pointer;justify-content:space-between;align-items:baseline;gap:18px;padding:17px 0;font-size:14px;font-weight:500;list-style:none;display:flex}.lp-faq-item summary::-webkit-details-marker{display:none}.lp-faq-item summary:after{content:"+";font-family:var(--mono);color:var(--lp-gold);flex:none;font-size:17px}.lp-faq-item[open] summary:after{content:"−"}.lp-faq-item p{padding-bottom:19px}.lp-last-call{border-top:1px solid var(--border-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:33px 0;display:flex}.lp-last-call h2{letter-spacing:-.035em;margin:12px 0 0;font-size:clamp(24px,3.5vw,34px);font-weight:600;line-height:1.12}.lp-foot{border-top:1px solid var(--border);padding:25px 0 38px}.lp-foot-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px 25px;display:flex}.lp-foot-name{color:var(--text);font-size:12px;font-weight:500}.lp-foot-links{flex-wrap:wrap;gap:12px 20px;display:flex}.lp-foot-links a,.lp-foot-mail a{color:var(--muted);font-size:12px}.lp-foot-links a:hover,.lp-foot-mail a:hover{color:var(--text)}.lp-foot-mail{color:var(--muted);overflow-wrap:anywhere;margin:15px 0 0;font-size:12px}.lp-foot-note{color:var(--muted);margin:8px 0 0;font-size:11px}.lp-foot-btn{min-height:0;color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--faint);text-decoration-color:var(--faint);text-underline-offset:3px;padding:0;font-size:12px;font-weight:400}.lp-foot-btn:hover{color:var(--text);-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text);background:0 0}.lp-cookies{z-index:var(--z-toast);left:max(12px, var(--safe-l));right:max(12px, var(--safe-r));bottom:max(12px, var(--safe-b));background:var(--surface-2);border:1px solid var(--border-2);max-width:700px;box-shadow:var(--shadow-lg);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px 16px;margin:0 auto;padding:16px;display:flex;position:fixed}.lp-cookies-text{color:var(--muted);flex:260px;font-size:12px;line-height:1.65}.lp-cookies-text strong{color:var(--text);font-weight:600}.lp-cookies-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.lp-cookies-actions button{min-height:44px;padding:0 16px}@media (width>=560px){.lp-demo-content{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center}.lp-demo-coach{padding:0}.lp-what-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}}@media (width>=980px){.lp-top{padding:30px 0}.lp-hero{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:40px;padding-top:44px;display:grid}.lp-form-card{margin-top:0;padding:28px 23px 24px}.lp-demo-content{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:17px}.lp-demo-title{font-size:17px}.lp-sec{grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:52px;display:grid}.lp-h2{margin:0}.lp-what{display:block}.lp-what .lp-h2{max-width:none;margin-bottom:29px}.lp-what-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 40px}}@media (width<=559px){.lp-demo-tab{min-height:44px}.lp-hero-cta{min-height:50px}.lp-demo-say{min-height:4.75em}.lp-demo-head .lp-eyebrow{flex-basis:100%}.lp-demo-tabs{width:100%}.lp-demo-tabs button{flex:1}}@media (prefers-reduced-motion:no-preference){.lp-demo-tab,.lp-hero-cta{transition:background .18s ease-out,border-color .18s ease-out,color .18s ease-out}}:root[data-theme=light] .lp{--lp-gold:var(--accent,#79572a)}.toast.z-akcja{grid-template-columns:1fr auto;align-items:start;gap:6px 10px;max-width:460px;line-height:1.5;display:grid}.toast.z-akcja .toast-msg{grid-column:1}.toast.z-akcja .toast-x{grid-area:1/2}.toast.z-akcja .toast-akcja{grid-column:1/-1;justify-self:start;min-height:28px;padding:0 12px;font-size:12px;font-weight:600}@media (hover:none){.panel-menu .menu-btn,.panel.tile .panel-menu,.col-close{opacity:1;display:inline-flex}*{-webkit-tap-highlight-color:transparent}}.sheet{display:contents}.sheet-grip,.mobile-dock,.actions.acts-collapsed>:not(.acts-menu):not(.account-menu-slot):not(.topbar-hide){display:none}.acts-menu .menu-body{min-width:232px}@media (width<=900px){:root{--topbar:48px;--topbar-keep:48px;--gutter:34px}.topbar{height:calc(var(--topbar) + var(--safe-t));padding:var(--safe-t) max(12px, var(--safe-r)) 0 max(12px, var(--safe-l));gap:var(--space-5)}.topbar .road,.topbar nav,.topbar .spacer{display:none}.topbar .brand span{font-size:var(--text-md)}.topbar .actions{gap:var(--space-3);flex:0 auto;min-width:0;margin-left:auto}.topbar-hotzone,.topbar-hide{display:none!important}body:not(.topbar-tucked) .topbar-tab{display:none}body:is(.game-page,.train-page).topbar-tucked .topbar-tab{top:var(--safe-t);width:96px;height:26px;display:inline-flex}body.topbar-hidden{--topbar:48px}body:is(.game-page,.train-page).topbar-tucked{--topbar:0px}body:is(.game-page,.train-page).topbar-tucked .topbar{height:var(--safe-t);opacity:0;pointer-events:none;border-bottom-width:0;overflow:hidden}body.topbar-hidden .topbar{height:calc(var(--topbar) + var(--safe-t));opacity:1;pointer-events:auto;border-bottom-color:var(--border);overflow:visible}.account-menu .menu-btn{max-width:104px}.account-site{display:none}body{overflow-x:hidden}main{padding:var(--space-7) max(var(--space-7), var(--safe-l)) var(--space-12) max(var(--space-7), var(--safe-r))}h1{font-size:var(--text-xl)}.card{padding:var(--space-7)}.grid-4,.grid-3{gap:var(--space-5);grid-template-columns:1fr 1fr}.cl-cols,.grid-2{grid-template-columns:1fr}.cc-layout,.drawer-body .cc-layout{gap:var(--space-5);grid-template-columns:minmax(0,1fr)}.cc-months,.drawer-body .cc-months{gap:var(--space-2);flex-wrap:wrap;max-height:132px;display:flex}.cc-months .cc-month{justify-content:flex-start;gap:var(--space-3);flex:none}.train-layout,.drill-layout,.eg-layout{--board-raw:min(calc(100vw - var(--space-11)), var(--board-set,1000px))}.train-board,.drill-board,.eg-board{width:var(--board-raw);max-width:100%}.side{min-width:0}.page-head{gap:var(--space-4);margin-bottom:var(--space-6)}.page-title{font-size:var(--text-xl)}.page-sub{font-size:var(--text-xs);max-width:none}.task-head{gap:var(--space-3);flex-direction:column}.task-tags{justify-content:flex-start}body.game-page main{height:calc(100dvh - var(--topbar) - var(--safe-t));padding:0;overflow:hidden}.game-layout{--board-raw:min(calc(100vw - var(--gutter) - var(--space-2)), 62dvh, calc(100dvh - var(--topbar-keep) - var(--dock-h) - var(--safe-t) - var(--safe-b) - 230px));--board-max-h:none;--slot-h:0px;flex-direction:column;align-items:stretch;gap:0;height:100%;display:flex;overflow:hidden}.game-layout>.splitter{display:none}.board-col{--board-air:0px;width:100%;padding:0 var(--space-2) 0 0;gap:var(--space-1);flex:none;margin:0;overflow:visible}.board-row{margin-top:calc(-1 * var(--sheet-lift,0px))}.game-layout:not(.sheet-dragging) .board-row{transition:margin-top var(--dur-moderate) var(--ease-swift)}.board-head{z-index:1;transition:background-color 0s var(--dur-moderate);background-color:#0000;position:relative}.game-layout.sheet-lifted .board-head{background-color:var(--bg);transition:background-color}.board-head,.board-foot{padding:0 var(--space-2)}.board-row{gap:var(--space-2)}.board-row .eval-bar{border-radius:var(--radius-xs);width:18px}.eval-bar .label{font-size:9px}.eval-cap,.eval-res{width:var(--gutter);letter-spacing:-.03em;margin-right:0;font-size:9px}.phone-slot .engine-dock-head select,.phone-slot .engine-dock-head .dock-out,.phone-slot .engine-depth-sel,.phone-slot .engine-pv-sel{display:none}.eval-bar .label-top{top:3px}.eval-bar .label-bottom{bottom:3px}.board-frame{grid-template-rows:auto 12px;grid-template-columns:12px minmax(0,1fr)}.board-col .board-frame{width:calc(var(--board) + 12px)}.coords-ranks,.coords-files{font-size:9px}.player-clock{font-size:var(--text-lg);min-width:3.4em;padding:1px var(--space-3)}.player-bar{padding:var(--space-1) 0;margin-left:var(--gutter);gap:var(--space-3)}.player-bar .bar-controls .nav-group{display:none}.player-bar:has(.bar-controls) :is(.player-me,.score){display:flex}.player-bar:has(.bar-controls) :is(.player-nick,.player-name .muted){display:block}.board-slot-wrap{display:none}.sheet{background:var(--surface);border-top:1px solid var(--border-2);border-radius:var(--radius) var(--radius) 0 0;min-height:132px;box-shadow:0 -8px 24px var(--drop);flex-direction:column;flex:auto;display:flex;position:relative;overflow:hidden}.sheet-grip{z-index:0;height:48px;min-height:0;padding:var(--space-2) 0 0;touch-action:none;cursor:grab;background:0 0;border:none;border-radius:0;justify-content:center;align-items:flex-start;display:flex;position:absolute;top:0;left:0;right:0}.sheet-grip:hover{background:0 0}.sheet-grip:active{cursor:grabbing;transform:none}.sheet-grip-bar{background:var(--muted);width:44px;height:5px;transition:background var(--dur-fast);border-radius:3px}.sheet-grip:active .sheet-grip-bar,.sheet-grip:focus-visible .sheet-grip-bar{background:var(--text)}.panels{flex-direction:column;flex:auto;gap:0;height:auto;min-height:0;display:flex}.sheet-tabs{z-index:1;gap:var(--space-1);padding:var(--space-6) var(--space-4) var(--space-1);touch-action:none;pointer-events:none;border-bottom:none;flex:none;display:flex;position:relative}.sheet-tab{pointer-events:auto;min-width:0;min-height:34px;padding:0 var(--space-3);border-radius:var(--radius-xs);color:var(--muted);font-size:var(--text-xs);text-overflow:ellipsis;transition:color var(--dur-fast), background var(--dur-fast);background:0 0;border:none;flex:1 1 0;font-weight:500;overflow:hidden}.sheet-tab:hover{background:0 0}.sheet-tab.active{color:var(--ink);background:var(--accent);font-weight:600}@keyframes sheet-tab-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.phone-slot .panel:not([hidden]){animation:sheet-tab-in var(--dur-base) var(--ease-out)}.panel-col.phone-slot{overscroll-behavior:contain;min-height:0;padding:0 0 var(--space-4);flex:auto;gap:0;overflow-y:auto}.phone-slot .panel{box-shadow:none;background:0 0;border:none;border-radius:0;height:auto!important;max-height:none!important}.phone-slot .panel[hidden]{display:none!important}.phone-slot .panel .panel-title,.phone-slot .panel-grip,.phone-slot .panel-menu,.phone-slot .col-close,.phone-slot .panel-resize,.phone-slot .panel-digest{display:none}.phone-slot .panel-head{padding:0 var(--space-4);border:none;justify-content:flex-end;min-height:0}.phone-slot .panel-head:empty{display:none}.phone-slot .panel-head:not(:has(.panel-actions>*)){display:none}.phone-slot .panel-body{padding:var(--space-4) var(--space-4) 0;display:block!important}.phone-slot .panel-tile-body{display:none}.phone-slot .panel-body .moves,.phone-slot .keymoments-list{max-height:none}.phone-slot .moves-pick-btn{display:none}.phone-slot .engine-dock{margin-left:calc(-1 * var(--space-4));margin-right:calc(-1 * var(--space-4));padding-left:var(--space-4);padding-right:var(--space-4)}.mobile-dock{height:calc(var(--dock-h) + var(--safe-b));padding:0 var(--space-2) var(--safe-b);background:var(--surface-2);border-top:1px solid var(--border-2);flex:none;justify-content:space-around;align-items:stretch;display:flex}.dock-btn{min-width:var(--tap);min-height:0;color:var(--muted);background:0 0;border:none;border-radius:0;flex:1 1 0;justify-content:center;align-items:center;padding:0;display:flex}.dock-btn:hover{background:0 0}.dock-btn:active{background:var(--surface-3);color:var(--text);transform:none}.dock-step{color:var(--text)}.dock-moment{color:var(--accent-2)}.dock-btn:disabled{opacity:.3}.phone-slot .coach{flex-direction:column;display:flex}.phone-slot .coach-moments{margin-top:var(--space-6);order:5}.phone-slot .coach:not(.open)>.coach-line,.phone-slot .coach:not(.open) .sent.role-line:not(:only-child){display:none}.phone-slot .coach:not(.open)>.coach-more{margin-top:var(--space-5);padding-left:0;display:inline-block}.phone-slot .coach-line-head select{display:none}button,select{min-height:36px}.seg button,.tabs button{min-height:34px}button.sm{min-height:32px}.topbar .actions button,.nav-slot .menu-btn{min-width:38px;min-height:38px}.km-dot{min-width:26px;min-height:26px}.bar-controls .menu-btn{min-width:36px;min-height:36px}.player-bar .dot-btn{min-height:32px}.engine-power,.engine-dock-fold{min-width:34px;min-height:34px}.dot-btn{min-width:32px}input[type=checkbox]{width:20px;height:20px}.menu-presets,.menu-body .desktop-only{display:none}input,textarea,select,.palette-input,.intro-fen{font-size:16px}.toasts{bottom:calc(var(--space-9) + var(--safe-b));left:var(--space-6);right:var(--space-6)}.menu-body{max-height:calc(100dvh - 16px)}.auth-screen{min-height:calc(100dvh - var(--topbar))}dialog{min-width:0;width:calc(100vw - var(--space-10));max-width:calc(100vw - var(--space-10));padding:var(--space-8)}dialog.drawer{border-radius:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}.palette{margin-top:var(--space-8)}.menu-body{max-width:calc(100vw - var(--space-8))}.toast{left:var(--space-6);right:var(--space-6);max-width:none}}@media (height<=500px) and (orientation:landscape) and (width<=900px){body.game-page main{height:calc(100dvh - var(--topbar));padding:0;overflow:hidden}.game-layout{--board-raw:min(calc(100dvh - var(--topbar) - 100px), 48vw);--board-max-h:none;--slot-h:0px;flex-direction:row;height:100%;display:flex}.board-col{width:calc(var(--board) + var(--gutter) + var(--space-2));padding:var(--space-2) 0;flex:none;margin-top:0}.board-slot-wrap{display:none}.sheet{border-top:none;border-left:1px solid var(--border-2);min-width:0;box-shadow:none;border-radius:0;flex:auto}.sheet-grip,.mobile-dock,.game-layout>.splitter{display:none}.player-bar .bar-controls .nav-group{display:flex}.player-bar:has(.bar-controls) :is(.player-nick,.player-me,.score,.player-name .muted){display:none}}@media (width<=900px){.col-sec{display:none}.gl-table th,.gl-table td{padding:9px 5px}.col-opp{text-overflow:ellipsis;max-width:18vw;overflow:hidden}.opp-rating{display:none}.gl-table .pill{padding:1px 6px;font-size:11px}.gl-table .row-menu .menu-btn{padding:0 4px}.toolbar .toolbar-search{flex:auto;order:-1;min-width:0}.toolbar .filters-toggle{order:-1}.filters-toggle[hidden]{align-items:center;gap:3px;display:inline-flex}.filters-toggle:after{content:"▾";font-size:10px}.toolbar.filters-open .filters-toggle:after{content:"▴"}.toolbar .toolbar-extra{display:none}.toolbar.filters-open .toolbar-extra{flex:45%;min-width:132px;display:inline-block}.cc-import-bar{z-index:4;gap:var(--space-3);padding:var(--space-4) max(var(--space-5), var(--safe-r)) calc(var(--space-4) + var(--safe-b)) max(var(--space-5), var(--safe-l));background:var(--surface-2);border-top:1px solid var(--border-2);margin:0;position:fixed;bottom:0;left:0;right:0}.card-head .row:has(.lc-import-analyze){z-index:4;gap:var(--space-3);padding:var(--space-4) max(var(--space-5), var(--safe-r)) calc(var(--space-4) + var(--safe-b)) max(var(--space-5), var(--safe-l));background:var(--surface-2);border-top:1px solid var(--border-2);margin:0;position:fixed;bottom:0;left:0;right:0}.cc-import-bar select{flex:100%}.card-head .row:has(.lc-import-analyze) select{flex:100%}.cc-import-bar button{white-space:normal;text-align:center;flex:1 1 0;min-width:0;line-height:1.2}.card-head .row:has(.lc-import-analyze) button{white-space:normal;text-align:center;flex:1 1 0;min-width:0;line-height:1.2}:is(.table-card:has(.cc-import-bar),.table-card:has(.lc-import-analyze)){padding-bottom:calc(108px + var(--safe-b))}.trend-scroll{overflow-x:auto}.trend,.trend-rating{width:var(--trend-w)!important}@media (width<=480px){.grid-4,.grid-3{grid-template-columns:1fr}}}body.train-page main{max-width:none;height:calc(100dvh - var(--topbar));flex-direction:column;gap:12px;padding:12px 16px;display:flex}.train-page .page-head{flex:none;align-items:center;margin:0}.train-page .page-title{font-size:20px}.train-page .session-meta{margin:0}.train-page .train-layout{--train-eval-width:0px;--board-fit:max(160px, calc(var(--train-height,600px) - var(--train-chrome,56px)));--board-auto:min(var(--board-fit), calc(var(--train-width,100vw) * .56), 1000px);--board-raw:min(var(--board-set,var(--board-auto)), var(--board-fit), calc(var(--train-width,100vw) - 368px - var(--train-eval-width)));flex:1 1 0;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:auto 28px minmax(0,1fr);align-items:stretch;gap:0;min-height:0;display:grid}.train-page .train-layout.is-analyzing{--train-eval-width:36px}.train-page .train-layout>.splitter{grid-area:1/2/3;width:28px;display:block}.train-page .train-board-col{grid-area:1/1/3;align-self:start;min-width:0}.train-page .train-board{width:var(--board-raw);max-width:none}@supports (width:round(down, 100px, 8px)){.train-page .train-board{width:calc(round(down, calc(var(--board-raw) - 16px), var(--cg-step,8px)) + 16px)}}.train-page .train-tools>button,.train-page .train-tools .menu-btn{min-width:36px;min-height:36px}.train-page .train-topbar .steps-slot{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.train-page .session-count{white-space:nowrap;font-size:12px}.train-page .step-dots .dot{flex:none;margin:0;position:static}.train-page .train-side{flex-direction:column;grid-area:1/3;min-width:0;min-height:0;display:flex;overflow:hidden}.train-side>*{flex:none;min-width:0}.train-side .train-content{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;flex:auto;gap:12px;min-height:0;display:flex;overflow-y:auto}.train-content>*{flex:none;min-width:0}.train-tabs,.train-sheet-grip{display:none}.train-phone-back[hidden],.train-topbar .steps-slot[hidden],.train-content>[hidden],.train-tabs[hidden],.train-tabs>[hidden],.train-nav[hidden]{display:none!important}.train-side .card{padding:16px}.train-side .task-head{flex-flow:wrap;align-items:center;gap:8px}.train-side .task-title{margin:0}.train-side .task-tags{margin-left:auto}.train-side .task-lead{margin-top:8px}.train-side .task-sub{font-size:12px}.train-side .task-jump{flex-wrap:wrap}.train-side .task-status:empty{min-height:0;margin:0}.train-side .task-status:not(:empty){margin-top:8px}.train-side .solution-line{overflow-wrap:anywhere}.train-side .train-explanation{margin-top:12px}.train-side summary{cursor:pointer;min-height:32px;color:var(--text);align-content:center;font-size:13px;font-weight:500}.train-side summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-s)}.train-side .train-explanation[open]>:not(summary){margin-top:8px}.train-side .train-stats{padding-block:8px}.train-side .train-stats-body{padding-top:8px}.train-side .stat-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.train-side .stat-tile{gap:6px;padding:8px}.train-side .stat-ico{display:none}.train-side .train-analysis{width:auto;min-width:0;margin:0}.train-side .an-nav{justify-content:center}.train-side .an-nav .sm{min-width:40px;min-height:36px}.train-side .an-line{max-height:88px}.train-side .an-mv{min-height:32px}.train-page .train-nav{grid-area:2/3;justify-content:center;gap:4px;margin-top:12px}.train-page .train-nav .dock-btn{min-width:44px;min-height:36px}.train-page .train-nav .an-count{text-align:center;min-width:44px;margin:0 8px}.train-back{white-space:nowrap;border-color:var(--border-2);background:var(--surface-2);color:var(--text);justify-content:center;align-items:center;gap:6px;display:inline-flex}.train-back:hover{background:var(--surface-3)}.train-back-short{display:none}.train-analysis-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.train-page .is-analyzing .train-task{padding-block:10px}.train-page .is-analyzing .train-side{overflow:hidden}.train-page .is-analyzing .engine-card{flex:none;min-height:0;overflow:visible}@media (width<=900px){body.train-page main{height:calc(100dvh - var(--topbar) - var(--safe-t,0px));gap:0;padding:0;overflow:hidden}.train-page .page-head{display:none}.train-page .train-layout{--board-raw:calc(var(--train-width,100vw) - var(--train-eval-width) - var(--safe-l,0px) - var(--safe-r,0px) - 4px);padding:0 var(--safe-r,0px) 0 var(--safe-l,0px);flex-flow:column;align-items:stretch;gap:0;display:flex;overflow:hidden}.train-page .train-layout.is-analyzing{--train-eval-width:22px}.train-page .train-layout>.splitter{display:none}.train-page .train-board-col{flex:none;align-self:stretch;gap:0;width:100%}.train-page .train-topbar{z-index:2;min-height:44px;transition:background-color 0s var(--dur-moderate);background-color:#0000;padding:0 12px;position:relative}.train-page .sheet-lifted .train-topbar{background-color:var(--bg);transition-delay:0s}.train-page .train-board-col .board-row{margin-top:calc(-1 * var(--sheet-lift,0px));gap:4px}.train-page .train-layout:not(.sheet-dragging) .board-row{transition:margin-top var(--dur-moderate) var(--ease-swift)}.train-page .train-board{width:var(--board-raw)}@supports (width:round(down, 100px, 8px)){.train-page .train-board{width:calc(round(down, calc(var(--board-raw) - 12px), var(--cg-step,8px)) + 12px)}}.train-page .train-eval{width:18px}.train-page .train-eval .label{font-size:9px}.train-page .train-tools>button,.train-page .train-tools .menu-btn{min-width:44px;min-height:44px}.train-page .train-tools{margin-left:auto}body.train-page.topbar-tucked .topbar-tab{left:auto;right:calc(100vw - var(--train-board-col-width,100vw) + 108px);width:40px;height:20px;transform:none}.train-page .train-phone-back{min-height:40px;margin-left:8px;padding:4px 8px;font-size:12px}.train-page .train-side,.train-page .is-analyzing .train-side{background:var(--surface);border-top:1px solid var(--border-2);border-radius:var(--radius) var(--radius) 0 0;min-height:96px;box-shadow:0 -8px 24px var(--drop);flex:1 1 0;gap:0;position:relative;overflow:hidden}.train-page .train-sheet-grip{display:flex}.train-page .train-tabs{flex:none;min-height:48px;display:flex}.train-page .train-content{scrollbar-gutter:auto;gap:0;padding:0 10px 8px}.train-content>[hidden]{display:none!important}.train-side .card,.train-page .is-analyzing .train-task{box-shadow:none;background:0 0;border:none;border-radius:0;padding:8px 2px}.train-side .train-stats>summary{display:none}.train-side .train-stats-body{padding-top:0}.train-side .engine-card .card-head{display:none}.train-side .engine-card{padding:0 2px}.train-side .train-content:has(>.engine-card:not([hidden])){padding-bottom:0}.train-page .is-analyzing .engine-card{flex:none;min-height:0;overflow:visible}.train-side .an-line{background:0 0;border:none;max-height:none;margin:0;padding:4px;overflow:visible}.train-side .an-mv{min-height:36px}.train-side .train-analysis-actions kbd{display:none}.train-side .train-analysis-actions{margin-top:8px}.train-side .train-back{min-height:40px}.train-page .train-nav{height:calc(var(--dock-h,52px) + var(--safe-b,0px));padding:0 4px var(--safe-b,0px);border:none;border-top:1px solid var(--border-2);background:var(--surface-2);border-radius:0;flex:none;justify-content:space-around;align-items:stretch;gap:0;margin:0}.train-page .train-nav .dock-btn{background:0 0;border:none;border-radius:0;flex:1 1 0;min-width:44px;min-height:44px;padding:0}.train-page .train-nav .dock-btn:active{background:var(--surface-3)}.train-page .train-nav .an-count{flex:0 0 52px;justify-content:center;align-items:center;margin:0;display:flex}}@media (width<=900px) and (orientation:landscape){.train-page .train-layout{--board-raw:min(calc(var(--train-height) - var(--train-chrome) - var(--dock-h,52px) - var(--safe-b,0px)), calc(var(--train-width) - 310px - var(--train-eval-width)));grid-template-rows:minmax(0,1fr) auto;grid-template-columns:auto minmax(0,1fr);column-gap:8px;display:grid}.train-page .train-board-col{grid-area:1/1;width:auto}.train-page .train-side{grid-area:1/2}.train-page .train-nav{grid-area:2/1/auto/-1}.train-page .train-sheet-grip{display:none}.train-page .train-tabs{min-height:40px;padding-top:4px}.train-page .train-board-col .board-row{margin-top:0}.train-page .train-phone-back .train-back-long{display:none}.train-page .train-phone-back .train-back-short{display:inline}}.train-page .train-layout{grid-template-rows:minmax(0,1fr) auto auto}.train-page .train-board-col,.train-page .train-layout>.splitter{grid-row:1/4}.train-page .train-nav{grid-row:3;margin-top:8px}.train-page .train-actions{border:1px solid var(--border-2);border-radius:var(--radius);background:var(--surface);min-width:0;box-shadow:0 -4px 18px var(--drop);flex-wrap:wrap;grid-area:2/3;gap:8px;margin-top:12px;padding:12px;display:flex}.train-page .train-actions[hidden]{display:none!important}.train-action-short{display:none}.train-page .train-actions .train-action{border:1px solid var(--border-2);border-radius:var(--radius-s);background:var(--surface-2);min-width:0;min-height:44px;color:var(--text);flex:auto;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:13px;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.train-page .train-actions .train-action>.ico{flex:none}.train-page .train-actions .train-action:hover{background:var(--surface-3);border-color:var(--hover-border)}.train-page .train-actions .train-action:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.train-page .train-actions .train-action:active{background:var(--surface-3)}.train-page .train-actions .train-action.primary{background:var(--ivory);color:var(--ink);border-color:#0000;font-weight:600}.train-page .train-actions .train-action.primary:hover{background:var(--accent-hover)}.train-page .train-actions .train-action:disabled{opacity:.45;cursor:default}@media (width<=900px){.train-page .train-actions{grid-template-columns:repeat(var(--train-action-count,4), minmax(0, 1fr));padding:6px 6px calc(6px + var(--safe-b,0px));border:none;border-top:1px solid var(--border-2);background:var(--surface-2);box-shadow:0 -4px 16px var(--drop);border-radius:0;flex:none;align-items:stretch;gap:4px;margin:0;display:grid}.train-page .is-analyzing .train-actions{padding-bottom:6px}.train-page .train-actions .train-action{background:0 0;border-color:#0000;flex-direction:column;gap:4px;min-height:50px;padding:5px 2px;font-size:12px;line-height:1.1}.train-page .train-actions .train-action.primary{background:var(--ivory)}.train-page .train-actions:has(>:nth-child(5)) .train-action{font-size:11px}.train-page .train-actions .train-action kbd,.train-action-full,.train-card-back{display:none}.train-action-short{display:inline}.train-page .train-nav{margin:0}}@media (width<=900px) and (orientation:landscape){.train-page .train-layout{grid-template-rows:minmax(0,1fr) auto auto}.train-page .train-board-col{grid-row:1/3}.train-page .train-actions{grid-area:2/2}.train-page .train-nav{grid-area:3/1/auto/-1}}.train-page .train-topbar>.train-eval-cap{width:44px;margin-right:0}.train-page .train-topbar>.train-eval-cap[hidden]{display:none}.train-page .is-analyzing .train-topbar{gap:8px}.train-page .train-eval{width:28px;margin-bottom:16px}@media (width<=900px){.train-page .is-analyzing .train-topbar{gap:0;padding-left:0}.train-page .train-topbar>.train-eval-cap{width:34px}.train-page .train-eval{width:18px;margin-bottom:12px}}.player-bar .game-training-return{justify-content:center;align-items:center;gap:var(--space-3);min-height:32px;padding:var(--space-2) var(--space-5);border:1px solid var(--border-2);border-radius:var(--radius-s);background:var(--surface-2);color:var(--text);font-size:var(--text-xs);white-space:nowrap;flex:none;font-weight:600;display:inline-flex}.player-bar .game-training-return:hover{border-color:var(--hover-border);background:var(--surface-3)}.player-bar .game-training-return:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@container bcol (width<=620px){.player-bar.has-training-return{gap:var(--space-3)}.player-bar.has-training-return :is(.player-material,.player-spent,.player-me,.score),.player-bar.has-training-return .player-name .muted{display:none}}@container bcol (width<=420px){.player-bar.has-training-return .player-name{display:none}}@media (width<=900px){.player-bar .game-training-return{min-height:var(--tap);font-size:var(--text-sm)}.game-layout:has(.game-training-return){--board-raw:min(calc(100vw - var(--gutter) - var(--space-2)), 62dvh, calc(100dvh - var(--topbar-keep) - var(--dock-h) - var(--safe-t) - var(--safe-b) - 242px))}}@media (height<=500px) and (orientation:landscape) and (width<=900px){.game-layout:has(.game-training-return){--board-raw:min(calc(100dvh - var(--topbar) - 112px), 48vw)}}.brand-wordmark{white-space:nowrap;letter-spacing:-.03em;display:inline-flex}.brand-wordmark-first{color:var(--text)}.brand-wordmark-accent{color:var(--accent)}.topbar .brand{border-radius:8px}.topbar .brand:focus-visible{outline-offset:4px}.topbar nav a{padding-inline:12px;font-size:13px}.topbar nav a:hover{background:var(--brand-soft);color:var(--text)}.topbar .actions>.primary{box-shadow:0 2px 10px var(--brand-soft)}.panel{box-shadow:var(--card-shadow)}.panel-head{background:color-mix(in srgb, var(--surface-2) 48%, var(--surface));border-radius:15px 15px 0 0}.panel.collapsed .panel-head,.panel.strip .panel-head{border-radius:15px}.panel-title{letter-spacing:-.01em;font-weight:600}.panel-body .card{box-shadow:none}.panel:not(.tile):not(.strip) .panel-title>.ico{color:var(--accent)}.coach-say{font-size:15px;line-height:1.65}.coach-actions{border-top-color:var(--border-2)}.coach-line{border-top-style:solid;border-top-color:var(--border)}.coach-msg,.join-data-box{box-shadow:none}.seg>button.active,.tabs button.active{background:var(--brand-soft);color:var(--accent);border-color:var(--brand-line)}.nav-menu .menu-body :is(a,.nav-btn).active{color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}.drawer-head{background:var(--surface-top)}.drawer-tabs button.active{background:var(--accent);color:var(--on-accent)}.menu-body{border-radius:13px;padding:7px}.menu-body .menu-item{border-radius:7px}button.primary:disabled{color:var(--muted);background:var(--surface-3);border-color:var(--border)}button.primary:disabled:hover{background:var(--surface-3)}input:not([type=checkbox]):not([type=range]):focus-visible,textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--brand-soft)}.kpi{padding-block:21px;position:relative}.kpi:before{content:"";background:var(--accent);opacity:.8;width:28px;height:2px;position:absolute;top:0;left:20px}.kpi .kpi-l{color:var(--muted);font-size:12px}.kpi .kpi-v{letter-spacing:-.04em;margin:10px 0 8px;font-size:35px;font-weight:500}.focus-card{border-color:var(--brand-line);background:linear-gradient(110deg, var(--brand-soft), transparent 70%), var(--surface);grid-template-columns:minmax(220px,.8fr) minmax(0,1.7fr);gap:24px;padding:24px;display:grid}.focus-kicker{color:var(--accent);font-size:11px;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase}.focus-title{letter-spacing:-.035em;text-wrap:balance;margin:9px 0 17px;font-size:28px;font-weight:500;line-height:1.15}.focus-copy{align-self:center;min-width:0}.focus-copy .focus-list{color:var(--muted);margin:0;padding-left:17px;font-size:13px;line-height:1.6}.focus-copy .focus-list li+li{margin-top:7px}.focus-copy .focus-list b,.focus-copy .focus-list a{color:var(--text)}.auth-screen{background:radial-gradient(ellipse at 50% 30%, var(--brand-soft), transparent 65%)}.auth-card{border-color:var(--brand-line);padding:32px}.auth-brand{align-items:center;gap:9px;margin-bottom:25px;font-size:21px;display:flex}.auth-brand .brand-mark{width:25px;height:25px}.auth-title{letter-spacing:-.03em;font-size:25px;font-weight:500}.auth-card p{font-size:14px;line-height:1.65}.auth-actions{gap:10px;margin-top:18px}.auth-actions button.primary{min-height:42px;padding-inline:20px}.dane-section p{font-size:14px;line-height:1.7}.dane-section h2{letter-spacing:-.02em;font-size:17px}@media (prefers-reduced-motion:no-preference){.auth-card{animation:brand-arrive .28s var(--ease-out) both}.panel,.card{transition:border-color var(--dur-base), box-shadow var(--dur-base)}.menu-body.open{animation:brand-menu .14s var(--ease-out) both}@keyframes brand-arrive{0%{opacity:.4;translate:0 8px}to{opacity:1;translate:0}}@keyframes brand-menu{0%{opacity:.5}to{opacity:1}}}@media (width<=900px){.topbar .brand{gap:7px;font-size:17px}.topbar .brand-mark{width:22px;height:22px}.panel-head{border-radius:0}.panel,.panel-body .card{box-shadow:none}.focus-card{grid-template-columns:1fr;gap:20px;padding:20px}.focus-title{margin-block:8px 13px;font-size:25px}.focus-card button.primary{min-height:44px}.kpi .kpi-v{font-size:30px}.auth-card{padding:25px 21px}.auth-title{font-size:23px}.auth-actions button{min-height:44px}}@media (width<=380px){.topbar .brand{gap:6px;font-size:16px}.topbar .brand-mark{width:20px;height:20px}}.cg-wrap{box-sizing:content-box;display:block;position:relative}cg-container{width:100%;height:100%;display:block;position:absolute;top:0}cg-board{-webkit-user-select:none;user-select:none;background-size:cover;width:100%;height:100%;line-height:0;position:absolute;top:0;left:0}.cg-wrap.manipulable cg-board{cursor:pointer}cg-board square{pointer-events:none;width:12.5%;height:12.5%;position:absolute;top:0;left:0}cg-board square.move-dest{pointer-events:auto}cg-board square.last-move{will-change:transform}.cg-wrap piece{z-index:2;will-change:transform;pointer-events:none;background-size:cover;width:12.5%;height:12.5%;position:absolute;top:0;left:0}cg-board piece.dragging{cursor:move;z-index:11!important}piece.anim{z-index:8}piece.fading{z-index:1;opacity:.5}.cg-wrap piece.ghost{opacity:.3}.cg-wrap piece svg{pointer-events:none;z-index:2;opacity:.6;width:100%;height:100%;position:relative;top:0;left:0;overflow:hidden}.cg-wrap cg-auto-pieces,.cg-wrap .cg-shapes,.cg-wrap .cg-custom-svgs,.cg-wrap .cg-shapes-below,.cg-wrap .cg-custom-below{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.cg-wrap cg-auto-pieces{z-index:2}.cg-wrap cg-auto-pieces piece{opacity:.3}.cg-wrap .cg-shapes{opacity:.6;z-index:2;overflow:hidden}.cg-wrap .cg-shapes-below{z-index:1;overflow:hidden}.cg-wrap .cg-custom-below{z-index:1}.cg-wrap .cg-custom-svgs{z-index:9}.cg-wrap .cg-custom-svgs svg,.cg-wrap .cg-custom-below svg{overflow:visible}.cg-wrap coords{pointer-events:none;opacity:.8;font-family:sans-serif;font-size:9px;display:flex;position:absolute}.cg-wrap coords.ranks{flex-flow:column-reverse;width:12px;height:100%;top:-20px;left:4px}.cg-wrap coords.ranks.black{flex-flow:column}.cg-wrap coords.ranks.left{align-items:flex-end;left:-15px}.cg-wrap coords.files{text-transform:uppercase;text-align:center;flex-flow:row;width:100%;height:16px;bottom:-4px;left:24px}.cg-wrap coords.files.black{flex-flow:row-reverse}.cg-wrap coords coord{flex:auto}.cg-wrap coords.ranks coord{transform:translateY(39%)}.cg-wrap coords.squares{text-transform:uppercase;text-align:right;flex-flow:column-reverse;width:12.5%;height:100%;bottom:0;left:0}.cg-wrap coords.squares.black{flex-flow:column}.cg-wrap coords.squares.left{text-align:left}.cg-wrap coords.squares coord{padding:6% 4%}.cg-wrap coords.squares.rank2{transform:translate(100%)}.cg-wrap coords.squares.rank3{transform:translate(200%)}.cg-wrap coords.squares.rank4{transform:translate(300%)}.cg-wrap coords.squares.rank5{transform:translate(400%)}.cg-wrap coords.squares.rank6{transform:translate(500%)}.cg-wrap coords.squares.rank7{transform:translate(600%)}.cg-wrap coords.squares.rank8{transform:translate(700%)}cg-board{background-color:#f0d9b5;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4PSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgogICAgIHZpZXdCb3g9IjAgMCA4IDgiIHNoYXBlLXJlbmRlcmluZz0iY3Jpc3BFZGdlcyI+CjxnIGlkPSJhIj4KICA8ZyBpZD0iYiI+CiAgICA8ZyBpZD0iYyI+CiAgICAgIDxnIGlkPSJkIj4KICAgICAgICA8cmVjdCB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBpZD0iZSIgb3BhY2l0eT0iMCIvPgogICAgICAgIDx1c2UgeD0iMSIgeT0iMSIgaHJlZj0iI2UiIHg6aHJlZj0iI2UiLz4KICAgICAgICA8cmVjdCB5PSIxIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBpZD0iZiIgb3BhY2l0eT0iMC4yIi8+CiAgICAgICAgPHVzZSB4PSIxIiB5PSItMSIgaHJlZj0iI2YiIHg6aHJlZj0iI2YiLz4KICAgICAgPC9nPgogICAgICA8dXNlIHg9IjIiIGhyZWY9IiNkIiB4OmhyZWY9IiNkIi8+CiAgICA8L2c+CiAgICA8dXNlIHg9IjQiIGhyZWY9IiNjIiB4OmhyZWY9IiNjIi8+CiAgPC9nPgogIDx1c2UgeT0iMiIgaHJlZj0iI2IiIHg6aHJlZj0iI2IiLz4KPC9nPgo8dXNlIHk9IjQiIGhyZWY9IiNhIiB4OmhyZWY9IiNhIi8+Cjwvc3ZnPg==)}cg-board square.move-dest{background:radial-gradient(#14551e80 22%,#208530 0,#0000004d 0,#0000 0)}cg-board square.premove-dest{background:radial-gradient(#141e5580 22%,#203085 0,#0000004d 0,#0000 0)}cg-board square.oc.move-dest{background:radial-gradient(#0000 0% 80%,#1455004d 80%)}cg-board square.oc.premove-dest{background:radial-gradient(#0000 0% 80%,#141e5533 80%)}cg-board square.move-dest:hover,cg-board square.move-dest.hover{background:#14551e4d}cg-board square.premove-dest:hover,cg-board square.premove-dest.hover{background:#141e5533}cg-board square.last-move{background-color:#9bc70069}cg-board square.selected{background-color:#14551e80}cg-board square.check{background:radial-gradient(red 0%,#e70000 25%,#a9000000 89%,#9e000000 100%)}cg-board square.current-premove{background-color:#141e5580}.orientation-white .ranks :nth-child(odd),.orientation-white .files :nth-child(2n),.orientation-black .ranks :nth-child(2n),.orientation-black .files :nth-child(odd),coords.squares:nth-of-type(odd) :nth-child(2n),coords.squares:nth-of-type(2n) :nth-child(odd){color:#484848cc}.orientation-white .ranks :nth-child(2n),.orientation-white .files :nth-child(odd),.orientation-black .ranks :nth-child(odd),.orientation-black .files :nth-child(2n),coords.squares:nth-of-type(odd) :nth-child(odd),coords.squares:nth-of-type(2n) :nth-child(2n){color:#fffc}.thumb-grid{grid-template-columns:repeat(4,1fr);gap:4px;padding:2px 4px 4px;display:grid}.thumb{border-radius:var(--radius-xs);min-height:0;color:var(--muted);white-space:nowrap;background:0 0;border:1px solid #0000;flex-direction:column;align-items:center;gap:5px;padding:5px 2px 4px;font-size:11px;font-weight:500;line-height:1;display:flex}.thumb:hover{background:var(--surface-3);color:var(--text);border-color:#0000}.thumb:active{transform:none}.thumb[aria-checked=true]{color:var(--text)}.thumb[aria-checked=true] .thumb-board{box-shadow:0 0 0 2px var(--ivory), 0 1px 2px #00000059}.thumb:focus-visible{outline:2px solid var(--ivory);outline-offset:0}.thumb-board{aspect-ratio:1;background-position:0 0;background-size:266.667% 266.667%;border-radius:3px;width:clamp(48px,100%,68px);transition:box-shadow .12s;display:block;position:relative;overflow:hidden;box-shadow:0 1px 2px #00000059}.thumb-piece{pointer-events:none;background-size:cover;width:33.34%;height:33.34%;position:absolute}.thumb-pieces{aspect-ratio:1;background:var(--board-light,#f0d9b5);border-radius:3px;width:clamp(48px,100%,68px);transition:box-shadow .12s;display:block;position:relative;overflow:hidden;box-shadow:0 1px 2px #00000059}.thumb-pieces .thumb-piece{background-position:50%;background-repeat:no-repeat;background-size:contain;width:auto;height:auto;inset:6%}.thumb[aria-checked=true] .thumb-pieces{box-shadow:0 0 0 2px var(--ivory), 0 1px 2px #00000059}.mark-thumb{aspect-ratio:1;background:var(--board-dark,#b58863);border-radius:3px;width:clamp(48px,100%,68px);transition:box-shadow .12s;display:block;position:relative;overflow:hidden;box-shadow:0 1px 2px #00000059;container-type:inline-size}.mark-thumb .thumb-piece{background-image:var(--piece-wn);width:80%;height:80%;top:12%;left:8%}.mark-thumb .cls-marker{display:block;position:absolute;top:5%;left:auto;right:5%;transform:none}.thumb[aria-checked=true] .mark-thumb{box-shadow:0 0 0 2px var(--ivory), 0 1px 2px #00000059}
