@layer tokens,base,components,pages,phone;@layer phone{:root{--mnav-tabbar: 3.5rem;--mnav-safe-bottom: env(safe-area-inset-bottom, 0px);--overlay-bottom: 0px}@media (max-width: 899px){:root{--overlay-bottom: calc(var(--mnav-tabbar) + var(--mnav-safe-bottom))}}@media (min-width: 900px){.mnav-topbar,.mnav-tabs,.mnav-sheet-root{display:none}}@media (max-width: 899px){.app-shell.app-shell--mobile{height:100vh;height:100dvh;grid-template-rows:var(--header-height) minmax(0,1fr);padding-bottom:calc(var(--mnav-tabbar) + var(--mnav-safe-bottom))}.app-shell--mobile .app-sidebar{display:none}.app-shell--mobile .app-main{padding-inline:var(--space-3);padding-bottom:var(--space-3)}.mnav-topbar{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0;height:var(--header-height);padding:0 var(--space-2);background:var(--surface-2);border-bottom:1px solid var(--border)}.mnav-topbar .brand{margin:0;padding:0;min-width:0;overflow:hidden}.mnav-topbar-actions{display:flex;align-items:center;gap:var(--space-1);flex:none}.mnav-topbar .icon-btn,.mnav-topbar .account-trigger{width:2.75rem;height:2.75rem;justify-content:center;padding:0;border-color:transparent;background:transparent}.mnav-topbar .account{flex:none}.mnav-signin{min-height:2.75rem;margin-right:var(--space-1);white-space:nowrap}.mnav-topbar .bell-pop{position:fixed;top:calc(var(--header-height) + 6px);right:var(--space-3);bottom:auto;left:var(--space-3);width:auto;max-height:min(70vh,calc(100dvh - var(--header-height) - var(--mnav-tabbar) - 2rem));z-index:var(--z-dialog)}.mnav-topbar .account-menu{top:calc(100% + 6px);right:0;bottom:auto;left:auto;width:13rem}.mnav-tabs{position:fixed;right:0;bottom:0;left:0;z-index:40;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:calc(var(--mnav-tabbar) + var(--mnav-safe-bottom));padding:0 max(var(--space-1),env(safe-area-inset-right,0px)) var(--mnav-safe-bottom) max(var(--space-1),env(safe-area-inset-left,0px));background:var(--surface-1);border-top:1px solid var(--border);box-shadow:0 -6px 18px -14px #00000059}.mnav-tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:2.75rem;height:var(--mnav-tabbar);padding:0 2px;border:0;background:transparent;color:var(--text-subtle);font:500 .68rem / 1.1 var(--font-sans);text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--duration-fast) ease}.mnav-tab span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mnav-tab:hover{color:var(--text)}.mnav-tab[aria-current=page],.mnav-tab[data-active=true]{color:var(--accent);font-weight:600}.mnav-tab[aria-current=page]:before,.mnav-tab[data-active=true]:before{content:"";position:absolute;top:0;left:50%;width:1.75rem;height:2px;border-radius:0 0 2px 2px;background:var(--accent);transform:translate(-50%)}.mnav-tab:focus-visible{outline:none;box-shadow:inset var(--ring);border-radius:var(--radius-md)}.app-shell--mobile .status-pills{left:var(--space-3);bottom:calc(var(--mnav-tabbar) + var(--mnav-safe-bottom) + var(--space-3))}body:has(.app-shell--mobile) .toast-region{right:var(--space-3);bottom:calc(var(--mnav-tabbar) + var(--mnav-safe-bottom) + var(--space-3))}.mnav-sheet-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-dialog)}.mnav-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000006b;animation:mnav-fade var(--duration) ease-out}.mnav-sheet{position:absolute;top:0;left:0;bottom:0;display:flex;flex-direction:column;width:min(21rem,88vw);background:var(--surface-1);border-right:1px solid var(--border);box-shadow:24px 0 48px -28px #00000073;animation:mnav-slide var(--duration-slow) var(--ease-out)}.mnav-sheet-head{display:flex;flex:none;align-items:center;gap:var(--space-2);height:var(--header-height);padding:0 var(--space-2);border-bottom:1px solid var(--border)}.mnav-sheet-head .icon-btn{width:2.75rem;height:2.75rem;border-color:transparent;background:transparent}.mnav-sheet-title{margin:0;font:600 var(--text-sm) / 1 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle)}.mnav-sheet-body{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-3) var(--space-3) var(--space-5);overflow-y:auto;overscroll-behavior:contain}.mnav-groups{display:flex;flex-direction:column;gap:var(--space-4)}.mnav-sheet .nav-group{display:flex;flex-direction:column;gap:1px}.mnav-sheet .nav-group-label{display:block;margin:0 0 .3rem;padding:0 var(--space-3)}.mnav-sheet .nav-link{min-height:2.75rem;padding:0 var(--space-3);font-size:var(--text-base);white-space:nowrap}.mnav-sheet .nav-link .nav-meta{margin-left:auto}.mnav-account{display:flex;align-items:center;gap:var(--space-3);min-height:3.25rem;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2);color:var(--text);text-decoration:none}.mnav-account-text{display:flex;flex-direction:column;gap:2px;min-width:0}.mnav-account-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm)}.mnav-account-text small{color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.mnav-pref-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:2.75rem;padding:0 var(--space-3);color:var(--text-muted);font-size:var(--text-base)}.mnav-pref-row .btn{min-height:2.5rem}.mnav-sheet-foot{display:flex;flex:none;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-3) calc(var(--space-3) + var(--mnav-safe-bottom));border-top:1px solid var(--border)}.mnav-sheet-foot .btn{min-height:2.75rem}.public-shell .public-top{flex-wrap:wrap;row-gap:var(--space-2);padding:var(--space-2) var(--space-4)}.public-shell .public-top .brand{min-height:2.75rem}.public-shell .public-top-actions{flex-wrap:wrap;align-items:center;justify-content:flex-end;margin-left:auto}.public-shell .public-main{padding-inline:var(--space-3)}.landing .landing-header{flex-wrap:wrap;row-gap:var(--space-2);padding:var(--space-3) var(--space-4)}.landing .landing-header .brand{min-height:2.75rem}.landing .landing-nav{flex-wrap:wrap;justify-content:flex-end;gap:var(--space-1) var(--space-3);margin-left:auto}.landing .landing-nav a:not(.btn){display:inline-flex;align-items:center;min-height:2.75rem}.landing .landing-header .lang-toggle,.public-shell .public-top .lang-toggle{min-height:2.25rem}}@media (max-width: 560px){.landing .landing-nav{display:contents}.landing .landing-header>.brand{order:0}.landing .landing-nav .lang-toggle{order:1;margin-left:auto}.landing .landing-nav .btn{order:2}.landing .landing-header:after{content:"";order:3;flex-basis:100%;height:0}.landing .landing-nav a:not(.btn){order:4;min-height:2.75rem;color:var(--text-muted);font-weight:500}.landing .landing-header{justify-content:flex-start;column-gap:var(--space-4);row-gap:0;padding-bottom:var(--space-1)}}@keyframes mnav-slide{0%{transform:translate(-100%)}}@keyframes mnav-fade{0%{opacity:0}}@media (prefers-reduced-motion: reduce){.mnav-sheet,.mnav-backdrop{animation:none}}}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-vietnamese-400-normal-B7xT_GF5.woff2) format("woff2"),url(/assets/space-grotesk-vietnamese-400-normal-BIWiOVfw.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-latin-ext-400-normal-CfP_5XZW.woff2) format("woff2"),url(/assets/space-grotesk-latin-ext-400-normal-DRPE3kg4.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-latin-400-normal-CJ-V5oYT.woff2) format("woff2"),url(/assets/space-grotesk-latin-400-normal-BnQMeOim.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2) format("woff2"),url(/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2) format("woff2"),url(/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2) format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-vietnamese-600-normal-DUi7WF5p.woff2) format("woff2"),url(/assets/space-grotesk-vietnamese-600-normal-D6zpsUhD.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-ext-600-normal-DxxdqCpr.woff2) format("woff2"),url(/assets/space-grotesk-latin-ext-600-normal-VcznFIpX.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2) format("woff2"),url(/assets/space-grotesk-latin-600-normal-BflQw4A9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-vietnamese-700-normal-DMty7AZE.woff2) format("woff2"),url(/assets/space-grotesk-vietnamese-700-normal-Duxec5Rn.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2) format("woff2"),url(/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2) format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Caslon Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-caslon-display-latin-ext-400-normal-CUYASYSA.woff2) format("woff2"),url(/assets/libre-caslon-display-latin-ext-400-normal-xXeWa_lF.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Libre Caslon Display;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/libre-caslon-display-latin-400-normal-n_DgBRfq.woff2) format("woff2"),url(/assets/libre-caslon-display-latin-400-normal-BbfEE5V2.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-cyrillic-ext-400-normal-txZ9Fk_1.woff2) format("woff2"),url(/assets/fira-code-cyrillic-ext-400-normal-Buh61xzB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-cyrillic-400-normal-UC0NFL4U.woff2) format("woff2"),url(/assets/fira-code-cyrillic-400-normal-dc1q3VD7.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-greek-ext-400-normal-DR7mBgIM.woff2) format("woff2"),url(/assets/fira-code-greek-ext-400-normal-DSPUheWg.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-greek-400-normal-B2Gh_Y8s.woff2) format("woff2"),url(/assets/fira-code-greek-400-normal-DobhaxvF.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/fira-code-symbols2-400-normal-_QEZCEwe.woff) format("woff");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-latin-ext-400-normal-KSMg0QLl.woff2) format("woff2"),url(/assets/fira-code-latin-ext-400-normal-DG73JjOf.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-latin-400-normal-DGosTW8U.woff2) format("woff2"),url(/assets/fira-code-latin-400-normal-C-QZfXAs.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-code-cyrillic-ext-500-normal-CYRspHgm.woff2) format("woff2"),url(/assets/fira-code-cyrillic-ext-500-normal-CwtLmSFD.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-code-cyrillic-500-normal-CX35h3Mg.woff2) format("woff2"),url(/assets/fira-code-cyrillic-500-normal-Bu7VCL72.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-code-greek-ext-500-normal-BO3iq16n.woff2) format("woff2"),url(/assets/fira-code-greek-ext-500-normal-CMiNLXER.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-code-greek-500-normal-CVO0IRNt.woff2) format("woff2"),url(/assets/fira-code-greek-500-normal-DEXIWiey.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/fira-code-symbols2-500-normal-DwsgbIjQ.woff) format("woff");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-code-latin-ext-500-normal-Crd9e_oI.woff2) format("woff2"),url(/assets/fira-code-latin-ext-500-normal-CaANqXjI.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-code-latin-500-normal-B6gioGu8.woff2) format("woff2"),url(/assets/fira-code-latin-500-normal-aMLC2AMm.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-cyrillic-ext-600-normal-B9wE0zmr.woff2) format("woff2"),url(/assets/fira-code-cyrillic-ext-600-normal-DldcyWhZ.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-cyrillic-600-normal-CPRdbepc.woff2) format("woff2"),url(/assets/fira-code-cyrillic-600-normal-BD56RyRT.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-greek-ext-600-normal-DtBpFRLc.woff2) format("woff2"),url(/assets/fira-code-greek-ext-600-normal-C-cQDoOk.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-greek-600-normal-Dxp52_By.woff2) format("woff2"),url(/assets/fira-code-greek-600-normal-D_h3X2X5.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,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) format("woff2"),url(/assets/fira-code-symbols2-600-normal-Dvq6IQE5.woff) format("woff");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-latin-ext-600-normal-Cb7jxoAi.woff2) format("woff2"),url(/assets/fira-code-latin-ext-600-normal-0PFQL1eg.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-latin-600-normal-CvYZpPHg.woff2) format("woff2"),url(/assets/fira-code-latin-600-normal-BmSSHshu.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-latin-ext-400-normal-KSMg0QLl.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-code-latin-400-normal-DGosTW8U.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-code-latin-ext-500-normal-Crd9e_oI.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-code-latin-500-normal-B6gioGu8.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-latin-ext-600-normal-Cb7jxoAi.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-code-latin-600-normal-CvYZpPHg.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Code;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-code-latin-ext-700-normal-HGNx6xyT.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Fira Code;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-code-latin-700-normal-aa0XcSUK.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer tokens{:root{color-scheme:dark;--bg-base: #0b0e13;--bg-gradient: none;--surface-1: #131821;--surface-2: #1a212c;--surface-3: #222b38;--surface-hover: #2a3542;--border: #232c38;--border-strong: #35414f;--text: #e8edf4;--text-muted: #9aa7b8;--text-subtle: #69768a;--accent: oklch(.78 .06 262);--accent-strong: oklch(.86 .05 262);--accent-soft: oklch(.78 .06 262 / .1);--accent-contrast: oklch(.2 .03 262);--success: oklch(.74 .11 150);--success-soft: oklch(.74 .11 150 / .13);--info: #60a5fa;--info-soft: rgba(96, 165, 250, .14);--warning: #fbbf24;--warning-soft: rgba(251, 191, 36, .14);--reward: oklch(.78 .09 80);--reward-soft: oklch(.78 .09 80 / .14);--orange: #fb923c;--orange-soft: rgba(251, 146, 60, .14);--danger: #f87171;--danger-soft: rgba(248, 113, 113, .14);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 2px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .4);--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--radius-pill: 999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--text-xs: .72rem;--text-sm: .82rem;--text-base: .94rem;--text-lg: 1.05rem;--text-xl: 1.35rem;--text-display: clamp(1.9rem, 1.4rem + 1.4vw, 2.6rem);--font-sans: "Space Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Libre Caslon Display", Georgia, "Times New Roman", serif;--font-mono: "Fira Code", ui-monospace, "SF Mono", monospace;--panel-width: 21rem;--sidebar-width: 13.5rem;--header-height: 0px}:root[data-theme=light]{color-scheme:light;--bg-base: oklch(.975 .008 85);--bg-gradient: none;--surface-1: oklch(.99 .005 85);--surface-2: oklch(.96 .008 85);--surface-3: oklch(.935 .01 85);--surface-hover: oklch(.92 .012 85);--border: oklch(.9 .012 85);--border-strong: oklch(.82 .015 80);--text: oklch(.26 .03 260);--text-muted: oklch(.45 .025 260);--text-subtle: oklch(.58 .02 260);--accent: oklch(.36 .1 262);--accent-strong: oklch(.3 .1 262);--accent-soft: oklch(.36 .1 262 / .1);--accent-contrast: #ffffff;--success: oklch(.55 .13 150);--success-soft: oklch(.55 .13 150 / .12);--info: oklch(.5 .1 240);--info-soft: oklch(.5 .1 240 / .1);--warning: oklch(.62 .13 75);--warning-soft: oklch(.62 .13 75 / .14);--reward: oklch(.6 .1 75);--reward-soft: oklch(.6 .1 75 / .13);--orange: oklch(.6 .15 50);--orange-soft: oklch(.6 .15 50 / .12);--danger: oklch(.55 .17 25);--danger-soft: oklch(.55 .17 25 / .12);--shadow-sm: 0 1px 2px oklch(.3 .03 260 / .06);--shadow-md: 0 2px 8px oklch(.3 .03 260 / .07);--shadow-lg: 0 20px 44px -30px oklch(.3 .04 260 / .45)}:root{--quality-mukemmel: var(--success);--quality-mukemmel-soft: var(--success-soft);--quality-iyi: var(--info);--quality-iyi-soft: var(--info-soft);--quality-orta: var(--warning);--quality-orta-soft: var(--warning-soft);--quality-zayif: var(--orange);--quality-zayif-soft: var(--orange-soft);--quality-hata: var(--danger);--quality-hata-soft: var(--danger-soft)}@media (max-width: 900px){:root{--header-height: 3.5rem;--text-xs: .78rem;--text-sm: .86rem;--text-lg: 1.02rem;--text-xl: 1.2rem;--text-display: clamp(1.35rem, 1.05rem + 1.6vw, 1.95rem)}}}@layer base{*,*:before,*:after{box-sizing:border-box}html,body{min-height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--bg-base);background-image:var(--bg-gradient);background-attachment:fixed;color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,p,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:0;left:0;z-index:100;padding:.6rem 1rem;background:var(--surface-1);color:var(--text);border:1px solid var(--border-strong);border-radius:0 0 var(--radius-md) 0;font:600 var(--text-sm) / 1 var(--font-sans);text-decoration:none;transform:translateY(-120%);transition:transform var(--duration-fast) ease}.skip-link:focus-visible{transform:translateY(0);outline:none;box-shadow:var(--ring)}.app-main:focus,.public-main:focus{outline:none}}@layer components{.app-shell{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.app-sidebar{position:sticky;top:0;z-index:20;height:100vh;height:100dvh;display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5) var(--space-3) var(--space-4);background:var(--surface-2);border-right:1px solid var(--border)}.brand{padding:0 var(--space-3);font:700 .78rem/1 var(--font-mono);letter-spacing:.22em;color:var(--text);white-space:nowrap}.app-nav{display:flex;flex-direction:column;gap:2px}.nav-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:.6rem var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-base);font-weight:500;transition:background .15s ease,color .15s ease}.nav-link:hover{background:var(--surface-hover);color:var(--text)}.nav-link[aria-current=page]{background:color-mix(in oklab,var(--accent) 12%,transparent);color:var(--accent)}.nav-meta{font:700 .62rem/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-subtle)}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border)}.sidebar-tools{display:flex;gap:var(--space-2);padding:0 var(--space-2)}.sidebar-auth{display:flex;flex-direction:column;gap:var(--space-2)}.user-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:0 var(--space-2)}.user-initial{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--accent-soft);color:var(--accent);font:700 .8rem/1 var(--font-mono)}.user-meta{display:flex;flex-direction:column;min-width:0}.user-meta strong{font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-meta small{font:400 .7rem/1.3 var(--font-mono);color:var(--text-subtle)}.app-main{min-width:0;width:100%;max-width:84rem;margin:0 auto;padding:var(--space-4) var(--space-5)}@media (max-width: 899px){.app-shell{grid-template-columns:minmax(0,1fr)}.app-sidebar{height:var(--header-height);flex-direction:row;align-items:center;gap:var(--space-3);padding:0 var(--space-3);border-right:0;border-bottom:1px solid var(--border)}.app-nav{flex-direction:row;overflow-x:auto}.nav-link{padding:var(--space-2) var(--space-3);white-space:nowrap}.sidebar-footer{margin-top:0;margin-left:auto;flex-direction:row;align-items:center;padding-top:0;border-top:0}.sidebar-auth{flex-direction:row}.sidebar-auth .btn--block{width:auto}.user-meta{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:600;background:var(--surface-2);color:var(--text);transition:background .15s ease,border-color .15s ease,transform .1s ease}.btn:hover:not(:disabled){background:var(--surface-hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--accent);color:var(--accent-contrast)}.btn--primary:hover:not(:disabled){background:var(--accent-strong)}.btn--outline{background:transparent;border-color:var(--border-strong);color:var(--text-muted)}.btn--outline:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.btn--block{width:100%}.icon-btn{display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text-muted);font-size:.95rem;transition:background .15s ease,color .15s ease}.icon-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.select{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text);font-size:var(--text-sm);cursor:pointer}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.section-title{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-subtle)}.page-title{font-family:var(--font-display);font-size:var(--text-display);font-weight:400;line-height:1.1;letter-spacing:-.01em}.muted{color:var(--text-muted);font-size:var(--text-sm)}.banner{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-2);font-size:var(--text-sm)}.banner--warning{border-color:color-mix(in srgb,var(--warning) 45%,transparent);background:var(--warning-soft);color:var(--warning)}.banner--danger{border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:var(--danger-soft);color:var(--danger)}.banner--success{border-color:color-mix(in srgb,var(--success) 45%,transparent);background:var(--success-soft);color:var(--success)}.banner--info{border-color:color-mix(in srgb,var(--info) 40%,transparent);background:var(--info-soft);color:var(--info)}.banner p{flex:1;min-width:12rem}.spinner{width:.9rem;height:.9rem;border:2px solid color-mix(in srgb,var(--text) 25%,transparent);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) var(--panel-width);gap:var(--space-5);align-items:start}.board-stage{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;width:100%;max-width:min(100%,46rem);margin-inline:auto;align-items:center}.board-frame{position:relative;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow-md);transition:box-shadow .25s ease}.board-frame--thinking{box-shadow:var(--shadow-lg),0 0 0 2px var(--accent)}.board-frame--preview:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:var(--radius-md);box-shadow:inset 0 0 0 2px var(--warning)}.player-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border);background:transparent}.player-card--active .player-avatar{background:var(--text);color:var(--bg-base)}.player-avatar{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--surface-3);color:var(--text-muted);font:400 1rem/1 var(--font-display);flex-shrink:0}.player-info{flex:1;min-width:0}.player-name{font-weight:600;font-size:var(--text-base);display:flex;align-items:baseline;gap:var(--space-2)}.player-name .tag{padding:0;border:0;background:none;font:400 .74rem/1 var(--font-mono);color:var(--text-subtle)}.player-captures{display:flex;align-items:center;gap:.1rem;min-height:1.15rem;font-size:1rem;line-height:1;color:var(--text-subtle);flex-wrap:wrap}.material-lead{font-size:var(--text-xs);font-weight:700;color:var(--success);margin-left:var(--space-1)}.player-clock{font-family:var(--font-mono);font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-muted)}.player-clock--running{color:var(--accent)}.player-clock--low{color:var(--danger)}.board-controls{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.board-controls .spacer{flex:1}.side-panel{position:sticky;top:calc(var(--header-height) + var(--space-5));display:flex;flex-direction:column;min-height:min(34rem,calc(100vh - var(--header-height) - var(--space-6)));min-height:min(34rem,calc(100dvh - var(--header-height) - var(--space-6)));max-height:calc(100vh - var(--header-height) - var(--space-6));max-height:calc(100dvh - var(--header-height) - var(--space-6));overflow:hidden}.panel-status{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4);border-bottom:1px solid var(--border);font:700 .72rem/1.3 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.panel-status .tag{letter-spacing:normal;text-transform:none}.panel-status--over{color:var(--warning)}.panel-status--error{color:var(--danger)}.tabs{display:flex;gap:var(--space-1);padding:var(--space-2) var(--space-2) 0;border-bottom:1px solid var(--border)}.tab{flex:1;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:transparent;color:var(--text-muted);font-size:var(--text-sm);font-weight:600;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.tab-panel{flex:1;min-height:0;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.panel-footer{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);display:flex;gap:var(--space-2)}.move-list{display:flex;flex-direction:column;font-family:var(--font-mono);font-size:var(--text-sm)}.move-row{display:grid;grid-template-columns:2rem 1fr 1fr;align-items:center;gap:var(--space-1);border-radius:var(--radius-sm)}.move-row:nth-child(odd){background:var(--surface-2)}.move-index{color:var(--text-subtle);font-size:var(--text-xs);text-align:right;padding-right:var(--space-2)}.move-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:none;border-radius:var(--radius-sm);background:transparent;font-family:inherit;font-size:inherit;text-align:left;transition:background .12s ease}.move-btn:hover{background:var(--surface-hover)}.move-btn[aria-current=true]{background:var(--accent-soft);color:var(--accent);font-weight:700}.move-btn--empty{visibility:hidden}.quality-dot{width:.45rem;height:.45rem;border-radius:50%;flex-shrink:0;background:var(--dot-color, var(--text-subtle))}.quality-mukemmel{--dot-color: var(--quality-mukemmel)}.quality-iyi{--dot-color: var(--quality-iyi)}.quality-orta{--dot-color: var(--quality-orta)}.quality-zayif{--dot-color: var(--quality-zayif)}.quality-hata{--dot-color: var(--quality-hata)}.empty-hint{color:var(--text-subtle);font-size:var(--text-sm);text-align:center;padding:var(--space-5) var(--space-3)}.accuracy-grid{display:grid;gap:var(--space-3)}.accuracy-row{display:grid;gap:var(--space-1)}.accuracy-head{display:flex;justify-content:space-between;align-items:baseline;font-size:var(--text-sm)}.accuracy-value{font-family:var(--font-mono);font-weight:700;font-variant-numeric:tabular-nums}.meter{height:.4rem;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.meter-fill{height:100%;border-radius:inherit;background:var(--accent);transition:width .3s ease}.meter-fill--ai{background:var(--text-muted)}.insight{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-2);font-size:var(--text-sm);line-height:1.5}.insight-label{display:block;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-subtle);margin-bottom:var(--space-1)}.insight--player{border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);cursor:pointer;font-size:var(--text-sm);font-weight:600}.toggle small{display:block;font-weight:400;color:var(--text-subtle);font-size:var(--text-xs)}.move-tree{display:flex;flex-direction:column;gap:var(--space-1)}.tree-children{display:flex;flex-direction:column;gap:var(--space-1);margin:var(--space-1) 0 var(--space-1) var(--space-3);padding-left:var(--space-3);border-left:1.5px solid var(--border-strong)}.tree-node{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);text-align:left;transition:background .15s ease,border-color .15s ease}.tree-node:hover{background:var(--surface-hover)}.tree-node--on-path{border-color:var(--border-strong)}.tree-node--selected{border-color:var(--accent);background:var(--accent-soft)}.tree-san{font-family:var(--font-mono);font-weight:700;font-size:var(--text-sm)}.tree-score{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle);font-variant-numeric:tabular-nums}.tree-quality{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:1px 6px;border-radius:var(--radius-pill);color:var(--dot-color);background:color-mix(in srgb,var(--dot-color) 18%,transparent)}.page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.auth-page{display:grid;place-items:center;padding:var(--space-6) var(--space-4)}.auth-card{width:100%;max-width:23rem;padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.field{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-sm);font-weight:600}.input{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);font-weight:400;transition:border-color .15s ease}.input:focus{border-color:var(--accent)}.form-error{color:var(--danger);font-size:var(--text-sm)}.form-switch{text-align:center;font-size:var(--text-sm);color:var(--text-muted)}.form-switch a{color:var(--accent);font-weight:600}.history-page{max-width:48rem;margin:0 auto}.history-list{display:flex;flex-direction:column;gap:var(--space-2)}.history-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);transition:border-color .15s ease,background .15s ease}.history-item:hover{border-color:var(--border-strong);background:var(--surface-2)}.history-date{font-size:var(--text-sm);color:var(--text-muted)}.history-meta{display:flex;flex-direction:column;gap:2px}.history-result{font-weight:650;font-size:var(--text-sm)}.tag{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;background:var(--surface-3);color:var(--text-muted)}.tag--accent{background:var(--accent-soft);color:var(--accent)}.tag--win{background:var(--success-soft);color:var(--success)}.tag--loss{background:var(--danger-soft);color:var(--danger)}.analysis-text{font-size:var(--text-sm);line-height:1.6;white-space:pre-wrap;color:var(--text-muted)}.puzzle-progress{font-size:var(--text-xs);color:var(--text-subtle);text-align:center}@media (max-width: 1024px){.game-layout{grid-template-columns:minmax(0,1fr)}.side-panel{position:static;max-height:none}.tab-panel{max-height:26rem}}@media (max-width: 720px){.app-header{gap:var(--space-2);padding:0 var(--space-3)}.brand{font-size:var(--text-base)}.brand span:not(.brand-mark){display:none}.header-actions .btn{padding:var(--space-2) var(--space-3)}.app-nav{gap:0}.nav-link{padding:var(--space-2)}.app-main{padding:var(--space-3)}.user-chip{display:none}}.learn-page{max-width:58rem;margin:0 auto}.progress-summary{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1)}.group-list{display:flex;flex-direction:column;gap:var(--space-3)}.group-card{overflow:hidden}.group-header{display:grid;grid-template-columns:2.6rem 1fr auto;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-4);border:none;background:transparent;text-align:left}.group-header:hover{background:var(--surface-2)}.group-icon{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:var(--radius-md);background:var(--surface-3);font-size:1.2rem}.group-body{display:flex;flex-direction:column;gap:3px;min-width:0}.group-title{display:flex;align-items:center;gap:var(--space-2);font-weight:650;flex-wrap:wrap}.group-description{color:var(--text-muted);font-size:var(--text-sm)}.group-chevron{color:var(--text-subtle)}.level-baslangic{background:var(--success-soft);color:var(--success)}.level-orta{background:var(--warning-soft);color:var(--warning)}.level-ileri{background:var(--danger-soft);color:var(--danger)}.lesson-grid{display:grid;gap:var(--space-1);padding:0 var(--space-4) var(--space-4)}.lesson-card{display:grid;grid-template-columns:1.5rem 1fr auto;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);transition:border-color .15s ease,background .15s ease}.lesson-card:hover{border-color:var(--border-strong);background:var(--surface-hover)}.lesson-check{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;border:1.5px solid var(--border-strong);font-size:.75rem;color:transparent}.lesson-check--done{border-color:var(--success);background:var(--success-soft);color:var(--success)}.lesson-body{display:flex;flex-direction:column;gap:2px;min-width:0}.lesson-title{font-weight:650;font-size:var(--text-sm)}.lesson-summary{color:var(--text-muted);font-size:var(--text-xs)}.lesson-progress{display:flex;gap:4px;padding:0 var(--space-4) var(--space-3)}.lesson-dot{flex:1;height:3px;border-radius:var(--radius-pill);background:var(--surface-3)}.lesson-dot--active{background:var(--accent)}.lesson-text{font-size:var(--text-base);line-height:1.65}.panel-status .spacer{flex:1}.lobby{max-width:40rem;margin:0 auto}.rating-badge{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);font-size:var(--text-lg);font-family:var(--font-mono)}.lobby-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}.time-controls{display:flex;gap:var(--space-2);flex-wrap:wrap}.time-chip{flex:1;min-width:7rem;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);font-size:var(--text-sm);font-weight:600;color:var(--text-muted)}.time-chip--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.lobby-actions{display:flex;gap:var(--space-2)}.lobby-actions .btn{flex:1}.queue-state{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);font-size:var(--text-sm)}.queue-state .btn{margin-left:auto}.online-moves{padding:var(--space-3) var(--space-4);max-height:12rem;overflow-y:auto;border-bottom:1px solid var(--border)}.chat-panel{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);flex:1;min-height:0}.chat-messages{flex:1;min-height:6rem;max-height:14rem;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-1)}.chat-message{font-size:var(--text-sm);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--surface-2);word-break:break-word}.chat-message--mine{background:var(--accent-soft)}.chat-author{font-weight:700;font-size:var(--text-xs);color:var(--text-subtle);margin-right:var(--space-2)}.chat-form{display:flex;gap:var(--space-2)}.chat-form .input{flex:1;min-width:0}.board-frame--interactive [data-square]{cursor:pointer}.board-frame--interactive [data-piece]{cursor:grab}.board-frame--interactive [data-piece]:active{cursor:grabbing}.board-shell{position:relative;width:100%}.board-measure{width:100%;display:flex;justify-content:center}.board-stage>*,.board-stage .player-card,.board-stage .board-controls,.board-stage .banner{width:var(--board-size, 100%);max-width:100%}.board-stage:has(.board-with-eval)>*,.board-stage:has(.board-with-eval) .player-card,.board-stage:has(.board-with-eval) .board-controls,.board-stage:has(.board-with-eval) .banner{width:calc(var(--board-size) + 2rem)}.fullscreen-btn{position:absolute;top:var(--space-2);right:var(--space-2);display:grid;place-items:center;width:2rem;height:2rem;border:none;border-radius:var(--radius-sm);background:#0f172a73;color:#fff;font-size:.9rem;opacity:0;transition:opacity .15s ease,background .15s ease}.board-shell:hover .fullscreen-btn,.fullscreen-btn:focus-visible{opacity:1}.fullscreen-btn:hover{background:#0f172ab3}.board-shell--fullscreen{display:grid;place-items:center;width:100vw;height:100vh;height:100dvh;background:var(--bg-base);padding:var(--space-4)}.board-shell--fullscreen .fullscreen-btn{opacity:1;width:2.5rem;height:2.5rem}.board-frame [data-piece] svg{transition:filter .15s ease,transform .15s ease}.pieces-relief [data-piece] svg{filter:drop-shadow(0 3px 2px rgba(15,23,42,.45)) drop-shadow(0 1px 0 rgba(255,255,255,.25))}.pieces-bold [data-piece] svg{transform:scale(1.06);filter:drop-shadow(0 4px 3px rgba(15,23,42,.5)) contrast(1.15)}.risk-legend{display:flex;gap:var(--space-2)}.risk-chip{flex:1;text-align:center;padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600}.risk-chip--safe{background:var(--success-soft);color:var(--success)}.risk-chip--careful{background:var(--warning-soft);color:var(--warning)}.risk-chip--risky{background:var(--danger-soft);color:var(--danger)}.coach-list{display:flex;flex-direction:column;gap:var(--space-2)}.coach-option{border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius-md);background:var(--surface-2);padding:var(--space-2) var(--space-3)}.coach-option--safe{border-left-color:var(--success)}.coach-option--careful{border-left-color:var(--warning)}.coach-option--risky{border-left-color:var(--danger)}.coach-head{display:flex;align-items:baseline;gap:var(--space-2)}.coach-san{font-family:var(--font-mono);font-weight:700;font-size:var(--text-sm)}.coach-delta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.coach-risk{margin-left:auto;font-size:var(--text-xs);font-weight:600;color:var(--text-subtle)}.coach-replies{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:2px;font-size:var(--text-xs);color:var(--text-muted)}.coach-replies li{display:flex;align-items:center;gap:4px}.coach-reply-san{font-family:var(--font-mono)}.coach-capture{color:var(--danger)}.settings-grid{display:flex;flex-direction:column;gap:var(--space-2)}@media (max-height: 820px){.player-card{padding:var(--space-2) var(--space-3)}.player-avatar{width:2rem;height:2rem;font-size:1rem}}.eval-bar-wrap{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.eval-bar{position:relative;width:1.5rem;height:var(--board-size);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:#111827}.eval-bar-fill{position:absolute;left:0;bottom:0;width:100%;background:#f8fafc;transition:height .35s ease}.eval-bar-label{position:absolute;left:0;right:0;text-align:center;font-family:var(--font-mono);font-size:.5rem;font-weight:700;letter-spacing:-.02em;color:#f8fafc}.eval-bar-label--bottom{bottom:3px}.eval-bar-label--top{top:3px}.eval-bar-label--on-light{color:#0f172a}.eval-bar-caption{writing-mode:vertical-rl;font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);display:none}.board-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.coach-badge{position:absolute;display:grid;place-items:center;width:1.35rem;height:1.35rem;margin:.25rem;border-radius:50%;font-size:.7rem;font-weight:700;color:#fff;box-shadow:0 1px 3px #0006}.coach-badge--safe{background:#059669}.coach-badge--careful{background:#d97706}.coach-badge--risky{background:#dc2626}.coach-option{display:grid;grid-template-columns:1.5rem 1fr;gap:var(--space-2);width:100%;text-align:left;border:1px solid var(--border);border-left-width:3px;border-radius:var(--radius-md);background:var(--surface-2);padding:var(--space-2);transition:background .12s ease,border-color .12s ease}.coach-option:hover,.coach-option--active{background:var(--surface-hover);border-color:var(--border-strong)}.coach-number{display:grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;color:#fff;font-size:var(--text-xs);font-weight:700}.coach-number--safe{background:#059669}.coach-number--careful{background:#d97706}.coach-number--risky{background:#dc2626}.coach-body{display:flex;flex-direction:column;gap:2px;min-width:0}.coach-replies-label{color:var(--text-subtle)}.coach-reply{display:inline-flex;align-items:center;gap:3px}svg.board-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.board-arrow{opacity:.9;stroke-dasharray:1;stroke-dashoffset:1;animation:draw-arrow .22s ease-out forwards}@keyframes draw-arrow{to{stroke-dashoffset:0}}.coach-line{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;font-family:var(--font-mono);font-size:var(--text-xs)}.coach-line-move--yours{color:var(--info);font-weight:700}.coach-line-move--theirs{color:var(--danger);font-weight:700}.coach-line-arrow{color:var(--text-subtle)}.coach-alt{display:flex;gap:var(--space-1);align-items:center;font-size:var(--text-xs);color:var(--text-muted)}.board-with-eval{display:flex;align-items:stretch;gap:var(--space-2);width:100%}.board-with-eval .board-shell{width:var(--board-size)}.promotion{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--accent);border-radius:var(--radius-md);background:var(--surface-1)}.promotion-title{font-size:var(--text-sm);font-weight:600}.promotion-choices{display:flex;gap:var(--space-2)}.promotion-choice{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);font-size:var(--text-xs)}.promotion-choice:hover{border-color:var(--accent);background:var(--surface-hover)}.promotion-symbol{font-size:1.6rem;line-height:1}.export-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.export-actions .btn{flex:1;min-width:8rem}.puzzle-footer{flex-direction:column;gap:var(--space-2);align-items:stretch}.puzzle-meta{display:flex;flex-direction:column;gap:var(--space-1)}.puzzle-steps{display:flex;align-items:center;gap:var(--space-2)}.puzzle-step{width:1.6rem;height:.35rem;border-radius:999px;background:var(--border-strong)}.puzzle-step--done{background:var(--success, var(--accent))}.lesson-link{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-md)}.filter-row{display:flex;gap:var(--space-2)}.filter-row .time-chip{min-width:0;padding:var(--space-2)}.theme-picker{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);max-height:16rem;overflow-y:auto}.theme-picker summary{cursor:pointer;font-size:var(--text-sm);font-weight:600;color:var(--text-muted)}.theme-group{margin-top:var(--space-3)}.chip-row{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-1)}.chip{padding:.25rem .6rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);font-size:var(--text-xs);color:var(--text-muted);cursor:pointer}.chip:hover{color:var(--text)}.chip--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.btn--ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn--ghost:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.training-plan{display:flex;flex-direction:column;gap:var(--space-2)}.training-topic{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-md);background:var(--surface-2)}.training-topic-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.training-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.training-actions .btn{flex:1;min-width:8rem}.review-cta{margin:var(--space-3) var(--space-4) 0;width:auto}.review-progress .meter{margin-top:var(--space-2)}.review-scores{display:flex;flex-direction:column;gap:var(--space-2)}.review-score{padding:var(--space-3);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-md);background:var(--surface-2)}.review-score--ai{border-left-color:var(--text-muted)}.review-score-head{display:flex;align-items:baseline;justify-content:space-between;font-weight:600}.review-score-head strong{font-size:var(--text-lg, 1.1rem)}.review-quality-row{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.quality-chip{padding:.15rem .5rem;border-radius:999px;font-size:var(--text-xs);background:var(--surface-3, var(--surface-2));border:1px solid var(--border);color:var(--text-muted)}.quality-chip--mukemmel{color:var(--success);border-color:var(--success)}.quality-chip--iyi{color:var(--accent);border-color:var(--accent)}.quality-chip--zayif{color:#f59e0b;border-color:#f59e0b}.quality-chip--hata{color:#ef4444;border-color:#ef4444}.eval-graph{width:100%;height:4.5rem;border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;display:block}.eval-graph-white{fill:var(--surface-2)}.eval-graph-black{fill:var(--surface-3, rgba(15, 23, 42, .35))}.eval-graph-area{fill:#3b82f640}.eval-graph-line{stroke:var(--accent);stroke-width:1.5;vector-effect:non-scaling-stroke}.eval-graph-cursor{stroke:var(--text-muted);stroke-width:1;vector-effect:non-scaling-stroke}.eval-graph-dot{fill:#f59e0b}.eval-graph-dot--hata{fill:#ef4444}.key-moment{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.key-moment--player{border-left:3px solid var(--accent)}.key-moment-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.link-btn{background:none;border:none;padding:0;font-weight:600;color:var(--accent);cursor:pointer}.link-btn:hover{text-decoration:underline}.eval-graph-mid{stroke:var(--border-strong);stroke-width:1;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.coach-chat{display:flex;flex-direction:column;gap:var(--space-2);min-height:0}.coach-thread{display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;max-height:22rem;padding-right:var(--space-1)}.coach-msg{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.coach-msg--you{align-self:flex-end;max-width:85%;background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent)}.coach-msg--coach{align-self:stretch;background:var(--surface-2);border:1px solid var(--border);color:var(--text)}.coach-form{display:flex;gap:var(--space-2)}.coach-form input{flex:1;min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text)}.coach-form input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.opening-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.opening-row{width:100%;display:grid;grid-template-columns:3.5rem 1fr auto;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);background:none;color:var(--text);text-align:left;cursor:pointer}.opening-row:hover{background:var(--surface-2);border-color:var(--border)}.opening-move{font-weight:600;font-variant-numeric:tabular-nums}.opening-name{font-size:var(--text-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repertoire-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.repertoire-row .muted{font-size:var(--text-xs)}.opening-tag{margin:0;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--text-muted);border-bottom:1px solid var(--border)}.engine-lines{list-style:none;margin:0 0 var(--space-2);padding:0;display:flex;flex-direction:column;gap:2px}.engine-line{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);background:none;color:var(--text);text-align:left;cursor:pointer}.engine-line:hover{background:var(--surface-2);border-color:var(--border)}.engine-line-moves{flex:1;min-width:0;font-size:var(--text-sm);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text);font-family:inherit;font-size:var(--text-sm);resize:vertical}.text-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.duel-hud{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3)}.duel-clock{font-size:1.4rem;font-weight:700;font-variant-numeric:tabular-nums}.duel-clock--low{color:#ef4444}.duel-feedback{margin-left:auto;font-weight:600}.duel-feedback--correct{color:var(--success)}.duel-feedback--wrong{color:#ef4444}.duel-scores{display:flex;flex-direction:column;gap:var(--space-2)}.duel-score{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.duel-score--me{border-left:3px solid var(--accent)}.duel-score-head{display:flex;align-items:baseline;justify-content:space-between;font-weight:600}.duel-score-head strong{font-size:1.5rem}.duel-strikes{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-2)}.duel-strike{width:.75rem;height:.75rem;border-radius:50%;border:1px solid var(--border-strong)}.duel-strike--used{background:#ef4444;border-color:#ef4444}.rush-hud-score{display:none}.streak-cards{display:flex;gap:var(--space-2)}.streak-card{flex:1;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.streak-card strong{font-size:1.5rem;font-variant-numeric:tabular-nums}.tabs a.tab{text-align:center;text-decoration:none}.bot-picker{position:relative}.bot-chip{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text);cursor:pointer}.bot-chip-text{display:flex;align-items:baseline;gap:var(--space-1);line-height:1}.bot-chip-text small,.bot-option-text small{color:var(--text-muted);font-size:var(--text-xs)}.bot-avatar{font-size:1.3rem}.bot-list{position:absolute;right:0;bottom:calc(100% + var(--space-2));z-index:20;width:min(22rem,80vw);max-height:22rem;overflow-y:auto;list-style:none;margin:0;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);box-shadow:0 12px 32px #00000059}.bot-option{width:100%;display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);background:none;color:var(--text);text-align:left;cursor:pointer}.bot-option:hover{background:var(--surface-2)}.bot-option--active{border-color:var(--accent);background:var(--accent-soft)}.bot-option-text{display:flex;flex-direction:column;gap:2px}.appearance-menu{position:relative}.appearance-popover{position:absolute;left:0;bottom:calc(100% + var(--space-2));z-index:30;width:min(20rem,90vw);padding:var(--space-4);box-shadow:0 12px 32px #00000059}.nav-lock{margin-left:.35rem;font-size:.7em;opacity:.7}.coach-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.coach-figure{display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:50%;font-size:2.4rem;background:var(--accent-soft);color:var(--accent);border:2px solid var(--accent)}.coach-speech{position:relative;display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2)}.coach-speech:before{content:"";position:absolute;left:-7px;top:50%;width:12px;height:12px;transform:translateY(-50%) rotate(45deg);background:var(--surface-2);border-left:1px solid var(--border);border-bottom:1px solid var(--border)}.coach-speech strong{font-size:1.15rem}.coach-action{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.progress-ring{display:grid;place-items:center;width:4rem;height:4rem;border-radius:50%;font-weight:700;font-size:var(--text-sm);color:var(--text);background:conic-gradient(var(--accent) var(--percent),var(--surface-3) 0)}.progress-ring span{display:grid;place-items:center;width:3rem;height:3rem;border-radius:50%;background:var(--surface-1)}.path{display:flex;flex-direction:column;gap:var(--space-5)}.path-chapter{display:flex;flex-direction:column;gap:var(--space-3)}.chapter-banner{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1)}.chapter-icon{font-size:1.6rem}.chapter-text{display:flex;flex-direction:column;flex:1;min-width:0}.chapter-text .muted{font-size:var(--text-sm)}.chapter-meta{display:flex;gap:var(--space-2);flex-shrink:0}.path-nodes{list-style:none;margin:0;padding:0 0 0 var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.path-item{position:relative;display:flex;align-items:center;gap:var(--space-3)}.path-item:not(:last-child):before{content:"";position:absolute;left:1.65rem;top:3.4rem;bottom:calc(-1 * var(--space-3));width:2px;background:var(--border-strong)}.path-item--done:not(:last-child):before{background:var(--accent)}.path-node{display:grid;place-items:center;width:3.4rem;height:3.4rem;flex-shrink:0;border-radius:1.1rem;border:2px solid var(--border-strong);background:var(--surface-2);font-size:1.5rem;text-decoration:none;color:var(--text);transition:transform .12s ease}.path-node:hover{transform:scale(1.06)}.path-item--done .path-node{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.path-item--current .path-node{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 0 0 6px var(--accent-soft)}.path-item--todo .path-node{opacity:.75}.node-text{display:flex;flex-direction:column;gap:1px;min-width:0}.node-title{font-weight:600;display:flex;align-items:center;gap:var(--space-2)}.node-summary,.node-steps{font-size:var(--text-sm);color:var(--text-muted)}.node-steps{font-size:var(--text-xs)}.tag--now{background:var(--accent);color:#fff;border-color:var(--accent)}@media (max-width: 720px){.coach-hero{grid-template-columns:auto 1fr}.coach-action{grid-column:1 / -1;flex-direction:row;justify-content:space-between}}.chip-count{margin-left:.35rem;opacity:.6;font-variant-numeric:tabular-nums}.path-item--exam .path-node{border-style:dashed}.path-item--exam.path-item--done .path-node{border-style:solid}.exam-dots{display:flex;gap:var(--space-1);align-items:center}.exam-dot{width:.7rem;height:.7rem;border-radius:50%;border:1px solid var(--border-strong)}.exam-dot--current{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.exam-dot--right{background:var(--success);border-color:var(--success)}.exam-dot--wrong{background:#ef4444;border-color:#ef4444}.eyebrow{margin:0;font:700 .66rem/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-subtle)}.eyebrow--accent{color:var(--accent)}.btn--lg{padding:.8rem 1.9rem;font-size:var(--text-base)}.bot-select{display:flex;flex-direction:column;gap:var(--space-6);padding-block:var(--space-4)}.bot-select-head{display:flex;flex-direction:column;gap:var(--space-2);max-width:34rem}.bot-select-head .muted{font-size:var(--text-base);line-height:1.6}.bot-select-block{display:flex;flex-direction:column;gap:var(--space-3)}.tempo-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tempo-chip{padding:.55rem 1.05rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--text-muted);font:500 .82rem/1 var(--font-mono);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.tempo-chip:hover{color:var(--text);border-color:var(--text-subtle)}.tempo-chip--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.bot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));border-top:1px solid var(--border);border-left:1px solid var(--border)}.bot-card{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);min-height:11.5rem;padding:var(--space-5);border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-1);color:var(--text);text-align:left;cursor:pointer;transition:background .15s ease}.bot-card:hover{background:var(--surface-2)}.bot-card--selected{outline:2px solid var(--accent);outline-offset:-2px;background:var(--surface-1)}.bot-card-top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:var(--space-3)}.bot-initial{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--surface-3);color:var(--text-muted);font:400 1.25rem/1 var(--font-display)}.bot-card--selected .bot-initial{background:var(--accent-soft);color:var(--accent)}.bot-rating{font:700 .78rem/1 var(--font-mono);color:var(--text-muted)}.bot-name{font-size:var(--text-lg);font-weight:600}.bot-blurb{margin-top:var(--space-2);font-size:var(--text-sm);line-height:1.55;color:var(--text-muted)}.bot-select-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--border)}.game-page{gap:var(--space-3)}.game-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-2) var(--space-4)}.game-head .page-title{font-size:clamp(1.6rem,1.2rem + 1vw,2.1rem)}.game-head .muted a,.game-head-link{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.btn--ink{background:var(--text);border-color:var(--text);color:var(--bg-base)}.btn--ink:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);color:var(--accent-contrast)}.landing{min-height:100vh;min-height:100dvh;background:var(--bg-base)}.landing-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:1.35rem 2.5rem;border-bottom:1px solid var(--border)}.landing-header .brand{padding:0}.landing-nav{display:flex;align-items:center;gap:1.75rem;font-weight:500}.landing-nav a:not(.btn){color:var(--text-muted)}.landing-nav a:not(.btn):hover{color:var(--accent)}.landing-main{max-width:69rem;margin:0 auto;padding:0 var(--space-5) var(--space-6)}.landing-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:4rem;padding:4.5rem 0 3.5rem}.landing-copy{display:flex;flex-direction:column;gap:var(--space-5)}.landing-title{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(2.8rem,1.8rem + 3.2vw,4.6rem);line-height:1.02;letter-spacing:-.015em}.landing-lead{margin:0;max-width:31rem;font-size:1.12rem;line-height:1.65;color:var(--text-muted)}.landing-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.landing-board{margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.landing-board-frame{border:1px solid var(--border-strong);box-shadow:var(--shadow-lg)}.landing-caption{display:flex;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.landing-move{font:700 .85rem/1 var(--font-mono)}.landing-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.landing-feature{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-6) var(--space-6) var(--space-6) 0}.landing-feature+.landing-feature{padding-left:var(--space-6);border-left:1px solid var(--border)}.landing-feature-title{margin:0;font-family:var(--font-display);font-weight:400;font-size:1.55rem}.landing-feature .muted{font-size:var(--text-base);line-height:1.6}.landing-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5);padding:var(--space-6) 0}.landing-stat{display:flex;flex-direction:column;gap:var(--space-1)}.landing-stat strong{font:700 1.9rem/1 var(--font-mono);font-variant-numeric:tabular-nums}.landing-stat span{font-size:var(--text-sm);color:var(--text-muted)}@media (max-width: 900px){.landing-header{padding:var(--space-4)}.landing-nav{gap:var(--space-4)}.landing-hero,.landing-features{grid-template-columns:minmax(0,1fr)}.landing-hero{gap:var(--space-6);padding:var(--space-6) 0}.landing-feature,.landing-feature+.landing-feature{padding:var(--space-5) 0;border-left:0}.landing-feature+.landing-feature{border-top:1px solid var(--border)}.landing-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.auth-split{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.auth-aside{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-6);padding:2.5rem;background:var(--bg-base);border-right:1px solid var(--border)}.auth-back{padding:0}.auth-quote{display:flex;flex-direction:column;gap:var(--space-4);max-width:26rem}.auth-quote-text{margin:0;font-family:var(--font-display);font-size:clamp(1.9rem,1.4rem + 1.2vw,2.4rem);line-height:1.2}.auth-main{display:grid;place-items:center;padding:var(--space-6) var(--space-5);background:var(--surface-1)}.auth-form{width:min(24rem,100%);display:flex;flex-direction:column;gap:var(--space-4)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:var(--space-3);border-bottom:1px solid var(--border)}.auth-tab{padding:var(--space-3);text-align:center;color:var(--text-muted);font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px}.auth-tab[aria-current=page]{color:var(--text);border-bottom-color:var(--accent)}.auth-field{display:flex;flex-direction:column;gap:var(--space-2)}.auth-field .input{padding:.8rem var(--space-3);background:var(--bg-base)}@media (max-width: 900px){.auth-split{grid-template-columns:minmax(0,1fr)}.auth-aside{border-right:0;border-bottom:1px solid var(--border);padding:var(--space-5)}}.review-graph-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);background:var(--surface-1)}.review-panel{gap:0;padding:0}.review-section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border)}.review-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.review-section-title{color:var(--text-subtle)}.review-accuracy{display:flex;flex-direction:column;align-items:flex-end}.review-accuracy strong{font:700 1.3rem/1 var(--font-mono)}.review-accuracy small{font:400 .7rem/1.4 var(--font-mono);color:var(--text-subtle)}.quality-list{list-style:none;margin:0;padding:0}.quality-list li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-3);padding:.45rem 0;border-bottom:1px solid var(--border);font-size:var(--text-sm)}.quality-list li:last-child{border-bottom:0}.quality-list strong{font:700 .8rem/1 var(--font-mono)}.quality-dot{width:.5rem;height:.5rem;border-radius:50%}.review-section .key-moment{display:grid;grid-template-columns:5.75rem minmax(0,1fr);gap:var(--space-3);padding:var(--space-3) 0;margin:0;border:0;border-top:1px solid var(--border);border-radius:0}.review-section .key-moment--player{border-left:0}.key-moment-move{align-self:start;white-space:nowrap;padding:0;border:0;background:none;font:700 .85rem/1.3 var(--font-mono);text-align:left;cursor:pointer}.key-moment-body{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.key-moment-body>strong{display:flex;gap:var(--space-2);font-size:var(--text-sm)}.key-moment-loss{font:400 .72rem/1.4 var(--font-mono);color:var(--text-subtle)}.key-moment-body .btn{margin-top:var(--space-1);padding:.35rem .8rem;font-size:var(--text-xs)}.review-panel .training-plan{margin:var(--space-4);padding:var(--space-4);border:1px solid color-mix(in oklab,var(--accent) 30%,var(--border));background:var(--accent-soft)}.review-panel .training-plan .section-title{font:700 .66rem/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.puzzle-brief-title{margin:0;font-family:var(--font-display);font-size:1.45rem;font-weight:400;line-height:1.2}.puzzle-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.btn--hint{background:var(--warning-soft);border-color:color-mix(in oklab,var(--warning) 45%,transparent);color:var(--text)}.btn--hint:hover:not(:disabled){border-color:var(--warning)}.puzzle-lesson{display:flex;flex-direction:column;gap:2px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);text-decoration:none}.puzzle-lesson:hover{border-color:var(--accent)}.puzzle-score{display:flex;flex-direction:column;gap:var(--space-2)}.puzzle-score-row{display:flex;align-items:baseline;justify-content:space-between}.puzzle-score-value{font-family:var(--font-mono);font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums}.puzzle-score-value--streak{color:var(--success)}.streak-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));grid-auto-flow:column;gap:4px;margin-top:var(--space-1)}.streak-bar span{height:4px;background:var(--border)}.streak-bar .streak-bar-on{background:var(--success)}.puzzle-step{border-radius:0;height:4px}.mode-list{display:flex;flex-direction:column;gap:2px}.mode-list .eyebrow{margin-bottom:var(--space-2)}.mode-link{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-sm);text-decoration:none}.mode-link:hover{background:var(--surface-2)}.mode-link--active{background:var(--accent-soft);color:var(--accent)}.review-section .filter-row{flex-wrap:wrap}.review-section .filter-row .time-chip{flex:1 0 auto;padding-inline:var(--space-2)}.learn-page{max-width:76rem;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-5)}.learn-head{display:flex;flex-direction:column;gap:var(--space-2)}.learn-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(18rem,1fr);gap:var(--space-6, 2.5rem);align-items:start}.curriculum>.eyebrow{padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.chapter{border-bottom:1px solid var(--border)}.chapter-row{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:var(--space-2);padding:var(--space-4) 0;cursor:pointer;list-style:none}.chapter-row::-webkit-details-marker{display:none}.chapter-index{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--accent);padding-top:2px}.chapter-body{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.chapter-line{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.chapter-line strong{font-size:1.05rem;font-weight:500}.chapter-bar{display:block;height:3px;background:var(--border)}.chapter-bar>span{display:block;height:100%;background:var(--accent)}.chapter[open] .chapter-row .chapter-line strong{color:var(--accent)}.lesson-rows{list-style:none;margin:0 0 var(--space-4) 2.5rem;padding:0;display:flex;flex-direction:column}.lesson-row{display:grid;grid-template-columns:1.75rem minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text);text-decoration:none}.lesson-row:hover{background:var(--surface-2)}.lesson-row-mark{display:grid;place-items:center;width:1.5rem;height:1.5rem;border:1px solid var(--border-strong);border-radius:50%;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted)}.lesson-row-text{display:flex;flex-direction:column;min-width:0}.lesson-row-text .muted{font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-row--done .lesson-row-mark{border-color:var(--success);background:var(--success);color:var(--bg-base)}.lesson-row--current{background:var(--accent-soft)}.lesson-row--current .lesson-row-mark{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.lesson-row--current .nav-meta{color:var(--accent)}.lesson-row--exam .lesson-row-mark{border-radius:2px}.learn-aside{position:sticky;top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.learn-next{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}.learn-next-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.learn-book{padding:0}.learn-book-head{margin:0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.learn-book-list{list-style:none;margin:0;padding:0}.learn-book-list li{display:grid;grid-template-columns:3rem minmax(0,1fr) auto;gap:var(--space-3);align-items:baseline;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border)}.learn-book-eco{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600}.learn-book-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.learn-book-empty{margin:0;padding:var(--space-4)}.learn-book-cta{margin:var(--space-3) var(--space-4) var(--space-4)}@media (max-width: 900px){.learn-grid{grid-template-columns:minmax(0,1fr)}.learn-aside{position:static;order:-1}}.lobby{max-width:76rem;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-5);padding-block:var(--space-4)}.lobby-online{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--success)}.lobby-dot{width:.45rem;height:.45rem;border-radius:50%;background:var(--success)}.lobby-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);gap:var(--space-5);align-items:start}.lobby-main{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.lobby-new{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-4)}.lobby-tempos{display:flex;flex-wrap:wrap;gap:var(--space-2)}.lobby-new-actions,.lobby-queued{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.lobby-table-card{padding:0;overflow:hidden}.table-scroll{overflow-x:auto}.lobby-table{width:100%;border-collapse:collapse}.lobby-table th{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.12em;text-align:left;text-transform:uppercase;color:var(--text-subtle)}.lobby-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.lobby-table tbody tr:last-child td{border-bottom:0}.lobby-player{display:inline-flex;align-items:center;gap:var(--space-3);font-weight:500}.lobby-initial{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);font-size:.72rem;font-weight:600}.lobby-num{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted)}.lobby-action{text-align:right}.lobby-empty{margin:0;padding:var(--space-5) var(--space-4)}.lobby-side{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;position:sticky;top:var(--space-4)}.lobby-players{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4)}.lobby-player-list{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;max-height:18rem;overflow-y:auto}.lobby-player-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-width:0;padding:.3rem 0}.lobby-player-text{display:flex;flex-direction:column;min-width:0}.lobby-player-text small{color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.lobby-players-empty{margin:0;font-size:var(--text-sm)}.lobby-chat{padding:0;display:flex;flex-direction:column}.lobby-chat-head{margin:0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.lobby-chat .chat-panel>.section-title{display:none}.lobby-chat .chat-messages{min-height:16rem;max-height:24rem}@media (max-width: 900px){.lobby-grid{grid-template-columns:minmax(0,1fr)}.lobby-chat{position:static}}.lobby-chat .chat-messages{gap:var(--space-3)}.lobby-chat .chat-message{display:flex;flex-direction:column;gap:2px;padding:0;background:none;align-self:stretch;max-width:none}.lobby-chat .chat-author{font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle)}.lobby-chat .chat-message--mine .chat-author{color:var(--accent)}.settings-page{max-width:72rem;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-5);padding-block:var(--space-4)}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);gap:var(--space-6);align-items:start}.settings-main{display:flex;flex-direction:column;gap:var(--space-6);min-width:0}.settings-block{display:flex;flex-direction:column;gap:var(--space-3)}.theme-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:var(--space-3)}.theme-swatch{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1, var(--bg-elevated));color:var(--text);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer}.theme-swatch:hover{border-color:var(--border-strong)}.theme-swatch--active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent)}.theme-swatch-squares{display:grid;grid-template-columns:1fr 1fr;height:3.25rem}.toggle-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--border)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.toggle-text{display:flex;flex-direction:column;gap:2px}.toggle-text strong{font-weight:500}.toggle-text .muted{font-size:var(--text-sm)}.switch{position:relative;flex:none;width:2.6rem;height:1.45rem;padding:0;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-2);cursor:pointer;transition:background .15s ease,border-color .15s ease}.switch-knob{position:absolute;top:50%;left:3px;width:1rem;height:1rem;border-radius:50%;background:var(--text-subtle);transform:translateY(-50%);transition:left .15s ease,background .15s ease}.switch--on{background:var(--accent);border-color:var(--accent)}.switch--on .switch-knob{left:calc(100% - 1rem - 3px);background:var(--accent-contrast)}.switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.settings-preview{position:sticky;top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}@media (max-width: 900px){.settings-layout{grid-template-columns:minmax(0,1fr)}.settings-preview{position:static}}.review-section .lesson-progress{padding:0}.lesson-text{margin:0}.lesson-phases{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.lesson-phase{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font:inherit;font-weight:500;text-align:left;cursor:pointer}.lesson-phase .nav-meta{width:100%}.lesson-phase--active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.lesson-phase:disabled{cursor:default;opacity:.5}.practice-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-2);margin:0;padding:0;list-style:none}.practice-pip{width:100%;padding:var(--space-2) 0;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-sm);cursor:pointer}.practice-pip--clean{border-color:var(--success);background:var(--success-soft);color:var(--success)}.practice-pip--assisted{border-color:var(--warning);background:var(--warning-soft);color:var(--text)}.practice-pip--current{box-shadow:inset 0 0 0 1px var(--accent);border-color:var(--accent)}.lesson-hint{margin:0;padding:var(--space-3);border-left:2px solid var(--warning);background:var(--warning-soft)}.lesson-result{background:var(--surface-2)}.lesson-score{margin:0;font-family:var(--font-mono)}.lesson-score strong{font-size:2rem;font-weight:600}.learn-book-list a.learn-book-name{color:var(--text);text-decoration:none}.learn-book-list a.learn-book-name:hover{color:var(--accent)}.tab-panel:has(>.coach-tab){padding:0;gap:0}.coach-tab{display:flex;flex-direction:column}.coach-block{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border)}.coach-block:last-child{border-bottom:0}.coach-block-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.coach-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:3px;border-radius:var(--radius-md);background:var(--surface-3)}.coach-level{padding:.45rem 0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font:inherit;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.coach-level:hover{color:var(--text)}.coach-level--active{background:var(--surface-1);color:var(--accent);font-weight:600;box-shadow:0 1px 2px #00000014,0 0 0 1px var(--border)}.coach-level-detail{margin:0;min-height:2.9em;font-size:var(--text-xs);line-height:1.45;color:var(--text-subtle)}.coach-custom summary{width:fit-content;font-size:var(--text-xs);color:var(--text-subtle);cursor:pointer;list-style:none}.coach-custom summary::-webkit-details-marker{display:none}.coach-custom summary:before{content:""}.coach-custom[open] summary{margin-bottom:var(--space-2)}.coach-switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--border)}.coach-switch-row strong{display:block;font-size:var(--text-sm);font-weight:500}.coach-switch-row small{display:block;font-size:var(--text-xs);color:var(--text-subtle);line-height:1.35}.coach-empty{margin:0;padding:var(--space-4);font-size:var(--text-sm);color:var(--text-muted);line-height:1.5}.coach-block .coach-empty{padding:0}.coach-feedback{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);border-left:3px solid var(--border-strong);background:var(--surface-2)}.coach-feedback p{margin:0;font-size:var(--text-sm);line-height:1.5}.coach-feedback-head{display:flex;align-items:baseline;gap:var(--space-2)}.coach-feedback-move{font-family:var(--font-mono);font-weight:600}.coach-feedback--mukemmel{border-left-color:var(--quality-mukemmel)}.coach-feedback--iyi{border-left-color:var(--quality-iyi)}.coach-feedback--orta{border-left-color:var(--quality-orta)}.coach-feedback--zayif{border-left-color:var(--quality-zayif)}.coach-feedback--hata{border-left-color:var(--quality-hata);background:var(--quality-hata-soft)}.coach-feedback--opponent{border-left-color:var(--text-subtle)}.coach-quality{margin-left:auto;padding:1px 6px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.coach-quality--mukemmel{color:var(--quality-mukemmel);background:var(--quality-mukemmel-soft)}.coach-quality--iyi{color:var(--quality-iyi);background:var(--quality-iyi-soft)}.coach-quality--orta{color:var(--quality-orta);background:var(--quality-orta-soft)}.coach-quality--zayif{color:var(--quality-zayif);background:var(--quality-zayif-soft)}.coach-quality--hata{color:var(--quality-hata);background:var(--quality-hata-soft)}.coach-legend{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;color:var(--text-subtle)}.coach-dot{display:inline-block;width:.5rem;height:.5rem;margin-left:4px;border-radius:50%}.coach-dot--safe{background:var(--success)}.coach-dot--careful{background:var(--warning)}.coach-dot--risky{background:var(--danger)}.coach-lines,.variation-lines{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.coach-row{display:grid;grid-template-columns:1.4rem 3.4rem minmax(0,1fr) auto;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) 0;border:0;border-top:1px solid var(--border);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.coach-lines li:first-child .coach-row{border-top:0}.coach-row:hover,.coach-row--active{background:var(--surface-2)}.coach-rank{display:grid;place-items:center;width:1.3rem;height:1.3rem;border-radius:50%;color:#fff;font-family:var(--font-mono);font-size:.68rem;font-weight:600}.coach-rank--safe{background:var(--success)}.coach-rank--careful{background:var(--warning)}.coach-rank--risky{background:var(--danger)}.coach-row-san{font-family:var(--font-mono);font-weight:600;font-size:var(--text-sm)}.coach-row-line{overflow:hidden;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap}.coach-row-eval{font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text-muted)}.coach-row--risky .coach-row-eval{color:var(--danger)}.coach-row--safe .coach-row-eval{color:var(--success)}.variation{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) 0;border-top:1px solid var(--border)}.variation:first-child{border-top:0;padding-top:0}.variation-head{display:flex;align-items:center;gap:var(--space-2)}.variation-head .coach-quality{margin-left:0}.variation-score{margin-left:auto;font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text-muted)}.variation-continuation{display:flex;flex-wrap:wrap;gap:2px 4px}.variation-move{padding:1px 5px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);cursor:pointer}.variation-move:hover{border-color:var(--border);color:var(--text)}.variation-move--root{padding-left:0;color:var(--text);font-size:var(--text-sm);font-weight:600}.variation-move--on-path{color:var(--text);background:var(--surface-2)}.variation-move--selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.coach-custom summary{text-decoration:underline;text-underline-offset:3px}.coach-eval{gap:var(--space-2)}.coach-eval-head{display:flex;align-items:baseline;gap:var(--space-2)}.coach-eval-head strong{font-size:var(--text-sm);font-weight:600}.coach-eval-score{margin-left:auto;font-family:var(--font-mono);font-size:1.1rem;font-weight:600;font-variant-numeric:tabular-nums}.coach-eval-bar{height:6px;border-radius:999px;background:#1f2530;box-shadow:inset 0 0 0 1px #00000026;overflow:hidden}.coach-eval-bar span{display:block;height:100%;background:#efeadf;box-shadow:inset 0 0 0 1px #0000001f;transition:width .4s ease}.coach-feedback{gap:var(--space-2);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.coach-feedback--hata{background:color-mix(in oklab,var(--quality-hata) 7%,var(--surface-1))}.coach-feedback-head{align-items:center}.coach-feedback-move{font-size:1.15rem}.coach-feedback-head .coach-quality{margin-left:0}.coach-feedback-loss{margin-left:auto;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;color:var(--quality-hata)}.coach-feedback-actions{display:flex;gap:var(--space-2)}.coach-feedback-actions .btn{padding-block:.35rem;font-size:var(--text-sm)}.coach-hint{display:flex;align-items:center;gap:var(--space-3)}.coach-hint .btn{flex:none}.coach-hint .muted{font-size:var(--text-xs);line-height:1.4}.variation-dot{flex:none;width:.55rem;height:.55rem;border-radius:50%}.variation-dot--mukemmel{background:var(--quality-mukemmel)}.variation-dot--iyi{background:var(--quality-iyi)}.variation-dot--orta{background:var(--quality-orta)}.variation-dot--zayif{background:var(--quality-zayif)}.variation-dot--hata{background:var(--quality-hata)}.variation-continuation{padding-left:calc(.55rem + var(--space-2))}.variation-continuation .variation-move:first-child{padding-left:0}.coach-rank--careful{color:#1f2530}.coach-thinking{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted)}.coach-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:var(--space-2);margin:0;padding-top:var(--space-2);border-top:1px solid color-mix(in oklab,var(--border) 70%,transparent)}.coach-facts div{display:flex;flex-direction:column;gap:2px}.coach-facts dt{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle)}.coach-facts dd{margin:0;font-family:var(--font-mono);font-size:var(--text-base);font-weight:600}.coach-hint{flex-direction:column;align-items:stretch;gap:var(--space-2)}.coach-hint-row{display:flex;align-items:center;gap:var(--space-3)}.coach-hint-row .btn{flex:none}.coach-hint-row .muted{font-size:var(--text-xs);line-height:1.4}.hint-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none}.hint-steps li{padding-top:6px;border-top:3px solid var(--border);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle)}.hint-steps .hint-step--on{border-top-color:var(--warning);color:var(--text)}.coach-link{padding:0;border:0;background:none;color:var(--accent);font:inherit;font-size:var(--text-xs);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.coach-scale{font-family:var(--font-mono);font-size:.66rem;color:var(--text-subtle)}p.coach-legend{margin:0}.coach-tip{margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--text-xs);line-height:1.45;color:var(--text-muted)}.coach-row-eval{display:inline-flex;align-items:center;gap:var(--space-2)}.coach-best{padding:0 5px;border-radius:var(--radius-sm);background:var(--success-soft);color:var(--success);font-size:.62rem;letter-spacing:.06em;text-transform:uppercase}.move-glyph{position:absolute;z-index:3;min-width:1.35rem;padding:1px 4px;border:0;border-radius:3px;font:700 .72rem/1.2 var(--font-mono);color:#fff;box-shadow:0 1px 3px #0000004d;cursor:pointer}.move-glyph--bad{background:#b43b2e}.move-glyph--warn{background:#b27a17}.move-glyph--good{background:#2f7d4f}.coach-bubble{position:absolute;z-index:4;width:min(52%,20rem);display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text);box-shadow:0 12px 28px #0f141e47;animation:coach-bubble-in .18s ease-out}.coach-bubble--bad{border-top:3px solid var(--quality-hata)}.coach-bubble--warn{border-top:3px solid var(--quality-orta)}.coach-bubble--good{border-top:3px solid var(--quality-mukemmel)}.coach-bubble-pointer{position:absolute;z-index:5;width:0;height:0;border-block:7px solid transparent;pointer-events:none}.coach-bubble-pointer--right{border-right:8px solid var(--surface-1)}.coach-bubble-pointer--left{border-left:8px solid var(--surface-1)}@keyframes coach-bubble-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.coach-bubble{animation:none}}.coach-bubble-head{display:flex;align-items:center;gap:var(--space-2)}.coach-bubble-move{font:600 1.05rem var(--font-mono)}.coach-bubble-glyph{color:var(--quality-hata)}.coach-bubble--warn .coach-bubble-glyph{color:var(--quality-orta)}.coach-bubble--good .coach-bubble-glyph{color:var(--quality-mukemmel)}.coach-bubble-head .coach-quality{margin-left:0}.coach-bubble-loss{font:600 var(--text-sm) var(--font-mono);color:var(--quality-hata)}.coach-bubble-close{margin-left:auto;width:1.5rem;height:1.5rem;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-subtle);font-size:1.1rem;line-height:1;cursor:pointer}.coach-bubble-close:hover{background:var(--surface-2);color:var(--text)}.coach-bubble-text{margin:0;font-size:var(--text-sm);line-height:1.45;max-height:9.5rem;overflow-y:auto;overscroll-behavior:contain;padding-right:2px}.coach-bubble-facts{display:flex;flex-wrap:wrap;gap:2px var(--space-3);margin:0;font-size:var(--text-xs);color:var(--text-muted)}.coach-bubble-facts b{font-family:var(--font-mono);color:var(--text)}.coach-bubble-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.coach-bubble-actions .btn{padding-block:.35rem;font-size:var(--text-sm)}.move-compare{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:flex;flex-direction:column;justify-content:center;gap:var(--space-3);padding:clamp(.75rem,3%,1.5rem);background:var(--surface-1);animation:coach-bubble-in .2s ease-out}.move-compare-head{display:flex;align-items:baseline;gap:var(--space-3)}.move-compare-head strong{font:400 clamp(1.1rem,2.2vw,1.5rem) var(--font-display)}.move-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.move-compare-grid figure{margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.move-compare-board{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;line-height:0}.move-compare-grid figcaption{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm)}.move-compare-grid figcaption b{font-family:var(--font-mono)}.move-compare-note{margin:0;font-size:var(--text-xs);color:var(--text-muted)}.move-compare-why{margin:0;max-width:62ch;font-size:var(--text-sm);line-height:1.5}.coach-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding-top:var(--space-2);border-top:1px solid var(--border)}.coach-bar-level{display:flex;align-items:center;gap:2px}.coach-bar-level .eyebrow{margin-right:var(--space-2)}.coach-bar-option{padding:.3rem .65rem;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font:inherit;font-size:var(--text-sm);cursor:pointer}.coach-bar-option:hover{color:var(--text);background:var(--surface-2)}.coach-bar-option--active{border-color:var(--border);background:var(--surface-1);color:var(--accent);font-weight:600}.bar-hint{display:flex;align-items:center;gap:var(--space-3)}.hint-pips{display:flex;gap:3px;margin:0;padding:0;list-style:none}.hint-pips li{width:1.1rem;height:4px;border-radius:2px;background:var(--border-strong)}.hint-pips .hint-pip--on{background:var(--warning)}.bar-hint .btn{padding-block:.3rem;font-size:var(--text-sm)}.bar-hint-answer{font-size:var(--text-sm);color:var(--text-muted)}.bar-hint-answer b{font-family:var(--font-mono);color:var(--text)}.move-glyph-inline{margin-left:1px;font-weight:700}.move-glyph-inline--mukemmel{color:var(--quality-mukemmel)}.move-glyph-inline--orta{color:var(--quality-orta)}.move-glyph-inline--zayif{color:var(--quality-zayif)}.move-glyph-inline--hata{color:var(--quality-hata)}.move-list--annotated .move-row:nth-child(odd){background:transparent}.move-list--annotated .move-row{border-top:1px solid var(--border);border-radius:0}.move-note{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:var(--space-1);padding:2px 0 var(--space-2);font-family:var(--font-sans);font-size:var(--text-xs);line-height:1.45;color:var(--text-muted)}.move-note-who{grid-column:1;text-align:right;padding-right:var(--space-2);font-family:var(--font-mono);font-size:.66rem;color:var(--text-subtle)}.move-note-body{display:flex;flex-direction:column;gap:2px;padding-left:var(--space-2);border-left:2px solid var(--border-strong)}.move-note--hata .move-note-body,.move-note--zayif .move-note-body{border-left-color:var(--quality-hata)}.move-note--orta .move-note-body{border-left-color:var(--quality-orta)}.move-note--theirs .move-note-body{border-left-color:var(--text-subtle)}.move-note-text{color:var(--text)}.move-note-facts{display:flex;flex-wrap:wrap;gap:0 var(--space-3)}.move-note-facts b{font-family:var(--font-mono);color:var(--text)}.coach-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.coach-choice-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--text);font:inherit;text-align:left;cursor:pointer}.coach-choice-card strong{font-weight:600}.coach-choice-card span{font-size:var(--text-sm);color:var(--text-muted);line-height:1.45}.coach-choice-card--active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.coach-choice-card--active strong{color:var(--accent)}@media (max-width: 700px){.coach-choice{grid-template-columns:minmax(0,1fr)}}.line-theater-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:clamp(.75rem,3vw,2.5rem);background:#0e121c8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:theater-fade .18s ease-out}@keyframes theater-fade{0%{opacity:0}to{opacity:1}}.line-theater{width:min(1180px,100%);height:min(820px,100%);display:flex;flex-direction:column;gap:var(--space-4);padding:clamp(1rem,2.4vw,1.75rem);border-radius:8px;background:var(--surface-1);box-shadow:0 30px 80px #00000059;animation:coach-bubble-in .22s ease-out}@media (prefers-reduced-motion: reduce){.line-theater-backdrop{animation:none}}.line-theater-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-2) var(--space-3)}.line-theater-title{display:flex;flex-direction:column;gap:2px}.line-theater-title strong{font:400 clamp(1.4rem,2.6vw,2.1rem) / 1.1 var(--font-display)}.line-theater-tools{display:flex;align-items:center;gap:var(--space-2)}.line-theater-depth{display:flex;gap:2px;padding:2px;border-radius:var(--radius-sm);background:var(--surface-3)}.line-theater-depth button{padding:.25rem .6rem;border:0;border-radius:2px;background:transparent;color:var(--text-muted);font:500 var(--text-xs) var(--font-mono);cursor:pointer}.line-theater-depth button.is-active{background:var(--surface-1);color:var(--accent);box-shadow:0 0 0 1px var(--border)}.line-theater-icon{width:1.9rem;height:1.9rem;display:grid;place-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--text);font-size:.8rem;cursor:pointer}.line-theater-icon:hover{border-color:var(--border-strong)}.line-theater-progress{display:flex;gap:4px}.line-theater-progress span{flex:1;height:3px;border-radius:2px;background:var(--border);transition:background .3s ease}.line-theater-progress span.is-on{background:var(--accent)}.line-theater-grid{flex:1;min-height:0;display:grid;gap:12px;align-content:center;justify-content:center;overflow:hidden}.line-card{display:flex;flex-direction:column;gap:6px}.line-card-board{padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:none;line-height:0;cursor:pointer;box-shadow:0 1px 2px #0000000f;transition:box-shadow .15s ease,transform .15s ease}.line-card--safe .line-card-board{border-top:3px solid var(--success)}.line-card--careful .line-card-board{border-top:3px solid var(--warning)}.line-card--risky .line-card-board{border-top:3px solid var(--danger)}.line-card-board:hover{box-shadow:0 8px 20px #0f141e29;transform:translateY(-1px)}.line-card-board:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.line-card-caption{display:flex;align-items:center;gap:6px;font-size:var(--text-xs)}.line-card-caption b{font:600 var(--text-base) var(--font-mono)}.line-card-caption{font-size:var(--text-sm)}.line-card-risk{color:var(--text-subtle)}.line-card-eval{margin-left:auto;font:600 var(--text-xs) var(--font-mono);font-variant-numeric:tabular-nums}.line-card--risky .line-card-eval{color:var(--danger)}.line-card--safe .line-card-eval{color:var(--success)}.line-card-strip{display:flex;flex-wrap:wrap;gap:2px 6px;margin:0;padding:0;list-style:none;font:var(--text-sm) / 1.6 var(--font-mono)}.line-card-strip li{padding:0 3px;border-radius:2px;transition:background .25s ease,color .25s ease,opacity .25s ease}.line-card-strip li.is-yours{color:var(--accent)}.line-card-strip li.is-theirs{color:var(--danger)}.line-card-strip li.is-future{opacity:.35}.line-card-strip li.is-current{opacity:1;background:color-mix(in oklab,currentColor 14%,transparent);font-weight:600}.line-theater-foot{margin:0;font-size:var(--text-xs);color:var(--text-subtle)}.coach-bar-actions{display:flex;align-items:center;gap:var(--space-3)}.coach-bar-lines{padding-block:.3rem;font-size:var(--text-sm)}@media (prefers-reduced-motion: reduce){.line-theater,.line-card-board,.line-theater-progress span,.line-card-strip li{animation:none;transition:none}}.move-glyph{min-width:1.55rem;padding:2px 5px;border-radius:999px;font-size:.74rem;letter-spacing:-.02em;box-shadow:0 0 0 2px #ffffffe6,0 2px 6px #0000004d;transform:translate(35%,-30%);animation:glyph-pop .25s cubic-bezier(.3,1.6,.5,1)}@keyframes glyph-pop{0%{transform:translate(35%,-30%) scale(.4);opacity:0}to{transform:translate(35%,-30%) scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.move-glyph{animation:none}}.coach-bubble{gap:10px;padding:14px 14px 12px;border:0;border-radius:6px;box-shadow:0 0 0 1px var(--border),0 18px 40px #0f141e47}.coach-bubble--bad{border-top:0;box-shadow:inset 0 3px 0 var(--quality-hata),0 0 0 1px var(--border),0 18px 40px #0f141e47}.coach-bubble--warn{border-top:0;box-shadow:inset 0 3px 0 var(--quality-orta),0 0 0 1px var(--border),0 18px 40px #0f141e47}.coach-bubble--good{border-top:0;box-shadow:inset 0 3px 0 var(--quality-mukemmel),0 0 0 1px var(--border),0 18px 40px #0f141e47}.coach-bubble-move{font-size:1.2rem;letter-spacing:-.01em}.coach-bubble-facts{padding:8px 10px;border-radius:4px;background:var(--surface-2);gap:2px var(--space-4)}.move-compare-board{border-radius:4px;box-shadow:0 1px 2px #0000000f,0 0 0 1px var(--border);border:0}.move-compare-grid figure:first-child .move-compare-board{box-shadow:inset 0 3px 0 var(--quality-hata),0 0 0 1px var(--border)}.move-compare-grid figure:last-child .move-compare-board{box-shadow:inset 0 3px 0 var(--quality-mukemmel),0 0 0 1px var(--border)}.line-card-strip{flex-wrap:nowrap;overflow-x:hidden;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}.line-card-strip li{flex:none}.line-theater-status{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-xs);color:var(--text-muted)}.line-theater-depth button{padding-inline:.5rem}.line-theater-progress--bar{position:relative;align-items:center;gap:var(--space-3)}.line-theater-progress--bar:before{content:"";position:absolute;left:0;right:4.5rem;height:3px;border-radius:2px;background:var(--border)}.line-theater-progress--bar span{position:relative;flex:none;max-width:calc(100% - 4.5rem);transition:width .25s linear}.line-theater-progress--bar em{margin-left:auto;font:normal 500 var(--text-xs) var(--font-mono);color:var(--text-subtle);font-variant-numeric:tabular-nums}.progress-page{max-width:76rem;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-6);padding-block:var(--space-4)}.progress-sync{margin:0;font-size:var(--text-sm);color:var(--text-subtle)}.progress-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-block:1px solid var(--border)}.progress-stat{display:flex;flex-direction:column;gap:2px;padding:var(--space-4) var(--space-4) var(--space-4) 0}.progress-stat+.progress-stat{padding-left:var(--space-4);border-left:1px solid var(--border)}.progress-stat strong{font:400 2.4rem / 1 var(--font-display);font-variant-numeric:tabular-nums}.progress-stat span{font-size:var(--text-sm);color:var(--text-muted)}.progress-stat--warn strong{color:var(--warning)}.progress-stat--bad strong{color:var(--danger)}.progress-stat--good strong{color:var(--success)}.progress-block{display:flex;flex-direction:column;gap:var(--space-3)}.progress-heading{margin:0;font:400 1.6rem / 1.15 var(--font-display)}.progress-empty{margin:0;max-width:62ch;color:var(--text-muted)}.due-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}.due-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);box-shadow:inset 3px 0 0 var(--warning)}.due-card p{margin:0;font-size:var(--text-sm)}.due-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.due-card-head strong{font-size:1.05rem;font-weight:600}.due-card-strength{font:600 var(--text-sm) var(--font-mono);color:var(--text-muted)}.due-card-why{font-family:var(--font-mono);color:var(--warning)}.due-card-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:auto}.progress-legend{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-xs);color:var(--text-muted)}.legend-swatch{display:inline-block;width:.75rem;height:.75rem;margin-left:var(--space-2);border-radius:2px}.legend-swatch--weak{background:var(--danger)}.legend-swatch--mid{background:var(--warning)}.legend-swatch--strong{background:var(--success)}.legend-swatch--none{background:var(--surface-3);box-shadow:inset 0 0 0 1px var(--border)}.motif-group{display:flex;flex-direction:column;gap:var(--space-2)}.motif-group h3{margin:var(--space-2) 0 0}.motif-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:var(--space-2);margin:0;padding:0;list-style:none}.motif-tile{height:100%;display:flex;flex-direction:column;gap:6px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--text);text-decoration:none;transition:border-color .15s ease}.motif-tile:hover{border-color:var(--accent)}.motif-tile-name{font-weight:500}.motif-tile-bar{height:4px;border-radius:2px;background:var(--surface-3);overflow:hidden}.motif-tile-bar span{display:block;height:100%}.motif-tile--weak .motif-tile-bar span{background:var(--danger)}.motif-tile--mid .motif-tile-bar span{background:var(--warning)}.motif-tile--strong .motif-tile-bar span{background:var(--success)}.motif-tile--weak{box-shadow:inset 3px 0 0 var(--danger)}.motif-tile--mid{box-shadow:inset 3px 0 0 var(--warning)}.motif-tile--strong{box-shadow:inset 3px 0 0 var(--success)}.motif-tile--none{background:transparent;color:var(--text-muted)}.motif-tile-meta{font:var(--text-xs) var(--font-mono);color:var(--text-subtle)}@media (max-width: 760px){.progress-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-stat:nth-child(3){padding-left:0;border-left:0}}.import-page{max-width:76rem;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-5);padding-block:var(--space-4)}.import-form{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1)}.import-sources{display:flex;gap:var(--space-2)}.import-username{flex:1 1 14rem}.import-username .input{width:100%}.import-batch{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3) var(--space-5);padding-block:var(--space-4);border-block:1px solid var(--border)}.import-batch p{margin:var(--space-1) 0 0;max-width:64ch}.import-running{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2);min-width:16rem}.import-running .chapter-bar{width:100%}.import-running p{margin:0;font-size:var(--text-sm)}.import-summary{grid-column:1 / -1;font-size:var(--text-sm)}.import-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.import-table th{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);font:500 .68rem var(--font-mono);letter-spacing:.12em;text-align:left;text-transform:uppercase;color:var(--text-subtle)}.import-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}.import-opponent{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:500}.import-color{width:.7rem;height:.7rem;border-radius:50%;box-shadow:inset 0 0 0 1px var(--border-strong)}.import-color--w{background:#f5f2ea}.import-color--b{background:#1f2530}.import-outcome{font:600 .72rem var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.import-outcome--win{color:var(--success)}.import-outcome--loss{color:var(--danger)}.import-outcome--draw,.import-outcome--open{color:var(--text-muted)}.import-opening{max-width:18rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.import-table .lobby-action{white-space:nowrap}.import-table .lobby-action .btn{padding-block:.3rem}.import-external{margin-left:var(--space-2);color:var(--text-subtle);text-decoration:none}.import-external:hover{color:var(--accent)}@media (max-width: 760px){.import-batch{grid-template-columns:minmax(0,1fr)}.import-running{align-items:stretch}}.rated-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:2px var(--space-4)}.rated-card-main{display:flex;flex-direction:column;gap:2px}.rated-card-value{font:400 2.6rem / 1 var(--font-display);font-variant-numeric:tabular-nums}.rated-delta{align-self:flex-start;padding:1px 6px;border-radius:var(--radius-sm);font:600 var(--text-sm) var(--font-mono);animation:rated-pop .4s cubic-bezier(.3,1.6,.5,1)}.rated-delta--up{color:var(--success);background:var(--success-soft)}.rated-delta--down{color:var(--danger);background:var(--danger-soft)}@keyframes rated-pop{0%{transform:translateY(6px) scale(.8);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){.rated-delta{animation:none}}.rated-spark{width:100%;height:3.2rem;overflow:visible}.rated-spark-area{fill:var(--accent-soft)}.rated-spark-line{fill:none;stroke:var(--accent);stroke-width:1.6;vector-effect:non-scaling-stroke}.rated-spark-dot{fill:var(--accent)}.rated-card-meta{grid-column:1 / -1;font:var(--text-xs) var(--font-mono);color:var(--text-subtle)}.rated-motifs{margin:0;font-size:var(--text-sm);color:var(--text-muted)}.progress-heading-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.licenses-page{max-width:60rem;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-6);padding-block:var(--space-4)}.license-engine{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);box-shadow:inset 3px 0 0 var(--accent)}.license-engine p{margin:0;max-width:68ch;line-height:1.6}.license-engine code{font-family:var(--font-mono);font-size:.9em}.license-version{font:500 var(--text-sm) var(--font-mono);color:var(--text-subtle)}.license-links{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);margin:0;padding:0;list-style:none}.license-links a,.license-kind,.license-source,.license-foot a{color:var(--accent);text-underline-offset:3px}.license-block{display:flex;flex-direction:column;gap:var(--space-2)}.license-block h2{margin:0}.license-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}.license-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:var(--space-2) var(--space-5);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.license-name{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--space-2)}.license-name .muted{flex-basis:100%;font-size:var(--text-sm)}.license-kind{font-size:var(--text-sm)}.license-source{font:var(--text-xs) var(--font-mono)}.license-foot{margin:0;font-size:var(--text-sm)}.sidebar-legal{padding:0 var(--space-3);font-size:var(--text-xs);color:var(--text-subtle);text-decoration:none}.sidebar-legal:hover{color:var(--accent)}.landing-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2);padding-block:var(--space-5);border-top:1px solid var(--border);font-size:var(--text-sm);color:var(--text-subtle)}.landing-footer a{color:var(--text-muted)}@media (max-width: 640px){.license-row{grid-template-columns:minmax(0,1fr) auto}.license-kind{grid-column:1}}.link-button{padding:0;border:0;background:none;color:var(--accent);font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.retry-attempts{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0;padding:0;list-style:none}.retry-attempts li{display:inline-flex;gap:var(--space-2);padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs)}.retry-attempts .is-ok{background:var(--success-soft);color:var(--success)}.retry-attempts .is-miss{background:var(--danger-soft);color:var(--danger)}.retry-locked>.muted,.retry-locked>.eyebrow{opacity:.75}.key-moment-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.key-moment-actions .btn{padding-block:.3rem;font-size:var(--text-sm)}.arenas-page,.arena-page,.leaderboard-page{display:flex;flex-direction:column;gap:var(--space-5);max-width:76rem}.arenas-layout,.arena-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,21rem);gap:var(--space-5);align-items:start}.arenas-main{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.arenas-side,.arena-side{display:flex;flex-direction:column;gap:var(--space-3)}.arena-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1)}.arena-card .eyebrow,.arena-card p{margin:0}.arena-board-link{color:var(--text);text-decoration:none;font-size:var(--text-sm)}.arena-board-link:hover{border-color:var(--border-strong)}.field-label{font:500 .68rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-subtle)}.arena-create .chip-row{margin-top:0}.arena-create-note{font-size:var(--text-xs)}.arena-notice{color:var(--danger);font-size:var(--text-sm)}.arena-live-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:var(--space-3)}.arena-live-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text);text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}.arena-live-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.arena-live-card .eyebrow{display:inline-flex;align-items:center;gap:var(--space-2)}.arena-live-name{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.15}.arena-live-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}.arena-live-meta strong{color:var(--text);font-family:var(--font-mono)}.arena-live-leader{font-size:var(--text-sm);color:var(--text-muted)}.arena-live-card .btn{align-self:flex-start;margin-top:var(--space-1)}.arena-clock-bar{display:block;height:3px;border-radius:2px;background:var(--surface-3);overflow:hidden}.arena-clock-bar>span{display:block;height:100%;background:var(--accent);transition:width 1s linear}.arena-schedule{margin:0;padding:0;list-style:none;border-top:1px solid var(--border)}.arena-schedule li{border-bottom:1px solid var(--border)}.arena-schedule-row{display:grid;grid-template-columns:3.5rem minmax(0,1fr) auto 3.5rem 4rem 4.5rem;gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-2);color:var(--text);text-decoration:none;font-size:var(--text-sm)}.arena-schedule--done .arena-schedule-row{grid-template-columns:3.5rem minmax(0,1fr) auto 4rem minmax(0,12rem)}.arena-schedule-row:hover{background:var(--surface-hover)}.arena-schedule-time{font:600 var(--text-sm) var(--font-mono)}.arena-schedule-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.arena-schedule-in{font-family:var(--font-mono);color:var(--accent);text-align:right;font-variant-numeric:tabular-nums}.arena-winner{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);text-align:right}.arena-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-4)}.arena-head .eyebrow{margin:0 0 var(--space-1)}.arena-head .eyebrow a{color:inherit}.arena-head .page-title{margin:0}.arena-clock{display:flex;flex-direction:column;gap:var(--space-1);min-width:10rem;text-align:right}.arena-clock .eyebrow{margin:0}.arena-clock-time{font:500 2.2rem/1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.arena-clock--live .arena-clock-time{color:var(--accent)}.arena-clock--done .arena-clock-time{color:var(--text-muted)}.arena-lead{font-size:var(--text-lg)}.arena-fire-note{display:inline-flex;align-items:center;gap:.3rem;margin-left:var(--space-2);font-size:var(--text-sm);color:var(--orange)}.arena-waiting{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted)}.arena-waiting .lobby-dot{flex:none;animation:arena-pulse 1.4s ease-in-out infinite}@keyframes arena-pulse{50%{opacity:.3}}@media (prefers-reduced-motion: reduce){.arena-waiting .lobby-dot{animation:none}.arena-clock-bar>span{transition:none}}.arena-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);text-align:center}.arena-stats>div{display:flex;flex-direction:column;gap:2px}.arena-stats .lobby-num{font-size:var(--text-xl);color:var(--text)}.arena-rules ul{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding-left:1.1rem;font-size:var(--text-sm);color:var(--text-muted)}.fire-mark{flex:none;color:var(--orange);vertical-align:-1px}.arena-table,.leaderboard-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.arena-table th,.leaderboard-table th{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-strong);font:500 .68rem var(--font-mono);letter-spacing:.12em;text-align:left;text-transform:uppercase;color:var(--text-subtle)}.arena-table td,.leaderboard-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}.arena-table .num,.leaderboard-table .num{text-align:right}.arena-table tr.is-me td,.leaderboard-table tr.is-me td{background:var(--accent-soft)}.arena-table tr.is-paused td{color:var(--text-subtle)}.arena-player{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:600;white-space:nowrap}.arena-player .lobby-num{font-weight:400;font-size:var(--text-xs)}.arena-paused{font:500 .62rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle)}.arena-sheet{display:flex;flex-wrap:wrap;gap:2px;max-width:22rem}.arena-sheet-cell{display:inline-grid;place-items:center;width:1.15rem;height:1.3rem;border-radius:3px;font:600 .7rem var(--font-mono)}.arena-sheet-cell--win{background:var(--success-soft);color:var(--success)}.arena-sheet-cell--draw{background:var(--surface-3);color:var(--text-muted)}.arena-sheet-cell--zero{color:var(--text-subtle)}.arena-sheet-cell.is-fire{background:var(--orange-soft);color:var(--orange)}.arena-score{font:700 var(--text-base) var(--font-mono)}.arena-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:var(--space-2);max-width:34rem;margin:0 auto var(--space-4);padding:0;list-style:none;text-align:center}.arena-podium-step{display:flex;flex-direction:column;gap:2px;min-width:0}.arena-podium-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.arena-podium-block{display:grid;place-items:center;margin-top:var(--space-2);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--surface-3);font:500 var(--text-xl) var(--font-display);color:var(--text-muted)}.arena-podium-step--1 .arena-podium-block{height:5.5rem;background:var(--accent);color:var(--accent-contrast)}.arena-podium-step--2 .arena-podium-block{height:4rem}.arena-podium-step--3 .arena-podium-block{height:3rem}.leaderboard-page{max-width:52rem}.leaderboard-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2)}.leaderboard-rank{display:inline-grid;place-items:center;min-width:1.7rem;height:1.7rem;border-radius:50%;font:600 var(--text-sm) var(--font-mono);color:var(--text-muted)}.leaderboard-rank--1{background:var(--accent);color:var(--accent-contrast)}.leaderboard-rank--2,.leaderboard-rank--3{box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent)}.leaderboard-name{font-weight:600}.leaderboard-name .tag{margin-left:var(--space-2)}.leaderboard-rating{font:700 var(--text-base) var(--font-mono)}.leaderboard-gap td{text-align:center;color:var(--text-subtle)}.leaderboard-note{margin:0;font-size:var(--text-sm)}@media (max-width: 900px){.arenas-layout,.arena-layout{grid-template-columns:1fr}.arena-schedule-row,.arena-schedule--done .arena-schedule-row{grid-template-columns:3.2rem minmax(0,1fr) auto}.arena-schedule-row>:nth-child(n+4){display:none}.arena-schedule-row>.arena-schedule-in,.arena-schedule--done .arena-schedule-row>.arena-winner{display:block;grid-column:2 / -1;text-align:left}.arena-clock{text-align:left}}.online-arena-link{display:block;padding:var(--space-3) var(--space-4) 0;text-decoration:none}.review-cta-row{display:flex;gap:var(--space-2)}.review-cta-row .review-cta{flex:1}.review-head-side{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}.review-head-side .eyebrow{margin:0}.share-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:var(--space-4);background:#0f141e8c;overflow-y:auto}.share-dialog{display:flex;flex-direction:column;gap:var(--space-4);width:min(100%,52rem);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow-lg)}.share-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.share-head .eyebrow{margin:0}.share-head h2{margin:0;font:400 var(--text-xl) var(--font-display)}.share-close{width:2.2rem;height:2.2rem;border:1px solid var(--border);border-radius:50%;background:transparent;color:var(--text-muted);font-size:1.3rem;line-height:1;cursor:pointer}.share-close:hover{color:var(--text);border-color:var(--border-strong)}.share-preview{display:grid;place-items:center;aspect-ratio:16 / 9;max-width:100%;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);overflow:hidden}.share-preview img{display:block;width:100%;height:auto}.share-moments{display:flex;flex-wrap:wrap;gap:var(--space-2)}.share-moments .chip{font-family:var(--font-mono)}.share-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.share-link{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border)}.share-link>div:first-child{flex:1 1 18rem}.share-link p{margin:0}.share-link .muted{font-size:var(--text-sm)}.share-link-row{display:flex;flex:1 1 20rem;gap:var(--space-2)}.share-link-row .input{flex:1;min-width:0;font-family:var(--font-mono);font-size:var(--text-sm)}.share-flash{margin:0;font-size:var(--text-sm)}.share-flash--ok{color:var(--success)}.share-flash--error{color:var(--danger)}.shared-missing{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3)}.shared-player{display:flex;align-items:baseline;gap:var(--space-2);width:var(--board-size, 100%);max-width:100%}.shared-summary{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--border)}.shared-score{display:grid;grid-template-columns:1fr auto;column-gap:var(--space-2);padding:var(--space-3) var(--space-4)}.shared-score+.shared-score{border-left:1px solid var(--border)}.shared-score .eyebrow{grid-column:1 / -1;margin:0}.shared-score-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.shared-score .lobby-num{grid-column:1;font-size:var(--text-xs)}.shared-score-value{grid-column:2;grid-row:2 / span 2;align-self:center;font:400 2rem/1 var(--font-display)}.shared-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border)}.review-cta-row{margin:var(--space-3) var(--space-4) 0}.review-cta-row .review-cta{margin:0}}@layer components{:root{--ease-out: cubic-bezier(.22, 1, .36, 1);--duration-fast: .12s;--duration: .2s;--duration-slow: .36s;--control-sm: 2rem;--control-md: 2.375rem;--control-lg: 2.875rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--z-dropdown: 30;--z-dialog: 60;--z-toast: 70;--ring: 0 0 0 3px color-mix(in oklab, var(--accent) 28%, transparent)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:var(--control-md);padding:0 .95rem;border:1px solid transparent;border-radius:var(--radius-md);background:var(--surface-2);color:var(--text);font:600 var(--text-sm) / 1 var(--font-sans);letter-spacing:.005em;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background var(--duration-fast) ease,border-color var(--duration-fast) ease,color var(--duration-fast) ease,box-shadow var(--duration-fast) ease,transform var(--duration-fast) ease}.btn svg{flex:none}.btn:focus-visible{outline:none;box-shadow:var(--ring)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn--sm{min-height:var(--control-sm);padding:0 .7rem;font-size:var(--text-xs);gap:.35rem}.btn--lg{min-height:var(--control-lg);padding:0 1.3rem;font-size:var(--text-base)}.btn--block{width:100%}.btn--secondary{background:var(--surface-1);border-color:var(--border-strong);color:var(--text)}.btn--secondary:hover:not(:disabled){background:var(--surface-2)}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);box-shadow:inset 0 1px #ffffff1f,0 1px 2px #0000001f}.btn--primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.btn--outline{background:transparent;border-color:var(--border-strong);color:var(--text)}.btn--outline:hover:not(:disabled){background:var(--surface-2);border-color:var(--text-subtle)}.btn--ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn--ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.btn--ink{background:var(--text);border-color:var(--text);color:var(--bg-base)}.btn--ink:hover:not(:disabled){background:color-mix(in oklab,var(--text) 86%,var(--accent));border-color:color-mix(in oklab,var(--text) 86%,var(--accent));color:var(--bg-base)}.btn--danger{background:transparent;border-color:color-mix(in oklab,var(--danger) 45%,transparent);color:var(--danger)}.btn--danger:hover:not(:disabled){background:var(--danger-soft)}.btn .spinner{width:.85rem;height:.85rem;border-top-color:currentColor}.icon-btn{display:inline-grid;place-items:center;flex:none;width:var(--control-md);height:var(--control-md);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast) ease,color var(--duration-fast) ease,border-color var(--duration-fast) ease}.icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.icon-btn:focus-visible{outline:none;box-shadow:var(--ring)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn--ghost{border-color:transparent;background:transparent}.icon-btn--secondary{background:var(--surface-2);border-color:transparent}.icon-btn--sm{width:var(--control-sm);height:var(--control-sm)}.icon-btn--lg{width:var(--control-lg);height:var(--control-lg)}.board-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.board-controls-nav{display:inline-flex;gap:0}.board-controls-nav .icon-btn{border-radius:0;margin-left:-1px}.board-controls-nav .icon-btn:first-child{margin-left:0;border-radius:var(--radius-md) 0 0 var(--radius-md)}.board-controls-nav .icon-btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.board-controls-nav .icon-btn:focus-visible{position:relative;z-index:1}.segmented{display:inline-flex;max-width:100%;padding:3px;gap:2px;border:1px solid var(--border);border-radius:calc(var(--radius-md) + 3px);background:var(--surface-2);overflow-x:auto;scrollbar-width:none}.segmented--wrap{flex-wrap:wrap;overflow:visible}.segmented-option{display:inline-flex;align-items:baseline;justify-content:center;gap:.4rem;min-height:calc(var(--control-md) - 8px);padding:0 .8rem;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font:500 var(--text-sm) / 1 var(--font-sans);white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) ease,color var(--duration-fast) ease,box-shadow var(--duration-fast) ease}.segmented-option>span:first-child{align-self:center}.segmented-option:hover:not(:disabled):not([aria-checked=true]){color:var(--text)}.segmented-option[aria-checked=true]{background:var(--surface-1);color:var(--accent);font-weight:600;box-shadow:0 1px 2px #00000014,0 0 0 1px color-mix(in oklab,var(--accent) 35%,transparent)}.segmented-option:focus-visible{outline:none;box-shadow:var(--ring)}.segmented-option:disabled{opacity:.45;cursor:not-allowed}.segmented-meta{font:500 .64rem / 1 var(--font-mono);letter-spacing:.06em;color:var(--text-subtle);text-transform:uppercase}.segmented--sm .segmented-option{min-height:calc(var(--control-sm) - 8px);padding:0 .6rem;font-size:var(--text-xs)}.tempo-chip,.chip{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:var(--control-sm);padding:0 .75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-muted);font:500 var(--text-sm) / 1 var(--font-sans);white-space:nowrap;cursor:pointer;transition:background var(--duration-fast) ease,color var(--duration-fast) ease,border-color var(--duration-fast) ease}.chip{font-size:var(--text-xs)}.tempo-chip:hover,.chip:hover{color:var(--text);border-color:var(--border-strong)}.tempo-chip--active,.tempo-chip[aria-checked=true],.tempo-chip[aria-selected=true],.chip--active,.chip[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.tempo-chip:focus-visible,.chip:focus-visible{outline:none;box-shadow:var(--ring)}.ui-tabs,.tabs{display:flex;gap:var(--space-4);padding:0 var(--space-4);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.ui-tabs--fill .ui-tab{flex:1}.ui-tab,.tab{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;flex:none;margin-bottom:-1px;padding:.8rem .1rem .7rem;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--text-muted);font:500 var(--text-sm) / 1 var(--font-sans);white-space:nowrap;cursor:pointer;transition:color var(--duration-fast) ease,border-color var(--duration-fast) ease}.ui-tab:hover,.tab:hover{color:var(--text)}.ui-tab[aria-selected=true],.tab[aria-selected=true]{border-bottom-color:var(--text);color:var(--text);font-weight:600}.ui-tab:focus-visible,.tab:focus-visible{outline:none;box-shadow:inset 0 -2px 0 var(--accent),var(--ring)}.ui-tab-count{min-width:1.2rem;padding:.15rem .35rem;border-radius:var(--radius-pill);background:var(--surface-3);font:500 .66rem / 1 var(--font-mono);color:var(--text-muted)}.page-header-ui{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3) var(--space-5);padding-bottom:var(--space-4);margin-bottom:var(--space-2)}.page-header-ui-text{display:flex;flex-direction:column;gap:.45rem;min-width:0;max-width:44rem}.page-header-ui .page-title{margin:0;text-wrap:balance}.page-header-ui-description{margin:0;color:var(--text-muted);font-size:var(--text-base);line-height:1.55;text-wrap:pretty}.page-header-ui-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.page-header-ui--compact{padding-bottom:var(--space-2)}.page-header-ui--compact .page-title{font-size:clamp(1.6rem,1.2rem + 1vw,2.1rem)}.page-title{font-family:var(--font-display);font-weight:400;line-height:1.05;letter-spacing:-.015em;text-wrap:balance}.eyebrow,.section-title{font:600 .69rem / 1.25 var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle)}.section-title{margin:0}.eyebrow--accent{color:var(--accent)}.tabular,.lobby-num,.num{font-variant-numeric:tabular-nums}.badge,.tag{display:inline-flex;align-items:center;gap:.3rem;height:1.3rem;padding:0 .45rem;border-radius:var(--radius-sm);background:var(--surface-3);color:var(--text-muted);font:500 .68rem / 1 var(--font-mono);letter-spacing:.02em;white-space:nowrap;vertical-align:middle}.badge--accent,.tag--accent{background:var(--accent-soft);color:var(--accent)}.badge--success,.tag--win{background:var(--success-soft);color:var(--success)}.badge--warning{background:var(--warning-soft);color:var(--warning)}.badge--danger,.tag--loss{background:var(--danger-soft);color:var(--danger)}.badge--live:before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:var(--success)}.badge--live{background:var(--success-soft);color:var(--success)}.avatar{--avatar-hue: var(--text-muted);display:inline-grid;place-items:center;flex:none;width:2.25rem;height:2.25rem;border-radius:50%;background:color-mix(in oklab,var(--avatar-hue) 16%,var(--surface-1));color:color-mix(in oklab,var(--avatar-hue) 85%,var(--text));box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--avatar-hue) 22%,transparent);font:600 .8rem / 1 var(--font-sans);letter-spacing:.02em;-webkit-user-select:none;user-select:none}.avatar--xs{width:1.4rem;height:1.4rem;font-size:.56rem}.avatar--sm{width:1.9rem;height:1.9rem;font-size:.7rem}.avatar--lg{width:3rem;height:3rem;font-size:1rem}.avatar--navy{--avatar-hue: oklch(.45 .1 262)}.avatar--teal{--avatar-hue: oklch(.55 .08 195)}.avatar--olive{--avatar-hue: oklch(.55 .09 120)}.avatar--rust{--avatar-hue: oklch(.55 .13 40)}.avatar--slate{--avatar-hue: oklch(.5 .03 250)}.avatar--sand{--avatar-hue: oklch(.62 .09 75)}.avatar--moss{--avatar-hue: oklch(.5 .08 150)}.avatar--clay{--avatar-hue: oklch(.52 .08 20)}:root:not([data-theme=light]) .avatar{background:color-mix(in oklab,var(--avatar-hue) 28%,var(--surface-2));color:color-mix(in oklab,var(--avatar-hue) 40%,white)}.player-avatar,.bot-avatar{font-size:.7rem}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);text-align:center}.empty-state--compact{padding:var(--space-4);border:0}.empty-state-icon{display:grid;place-items:center;width:2.75rem;height:2.75rem;margin-bottom:var(--space-1);border-radius:50%;background:var(--surface-2);color:var(--text-muted)}.empty-state-title{margin:0;font-weight:600;color:var(--text)}.empty-state-description{margin:0;max-width:34rem;color:var(--text-muted);font-size:var(--text-sm);text-wrap:pretty}.empty-state-action{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-top:var(--space-2)}.skeleton{display:block;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-3) 40%,var(--surface-2) 80%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-rows{display:flex;flex-direction:column;gap:var(--space-2)}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-dialog);display:grid;place-items:center;padding:var(--space-4);background:color-mix(in oklab,var(--bg-base) 30%,rgb(10 14 22 / .62));-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);overflow-y:auto;animation:fade-in var(--duration) ease}.dialog{display:flex;flex-direction:column;width:min(100%,34rem);max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:0 30px 80px -20px #00000073;animation:dialog-in var(--duration-slow) var(--ease-out)}.dialog--sm{width:min(100%,26rem)}.dialog--lg{width:min(100%,54rem)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-3)}.dialog-head .eyebrow{margin-bottom:.35rem}.dialog-title{margin:0;font:600 var(--text-lg) / 1.3 var(--font-sans);letter-spacing:-.005em}.dialog-body{padding:0 var(--space-5) var(--space-5);overflow-y:auto}.dialog-foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border)}@keyframes fade-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px) scale(.985)}}.toast-region{position:fixed;right:var(--space-5);bottom:var(--space-5);z-index:var(--z-toast);display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2);pointer-events:none}.toast{display:flex;align-items:center;gap:.6rem;max-width:min(26rem,calc(100vw - 2rem));padding:.7rem .6rem .7rem .9rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--text);color:var(--bg-base);font-size:var(--text-sm);box-shadow:0 16px 40px -16px #00000080;pointer-events:auto;animation:toast-in var(--duration-slow) var(--ease-out)}.toast--success svg:first-child{color:color-mix(in oklab,var(--success) 60%,var(--bg-base))}.toast--error svg:first-child{color:color-mix(in oklab,var(--danger) 70%,var(--bg-base))}.toast-close{display:grid;place-items:center;width:1.5rem;height:1.5rem;margin-left:var(--space-1);border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;opacity:.6;cursor:pointer}.toast-close:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.banner{border-radius:var(--radius-md);line-height:1.45}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.data-table th{padding:0 var(--space-3) var(--space-2);border-bottom:1px solid var(--border-strong);font:600 .66rem / 1.2 var(--font-mono);letter-spacing:.12em;text-align:left;text-transform:uppercase;color:var(--text-subtle);white-space:nowrap}.data-table td{height:3rem;padding:0 var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}.data-table tbody tr{transition:background var(--duration-fast) ease}.data-table tbody tr:hover{background:color-mix(in oklab,var(--surface-2) 70%,transparent)}.data-table .num{text-align:right}.data-table .shrink{width:1%;white-space:nowrap}.is-flipped{transform:rotate(180deg)}::selection{background:color-mix(in oklab,var(--accent) 22%,transparent)}.player-avatar,.bot-initial,.move-compare-head strong,.arena-live-name,.progress-heading,.share-head h2{font-family:var(--font-sans);font-weight:600;letter-spacing:-.01em}.progress-heading,.arena-live-name{font-size:var(--text-lg)}.puzzle-brief-title{font-family:var(--font-sans);font-weight:600;font-size:var(--text-lg);letter-spacing:-.01em}.progress-stat strong,.rated-card-value,.shared-score-value,.arena-podium-block{font-family:var(--font-sans);font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.lobby-num,.tag,.badge,.segmented-meta,.nav-meta{font-family:var(--font-sans);font-variant-numeric:tabular-nums}@media (min-width: 1025px){.game-layout{grid-template-columns:auto var(--panel-width);justify-content:start;align-items:stretch;column-gap:var(--space-6)}.board-stage{width:calc(var(--board-size, 0px) + var(--stage-side, 0px));max-width:none;margin-inline:0;align-items:stretch}}.side-panel{overflow-y:auto}.game-head{align-items:flex-end;gap:var(--space-2) var(--space-5);padding-bottom:var(--space-4)}.game-head>div{display:flex;flex-direction:column;gap:.3rem;min-width:0}.game-head .page-title{margin:0}.game-head>.eyebrow{margin:0;padding-bottom:.3rem}.learn-head{gap:.45rem;padding-bottom:var(--space-4)}.learn-head .muted{max-width:44rem;font-size:var(--text-base);line-height:1.55}.panel-status{font:600 var(--text-sm) / 1.35 var(--font-sans);letter-spacing:0;text-transform:none;color:var(--text)}.panel-status--over{color:var(--warning)}.bar-hint-step{padding:.1rem .35rem;border-radius:var(--radius-pill);background:var(--surface-3);font-size:.66rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.bar-hint-answer{display:inline-flex;align-items:center;gap:.4rem}.coach-bar-level{gap:var(--space-2)}.btn--hint{background:transparent;border-color:var(--border-strong);color:var(--text)}.btn--hint:before{content:"";width:15px;height:15px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5'/%3E%3Cpath d='M9 18h6'/%3E%3Cpath d='M10 22h4'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5'/%3E%3Cpath d='M9 18h6'/%3E%3Cpath d='M10 22h4'/%3E%3C/svg%3E") center / contain no-repeat}.btn--hint:hover:not(:disabled){background:var(--surface-2);border-color:var(--text-subtle)}.puzzle-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.puzzle-actions .spacer{flex:1}.puzzle-score-value{font-family:var(--font-sans);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.puzzle-score-value--streak{color:var(--success)}.review-panel .segmented{width:100%}.review-panel .segmented-option{flex:1}.puzzle-actions{gap:var(--space-1)}.review-panel .segmented-option{padding:0 .3rem;font-size:.72rem}.app-main{padding-bottom:var(--space-5)}.app-sidebar{gap:var(--space-4);padding:var(--space-5) var(--space-3) var(--space-3);background:var(--surface-2)}.brand{display:inline-flex;align-items:center;gap:.6rem;padding:0 var(--space-3);font:700 .74rem / 1 var(--font-sans);letter-spacing:.2em;color:var(--text)}.brand-mark{width:14px;height:14px;border-radius:2px;background:conic-gradient(var(--text) 0 25%,transparent 0 50%,var(--text) 0 75%,transparent 0) 0 0 / 100% 100%;box-shadow:inset 0 0 0 1.5px var(--text)}.app-nav{gap:var(--space-4);overflow-y:auto;scrollbar-width:none}.nav-group{display:flex;flex-direction:column;gap:1px}.nav-group-label{margin:0 0 .3rem;padding:0 var(--space-3);font:600 .64rem / 1 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:var(--text-subtle)}.nav-link{justify-content:flex-start;gap:.65rem;min-height:2.1rem;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font:500 var(--text-sm) / 1 var(--font-sans)}.nav-icon{flex:none;color:var(--text-subtle);transition:color var(--duration-fast) ease}.nav-label{flex:1}.nav-link:hover .nav-icon{color:var(--text)}.nav-link[aria-current=page],.nav-link.active{background:var(--surface-1);color:var(--text);font-weight:600;box-shadow:0 0 0 1px var(--border),0 1px 2px #0000000a}.nav-link[aria-current=page] .nav-icon,.nav-link.active .nav-icon{color:var(--accent)}.nav-meta{font-size:.6rem;letter-spacing:.08em}.sidebar-footer{gap:var(--space-2);padding-top:var(--space-3)}.sidebar-tools{display:flex;align-items:center;gap:2px;padding:0 var(--space-1)}.sidebar-tools .sidebar-legal{margin-left:auto}.account{position:relative}.account-trigger{display:flex;align-items:center;gap:.6rem;width:100%;padding:.45rem var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:background var(--duration-fast) ease,border-color var(--duration-fast) ease}.account-trigger:hover,.account-trigger[aria-expanded=true]{background:var(--surface-1);border-color:var(--border)}.account-trigger:focus-visible{outline:none;box-shadow:var(--ring)}.account-text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.account-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);font-weight:600}.account-text small{color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.account-chevron{flex:none;color:var(--text-subtle)}.account-menu{position:absolute;right:0;bottom:calc(100% + 6px);left:0;z-index:var(--z-dropdown);display:flex;flex-direction:column;padding:4px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:0 16px 40px -12px #00000047;animation:dialog-in var(--duration) var(--ease-out)}.account-item{display:flex;align-items:center;gap:.6rem;min-height:2.1rem;padding:0 .6rem;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text);font:500 var(--text-sm) / 1 var(--font-sans);text-align:left;cursor:pointer}.account-item svg{color:var(--text-subtle)}.account-item:hover,.account-item:focus-visible{outline:none;background:var(--surface-2)}.account-divider{margin:4px 0;border:0;border-top:1px solid var(--border)}@media (max-width: 899px){.nav-group{flex-direction:row}.nav-group-label,.account-text,.account-chevron{display:none}.app-nav{flex-direction:row;gap:var(--space-2)}.account-menu{top:calc(100% + 6px);bottom:auto;left:auto;width:12rem}}.app-main{width:100%;max-width:78rem;margin:0 auto;padding:var(--space-5) var(--space-6)}.history-page,.settings-page,.licenses-page,.leaderboard-page,.arenas-page,.arena-page,.import-page,.progress-page{margin-inline:0}.history-page{max-width:56rem}.brand{margin-bottom:var(--space-2)}.leaderboard-table td{height:3.1rem}.leaderboard-name{display:flex;align-items:center;gap:.6rem;height:3.1rem}.leaderboard-page>.segmented{align-self:flex-start}.arenas-main section>.progress-heading,.arena-side .progress-heading{margin-bottom:var(--space-3)}.arena-board-link{display:flex;flex-direction:column;gap:var(--space-2)}.page-header-ui-text{flex:1 1 26rem}.leaderboard-name{height:auto}.leaderboard-table td:has(.leaderboard-name){font-weight:600}.player-clock{font-family:var(--font-sans);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.settings-account{display:flex;flex-direction:column;gap:var(--space-2);max-width:34rem}.settings-account-row{display:flex;gap:var(--space-2)}.settings-account-row .input{flex:1;min-width:0}.input{min-height:var(--control-md);border-color:var(--border-strong);background:var(--surface-1);transition:border-color var(--duration-fast) ease,box-shadow var(--duration-fast) ease}.input:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}.auth-hint{color:var(--text-subtle);font-size:var(--text-xs);font-weight:400}.auth-quote-sub{margin:var(--space-3) 0 0;max-width:26rem;color:var(--text-muted);font-size:var(--text-base);line-height:1.55}.auth-aside{justify-content:flex-start}.auth-board{display:flex;flex-direction:column;gap:var(--space-3);width:min(100%,23rem);margin:auto 0 0}.auth-board figcaption{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.auth-board figcaption strong{margin-right:.4rem;font-family:var(--font-mono);font-weight:600;color:var(--text)}.auth-quote{margin-top:var(--space-5)}.field-label{font:600 .69rem / 1.25 var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.settings-block>.segmented{align-self:flex-start}.import-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none;counter-reset:step}.import-steps li{display:flex;flex-direction:column;gap:.35rem;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);counter-increment:step}.import-steps li:before{content:counter(step);display:grid;place-items:center;width:1.6rem;height:1.6rem;margin-bottom:var(--space-2);border-radius:50%;background:var(--accent-soft);color:var(--accent);font:600 var(--text-xs) / 1 var(--font-sans)}.import-steps span{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.progress-sync{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-subtle);font-size:var(--text-xs)}@media (max-width: 900px){.import-steps{grid-template-columns:1fr}}.btn:disabled:not([aria-busy=true]),.btn[aria-disabled=true]{opacity:1;background:var(--surface-3);border-color:transparent;color:var(--text-subtle);box-shadow:none}.btn--ghost:disabled:not([aria-busy=true]){background:transparent}.lobby-table th,.import-table th,.arena-table th,.leaderboard-table th,.lobby-chat .chat-author,.coach-quality,.coach-facts dt,.hint-steps li,.import-outcome,.arena-paused,.review-panel .training-plan .section-title{font-family:var(--font-sans);font-weight:600;letter-spacing:.06em}.bot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-feature-title{font-family:var(--font-sans);font-weight:600;font-size:var(--text-lg);letter-spacing:-.01em}.learn-book-list li{grid-template-columns:1.1rem minmax(0,1fr) auto;align-items:center}.learn-book-check{display:grid;place-items:center;width:1.1rem;height:1.1rem;border:1.5px solid var(--border-strong);border-radius:50%}.learn-book-check.is-done{border-color:var(--success);background:var(--success);color:var(--surface-1)}.learn-book .nav-meta{text-transform:none;letter-spacing:0;font-size:var(--text-xs);font-weight:500}@media (max-width: 1200px){.bot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.bot-select-foot{position:sticky;bottom:0;z-index:5;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-inline:calc(var(--space-6) * -1);padding:var(--space-3) var(--space-6);border-top:1px solid var(--border);background:color-mix(in oklab,var(--bg-base) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.coach-bar-actions{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-md)}.board-frame [data-piece]{transition-timing-function:cubic-bezier(.22,1,.36,1)!important}.board-frame--interactive [data-piece] svg{transition:transform var(--duration-fast) ease,filter var(--duration-fast) ease}.board-frame div[style*="position: fixed"] svg{transform:scale(1.14) translateY(-4%);filter:drop-shadow(0 12px 10px rgb(15 23 42 / .35)) drop-shadow(0 2px 2px rgb(15 23 42 / .25));cursor:grabbing}.capture-ghost{position:absolute;z-index:0;pointer-events:none;animation:capture-fade .42s cubic-bezier(.4,0,1,1) forwards}@keyframes capture-fade{0%{opacity:.9;transform:scale(1);filter:blur(0)}to{opacity:0;transform:scale(1.35);filter:blur(2px)}}@keyframes check-pulse{0%{box-shadow:inset 0 0 0 3px #be2d2dd9,0 0 #be2d2d8c}60%{box-shadow:inset 0 0 0 3px #be2d2dd9,inset 0 0 0 14px #be2d2d40}to{box-shadow:inset 0 0 0 3px #be2d2dd9}}@media (prefers-reduced-motion: reduce){.capture-ghost{display:none}.board-frame div[style*="position: fixed"] svg{transform:none}}.game-over-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:6%;background:color-mix(in oklab,var(--bg-base) 38%,transparent);-webkit-backdrop-filter:blur(2px) saturate(.85);backdrop-filter:blur(2px) saturate(.85);animation:fade-in .32s ease both}.game-over{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);width:min(100%,23rem);max-height:100%;overflow-y:auto;padding:var(--space-5) var(--space-5) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:0 30px 70px -24px #0a0f198c;text-align:center;outline:none;animation:game-over-in .52s var(--ease-out) .12s both}.game-over:before{content:"";position:absolute;inset:0 0 auto;height:3px;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--text-subtle)}.game-over--win:before{background:var(--success)}.game-over--loss:before{background:var(--danger)}.game-over--draw:before{background:var(--accent)}@keyframes game-over-in{0%{opacity:0;transform:translateY(14px) scale(.96)}}.game-over-close{position:absolute;top:var(--space-2);right:var(--space-2);display:grid;place-items:center;width:1.9rem;height:1.9rem;border:0;border-radius:var(--radius-md);background:transparent;color:var(--text-subtle);cursor:pointer}.game-over-close:hover{background:var(--surface-2);color:var(--text)}.game-over-icon{display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:50%;background:var(--surface-2);color:var(--text-muted);animation:game-over-pop .6s var(--ease-out) .26s both}.game-over--win .game-over-icon{background:var(--success-soft);color:var(--success)}.game-over--loss .game-over-icon{background:var(--danger-soft);color:var(--danger)}.game-over--draw .game-over-icon{background:var(--accent-soft);color:var(--accent)}@keyframes game-over-pop{0%{opacity:0;transform:scale(.4) rotate(-12deg)}70%{opacity:1;transform:scale(1.08) rotate(2deg)}to{transform:scale(1) rotate(0)}}.game-over-title{margin:var(--space-1) 0 0;font:400 2.1rem / 1.05 var(--font-display);letter-spacing:-.015em}.game-over-detail{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.game-over-players{display:flex;flex-direction:column;width:100%;margin:var(--space-3) 0 0;padding:0;border-top:1px solid var(--border);list-style:none}.game-over-players li{display:flex;align-items:center;gap:.6rem;padding:.55rem .25rem;border-bottom:1px solid var(--border);text-align:left}.game-over-player{display:flex;flex:1;flex-direction:column;min-width:0}.game-over-player strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm)}.game-over-player small{color:var(--text-subtle);font-size:var(--text-xs)}.game-over-players li.is-you .game-over-player strong:after{content:"sen";margin-left:.4rem;padding:.05rem .35rem;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);font-size:.62rem;font-weight:600;vertical-align:1px}.game-over-accuracy{color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.game-over-score{width:1.6rem;font:600 1.25rem / 1 var(--font-sans);text-align:right;font-variant-numeric:tabular-nums}.game-over-rating{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--text-sm)}.game-over-rating strong{color:var(--text);font:600 1.6rem / 1 var(--font-sans);font-variant-numeric:tabular-nums}.game-over-delta{font-weight:600;font-variant-numeric:tabular-nums}.game-over-rating.is-up .game-over-delta{color:var(--success)}.game-over-rating.is-down .game-over-delta{color:var(--danger)}.game-over-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-1);width:100%;margin:var(--space-2) 0 0}.game-over-stats div{display:flex;flex-direction:column-reverse;gap:2px;padding:.45rem .2rem;border-radius:var(--radius-md);background:var(--surface-2)}.game-over-stats dt{color:var(--text-subtle);font-size:.62rem;font-weight:500}.game-over-stats dd{margin:0;font:600 1.05rem / 1 var(--font-sans);font-variant-numeric:tabular-nums}.game-over-stats .is-good dd{color:var(--success)}.game-over-stats .is-bad dd{color:var(--danger)}.game-over-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);width:100%;margin-top:var(--space-3)}.game-over-actions .btn--primary{flex:1 1 100%}@media (prefers-reduced-motion: reduce){.game-over,.game-over-icon,.game-over-scrim{animation:none}}.arena-table tbody tr{position:relative}.arena-table tr.is-bumped td{animation:arena-bump 1.4s ease-out}.arena-table tr.is-bumped .arena-score{animation:arena-score-pop .7s var(--ease-out);color:var(--success)}@keyframes arena-bump{0%,30%{background:var(--success-soft)}to{background:transparent}}@keyframes arena-score-pop{0%{transform:scale(1)}35%{transform:scale(1.35)}to{transform:scale(1)}}.arena-score{display:table-cell;transform-origin:right center}.arena-fire{display:inline-grid;animation:arena-flame 1.8s ease-in-out infinite;transform-origin:50% 90%}@keyframes arena-flame{0%,to{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0 transparent)}30%{transform:scale(1.12,1.18) rotate(-4deg);filter:drop-shadow(0 0 3px color-mix(in oklab,var(--orange) 60%,transparent))}60%{transform:scale(.96,1.05) rotate(3deg)}}.arena-sheet-cell.is-fire{box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--orange) 40%,transparent)}@media (prefers-reduced-motion: reduce){.arena-fire,.arena-table tr.is-bumped td,.arena-table tr.is-bumped .arena-score{animation:none}}.rush-start{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:10%;background:color-mix(in oklab,var(--bg-base) 72%,transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-align:center}.rush-start-clock{display:grid;place-items:center;width:3.4rem;height:3.4rem;border-radius:50%;background:var(--surface-1);color:var(--accent);box-shadow:0 0 0 1px var(--border)}.rush-start-title{margin:0;font:400 4rem / 1 var(--font-display);letter-spacing:-.02em}.rush-start-text{max-width:20rem;margin:0 0 var(--space-3);color:var(--text-muted)}.rush-start-best{margin:var(--space-2) 0 0;color:var(--text-subtle);font-size:var(--text-sm)}.public-shell{min-height:100vh;min-height:100dvh;background:var(--bg-base)}.public-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--border)}.public-top .brand{margin:0;padding:0}.public-top-actions{display:flex;gap:var(--space-2)}.public-main{max-width:84rem;margin-inline:auto}.duel-strikes{display:flex;align-items:center;gap:5px}.duel-strikes .eyebrow{margin-left:var(--space-2)}.board-stage:has(.rush-start) .duel-hud{visibility:hidden}.confetti-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;border-radius:1px;will-change:transform,opacity}.today-page{display:flex;flex-direction:column;gap:var(--space-5);max-width:72rem}.today-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-4)}.today-head>div{display:flex;flex-direction:column;gap:.45rem}.today-head .page-title{margin:0}.today-streak{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:.6rem;align-items:center;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text-subtle)}.today-streak svg{grid-row:span 2}.today-streak strong{color:var(--text);font:600 1.6rem / 1 var(--font-sans);font-variant-numeric:tabular-nums}.today-streak span{font-size:var(--text-xs)}.today-streak.is-done{border-color:color-mix(in oklab,var(--orange) 45%,transparent);background:var(--orange-soft);color:var(--orange)}.today-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(17rem,21rem);gap:var(--space-4);align-items:start}.today-main,.today-side{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.today-hero{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:radial-gradient(120% 140% at 100% 0%,var(--accent-soft),transparent 55%),var(--surface-1)}.today-hero-title{margin:0;font:400 clamp(1.9rem,1.4rem + 1.3vw,2.6rem) / 1.05 var(--font-display);letter-spacing:-.015em}.today-hero-text{max-width:36rem;margin:0;color:var(--text-muted);line-height:1.55}.today-hero-actions,.today-card-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.today-progress{display:block;max-width:24rem;height:4px;margin-top:var(--space-2);border-radius:2px;background:var(--surface-3);overflow:hidden}.today-progress>span{display:block;height:100%;background:var(--accent);border-radius:inherit}.today-progress--thin{height:3px;margin-top:.35rem}.today-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-4)}.today-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text);text-decoration:none}a.today-card{transition:border-color var(--duration-fast) ease,box-shadow var(--duration-fast) ease,transform var(--duration-fast) ease}a.today-card:hover{border-color:var(--border-strong);box-shadow:0 10px 30px -18px #0f172a59;transform:translateY(-1px)}.today-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.today-card-meta{color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.today-daily-board{aspect-ratio:1;width:100%;max-width:100%;pointer-events:none}.today-card-foot{display:flex;align-items:center;justify-content:space-between;margin:0;font-size:var(--text-sm)}.today-card-foot span{color:var(--text-subtle);font-variant-numeric:tabular-nums}.today-last-title{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;font-weight:600;font-size:var(--text-lg)}.today-link{display:inline-flex;align-items:center;gap:.3rem;color:var(--accent);font-size:var(--text-sm);font-weight:600}.streak-calendar{display:grid;grid-template-rows:repeat(7,1fr);grid-auto-flow:column;gap:3px}.streak-cell{display:inline-block;aspect-ratio:1;min-width:10px;border-radius:2px;background:var(--surface-3)}.streak-cell--1{background:color-mix(in oklab,var(--accent) 30%,var(--surface-2))}.streak-cell--2{background:color-mix(in oklab,var(--accent) 60%,var(--surface-2))}.streak-cell--3{background:var(--accent)}.streak-cell--future{background:transparent;box-shadow:inset 0 0 0 1px var(--border)}.streak-legend{display:flex;align-items:center;justify-content:flex-end;gap:3px;margin:0;color:var(--text-subtle);font-size:.66rem}.streak-legend .streak-cell{width:10px}.badge-row{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.badge-medal{display:grid;place-items:center;flex:none;width:2.1rem;height:2.1rem;border-radius:50%;background:color-mix(in oklab,#d6a63c 22%,var(--surface-1));color:color-mix(in oklab,#a8781c 85%,var(--text));box-shadow:inset 0 0 0 1.5px color-mix(in oklab,#d6a63c 60%,transparent)}.badge-next{display:flex;flex-direction:column;gap:var(--space-3);margin:var(--space-1) 0 0;padding:0;list-style:none}.badge-next li{display:flex;gap:.65rem}.badge-next-text{display:flex;flex:1;flex-direction:column;min-width:0}.badge-next-text strong{font-size:var(--text-sm)}.badge-next-text small{color:var(--text-muted);font-size:var(--text-xs)}.today-rating-value{display:flex;align-items:baseline;gap:.6rem;margin:0}.today-rating-value strong{font:600 1.8rem / 1 var(--font-sans);font-variant-numeric:tabular-nums}.today-rating-value span{color:var(--text-subtle);font-size:var(--text-xs)}.today-spark{width:100%;height:48px}.today-spark-area{fill:var(--accent-soft)}.today-spark-line{fill:none;stroke:var(--accent);stroke-width:1.75;vector-effect:non-scaling-stroke}.today-spark-dot{fill:var(--accent)}.today-spark-empty{font-size:var(--text-xs)}@media (max-width: 1100px){.today-grid{grid-template-columns:1fr}}@media (max-width: 760px){.today-pair{grid-template-columns:1fr}}.today-pair{align-items:start}.review-graph-card{gap:var(--space-2);padding:var(--space-3) var(--space-4) var(--space-4);border-radius:var(--radius-lg)}.eval-graph-wrap{display:flex;flex-direction:column;gap:var(--space-2)}.eval-graph-readout{display:flex;align-items:baseline;gap:var(--space-2);min-height:1.4rem;font-size:var(--text-sm)}.eval-graph-readout strong{font-family:var(--font-mono);font-weight:600}.eval-graph-readout span{padding:.1rem .4rem;border-radius:var(--radius-sm);font-weight:600;font-variant-numeric:tabular-nums}.eval-graph-readout .is-white{background:#f4f1ea;color:#1b2432;box-shadow:inset 0 0 0 1px var(--border)}.eval-graph-readout .is-black{background:#1b2432;color:#f4f1ea}.eval-graph-readout small{margin-left:auto;color:var(--text-subtle);font-size:var(--text-xs)}.eval-graph{height:7.5rem;border-radius:var(--radius-md);background:#1f2632;cursor:crosshair}.eval-graph-white-area{fill:#f1ede4}.eval-graph-line{stroke:color-mix(in oklab,var(--accent) 70%,#1b2432);stroke-width:1.5}.eval-graph-mid{stroke:#8b93a0;stroke-opacity:.6}.eval-graph-phase{fill:transparent}.eval-graph-phase-edge{stroke:#8b93a0;stroke-opacity:.45;stroke-dasharray:2 3;vector-effect:non-scaling-stroke}.eval-graph-cursor{stroke:var(--accent);stroke-width:2}.eval-graph-hover{stroke:#8b93a0;stroke-width:1;vector-effect:non-scaling-stroke}.eval-graph-hover-dot{fill:var(--accent);stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke}.eval-graph-dot{fill:var(--quality-zayif);stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke}.eval-graph-dot--hata{fill:var(--quality-hata)}.eval-graph-dot--orta{fill:var(--quality-orta)}.eval-graph-phases{display:flex;color:var(--text-subtle);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase}.eval-graph-phases span{overflow:hidden;white-space:nowrap;text-overflow:clip}.review-moments{display:flex;flex-wrap:wrap;gap:6px;padding-top:var(--space-2);border-top:1px solid var(--border)}.review-moment-chip{display:inline-flex;align-items:center;gap:.3rem;min-height:1.8rem;padding:0 .55rem 0 .45rem;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-1);color:var(--text);font:500 var(--text-xs) / 1 var(--font-mono);cursor:pointer}.review-moment-chip:before{content:"";width:.55rem;height:.55rem;border-radius:50%;background:var(--quality-zayif)}.review-moment-chip--hata:before{background:var(--quality-hata)}.review-moment-chip--orta:before{background:var(--quality-orta)}.review-moment-chip:not(.is-player){color:var(--text-muted)}.review-moment-chip:hover{border-color:var(--border-strong)}.review-moment-chip.is-active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.review-ply-label{font:600 var(--text-sm) var(--font-mono);color:var(--text-muted)}.review-practice{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in oklab,var(--accent) 35%,var(--border));border-radius:var(--radius-lg);background:var(--accent-soft);animation:fade-in var(--duration) ease}.review-practice p{flex:1;margin:0;font-size:var(--text-sm)}.review-practice-icon{display:grid;place-items:center;flex:none;width:2rem;height:2rem;border-radius:50%;background:var(--surface-1);color:var(--accent)}.review-practice.is-wrong{border-color:color-mix(in oklab,var(--danger) 40%,transparent);background:var(--danger-soft);animation:review-shake .36s ease}.review-practice.is-wrong .review-practice-icon{color:var(--danger)}.review-practice.is-done{border-color:color-mix(in oklab,var(--success) 40%,transparent);background:var(--success-soft)}.review-practice.is-done .review-practice-icon{background:var(--success);color:#fff}@keyframes review-shake{20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.review-summary{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border)}.review-summary .eyebrow{margin:0}.review-summary-scores{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.review-summary-scores>div{display:flex;flex-direction:column;gap:.3rem;min-width:0}.review-summary-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:var(--text-xs)}.review-summary-big{font:600 2.2rem / 1 var(--font-sans);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.review-summary-big--muted{color:var(--text-muted)}.review-summary-bar{display:block;height:4px;border-radius:2px;background:var(--surface-3);overflow:hidden}.review-summary-bar>span{display:block;height:100%;background:var(--accent);transition:width .9s var(--ease-out)}.review-summary-bar--muted>span{background:var(--text-subtle)}.review-phases{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:0}.review-phase{display:flex;flex-direction:column;gap:2px;padding:.5rem .6rem;border-radius:var(--radius-md);background:var(--surface-2)}.review-phase dt{color:var(--text-subtle);font-size:.66rem}.review-phase dd{margin:0;font:600 var(--text-lg) / 1.1 var(--font-sans);font-variant-numeric:tabular-nums}.review-phase--good dd{color:var(--success)}.review-phase--mid dd{color:var(--warning)}.review-phase--bad dd{color:var(--danger)}.review-phase--none dd{color:var(--text-subtle)}.quality-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:0;padding:0;list-style:none}.quality-strip li{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:.3rem;padding:.35rem .4rem;border-radius:var(--radius-sm);background:var(--surface-2)}.quality-strip strong{font-size:var(--text-sm);font-variant-numeric:tabular-nums}.quality-strip small{grid-column:1 / -1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-subtle);font-size:.6rem}.review-panel .review-graph-card{padding:var(--space-3) var(--space-4) var(--space-4);border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent}.review-panel .eval-graph{height:6rem}.quality-strip li{padding:.35rem .3rem}.quality-strip small{font-size:.56rem;text-overflow:clip}.welcome-page{display:flex;justify-content:center;padding-block:var(--space-6)}.welcome-intro,.welcome-result{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);width:min(100%,44rem);text-align:center}.welcome-intro .page-title{margin:0;font-size:clamp(2.2rem,1.6rem + 2vw,3.2rem)}.welcome-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);width:100%;margin-top:var(--space-4)}.welcome-choice{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text);text-align:left;cursor:pointer;transition:border-color var(--duration-fast) ease,transform var(--duration-fast) ease,box-shadow var(--duration-fast) ease}.welcome-choice:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 14px 30px -20px #0f172a66}.welcome-choice strong{font-size:var(--text-lg)}.welcome-choice span:not(.welcome-choice-icon){color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.welcome-choice--primary{border-color:color-mix(in oklab,var(--accent) 40%,var(--border));background:linear-gradient(160deg,var(--accent-soft),transparent 60%),var(--surface-1)}.welcome-choice-arrow{position:absolute;top:var(--space-5);right:var(--space-4);color:var(--text-subtle)}.welcome-choice-icon{display:grid;place-items:center;flex:none;width:2.6rem;height:2.6rem;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.welcome-skip{border:0;background:transparent;color:var(--text-subtle);font-size:var(--text-sm);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.welcome-check{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);width:min(100%,34rem)}.welcome-check-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);width:100%}.welcome-check-head>div{display:flex;flex-direction:column;gap:.3rem}.welcome-check-title{margin:0;font:600 var(--text-xl) / 1.2 var(--font-sans)}.welcome-dots{display:flex;gap:6px;margin:0;padding:0;list-style:none}.welcome-dots li{display:grid;place-items:center;width:1.3rem;height:1.3rem;border-radius:50%;background:var(--surface-3);color:#fff}.welcome-dots li.is-current{box-shadow:inset 0 0 0 2px var(--accent);background:transparent}.welcome-dots li.is-ok{background:var(--success)}.welcome-dots li.is-miss{background:var(--danger)}.welcome-board{width:min(100%,34rem,calc(100vh - 16rem));aspect-ratio:1;border-radius:var(--radius-md);transition:box-shadow var(--duration) ease}.welcome-board.is-ok{box-shadow:0 0 0 3px var(--success)}.welcome-board.is-miss{box-shadow:0 0 0 3px var(--danger)}.welcome-feedback{min-height:1.4rem;margin:0;font-weight:600}.welcome-result-level{margin:0;font:400 6rem / 1 var(--font-display);letter-spacing:-.03em;animation:game-over-pop .7s var(--ease-out) both}.welcome-recommend{display:flex;flex-direction:column;gap:var(--space-2);width:min(100%,30rem);margin:var(--space-3) 0;text-align:left}.welcome-rec{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text)}.welcome-rec:hover{border-color:var(--border-strong)}.welcome-rec>span:nth-child(2){display:flex;flex:1;flex-direction:column}.welcome-rec small,.today-onboard small{color:var(--text-subtle);font-size:var(--text-xs)}.today-onboard{flex-direction:row;align-items:center;gap:var(--space-3);border-color:color-mix(in oklab,var(--accent) 40%,var(--border))}.today-onboard>span:nth-child(2){display:flex;flex:1;flex-direction:column}@media (max-width: 700px){.welcome-choices{grid-template-columns:1fr}}.tip-anchor{position:relative;display:inline-flex;max-width:100%}.review-summary .tip-anchor{display:flex}.review-summary .tip-anchor>.btn{flex:1}.tip{position:absolute;z-index:var(--z-dropdown);display:flex;flex-direction:column;gap:.4rem;width:max-content;max-width:17rem;padding:.75rem .85rem;border-radius:var(--radius-lg);background:var(--text);color:var(--bg-base);box-shadow:0 18px 40px -16px #00000080;text-align:left;animation:dialog-in var(--duration-slow) var(--ease-out)}.tip:after{content:"";position:absolute;width:10px;height:10px;background:inherit;transform:rotate(45deg)}.tip--bottom{top:calc(100% + 10px)}.tip--bottom:after{top:-5px}.tip--top{bottom:calc(100% + 10px)}.tip--top:after{bottom:-5px}.tip--start{left:0}.tip--start:after{left:18px}.tip--end{right:0}.tip--end:after{right:18px}.tip-head{display:flex;align-items:center;gap:.4rem;font-size:var(--text-sm)}.tip-head strong{flex:1}.tip-close{display:grid;place-items:center;width:1.3rem;height:1.3rem;border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;opacity:.6;cursor:pointer}.tip-body{font-size:var(--text-xs);line-height:1.5;opacity:.85;white-space:normal}.tip-ok{align-self:flex-end;padding:.25rem .6rem;border:0;border-radius:var(--radius-sm);background:color-mix(in oklab,var(--bg-base) 18%,transparent);color:inherit;font:600 var(--text-xs) / 1 var(--font-sans);cursor:pointer}.tip-ok:hover{background:color-mix(in oklab,var(--bg-base) 28%,transparent)}.route-view{animation:route-in .22s ease-out}@keyframes route-in{0%{opacity:0}}@media (prefers-reduced-motion: reduce){.route-view{animation:none}}.status-pills{position:fixed;bottom:var(--space-4);left:calc(var(--sidebar-width) + var(--space-4));z-index:var(--z-toast);display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);pointer-events:none}.status-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .75rem;border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-1);color:var(--text-muted);font-size:var(--text-xs);box-shadow:0 10px 30px -16px #0006;pointer-events:auto;animation:toast-in var(--duration-slow) var(--ease-out)}.status-pill button{border:0;background:transparent;color:var(--accent);font:600 var(--text-xs) var(--font-sans);cursor:pointer}.status-pill--warn{border-color:color-mix(in oklab,var(--warning) 45%,transparent);color:var(--warning)}.status-pill--error{border-color:color-mix(in oklab,var(--danger) 45%,transparent);color:var(--danger)}.status-pill-spin{animation:spin 1.4s linear infinite}.reconnect-banner{margin-bottom:var(--space-3)}.board-page-skeleton{display:flex;flex-direction:column;gap:var(--space-4)}.board-page-skeleton-body{display:grid;grid-template-columns:min(60vh,40rem) var(--panel-width);gap:var(--space-6)}.board-page-skeleton-board{aspect-ratio:1}.board-page-skeleton-panel{display:flex;flex-direction:column;gap:var(--space-3)}@media (max-width: 1024px){.board-page-skeleton-body{grid-template-columns:1fr}}.badge-shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:var(--space-3);margin:0;padding:0;list-style:none}.badge-shelf li{display:flex;flex-direction:column;gap:.3rem;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1)}.badge-shelf li:not(.is-earned) strong{color:var(--text-muted)}.badge-shelf .badge-medal{margin-bottom:var(--space-2)}.badge-shelf small{color:var(--text-muted);font-size:var(--text-xs)}.badge-shelf-date{margin-top:auto;color:var(--text-subtle);font-size:var(--text-xs)}.today-streak.is-done{border-color:color-mix(in oklab,var(--reward) 45%,transparent);background:var(--reward-soft);color:var(--reward)}.fire-mark,.arena-fire-note{color:var(--reward)}.arena-sheet-cell.is-fire{background:var(--reward-soft);color:var(--reward);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--reward) 40%,transparent)}.badge-medal{background:var(--reward-soft);color:var(--reward);box-shadow:inset 0 0 0 1.5px color-mix(in oklab,var(--reward) 55%,transparent)}.badge-medal--locked{background:var(--surface-2);color:var(--text-subtle);box-shadow:inset 0 0 0 1px var(--border-strong)}@keyframes arena-flame{0%,to{transform:scale(1) rotate(0)}30%{transform:scale(1.12,1.18) rotate(-4deg)}60%{transform:scale(.96,1.05) rotate(3deg)}}.live-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.game-head{max-width:var(--board-page-width, none)}.public-main .game-head{width:var(--board-page-width, auto);margin-inline:auto}@media (min-width: 1025px){.public-main .game-layout{justify-content:center}}.rush-start-actions{display:flex;gap:var(--space-2)}.puzzle-tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-3);padding-bottom:1px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.puzzle-tab{display:inline-flex;align-items:center;gap:.45rem;flex:none;margin-bottom:-2px;padding:.55rem .8rem .65rem;border-bottom:2px solid transparent;color:var(--text-muted);font:500 var(--text-sm) / 1 var(--font-sans);white-space:nowrap;transition:color var(--duration-fast) ease,border-color var(--duration-fast) ease}.puzzle-tab svg{color:var(--text-subtle)}.puzzle-tab:hover{color:var(--text)}.puzzle-tab.active,.puzzle-tab[aria-current=page]{border-bottom-color:var(--accent);color:var(--text);font-weight:600}.puzzle-tab.active svg,.puzzle-tab[aria-current=page] svg{color:var(--accent)}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding-top:var(--space-3)}.pagination-summary{color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.pagination-pages{display:inline-flex;align-items:center;gap:2px}.pagination-page,.pagination-step{display:inline-grid;place-items:center;min-width:var(--control-sm);height:var(--control-sm);padding:0 .45rem;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);font:500 var(--text-sm) / 1 var(--font-sans);font-variant-numeric:tabular-nums;cursor:pointer}.pagination-page:hover,.pagination-step:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.pagination-page[aria-current=page]{border-color:color-mix(in oklab,var(--accent) 45%,transparent);background:var(--accent-soft);color:var(--accent);font-weight:600}.pagination-step:disabled{opacity:.35;cursor:not-allowed}.pagination-page:focus-visible,.pagination-step:focus-visible{outline:none;box-shadow:var(--ring)}.pagination-gap{min-width:1.4rem;color:var(--text-subtle);text-align:center}.history-page{max-width:64rem}.history-table td{height:2.75rem}.history-row{cursor:pointer}.history-opponent{width:100%}.history-opponent a{margin-right:.5rem;color:var(--text);font-weight:600}.history-mode,.history-date span,.history-muted{color:var(--text-subtle);font-size:var(--text-xs)}.history-reason,.history-date{color:var(--text-muted);white-space:nowrap}.history-color{display:inline-block;width:.8rem;height:.8rem;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--border-strong);vertical-align:middle}.history-color--w{background:#f5f2ea}.history-color--b{background:#1f2530}.history-delta{font-weight:600;font-variant-numeric:tabular-nums}.history-delta.is-up{color:var(--success)}.history-delta.is-down{color:var(--danger)}.nav-link:focus:not(:focus-visible){outline:none}.app-shell{height:100vh;height:100dvh;overflow:hidden}.app-sidebar{height:100vh;height:100dvh}.app-main{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;padding-block:var(--space-5) var(--space-4)}.route-view{flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain}.scroll-area{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.today-page,.bot-select,.learn-page,.settings-page,.licenses-page,.progress-page,.arenas-page,.arena-page,.history-page,.leaderboard-page,.import-page,.lobby{flex:1;min-height:0;display:flex;flex-direction:column}.today-page>*,.bot-select>*,.learn-page>*,.settings-page>*,.licenses-page>*,.progress-page>*,.arenas-page>*,.arena-page>*,.history-page>*,.leaderboard-page>*,.import-page>*,.lobby>*{flex-shrink:0}.today-page>.today-grid,.bot-select>.scroll-area,.learn-page>.learn-grid,.settings-page>.settings-layout,.licenses-page>.scroll-area,.progress-page>.scroll-area,.arenas-page>.arenas-layout,.arena-page>.arena-layout,.history-page>.history-table-wrap,.leaderboard-page>.table-scroll,.import-page>.table-scroll,.lobby>.lobby-grid{flex:1 1 auto;min-height:0}.today-grid,.learn-grid,.arenas-layout,.arena-layout,.settings-layout,.lobby-grid{align-items:stretch}.today-main,.today-side,.learn-grid>*,.arenas-main,.arenas-side,.arena-side,.settings-main,.lobby-main{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.learn-aside,.lobby-chat{position:static}.lobby-chat{min-height:0}.settings-preview{align-self:start}.progress-page>.scroll-area,.licenses-page>.scroll-area{display:flex;flex-direction:column;gap:var(--space-5)}.licenses-page>.scroll-area{gap:var(--space-6)}.bot-select-scroll{display:flex;flex-direction:column;gap:var(--space-5);padding-bottom:var(--space-4)}.bot-select-foot{position:static;margin-inline:0;padding-inline:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.arena-table-wrap{display:flex;flex-direction:column;min-height:0}.arena-table-wrap>.table-scroll{flex:1;min-height:0}.history-table-wrap,.leaderboard-page>.table-scroll,.import-page>.table-scroll,.arena-table-wrap>.table-scroll{overflow:auto;overscroll-behavior:contain}.data-table thead th,.arena-table thead th,.import-table thead th{position:sticky;top:0;z-index:1;background:var(--bg-base);box-shadow:inset 0 -1px 0 var(--border-strong)}.leaderboard-paging{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.leaderboard-paging .pagination{flex:1}.landing{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow-y:auto}.landing-hero{flex:1;min-height:0;padding:clamp(1.5rem,4vh,4.5rem) 0 clamp(1rem,3vh,3.5rem)}.landing-main{flex:1 0 auto;display:flex;flex-direction:column;width:100%;padding-bottom:0}.landing-hero{gap:3rem}.landing-board{width:min(100%,30rem,calc(100vh - 24rem));justify-self:end}.landing-feature{padding-block:var(--space-4)}.landing-footer{padding-block:var(--space-3)}@media (max-height: 860px){.landing-stats{display:none}.landing-header{padding-block:.9rem}.landing-title{font-size:clamp(2.4rem,1.6rem + 3vh,4rem)}}@media (max-height: 760px){.landing-feature .muted{display:none}}.landing-copy .landing-stats{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);margin:var(--space-4) 0 0;padding:var(--space-4) 0 0;border-top:1px solid var(--border)}.landing-copy .landing-stat strong,.landing-copy .landing-stat>:first-child{font-size:var(--text-lg)}@media (max-height: 860px){.landing-copy .landing-stats{display:flex}}@media (max-height: 720px){.landing-copy .landing-stats{display:none}}.landing-copy .landing-stat{display:flex;flex-direction:column-reverse;gap:2px;margin:0;padding:0;border:0}.landing-copy .landing-stat dt{color:var(--text-subtle);font-size:var(--text-xs)}.landing-copy .landing-stat dd{margin:0;font:600 var(--text-lg) / 1.1 var(--font-sans);font-variant-numeric:tabular-nums}.landing-copy .landing-stats{flex-wrap:nowrap;justify-content:space-between;max-width:32rem}.landing-copy .landing-stat dt{white-space:nowrap}.landing-footer{width:100%;max-width:69rem;margin-inline:auto;padding-inline:var(--space-5)}.scene{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.scene-controls{display:flex;align-items:center;gap:var(--space-1)}.scene-count{margin-right:auto;padding-left:var(--space-2);color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.scene-progress{height:3px;border-radius:2px;background:var(--surface-3);overflow:hidden}.scene-progress>span{display:block;height:100%;background:var(--accent);transition:width var(--duration-slow) var(--ease-out)}.scene-script{display:flex;flex-direction:column;gap:2px;max-height:22rem;margin:0;padding:0;overflow-y:auto;list-style:none}.scene-script button{display:flex;gap:.55rem;width:100%;padding:.55rem .65rem;border:0;border-left:2px solid transparent;border-radius:0 var(--radius-md) var(--radius-md) 0;background:transparent;color:var(--text-muted);font:400 var(--text-sm) / 1.5 var(--font-sans);text-align:left;cursor:pointer;transition:background var(--duration-fast) ease,color var(--duration-fast) ease}.scene-script li.is-past button{color:var(--text-subtle)}.scene-script li[aria-current=step] button{border-left-color:var(--accent);background:var(--accent-soft);color:var(--text)}.scene-script button:hover{background:var(--surface-2)}.scene-move{flex:none;min-width:3.2rem;font:600 var(--text-sm) / 1.5 var(--font-mono);color:var(--accent)}.curriculum-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2)}.curriculum-head .eyebrow{margin:0}.lesson-row-anim{display:inline-grid;place-items:center;width:1.5rem;height:1.5rem;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.lesson-row{grid-template-columns:1.75rem minmax(0,1fr) auto auto}.lesson-row:not(:has(.lesson-row-anim)) .nav-meta{grid-column:4}.crumb{display:inline-flex;align-items:center;gap:.2rem;width:fit-content;color:var(--text-muted);font-size:var(--text-sm);text-decoration:none}.crumb:hover{color:var(--accent)}.puzzle-crumb{margin-bottom:var(--space-1)}.learn-page>.learn-body,.puzzle-hub>.hub-body{flex:1 1 auto;min-height:0}.puzzle-hub{flex:1;min-height:0;display:flex;flex-direction:column}.puzzle-hub>*{flex-shrink:0}.learn-body,.hub-body{display:flex;flex-direction:column;gap:var(--space-6);padding-bottom:var(--space-6);scrollbar-gutter:stable}.learn-total{color:var(--text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.learn-total strong{color:var(--text);font-size:var(--text-lg);font-weight:600}.learn-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(16rem,1fr);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);overflow:hidden}.learn-hero-main{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5) var(--space-6)}.learn-hero-main .eyebrow{margin:0}.learn-hero-title{margin:0;font-family:var(--font-display);font-weight:400;font-size:clamp(1.8rem,1.3rem + 1.2vw,2.4rem);line-height:1.1;text-wrap:balance}.learn-hero-text{margin:0;max-width:40rem;color:var(--text-muted);line-height:1.55}.learn-hero-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-top:var(--space-3)}.learn-hero-meta{color:var(--text-subtle);font-size:var(--text-sm)}.learn-hero-side{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border-left:1px solid var(--border);background:var(--surface-2)}.learn-hero-side .eyebrow{margin:0}.learn-hero-empty{margin:0;color:var(--text-muted);font-size:var(--text-sm);line-height:1.55}.learn-due{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.learn-due a{display:flex;justify-content:space-between;gap:var(--space-2);padding:.45rem 0;border-bottom:1px solid var(--border);color:var(--text);font-size:var(--text-sm);text-decoration:none}.learn-due a:hover{color:var(--accent)}.learn-due-meta{color:var(--text-subtle);font-size:var(--text-xs)}.learn-hero-link{display:inline-flex;align-items:center;gap:.2rem;margin-top:auto;padding-top:var(--space-2);color:var(--accent);font-size:var(--text-sm);font-weight:500;text-decoration:none}.learn-level{display:flex;flex-direction:column;gap:var(--space-3)}.learn-level-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.learn-level-head h2{margin:0;font-size:var(--text-lg);font-weight:600}.learn-level-head span{color:var(--text-subtle);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.chapter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:var(--space-3)}.chapter-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text);text-decoration:none;transition:border-color var(--duration-fast) ease,box-shadow var(--duration-fast) ease,transform var(--duration-fast) ease}.chapter-card:hover{border-color:var(--border-strong);box-shadow:0 10px 30px -18px #0f172a59;transform:translateY(-1px)}.chapter-card:focus-visible{outline:2px solid var(--ring, var(--accent));outline-offset:2px}.chapter-card.is-next{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.chapter-card-top{display:flex;align-items:center;justify-content:space-between;min-height:1.4rem}.chapter-card-index{color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--text-xs)}.chapter-card-state{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .5rem;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);font-size:var(--text-xs);font-weight:600}.chapter-card-state--done{background:var(--success-soft);color:var(--success)}.chapter-card-icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-md);background:var(--surface-2);color:var(--accent)}.chapter-card-title{font-size:var(--text-base);font-weight:600}.chapter-card-desc{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chapter-card-foot{display:flex;align-items:center;gap:var(--space-3);margin-top:auto;padding-top:var(--space-2)}.chapter-card-bar{flex:1;height:4px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.chapter-card-bar span{display:block;height:100%;background:var(--accent)}.chapter-card.is-done .chapter-card-bar span{background:var(--success)}.chapter-card-count{color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.chapter-card--tool .chapter-card-count{margin-top:auto;padding-top:var(--space-2)}.chapter-lessons{display:flex;flex-direction:column;gap:var(--space-2);max-width:56rem;margin:0;padding:0;list-style:none}.chapter-lesson{display:grid;grid-template-columns:2.25rem minmax(0,1fr) auto 1rem;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text);text-decoration:none;transition:border-color var(--duration-fast) ease,background var(--duration-fast) ease}.chapter-lesson:hover{border-color:var(--border-strong);background:var(--surface-hover)}.chapter-lesson.is-next{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.chapter-lesson-mark{display:grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--border-strong);border-radius:50%;color:var(--text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.chapter-lesson.is-next .chapter-lesson-mark{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.chapter-lesson.is-done .chapter-lesson-mark{border-color:transparent;background:var(--success-soft);color:var(--success)}.chapter-lesson-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.chapter-lesson-text strong{font-weight:600}.chapter-lesson-text span{color:var(--text-muted);font-size:var(--text-sm)}.chapter-lesson-meta{color:var(--text-subtle);font-size:var(--text-xs);white-space:nowrap}.chapter-lesson.is-next .chapter-lesson-meta{color:var(--accent);font-weight:600}.chapter-lesson-go{color:var(--text-subtle)}.chapter-lesson--exam{border-style:dashed}.lesson-track{display:flex;gap:var(--space-3)}.lesson-track-part{display:flex;flex-direction:column;gap:.4rem;flex-basis:0;min-width:0}.lesson-track-label{color:var(--text-subtle);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.lesson-track-label.is-active{color:var(--accent)}.lesson-track-bars{display:flex;gap:3px}.lesson-track-seg{flex:1;height:6px;padding:0;border:0;border-radius:var(--radius-pill);background:var(--surface-3);cursor:pointer}.lesson-track-seg:disabled{cursor:default}.lesson-track-seg.is-done,.lesson-track-seg--clean{background:var(--accent)}.lesson-track-seg--assisted{background:var(--warning)}.lesson-track-seg.is-current{background:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.lesson-track-seg--pending.is-current{background:color-mix(in oklab,var(--accent) 45%,var(--surface-3))}.lesson-track-seg:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lesson-step-count{margin:var(--space-3) 0 0}.hub-stats{display:flex;gap:var(--space-5);margin:0}.hub-stats div{display:flex;flex-direction:column;align-items:flex-end}.hub-stats dt{color:var(--text-subtle);font-size:var(--text-xs)}.hub-stats dd{margin:0;font-size:var(--text-xl);font-weight:600;font-variant-numeric:tabular-nums}.hub-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,1fr);gap:var(--space-3);align-items:stretch}.hub-top .today-daily{max-width:none}.hub-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text);text-decoration:none;transition:border-color var(--duration-fast) ease,box-shadow var(--duration-fast) ease,transform var(--duration-fast) ease}.hub-card:hover{border-color:var(--border-strong);box-shadow:0 10px 30px -18px #0f172a59;transform:translateY(-1px)}.hub-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hub-card .eyebrow{margin:0}.hub-card-icon{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);background:var(--surface-2);color:var(--accent)}.hub-card-title{font-size:var(--text-lg);font-weight:600}.hub-card-text{color:var(--text-muted);font-size:var(--text-sm);line-height:1.55}.hub-card-meta{margin-top:auto;color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.hub-card--primary{gap:var(--space-3);padding:var(--space-5);border-color:var(--accent);background:linear-gradient(160deg,var(--accent-soft),var(--surface-1) 60%)}.hub-card--primary .hub-card-icon{background:var(--accent);color:var(--accent-contrast)}.hub-card--primary .hub-card-title{font-family:var(--font-display);font-weight:400;font-size:clamp(2rem,1.4rem + 1.3vw,2.6rem);line-height:1.05}.hub-card--primary .hub-card-text{font-size:var(--text-base);max-width:28rem}.hub-card-cta{display:inline-flex;align-items:center;gap:.4rem;width:fit-content;margin-top:auto;padding:.65rem 1.1rem;border-radius:var(--radius-md);background:var(--accent);color:var(--accent-contrast);font-weight:600}.hub-modes{display:grid;grid-template-rows:1fr 1fr;gap:var(--space-3)}.hub-motifs{display:flex;flex-direction:column;gap:var(--space-4)}.hub-motifs-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.hub-motifs-head h2{margin:0 0 .25rem;font-size:var(--text-lg);font-weight:600}.hub-motifs-head p{margin:0}.hub-motif-group{display:grid;grid-template-columns:8.5rem minmax(0,1fr);align-items:baseline;gap:var(--space-3)}.hub-motif-group .eyebrow{margin:0}.hub-motif-group .chip{text-decoration:none}.puzzle-facts{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin:0}.puzzle-facts dt{color:var(--text-subtle);font-size:var(--text-xs)}.puzzle-facts dd{margin:0;font-size:var(--text-xl);font-weight:600;font-variant-numeric:tabular-nums}.puzzle-facts dd.is-streak{color:var(--reward)}@media (max-width: 1100px){.hub-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hub-modes{grid-column:1 / -1;grid-template-rows:none;grid-template-columns:1fr 1fr}.learn-hero{grid-template-columns:minmax(0,1fr)}.learn-hero-side{border-left:0;border-top:1px solid var(--border)}}@media (max-width: 640px){.hub-top,.hub-modes,.hub-motif-group{grid-template-columns:minmax(0,1fr)}.chapter-lesson{grid-template-columns:2.25rem minmax(0,1fr)}.chapter-lesson-meta,.chapter-lesson-go{display:none}}.learn-body>*,.hub-body>*{flex-shrink:0}.move-feedback{position:absolute;z-index:5;display:grid;place-items:center;width:1.6rem;height:1.6rem;margin:-.55rem 0 0 -1.05rem;border-radius:50%;color:#fff;box-shadow:0 2px 6px #0000004d,0 0 0 2px #fff;pointer-events:none;animation:move-feedback-pop 1.1s ease forwards}.move-feedback--good{background:var(--success)}.move-feedback--bad{background:var(--danger)}@keyframes move-feedback-pop{0%{transform:scale(.3);opacity:0}14%{transform:scale(1.15);opacity:1}24%{transform:scale(1)}80%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.move-feedback{animation:none}}.puzzle-status{display:grid;grid-template-columns:2.25rem minmax(0,1fr);gap:var(--space-3);align-items:start;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2);transition:background var(--duration-fast) ease,border-color var(--duration-fast) ease}.puzzle-status-icon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:50%;background:var(--surface-1);color:var(--text-muted);border:1px solid var(--border)}.puzzle-status-icon{position:relative}.puzzle-status--turn .puzzle-status-icon{width:2.75rem;height:2.75rem;font-size:1.7rem;line-height:1}.puzzle-status--turn{grid-template-columns:2.75rem minmax(0,1fr);align-items:center}.puzzle-status--side-w .puzzle-status-icon{--side-fill: #fbfaf6;--side-ink: #1b2230}.puzzle-status--side-b .puzzle-status-icon{--side-fill: #1b2230;--side-ink: #fbfaf6}.puzzle-status--turn .puzzle-status-icon{background:var(--side-fill);color:var(--side-ink);border:2px solid var(--text);box-shadow:0 1px 3px #0f172a2e}.puzzle-status-king{fill:var(--side-ink)}.puzzle-status-corner{position:absolute;right:-3px;bottom:-3px;width:.85rem;height:.85rem;border-radius:50%;background:var(--side-fill);border:2px solid var(--text)}.puzzle-status-body{display:flex;flex-direction:column;gap:.2rem;min-width:0}.puzzle-status-body strong{font-size:var(--text-lg);font-weight:600;line-height:1.25}.puzzle-status-body>span{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.puzzle-status-steps{display:flex!important;gap:4px;margin-top:.35rem}.puzzle-status-steps i{width:1.4rem;height:4px;border-radius:var(--radius-pill);background:var(--surface-3)}.puzzle-status-steps i.is-done{background:var(--success)}.puzzle-status--good{border-color:color-mix(in oklab,var(--success) 45%,transparent);background:var(--success-soft)}.puzzle-status--good .puzzle-status-icon,.puzzle-status--progress .puzzle-status-icon{border-color:transparent;background:var(--success);color:#fff}.puzzle-status--bad{border-color:color-mix(in oklab,var(--danger) 40%,transparent);background:var(--danger-soft)}.puzzle-status--bad .puzzle-status-icon{border-color:transparent;background:var(--danger);color:#fff}.puzzle-hint-line{margin:0;padding:var(--space-2) var(--space-3);border-left:3px solid var(--warning);background:var(--warning-soft);font-size:var(--text-sm)}.puzzle-actions--solved{flex-direction:column;align-items:stretch}.puzzle-actions-row{display:flex;align-items:center;gap:var(--space-1)}.puzzle-kbd{margin-left:auto;padding:.05rem .4rem;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:var(--radius-sm);color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--text-xs)}.puzzle-session{display:flex;flex-direction:column;gap:var(--space-3)}.puzzle-history{display:flex;flex-direction:column;gap:var(--space-2)}.puzzle-history-head{color:var(--text-subtle);font-size:var(--text-xs)}.puzzle-history-head strong{color:var(--text)}.puzzle-history-strip{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.puzzle-history-strip li{display:grid;place-items:center;width:1.3rem;height:1.3rem;border-radius:var(--radius-sm);color:#fff}.puzzle-history-strip li.is-ok{background:var(--success)}.puzzle-history-strip li.is-miss{background:var(--danger)}.game-head>.game-head-actions{flex-direction:row;align-items:center;gap:var(--space-1)}.puzzle-settings{position:relative}.puzzle-settings>summary{list-style:none;cursor:pointer}.puzzle-settings>summary::-webkit-details-marker{display:none}.puzzle-settings-pop{position:absolute;z-index:30;top:calc(100% + 6px);right:0;display:flex;flex-direction:column;gap:var(--space-2);width:max-content;max-width:26rem;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow-lg)}.puzzle-settings-pop p{margin:0;font-size:var(--text-xs)}.lesson-footer{flex-direction:column;transition:background var(--duration-fast) ease}.lesson-footer--good{background:var(--success-soft);border-top-color:color-mix(in oklab,var(--success) 40%,transparent)}.lesson-footer--progress{background:var(--accent-soft)}.lesson-footer--bad{background:var(--danger-soft);border-top-color:color-mix(in oklab,var(--danger) 40%,transparent)}.lesson-feedback{display:grid;grid-template-columns:1.75rem minmax(0,1fr);gap:var(--space-2);align-items:start;animation:lesson-feedback-in .2s ease}.lesson-feedback-icon{display:grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--success);color:#fff}.lesson-footer--progress .lesson-feedback-icon{background:var(--accent)}.lesson-footer--bad .lesson-feedback-icon{background:var(--danger)}.lesson-feedback strong{font-size:var(--text-base)}.lesson-footer--good .lesson-feedback strong{color:var(--success)}.lesson-footer--bad .lesson-feedback strong{color:var(--danger)}.lesson-feedback p{margin:.1rem 0 0;color:var(--text);font-size:var(--text-sm);line-height:1.5;max-height:7.5rem;overflow-y:auto}@keyframes lesson-feedback-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.lesson-stars{display:inline-flex;gap:2px;color:var(--border-strong)}.lesson-stars .is-on{color:var(--reward);fill:var(--reward)}.puzzle-actions:not(.puzzle-actions--solved){flex-wrap:nowrap}.lesson-review-offer{margin:0;color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.hub-profile{display:flex;flex-direction:column;gap:var(--space-3)}.hub-profile-head{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.hub-profile-head h2{margin:0;font-size:var(--text-lg);font-weight:600}.hub-profile-empty{margin:0}.hub-profile-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.hub-profile-col ul{display:flex;flex-direction:column;margin:var(--space-2) 0 0;padding:0;list-style:none}.hub-profile-col a{display:grid;grid-template-columns:minmax(0,1fr) 7rem 2.75rem;align-items:center;gap:var(--space-3);padding:.55rem 0;border-bottom:1px solid var(--border);color:var(--text);font-size:var(--text-sm);text-decoration:none}.hub-profile-col a:hover .hub-profile-label{color:var(--accent)}.hub-profile-bar{height:5px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.hub-profile-bar span{display:block;height:100%;background:var(--success)}.hub-profile-col--weak .hub-profile-bar span{background:var(--warning)}.hub-profile-rate{color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right}@media (max-width: 800px){.hub-profile-cols{grid-template-columns:minmax(0,1fr)}}.duel-clock{position:relative}.rush-bonus{position:absolute;left:100%;top:-.2rem;margin-left:.4rem;padding:.05rem .4rem;border-radius:var(--radius-pill);background:var(--success);color:#fff;font-size:var(--text-xs);font-weight:700;white-space:nowrap;animation:rush-bonus-rise 1.4s ease forwards;pointer-events:none}@keyframes rush-bonus-rise{0%{opacity:0;transform:translateY(6px) scale(.8)}15%{opacity:1;transform:translateY(0) scale(1.05)}75%{opacity:1}to{opacity:0;transform:translateY(-10px)}}.rush-combo{display:flex;flex-direction:column;gap:.4rem}.rush-combo-head{display:flex;justify-content:space-between;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-sm)}.rush-combo-head strong{color:var(--text);font-size:var(--text-lg)}.rush-combo-bar{height:8px;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.rush-combo-bar span{display:block;height:100%;background:var(--reward);transition:width .25s ease}.rush-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0}.rush-summary dt{color:var(--text-subtle);font-size:var(--text-xs)}.rush-summary dd{margin:0;font-size:var(--text-xl);font-weight:600;font-variant-numeric:tabular-nums}.route{position:relative;display:flex;flex-direction:column;gap:var(--space-3);max-width:60rem;margin:0;padding:0;list-style:none}.route-stop{position:relative;display:grid;grid-template-columns:2.75rem minmax(0,1fr);gap:var(--space-4);align-items:start}.route-stop:not(:last-child):before{content:"";position:absolute;left:calc(1.375rem - 1px);top:2.75rem;bottom:calc(-1 * var(--space-3));width:2px;background:var(--border-strong)}.route-stop.is-done:not(:last-child):before{background:var(--success)}.route-node{position:relative;z-index:1;display:grid;place-items:center;width:2.75rem;height:2.75rem;margin-top:var(--space-2);border:2px solid var(--border-strong);border-radius:50%;background:var(--bg-base, var(--surface-1));color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600}.route-stop.is-started .route-node{border-color:var(--accent);color:var(--accent)}.route-stop.is-next .route-node{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast);box-shadow:0 0 0 5px var(--accent-soft)}.route-stop.is-done .route-node{border-color:var(--success);background:var(--success);color:#fff}.route-card{display:flex;align-items:center;gap:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);transition:border-color var(--duration-fast) ease,box-shadow var(--duration-fast) ease}.route-card:hover{border-color:var(--border-strong);box-shadow:0 10px 30px -20px #0f172a59}.route-stop.is-next .route-card{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.route-main{flex:1;display:flex;flex-direction:column;gap:.35rem;min-width:0;padding:var(--space-3) var(--space-4);color:var(--text);text-decoration:none}.route-main:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--radius-lg)}.route-title{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.route-title strong{font-size:var(--text-base);font-weight:600}.route-desc{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.route-lessons{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:.2rem}.route-lessons i{width:.7rem;height:.7rem;border-radius:50%;background:var(--surface-3)}.route-lessons i.is-done{background:var(--success)}.route-lessons i.is-next{background:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.route-lessons i.route-exam{border-radius:2px;transform:rotate(45deg) scale(.85);margin-left:4px}.route-lessons span{margin-left:var(--space-2);color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.route-cta{flex-shrink:0;max-width:16rem;margin-right:var(--space-4);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 760px){.route-card{flex-direction:column;align-items:stretch}.route-cta{margin:0 var(--space-4) var(--space-3);max-width:none}}.solution-replay{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.solution-replay-head{display:flex;align-items:center;justify-content:space-between}.solution-replay-head .eyebrow{margin:0}.solution-replay-nav{display:flex;gap:2px}.solution-replay-moves{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.solution-move{display:inline-flex;align-items:baseline;gap:.2rem;padding:.2rem .45rem;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-sm);cursor:pointer}.solution-move.is-solver{color:var(--text);font-weight:600}.solution-move:hover{background:var(--surface-hover)}.solution-move.is-current{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.solution-move-number{color:var(--text-subtle);font-weight:400}.auto-next{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--text-muted);font-size:var(--text-sm)}.shortcut-hint{display:inline-flex;align-items:center;gap:.35rem;width:fit-content;padding:0;border:0;background:none;color:var(--text-subtle);font-size:var(--text-xs);cursor:pointer}.shortcut-hint:hover{color:var(--accent)}.shortcut-hint .puzzle-kbd{margin-left:0}.lesson-shortcuts{padding:var(--space-2) var(--space-4)}.shortcut-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0}.shortcut-list div{display:grid;grid-template-columns:8rem minmax(0,1fr);align-items:center;gap:var(--space-3)}.shortcut-list dt{display:flex;gap:4px}.shortcut-list dd{margin:0;font-size:var(--text-sm)}.puzzle-vote{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--text-muted);font-size:var(--text-sm)}.puzzle-vote-buttons{display:flex;gap:var(--space-1)}.puzzle-vote-btn{display:grid;place-items:center;width:2.1rem;height:2.1rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-muted);cursor:pointer;transition:background var(--duration-fast) ease,color var(--duration-fast) ease,border-color var(--duration-fast) ease}.puzzle-vote-btn:hover{color:var(--text);border-color:var(--text-subtle)}.puzzle-vote-btn.is-on{border-color:var(--success);background:var(--success-soft);color:var(--success)}.puzzle-vote-btn--down.is-on{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.puzzle-vote-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ui-tab:focus-visible,.tab:focus-visible{outline:none;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 2px var(--accent)}.ui-tab:focus:not(:focus-visible),.tab:focus:not(:focus-visible){outline:none;box-shadow:none}.tab-panel:has(>.coach-chat){display:flex;flex-direction:column}.coach-chat{flex:1;gap:var(--space-3)}.coach-chat .coach-thread{flex:1;max-height:none}.coach-empty{display:flex;flex-direction:column;gap:.3rem;margin:auto 0;padding:var(--space-4) 0;text-align:center}.coach-empty strong{font-size:var(--text-base)}.coach-empty span{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.coach-suggestions{display:flex;flex-direction:column;gap:var(--space-1)}.coach-suggestions .chip{justify-content:flex-start;width:100%;text-align:left}.load-panel{display:flex;flex-direction:column;gap:var(--space-5)}.load-block{display:flex;flex-direction:column;gap:var(--space-2)}.load-block>.btn{align-self:flex-start}.load-row{display:flex;gap:var(--space-2)}.load-row .text-input{flex:1;min-width:0}.welcome-name{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.welcome-name a{white-space:nowrap}.puzzle-source{display:flex;flex-direction:column;gap:.3rem}.puzzle-source-line{display:flex;flex-wrap:wrap;gap:.2rem .6rem;margin:0;color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.puzzle-source-line span+span:before{content:"·";margin-right:.6rem}.puzzle-subnav{padding:0;margin-bottom:var(--space-4)}.puzzle-subnav .tab.active{border-bottom-color:var(--text);color:var(--text);font-weight:600}.chip--more{gap:.25rem;color:var(--accent)}.catalog-jump{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-4);font-size:var(--text-sm)}.catalog-jump a{color:var(--text-muted);text-decoration:none}.catalog-jump a:hover{color:var(--accent)}.catalog{scroll-behavior:smooth}.catalog-featured{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--accent);border-radius:var(--radius-lg);background:linear-gradient(160deg,var(--accent-soft),var(--surface-1) 70%);color:var(--text);text-decoration:none}.catalog-card-body{display:flex;flex-direction:column;gap:.25rem}.catalog-section{display:flex;flex-direction:column;gap:var(--space-3);scroll-margin-top:var(--space-4)}.catalog-section h2{margin:0;padding-bottom:var(--space-2);border-bottom:1px solid var(--border);font-size:var(--text-lg);font-weight:600}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:var(--space-1) var(--space-5)}.catalog-card{display:flex;flex-direction:column;gap:.2rem;padding:var(--space-3);margin:0 calc(-1 * var(--space-3));border-radius:var(--radius-md);color:var(--text);text-decoration:none}.catalog-card:hover{background:var(--surface-hover)}.catalog-card:hover .catalog-card-title{color:var(--accent)}.catalog-card-title{font-size:var(--text-base);font-weight:600}.catalog-card-title small{margin-left:.35rem;color:var(--text-subtle);font-size:var(--text-xs);font-weight:400;font-variant-numeric:tabular-nums}.catalog-card-text{color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.catalog-credit{font-size:var(--text-xs)}.opening-search{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-subtle)}.opening-search input{width:16rem;padding:.55rem 0;border:0;background:transparent;color:var(--text);font:inherit;outline:none}.opening-search:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.opening-families{columns:3 18rem;column-gap:var(--space-5)}.opening-family{break-inside:avoid;margin-bottom:var(--space-4)}.opening-family-head{display:flex;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border-strong);color:var(--text);text-decoration:none}.opening-family-head:hover strong{color:var(--accent)}.opening-family-head span,.opening-variation-count{color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.opening-variations{margin:0;padding:0;list-style:none}.opening-variations a{display:flex;justify-content:space-between;gap:var(--space-2);padding:.3rem 0 .3rem var(--space-3);color:var(--text-muted);font-size:var(--text-sm);text-decoration:none}.opening-variations a:hover{color:var(--accent)}.star-title-tag{margin-left:.4rem;color:var(--text-muted);font-family:var(--font-sans);font-size:var(--text-base)}.star-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none}.star-token{position:absolute;display:grid;place-items:center;width:12.5%;height:12.5%;color:#e0a526;animation:star-in .35s ease both}.star-token svg{width:62%;height:62%;fill:#f4c542;filter:drop-shadow(0 2px 3px rgb(0 0 0 / .35))}@keyframes star-in{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.star-panel{display:flex;flex-direction:column;gap:var(--space-3)}.star-levels{display:flex;flex-wrap:wrap;gap:4px}.star-level{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:2.6rem;padding:.35rem .3rem;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-sm);font-weight:600;text-decoration:none}.star-level.is-done{background:var(--success-soft);border-color:color-mix(in oklab,var(--success) 35%,transparent);color:var(--success)}.star-level.is-current{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);color:var(--accent)}.star-row{display:inline-flex;gap:1px;color:var(--border-strong)}.star-row .is-on{color:#e0a526;fill:#f4c542}.star-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0}.star-stats dt{color:var(--text-subtle);font-size:var(--text-xs)}.star-stats dd{margin:0;font-size:var(--text-xl);font-weight:600;font-variant-numeric:tabular-nums}.star-result{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--success-soft);text-align:center;animation:lesson-feedback-in .25s ease}.star-result strong{font-size:var(--text-lg)}.star-courses{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--space-3);max-width:60rem}.star-course{display:grid;grid-template-columns:3.25rem minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text);text-decoration:none;transition:border-color var(--duration-fast) ease,transform var(--duration-fast) ease}.star-course:hover{border-color:var(--accent);transform:translateY(-1px)}.star-course-piece{display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:var(--radius-md);background:var(--surface-2);font-size:2rem;line-height:1;color:var(--text)}.star-course-text{display:flex;flex-direction:column}.star-course-text strong{font-size:var(--text-lg)}.star-course-text span{color:var(--text-muted);font-size:var(--text-sm)}.star-course-score{display:inline-flex;align-items:center;gap:.25rem;color:var(--text-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.star-course-score .is-on{color:#e0a526;fill:#f4c542}.star-course.is-done{border-color:color-mix(in oklab,var(--success) 40%,transparent)}.learn-play-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text);text-decoration:none}.learn-play-card:hover{border-color:var(--accent)}.learn-play-pieces{color:var(--accent);font-size:1.6rem;letter-spacing:.1em;white-space:nowrap}.learn-play-text{display:flex;flex-direction:column;gap:.15rem}.learn-play-text span{color:var(--text-muted);font-size:var(--text-sm)}.chapter-lessons-play{max-width:56rem}.lesson-switcher{position:relative}.lesson-switcher>summary{list-style:none;cursor:pointer}.lesson-switcher>summary::-webkit-details-marker{display:none}.lesson-switcher-pop{position:absolute;z-index:40;top:calc(100% + 6px);right:0;display:flex;flex-direction:column;gap:var(--space-2);width:20rem;max-height:70vh;overflow-y:auto;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow-lg)}.lesson-switcher-pop .eyebrow{margin:0}.lesson-switcher-pop ol{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.lesson-switcher-item{display:flex;align-items:center;gap:var(--space-2);padding:.45rem var(--space-2);border-radius:var(--radius-md);color:var(--text);font-size:var(--text-sm);text-decoration:none}.lesson-switcher-item:hover{background:var(--surface-hover)}.lesson-switcher-item.is-current{background:var(--accent-soft);color:var(--accent);font-weight:600}.lesson-switcher-mark{display:grid;place-items:center;flex:none;width:1.4rem;height:1.4rem;border:1px solid var(--border-strong);border-radius:50%;font-size:var(--text-xs)}.lesson-switcher-item.is-done .lesson-switcher-mark{border-color:transparent;background:var(--success);color:#fff}.next-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:var(--space-3)}.next-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);color:var(--text);text-decoration:none}.next-card:hover{border-color:var(--accent)}.next-card-text{display:flex;flex-direction:column;gap:.1rem}.next-card-text span{color:var(--text-muted);font-size:var(--text-sm)}.hub-modes{grid-template-rows:none;grid-auto-rows:1fr}.streak-score{color:var(--reward)}.streak-over{display:flex;flex-direction:column;gap:var(--space-3)}.streak-over .eyebrow{margin:0}.streak-over-score{margin:0;color:var(--text-muted)}.streak-over-score strong{margin-right:.3rem;color:var(--text);font-family:var(--font-display);font-size:3rem;font-weight:400}.coord-target{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:grid;place-items:center;pointer-events:none;color:color-mix(in oklab,var(--accent) 80%,transparent);font-family:var(--font-display);font-size:clamp(4rem,14vw,9rem);text-shadow:0 2px 18px color-mix(in oklab,var(--bg-base) 85%,transparent)}.coord-panel{display:flex;flex-direction:column;gap:var(--space-4)}.coord-clock{display:flex;align-items:baseline;gap:.4rem}.coord-clock span{font-family:var(--font-display);font-size:3.5rem;line-height:1;font-variant-numeric:tabular-nums}.coord-clock span.is-low{color:var(--danger)}.coord-clock small{color:var(--text-muted)}.coord-pad{display:flex;flex-direction:column;gap:var(--space-2)}.coord-pad-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}.coord-key{height:2.4rem;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text);font-family:var(--font-mono);font-size:var(--text-base);cursor:pointer}.coord-key:hover:not(:disabled){border-color:var(--accent)}.coord-key.is-on{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.coord-key:disabled{opacity:.45;cursor:default}.editor-palette{color-scheme:light;display:flex;justify-content:space-between;gap:4px;width:var(--board-size);padding:4px;border:1px solid var(--border);border-radius:var(--radius-md);background:#e9e4d8}.editor-tool{display:grid;place-items:center;flex:1;aspect-ratio:1;max-height:3.2rem;padding:4px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:#3a4452;cursor:pointer}.editor-tool svg{width:100%;height:100%}.editor-tool:hover{background:#1b243214}.editor-tool.is-on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.editor-castling{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1) var(--space-3)}.editor-castling .eyebrow{grid-column:1 / -1;margin:0}.editor-check{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.editor-tools{display:flex;flex-wrap:wrap;gap:var(--space-1)}.hub-top{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.hub-top .today-daily{max-height:26rem}.hub-top .today-daily-board{max-width:19rem;align-self:center}.hub-modes{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto}@media (max-width: 900px){.hub-top,.hub-modes{grid-template-columns:minmax(0,1fr)}}.explorer{display:flex;flex-direction:column;gap:var(--space-3)}.explorer-head{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--text-sm)}.explorer-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.explorer-table th{padding:.35rem .4rem;border-bottom:1px solid var(--border);color:var(--text-subtle);font-size:var(--text-xs);font-weight:500;text-align:left}.explorer-table td{padding:.45rem .4rem;border-bottom:1px solid var(--border)}.explorer-table tbody tr{cursor:pointer}.explorer-table tbody tr:hover,.explorer-table tbody tr:focus-visible{background:var(--surface-hover);outline:none}.explorer-move{width:4.5rem;font-family:var(--font-mono);font-weight:600}.explorer-name{color:var(--text-muted)}.explorer-share{width:6.5rem;text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}.explorer-bar{display:inline-block;width:2.5rem;height:5px;margin-right:.4rem;border-radius:var(--radius-pill);background:var(--surface-3);vertical-align:middle;overflow:hidden}.explorer-bar span{display:block;height:100%;background:var(--accent)}.explorer-note{margin:0;color:var(--text-subtle);font-size:var(--text-xs);line-height:1.5}.tb-win{color:var(--success);font-weight:600}.tb-loss{color:var(--danger);font-weight:600}.tb-draw{color:var(--text-muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.hub-profile-links{display:flex;gap:var(--space-4)}.history-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.history-select,.history-search input,.history-date-field input{height:var(--control-sm, 2rem);padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text);font:inherit;font-size:var(--text-sm)}.history-search{display:inline-flex;align-items:center;gap:.35rem;padding-left:var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-subtle)}.history-search input{width:9rem;border:0;background:transparent;outline:none}.history-search:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.history-date-field{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-subtle);font-size:var(--text-xs)}.leaderboard-overview{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:var(--space-3);overflow-y:auto;min-height:0}.leaderboard-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1)}.leaderboard-card header{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.leaderboard-card h2{margin:0;font-size:var(--text-base);font-weight:600}.leaderboard-card ol{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.leaderboard-card li{display:grid;grid-template-columns:2rem minmax(0,1fr) auto;align-items:center;gap:var(--space-2);padding:.3rem 0;font-size:var(--text-sm)}.leaderboard-card-name{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap;text-decoration:none}.leaderboard-card-value{font-variant-numeric:tabular-nums;font-weight:600}.leaderboard-card-empty{margin:0;font-size:var(--text-sm)}.today-live .eyebrow{display:inline-flex;align-items:center;gap:.4rem;margin:0}.today-live-game{display:flex;flex-direction:column;gap:var(--space-2);color:var(--text);text-decoration:none}.today-live-players{overflow:hidden;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.today-live-players b{color:var(--reward)}.today-live-broadcast{display:flex;align-items:center;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border);color:var(--text);font-size:var(--text-sm);text-decoration:none}.today-live-broadcast span:last-child{display:flex;flex-direction:column;min-width:0}.today-live-broadcast strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-live-broadcast small{color:var(--text-subtle)}@media (max-width: 899px){.app-shell{height:100vh;height:100dvh;grid-template-rows:var(--header-height) minmax(0,1fr)}.app-sidebar{height:var(--header-height)}.app-main{height:auto;min-height:0}}.arena-schedule-row{grid-template-columns:3.5rem minmax(0,1fr) auto 3.5rem 3.5rem 4rem 4.5rem}.tag--cap{background:var(--warning-soft);color:var(--text)}.arena-timeline{display:grid;grid-template-columns:9rem minmax(0,1fr);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);overflow:hidden}.arena-timeline-labels{display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--surface-2)}.arena-timeline-corner,.arena-timeline-axis{height:1.8rem;flex:none}.arena-timeline-lane-label,.arena-timeline-lane{height:2.6rem;flex:none}.arena-timeline-lane-label{display:flex;align-items:center;padding:0 var(--space-3);border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--text-xs);font-weight:600;white-space:nowrap}.arena-timeline-scroll{overflow-x:auto;scrollbar-width:thin}.arena-timeline-canvas,.arena-timeline-axis{position:relative}.arena-timeline-axis span{position:absolute;top:0;bottom:0;padding-left:4px;border-left:1px dotted var(--border);color:var(--text-subtle);font-size:var(--text-xs);line-height:1.8rem;font-variant-numeric:tabular-nums}.arena-timeline-axis span.is-hour{border-left-style:solid}.arena-timeline-now{position:absolute;top:0;bottom:0;z-index:2;pointer-events:none;width:2px;background:var(--danger)}.arena-timeline-lane{position:relative;border-top:1px solid var(--border)}.arena-block{position:absolute;top:4px;bottom:4px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:0 .45rem;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--text);font-size:.7rem;line-height:1.15;text-decoration:none;white-space:nowrap;transition:filter var(--duration-fast) ease}.arena-block:hover{filter:brightness(.94)}.arena-block span{overflow:hidden;font-weight:600;text-overflow:ellipsis}.arena-block small{color:var(--text-muted)}.arena-block--bullet{background:color-mix(in oklab,var(--danger) 16%,var(--surface-1))}.arena-block--blitz{background:color-mix(in oklab,var(--accent) 18%,var(--surface-1))}.arena-block--rapid{background:color-mix(in oklab,var(--success) 18%,var(--surface-1))}.arena-block.is-live{box-shadow:inset 3px 0 0 var(--danger)}.nav-badge{display:grid;place-items:center;min-width:1.2rem;height:1.2rem;margin-left:auto;padding:0 .3rem;border-radius:var(--radius-pill);background:var(--danger);color:#fff;font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums}.sidebar-account-row{display:flex;align-items:center;gap:var(--space-1)}.sidebar-account-row .account{flex:1;min-width:0}.bell,.bell-button{position:relative}.bell-count{position:absolute;top:2px;right:2px;display:grid;place-items:center;min-width:1rem;height:1rem;padding:0 .2rem;border-radius:var(--radius-pill);background:var(--danger);color:#fff;font-size:.6rem;font-weight:700}.bell-pop{position:absolute;z-index:60;bottom:calc(100% + 8px);left:0;width:22rem;max-height:70vh;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow-lg)}.bell-head{margin:0;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);font-weight:600}.bell-empty{margin:0;padding:var(--space-4);color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.bell-pop ul{margin:0;padding:0;list-style:none}.bell-item{display:grid;grid-template-columns:1.8rem minmax(0,1fr) auto;align-items:start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);color:var(--text);font-size:var(--text-sm);line-height:1.4;text-decoration:none}a.bell-item:hover{background:var(--surface-hover)}.bell-icon{display:grid;place-items:center;width:1.8rem;height:1.8rem;border-radius:50%;background:var(--surface-2);color:var(--accent)}.bell-text{display:flex;flex-direction:column;gap:.15rem}.bell-text small{color:var(--text-subtle);font-size:var(--text-xs)}.bell-dot{width:.5rem;height:.5rem;margin-top:.4rem;border-radius:50%;background:var(--accent)}.following-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none;overflow-y:auto}.following-row{display:grid;grid-template-columns:.6rem auto minmax(0,1fr) auto auto;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--border)}.following-status{display:inline-block;width:.6rem;height:.6rem;border:2px solid var(--border-strong);border-radius:50%}.following-status.is-online{border-color:var(--success);background:var(--success)}.following-name{font-weight:600}.following-ratings{display:flex;gap:var(--space-3);color:var(--text-subtle);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.follow-box{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.follow-counts{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-muted);font-size:var(--text-sm)}.follow-counts strong{color:var(--text)}@media (min-width: 900px) and (max-height: 820px){.nav-link{min-height:1.75rem}.nav-group-label{margin-bottom:.15rem}.app-nav{gap:var(--space-2)}}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.quick-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;min-width:0;aspect-ratio:1.15;padding:0 .2rem;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text);text-decoration:none;transition:background var(--duration-fast) ease,border-color var(--duration-fast) ease,transform var(--duration-fast) ease}.quick-tile strong{font-family:var(--font-display);font-size:1.35rem;font-weight:400;line-height:1}.quick-tile strong,.quick-tile span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-tile span{color:var(--text-subtle);font-size:.68rem}.quick-tile:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.quick-tile--alt strong{font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600}.hub-modes{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 1100px){.hub-modes{grid-template-columns:repeat(2,minmax(0,1fr))}}.local-clock{display:flex;align-items:center;justify-content:space-between;padding:.35rem .6rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);font-size:var(--text-sm)}.local-clock strong{font-family:var(--font-mono);font-size:var(--text-xl);font-variant-numeric:tabular-nums}.local-clock.is-active{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.local-clock.is-active.is-low{border-color:var(--danger);background:var(--danger)}.local-actions{flex-wrap:wrap}.history-puzzles{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:var(--space-3)}.history-puzzle{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1)}.history-puzzle.is-ok{box-shadow:inset 0 3px 0 var(--success)}.history-puzzle.is-miss{box-shadow:inset 0 3px 0 var(--danger)}.history-puzzle-meta{display:grid;grid-template-columns:1fr auto;gap:.15rem var(--space-2);font-size:var(--text-xs)}.history-puzzle-result{display:inline-flex;align-items:center;gap:.25rem;font-weight:700;font-size:var(--text-sm)}.history-puzzle.is-ok .history-puzzle-result{color:var(--success)}.history-puzzle.is-miss .history-puzzle-result{color:var(--danger)}.history-puzzle-theme{grid-column:1 / -1;color:var(--text-muted)}.history-puzzle-time{color:var(--text-subtle);font-variant-numeric:tabular-nums}.history-puzzle-links{display:inline-flex;align-items:center;gap:var(--space-2)}.history-puzzle-links a{color:var(--text-muted)}.today-new strong{font-size:var(--text-sm);line-height:1.4}.lesson-shortcuts{display:flex;flex-direction:column;gap:var(--space-2)}.game-rail{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.game-rail>.side-panel{position:static;flex:1;min-height:0}.game-rail-player .player-card{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1)}.game-rail-player .player-card--active{border-color:color-mix(in oklab,var(--accent) 45%,var(--border))}.game-rail-player .player-clock{font-size:1.9rem;line-height:1;padding:.3rem .55rem;border-radius:var(--radius-sm)}.game-rail-player .player-clock--running{background:color-mix(in oklab,var(--accent) 12%,transparent)}.game-rail-player .player-clock--low.player-clock--running{background:color-mix(in oklab,var(--danger) 14%,transparent)}.game-rail-tools{display:flex;flex-direction:column;gap:var(--space-2)}.game-rail-tools .coach-bar{flex-wrap:nowrap;gap:var(--space-2);padding-top:0;border-top:0}.game-rail-tools .coach-bar-level .eyebrow{display:none}.game-rail-tools .coach-bar-option{padding:.3rem .5rem}.game-rail-tools .board-controls{padding:0;border:0}.game-layout--rail .board-frame{border-radius:3px;box-shadow:0 1px 3px #0f172a29}.board-frame div[style*="position: fixed"] svg{transform:scale(1.06);filter:drop-shadow(0 4px 4px rgb(15 23 42 / .22))}@media (min-width: 1025px){.game-layout--rail{align-items:start}.game-layout--rail>.game-rail{height:var(--board-size, auto)}.game-layout--rail>.game-rail>.side-panel{max-height:none!important}}@media (max-width: 1024px){.game-layout--rail>.game-rail{display:contents}.game-layout--rail>.board-stage{order:2}.game-layout--rail .game-rail-player--top{order:1}.game-layout--rail .game-rail-player--bottom{order:3}.game-layout--rail .game-rail-tools,.game-layout--rail .game-rail-tools--coach{order:4}.game-layout--rail>.game-rail>.side-panel{order:5}}.rail-note{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:.3rem var(--space-3);border:1px dashed color-mix(in oklab,var(--warning) 55%,var(--border));border-radius:var(--radius-md);font-size:var(--text-sm)}.rail-note p{margin:0}.game-rail .online-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2)}.game-rail .online-actions .btn{min-width:0;padding-inline:var(--space-2);font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-frame--interactive [data-piece][style*="opacity: 0"]{opacity:.3!important}@media (min-width: 1025px){.game-rail--flipped>*{order:2}.game-rail--flipped>.game-rail-player--bottom{order:0}.game-rail--flipped>.game-rail-player--top{order:4}}.san-piece{font-family:Segoe UI Symbol,"Noto Sans Symbols 2",Arial Unicode MS,serif;font-size:1.15em;line-height:1;margin-right:.04em}.rail-note--danger{border-color:color-mix(in oklab,var(--danger) 55%,var(--border))}.review-loading{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.review-loading-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.review-loading-head .eyebrow{margin:0}.review-loading-percent{font-family:var(--font-mono);font-size:2rem;line-height:1;font-variant-numeric:tabular-nums;color:var(--accent)}.review-loading-bar{position:relative;height:.6rem;border-radius:var(--radius-pill);background:var(--surface-3);overflow:hidden}.review-loading-bar>span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .32s ease}.review-loading-bar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgb(255 255 255 / .35),transparent);transform:translate(-100%);animation:review-sheen 1.4s ease-in-out infinite}@keyframes review-sheen{to{transform:translate(100%)}}.review-loading-count{margin:0;font-size:var(--text-sm);color:var(--text-muted);font-variant-numeric:tabular-nums}.review-loading-stages{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none;font-size:var(--text-sm)}.review-loading-stage{display:flex;align-items:center;gap:var(--space-2);color:var(--text-subtle)}.review-loading-stage.is-active{color:var(--text);font-weight:600}.review-loading-stage.is-done{color:var(--text-muted)}.review-loading-dot{width:.55rem;height:.55rem;border-radius:50%;background:var(--surface-3);border:1px solid var(--border-strong);flex-shrink:0}.review-loading-stage.is-active .review-loading-dot{background:var(--accent);border-color:var(--accent);animation:review-pulse 1.1s ease-in-out infinite}.review-loading-stage.is-done .review-loading-dot{background:var(--success);border-color:var(--success)}@keyframes review-pulse{50%{transform:scale(1.45);opacity:.55}}.review-loading-skeleton{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.review-loading-block{display:block;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 37%,var(--surface-2) 63%);background-size:400% 100%;animation:review-shimmer 1.6s ease-in-out infinite}.review-loading-block--cards{height:4.5rem}.review-loading-block--graph{height:6rem}.review-loading-block--rows{height:7rem}@keyframes review-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion: reduce){.review-loading-bar:after,.review-loading-block,.review-loading-stage.is-active .review-loading-dot{animation:none}}.route-loading{flex:1;min-height:12rem}.lang-toggle{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .55rem;border:1px solid var(--border);border-radius:var(--radius-pill);background:transparent;color:var(--text-muted);font:600 .75rem/1 var(--font-sans);letter-spacing:.04em;cursor:pointer;transition:color var(--duration-fast) ease,border-color var(--duration-fast) ease}.lang-toggle:hover{color:var(--text);border-color:var(--border-strong)}.lang-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sidebar-tools .lang-toggle.icon-btn{width:auto;padding-inline:.45rem;border-color:transparent}.auth-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}}@layer phone{:root{--mobile-tabbar-height: 0px;--board-gutter: var(--space-2)}@media (max-width: 899px){:root{--mobile-tabbar-height: var(--mnav-tabbar, 64px)}}.board-tabbar-probe{position:fixed;left:0;bottom:0;width:0;height:calc(var(--mobile-tabbar-height) + env(safe-area-inset-bottom,0px));visibility:hidden;pointer-events:none}.board-frame--dragging,.board-frame--dragging *{touch-action:none}@media (max-width: 1024px){.game-layout .fullscreen-btn{display:none}.game-layout .icon-btn,.game-head .icon-btn{min-width:2.75rem;min-height:2.75rem}.game-layout .btn,.game-head .btn,.game-head summary.btn{min-height:2.75rem}.game-layout .tab{min-width:2.75rem;min-height:2.75rem}.game-layout .segmented-option,.game-layout .coach-bar-option,.game-head .segmented-option,.game-layout .engine-line,.game-layout .shortcut-hint{min-height:2.75rem}.game-layout .tip-close{display:inline-grid;place-items:center;min-width:2.75rem;min-height:2.75rem;margin:-.75rem -.75rem -.75rem 0}.game-layout .tip-ok{min-width:2.75rem;min-height:2.75rem}.game-layout .move-btn{min-height:2.25rem}.game-layout .lesson-track-bars{align-items:center}.game-layout .lesson-track-seg{height:2.75rem;padding-block:calc((2.75rem - 6px)/2);background-clip:content-box;border-radius:0}.game-layout .lesson-track-seg.is-current{box-shadow:none}.game-layout .switch{position:relative}.game-layout .switch:after{content:"";position:absolute;top:-.75rem;right:-.25rem;bottom:-.75rem;left:-.25rem}.game-layout .shortcut-help>summary,.game-layout .shortcut-help-toggle{min-height:2.75rem}}@media (max-width: 1024px){.game-layout--rail .game-rail-player .player-card{gap:var(--space-2);padding:.25rem var(--space-2)}.game-layout--rail .game-rail-player .player-avatar{width:1.5rem;height:1.5rem;font-size:.75rem}.game-layout--rail .game-rail-player .player-info{display:flex;align-items:center;gap:var(--space-2);min-width:0;overflow:hidden}.game-layout--rail .game-rail-player .player-name{flex:0 1 auto;min-width:0;align-items:center;font-size:var(--text-sm);white-space:nowrap;overflow:hidden}.game-layout--rail .game-rail-player .player-captures{flex:0 1 auto;min-width:0;min-height:0;flex-wrap:nowrap;overflow:hidden;font-size:.8rem}.game-layout--rail .game-rail-player .player-clock{flex:none;font-size:1.3rem;padding:.2rem .45rem}.game-layout--rail .game-rail-tools .coach-bar{flex-wrap:wrap}}@media (max-width: 899px),(max-width: 1024px) and (orientation: portrait){.game-layout:has(>.board-stage)>:not(.board-stage),.game-layout--rail>.game-rail>*{width:min(100%,calc(var(--board-size, 100%) + var(--stage-side, 0px)));justify-self:center}.game-layout:has(>.board-stage .eval-bar-wrap)>:not(.board-stage),.game-layout--rail:has(>.board-stage .eval-bar-wrap)>.game-rail>*{width:min(100%,calc(var(--board-size, 100%) + 2rem))}.game-layout>.side-panel,.game-layout>.game-rail>.side-panel{overflow:visible;min-height:0}.game-layout>.side-panel>.panel-footer,.game-layout>.game-rail>.side-panel>.panel-footer{position:sticky;bottom:0;z-index:3;background:var(--surface-1);border-radius:0 0 var(--radius-lg) var(--radius-lg)}}@media (max-width: 899px),(max-width: 1024px) and (orientation: portrait){.game-head:has(~.game-layout>.board-stage){flex-wrap:nowrap;align-items:center;gap:var(--space-1);min-height:2.75rem;padding-bottom:var(--space-1)}.game-head:has(~.game-layout>.board-stage)>div:not(.game-head-actions){flex:1 1 auto;flex-direction:row;align-items:center;gap:var(--space-1);min-width:0}.game-head:has(~.game-layout>.board-stage)>div:not(.game-head-actions)>:not(.page-title):not(.crumb):not(.c960-title-row),.game-head:has(~.game-layout>.board-stage)>.eyebrow,.game-head:has(~.game-layout>.board-stage) .star-title-tag,.game-head:has(~.game-layout>.board-stage) .game-head-actions>.crumb{display:none}.game-head:has(~.game-layout>.board-stage) .page-title{min-width:0;font-size:1.25rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-head:has(~.game-layout>.board-stage) .c960-title-row{display:flex;align-items:center;gap:var(--space-2);min-width:0}.game-head:has(~.game-layout>.board-stage)>div:not(.game-head-actions)>.crumb:has(svg){flex:none;justify-content:center;width:2.75rem;height:2.75rem;margin-left:calc(-1 * var(--space-2));font-size:0;gap:0}.game-head:has(~.game-layout>.board-stage)>div:not(.game-head-actions)>.crumb svg{width:1.25rem;height:1.25rem}.game-head:has(~.game-layout>.board-stage)>.game-head-actions{flex:none;display:flex;align-items:center;gap:var(--space-1);margin:0}.game-head:has(~.game-layout>.board-stage)>.game-head-actions>.btn,.game-head:has(~.game-layout>.board-stage)>.game-head-actions>details:not(.lesson-switcher)>summary{justify-content:center;width:2.75rem;padding:0;gap:0;font-size:0}.game-head:has(~.game-layout>.board-stage)>.game-head-actions svg{width:1.1rem;height:1.1rem}.game-head:has(~.game-layout>.board-stage) .puzzle-settings-pop,.game-head:has(~.game-layout>.board-stage) .lesson-switcher-pop{right:0;left:auto;max-width:calc(100vw - 2 * var(--board-gutter))}}@media (max-width: 599px){main:has(.game-layout>.board-stage){padding-inline:var(--board-gutter);padding-top:var(--space-2)}.game-layout:has(>.board-stage){gap:var(--space-2)}.game-layout .board-stage{max-width:100%;gap:var(--space-2)}.puzzle-crumb:has(~.game-layout>.board-stage){display:none}.game-head:has(~.game-layout--rail>.board-stage){position:absolute;width:1px;height:1px;min-height:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.game-layout--rail .game-rail-player .player-card{min-height:2.5rem;padding:.2rem var(--space-2);border-radius:var(--radius-sm)}.game-layout--rail .game-rail-player .player-name .tag{font-size:var(--text-xs)}.game-layout--rail .game-rail-player .player-clock{font-size:1.2rem}.game-layout--rail .game-rail-tools .board-controls{gap:var(--space-1)}.game-layout .move-list:not(.move-list--annotated){flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--space-1);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:2px}.game-layout .move-list:not(.move-list--annotated)::-webkit-scrollbar{display:none}.game-layout .move-list:not(.move-list--annotated) .move-row{display:flex;flex:none;align-items:center;gap:0;background:none}.game-layout .move-list:not(.move-list--annotated) .move-index{padding-right:.15rem;text-align:left}.game-layout .move-list:not(.move-list--annotated) .move-btn{min-height:2.75rem;padding-inline:var(--space-2);white-space:nowrap}.game-layout .move-list:not(.move-list--annotated) .move-btn--empty{display:none}.game-layout .tab-panel:has(>.move-list:not(.move-list--annotated)){padding:var(--space-2) var(--space-3)}.game-layout .side-panel .tab-panel{padding-inline:var(--space-3)}.game-layout .side-panel .panel-footer{padding:var(--space-2) var(--space-3)}}@media (min-width: 900px) and (max-width: 1024px) and (orientation: landscape){.game-layout:has(>.board-stage){grid-template-columns:auto 15rem;justify-content:start;align-items:stretch;column-gap:var(--space-4)}.game-layout:has(>.board-stage)>.board-stage{width:calc(var(--board-size, 0px) + var(--stage-side, 0px));max-width:none;margin-inline:0;align-items:stretch}.game-layout:has(>.board-stage)>.side-panel{position:static;max-height:var(--board-size, none);min-height:0}.game-layout--rail{align-items:start}.game-layout--rail>.game-rail{display:flex;height:var(--board-size, auto)}.game-layout.game-layout--rail>.board-stage,.game-layout.game-layout--rail>.game-rail>*{order:0}.game-layout--rail>.game-rail>.side-panel{max-height:none!important}.game-layout.game-layout--rail>.game-rail.game-rail--flipped>*{order:2}.game-layout.game-layout--rail>.game-rail.game-rail--flipped>.game-rail-player--bottom{order:0}.game-layout.game-layout--rail>.game-rail.game-rail--flipped>.game-rail-player--top{order:4}}@media (max-width: 599px){.game-layout .editor-palette{gap:0;padding:2px}.game-layout .editor-tool{aspect-ratio:auto;min-height:2.75rem;max-height:none}}@media (max-width: 899px){.scene-caption{position:fixed;right:var(--space-3);bottom:calc(var(--overlay-bottom) + var(--space-2));left:var(--space-3);z-index:30;display:flex;flex-direction:column;gap:.4rem;padding:.4rem var(--space-3) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:0 12px 32px -14px #0006;touch-action:pan-y}.scene-caption-progress{height:3px;overflow:hidden;border-radius:2px;background:var(--surface-3)}.scene-caption-progress span{display:block;height:100%;background:var(--accent);transition:width var(--duration) ease}.scene-caption-text{margin:0;height:4.35em;overflow-y:auto;overscroll-behavior:contain;font-size:var(--text-sm);line-height:1.45;animation:scene-caption-in .22s ease-out}.scene-caption-intro{display:-webkit-box;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--text-muted);font-size:var(--text-xs);line-height:1.4}.scene-script-intro{margin:0 0 var(--space-3);color:var(--text-muted);font-size:var(--text-sm);line-height:1.5}.scene-caption-text .scene-move{margin-right:.45em;font-family:var(--font-mono);font-weight:600;color:var(--accent)}.scene-caption-controls{display:flex;align-items:center;gap:var(--space-1)}.scene-caption-controls .icon-btn,.scene-caption-all{min-height:2.25rem}.scene-caption-controls .icon-btn{width:2.5rem;height:2.25rem}.scene-caption-controls .scene-count{margin:0 0 0 var(--space-1);padding:0;color:var(--text-subtle);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.scene-caption-all{margin-left:auto;gap:.35rem}.scene-caption-next{min-height:2.25rem}.game-layout--captioned>.side-panel{display:none}@media (max-height: 620px){.scene-caption-text{height:2.9em}}.scene-script--sheet{max-height:55dvh;margin-top:var(--space-3);overflow-y:auto}}@keyframes scene-caption-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion: reduce){.scene-caption-text{animation:none}}@media (max-width: 599px) and (min-height: 521px){:root .game-layout .side-panel.side-panel--sheet{position:fixed;top:min(var(--sheet-top, 60dvh),calc(100dvh - var(--overlay-bottom) - 3rem));right:0;bottom:var(--overlay-bottom);left:0;z-index:30;justify-self:stretch;width:auto;max-width:none;min-height:0;margin:0;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;border-width:1px 0 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -10px 28px -14px #0f141e4d;transition:top .22s ease}.rush-hud-score{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:auto;font:700 var(--text-lg) / 1 var(--font-mono)}.rush-hud-lives{display:inline-flex;gap:.25rem}:root .game-layout .side-panel.side-panel--sheet.is-open{top:calc(var(--header-height) + 16dvh)}:root .game-layout .side-panel--sheet>*{flex:none}.sheet-handle{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:center;width:100%;min-height:2.25rem;padding:0;border:0;background:var(--surface-1);cursor:pointer;touch-action:none}.sheet-handle span{width:2.5rem;height:4px;border-radius:2px;background:var(--border-strong, var(--text-muted));opacity:.6}.sheet-handle:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}:root .game-layout .sheet-scrim.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;justify-self:stretch;width:auto;z-index:29;background:#0a0e1659;animation:sheet-scrim-in .18s ease}:root .game-layout .side-panel--sheet>.panel-footer{position:sticky;bottom:0;margin-top:auto;border-radius:0}}@keyframes sheet-scrim-in{0%{opacity:0}}@media (prefers-reduced-motion: reduce){:root .game-layout .side-panel.side-panel--sheet{transition:none}.sheet-scrim{animation:none}}@media (max-width: 599px) and (min-height: 521px){.board-result{position:absolute;top:var(--space-2);left:50%;z-index:6;display:flex;align-items:center;gap:var(--space-2);max-width:calc(100% - var(--space-4));padding:.45rem var(--space-4) .45rem var(--space-3);transform:translate(-50%);border-radius:999px;color:#fff;white-space:nowrap;pointer-events:none;box-shadow:0 10px 26px -10px #00000073;animation:board-result-in 2.4s ease forwards}.board-result strong{font-size:var(--text-sm)}.board-result--good{background:var(--success)}.board-result--bad{background:var(--danger)}}@keyframes board-result-in{0%{opacity:0;translate:0 -6px}8%,85%{opacity:1;translate:0 0}to{opacity:0}}@media (prefers-reduced-motion: reduce){.board-result{animation:none}}}@layer phone{@media (max-width: 599px),(pointer: coarse) and (max-width: 899px){:root :is(.today-page,.bot-select,.puzzle-hub,.learn-page,.watch-page:not(:has(.board-stage)),.studies-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page,.progress-page,.auth-main,.tv-channels,.watch-nav){--control-sm: 2.75rem;--control-md: 2.75rem}:root :is(.today-page,.bot-select,.puzzle-hub,.learn-page,.watch-page:not(:has(.board-stage)),.studies-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page) :is(.segmented-option,.ui-tab,.tab,.chip,.tempo-chip,.pagination-page,.pagination-step,.btn){min-height:2.75rem}:root :is(.today-page,.bot-select,.puzzle-hub,.learn-page,.watch-page:not(:has(.board-stage)),.studies-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page) :is(.pagination-page,.pagination-step){height:2.75rem;min-width:2.75rem}:root :is(.today-page,.bot-select,.puzzle-hub,.learn-page,.watch-page:not(:has(.board-stage)),.studies-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page) .icon-btn{width:2.75rem;height:2.75rem}:root :is(.today-page,.bot-select,.puzzle-hub,.learn-page,.watch-page:not(:has(.board-stage)),.studies-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page) :is(.segmented-option,.ui-tab,.tab,.chip,.tempo-chip){flex-shrink:0;min-width:2.75rem}:root :is(.puzzle-hub,.learn-page,.forum-page,.team-page,.leaderboard-page,.watch-page,.study-page) .crumb,:root .watch-nav .crumb,:root .forum-crumbs a,:root .catalog-jump a,:root .hub-profile-links a,:root .learn-hero-link,:root .today-card-meta,:root .today-link,:root .play-setup-alt a,:root .forum-category-name a,:root .forum-category-last-topic,:root .topic-row-title,:root .topic-row-meta a,:root .post-author-name,:root .post-number,:root .team-person-name,:root .corr-page .profile-link,:root .leaderboard-page .profile-link,:root .leaderboard-overview .profile-link,:root .license-row a,:root .licenses-page a,:root .study-chapter-open,:root .study-start{display:inline-flex;align-items:center;min-height:2.75rem}:root .post-number,:root .today-card-meta{min-width:2.75rem;justify-content:center}:root :is(.post-like,.composer-mode,.tv-channel,.opening-family-head,.auth-top .lang-toggle,.auth-back){min-height:2.75rem}:root .tv-channel,:root .opening-family-head{display:flex;align-items:center}:root .puzzle-hub .opening-family a{min-height:2.75rem;display:flex;align-items:center}:root .study-chapter-tools .icon-btn{width:2.75rem;height:2.75rem}:root .settings-page .switch{width:2.75rem;height:2.75rem;border:0;background:transparent;background-clip:content-box}:root .settings-page .switch:before{content:"";position:absolute;top:50%;left:0;right:0;height:1.45rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-2);transform:translateY(-50%);transition:background .15s ease,border-color .15s ease}:root .settings-page .switch--on:before{background:var(--accent);border-color:var(--accent)}:root .settings-page .switch-knob{z-index:1}:root :is(.arenas-page,.swiss-page,.simul-page,.corr-page,.studies-page,.teams-page,.team-page,.settings-page) label:has(>input[type=checkbox]){display:flex;align-items:center;min-height:2.75rem}}@media (max-width: 599px){:root :is(.today-page,.bot-select,.learn-page,.watch-page,.studies-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page,.puzzle-hub):not(:is(.today-page,.bot-select,.learn-page,.watch-page,.studies-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page,.puzzle-hub) *){padding-inline:var(--space-1);padding-bottom:var(--space-4)}:root :is(.puzzle-hub,.learn-page,.watch-page,.licenses-page){padding-bottom:0}:root :is(.puzzle-hub,.learn-page,.watch-page,.licenses-page)>.scroll-area{padding-bottom:var(--space-4)}:root :is(.today-page,.bot-select,.puzzle-hub,.learn-page,.watch-page,.studies-page,.study-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page,.auth-main,.tv-channels){--text-xs: .8125rem}:root :is(.today-page,.bot-select,.puzzle-hub,.learn-page,.watch-page,.studies-page,.study-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page,.auth-main,.tv-channels) :is(.eyebrow,.section-title,.field-label,.data-table th,th,.segmented-meta,.ui-tab-count,.tag,.badge,.pagination-summary){font-size:.8125rem}:root :is(.quick-tile span,.quick-tile small,.today-page small,.bot-tile-style,.study-section-title,.study-count,.study-chapter-index,.study-save,.study-start,.composer-hint code,.arena-block span,.arena-block small,.arena-sheet-cell,.swiss-chip,.auth-top .brand,.auth-top .lang-toggle span,.watch-nav .btn){font-size:.8125rem}:root :is(.today-page,.bot-select,.puzzle-hub,.learn-page,.watch-page,.studies-page,.study-page,.teams-page,.team-page,.forum-page,.corr-page,.arenas-page,.arena-page,.swiss-page,.simul-page,.leaderboard-page,.profile-page,.history-page,.insights-page,.import-page,.settings-page,.licenses-page,.auth-main,.dialog,[role=dialog]) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){font-size:16px;min-height:2.75rem}:root :is(.forum-page,.team-page,.corr-page,.settings-page,.import-page,.studies-page,.teams-page,.study-page) textarea{min-height:6rem}:root :is(.arenas-page,.swiss-page,.simul-page,.corr-page,.settings-page,.import-page,.teams-page,.studies-page,.auth-main) :is(.input,.field input,.field select,.field textarea){width:100%;max-width:none}:root .page-header-ui:not(.page-header-ui--compact){flex-direction:column;align-items:stretch;gap:var(--space-3)}:root .page-header-ui:not(.page-header-ui--compact)>*{flex:0 0 auto;max-width:none}:root .page-header-ui:not(.page-header-ui--compact) .page-header-ui-actions{width:100%}:root .page-header-ui:not(.page-header-ui--compact) .page-header-ui-actions>:is(.btn,a.btn){flex:1 1 auto}:root :is(.bot-select,.puzzle-hub,.corr-page,.leaderboard-page,.history-page,.settings-page,.import-page,.insights-page,.studies-page,.teams-page,.arenas-page,.swiss-page,.simul-page) .segmented:not(.segmented--wrap){max-width:100%;-webkit-overflow-scrolling:touch}:root :is(.puzzle-hub,.arenas-page,.swiss-page,.simul-page,.bot-select,.import-page) :is(.chip-row,.tempo-row){gap:var(--space-2)}:root .play-setup-alt{flex-wrap:wrap;gap:var(--space-2)}:root .today-hero-actions,:root .today-card-actions{flex-wrap:wrap}:root .history-filters{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}:root .history-filters>.segmented,:root .history-filters>.history-search{grid-column:1 / -1}:root .history-filters :is(.history-select,.history-search,.history-date-field){width:100%;min-width:0}:root .history-search input{flex:1 1 auto;width:100%;min-width:0}:root .history-date-field input{width:100%;min-width:0}:root .settings-account-row{flex-wrap:wrap}:root .settings-account-row .input{flex:1 1 100%}:root .settings-account-row .btn{flex:1 1 100%}:root .arenas-page .arena-schedule-row{grid-template-columns:4.25rem auto auto minmax(0,1fr);grid-template-rows:auto auto;gap:2px var(--space-3);min-height:3.5rem;padding:var(--space-2) var(--space-1)}:root .arenas-page .arena-schedule-row>*{display:block}:root .arenas-page .arena-schedule-row>.arena-schedule-time{grid-column:1;grid-row:1 / span 2;align-self:center}:root .arenas-page .arena-schedule-row>.arena-schedule-name{grid-column:2 / 4;grid-row:1}:root .arenas-page .arena-schedule-row>.tag:nth-child(3){grid-column:4;grid-row:1;justify-self:end}:root .arenas-page .arena-schedule-row>:nth-child(4){display:none}:root .arenas-page .arena-schedule-row>:nth-child(5){grid-column:2;grid-row:2}:root .arenas-page .arena-schedule-row>:nth-child(6){grid-column:3;grid-row:2}:root .arenas-page .arena-schedule-row>.arena-schedule-in{grid-column:4;grid-row:2;text-align:right}:root .arenas-page .arena-schedule--done .arena-schedule-row>:nth-child(4){display:block;grid-column:2;grid-row:2}:root .arenas-page .arena-schedule--done .arena-schedule-row>.arena-winner{grid-column:3 / -1;grid-row:2;text-align:right}:root .arenas-page :is(.arena-timeline-lane,.arena-timeline-lane-label){min-height:2.75rem}:root .arenas-page .arena-block{min-height:2.75rem}:root .forum-page .composer-actions,:root .team-page .team-hero-actions{flex-wrap:wrap}:root .license-row{flex-wrap:wrap}:root .auth-aside .auth-board,:root .auth-aside .auth-quote{display:none}:root .auth-split{grid-template-rows:auto 1fr}:root .auth-split .auth-aside{padding:var(--space-2) var(--space-4)}:root .auth-split .auth-main{place-items:start center;padding:var(--space-5) var(--space-4) var(--space-6)}:root .auth-top .brand{min-height:2.75rem;display:inline-flex;align-items:center}:root .auth-main .auth-tab{min-height:2.75rem}}@media (max-width: 599px){:root .stack-table,:root .stack-table tbody{display:block;width:100%;min-width:0}:root .stack-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:root .stack-table tr{display:grid;align-items:center;gap:2px var(--space-3);padding:var(--space-3) var(--space-1);border-bottom:1px solid var(--border)}:root .stack-table tr.is-me{background:var(--accent-soft)}:root .stack-table td,:root .stack-table tr.is-me td{display:block;height:auto;min-width:0;padding:0;border:0;background:none;text-align:left}:root .stack-table td[data-label]:before{content:attr(data-label) " ";color:var(--text-subtle);font-size:.8125rem}:root .table-scroll:has(>.stack-table){overflow:visible;margin-inline:0}:root .leaderboard-table tr{grid-template-columns:2.25rem minmax(0,1fr) auto}:root .leaderboard-table td:nth-child(1){grid-row:1 / span 2}:root .leaderboard-table td:nth-child(2){grid-column:2;grid-row:1}:root .leaderboard-table td:nth-child(n+3){grid-column:2;grid-row:2;color:var(--text-muted);font-size:.8125rem}:root .leaderboard-table td.leaderboard-rating{grid-column:3;grid-row:1 / span 2;font-size:var(--text-base);font-weight:600;color:var(--text)}:root .leaderboard-table tr:has(>td:nth-child(5):not(.leaderboard-rating)){grid-template-columns:2.25rem auto auto minmax(0,1fr)}:root .leaderboard-table tr:has(>td:nth-child(5):not(.leaderboard-rating)) td:nth-child(2){grid-column:2 / -1}:root .leaderboard-table tr:has(>td:nth-child(5):not(.leaderboard-rating)) td:nth-child(3){grid-column:2}:root .leaderboard-table tr:has(>td:nth-child(5):not(.leaderboard-rating)) td:nth-child(4){grid-column:3}:root .leaderboard-table tr:has(>td:nth-child(5):not(.leaderboard-rating)) td:nth-child(5){grid-column:4}:root .leaderboard-table .leaderboard-name{min-height:2.75rem}:root .leaderboard-table tr.leaderboard-gap{display:block;padding:var(--space-1);text-align:center}:root .history-table tr{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;cursor:pointer}:root .history-table td:nth-child(1){grid-column:1;grid-row:1}:root .history-table td:nth-child(2){grid-column:2;grid-row:1}:root .history-table td:nth-child(6){grid-column:3;grid-row:1;text-align:right}:root .history-table td:nth-child(3){grid-column:1;grid-row:2;justify-self:center}:root .history-table td:nth-child(4){grid-column:2;grid-row:2;color:var(--text-muted);font-size:.8125rem}:root .history-table td:nth-child(5){grid-column:3;grid-row:2;text-align:right;color:var(--text-muted);font-size:.8125rem}:root .history-table .history-opponent{display:flex;flex-direction:column;gap:2px}:root .history-table .history-opponent a{display:inline-flex;align-items:center;min-height:2.75rem;margin-block:-.6rem}:root .corr-table tr{grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-rows:auto auto}:root .corr-table td:nth-child(1){grid-column:1 / 3;grid-row:1}:root .corr-table td:nth-child(2){grid-column:1;grid-row:2}:root .corr-table td:nth-child(3){grid-column:2;grid-row:2}:root .corr-table td:nth-child(4){grid-column:3 / -1;grid-row:2}:root .corr-table td:nth-child(5){grid-column:3;grid-row:1;justify-self:end;color:var(--text-muted);font-size:.8125rem}:root .corr-table td:nth-child(6){grid-column:4;grid-row:1;justify-self:end}:root .corr-table td:nth-child(n+2):nth-child(-n+4){color:var(--text-muted);font-size:.8125rem}:root .arena-table tr{grid-template-columns:2rem minmax(0,1fr) auto;grid-template-rows:auto auto}:root .arena-table td:nth-child(1){grid-column:1;grid-row:1}:root .arena-table td:nth-child(2){grid-column:2;grid-row:1}:root .arena-table td:nth-child(5){grid-column:3;grid-row:1;text-align:right;font-weight:600}:root .arena-table td:nth-child(3){grid-column:2;grid-row:2;overflow:hidden}:root .arena-table td:nth-child(4){grid-column:3;grid-row:2;text-align:right;font-size:.8125rem}:root .swiss-table tr{grid-template-columns:2rem auto auto minmax(0,1fr) auto;grid-template-rows:auto auto auto}:root .swiss-table td:nth-child(1){grid-column:1;grid-row:1}:root .swiss-table td:nth-child(2){grid-column:2 / 5;grid-row:1}:root .swiss-table td:nth-child(4){grid-column:5;grid-row:1;text-align:right;font-weight:600}:root .swiss-table td:nth-child(3){grid-column:2 / -1;grid-row:2}:root .swiss-table td:nth-child(5){grid-column:2;grid-row:3;font-size:.8125rem}:root .swiss-table td:nth-child(6){grid-column:3;grid-row:3;font-size:.8125rem}:root .swiss-table td:nth-child(7){grid-column:4;grid-row:3;font-size:.8125rem}:root .swiss-table .swiss-chips{flex-wrap:wrap}:root .insights-table tr{grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-rows:auto auto}:root .insights-table td:nth-child(1){grid-column:1 / 4;grid-row:1}:root .insights-table td:nth-child(5){grid-column:4;grid-row:1;text-align:right;font-weight:600}:root .insights-table td:nth-child(2){grid-column:1;grid-row:2;font-size:.8125rem;color:var(--text-muted)}:root .insights-table td:nth-child(3){grid-column:2;grid-row:2;font-size:.8125rem}:root .insights-table td:nth-child(4){grid-column:3 / -1;grid-row:2}:root .import-table tr{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto auto}:root .import-table td:nth-child(1){grid-column:1;grid-row:1}:root .import-table td:nth-child(2){grid-column:2;grid-row:1}:root .import-table td:nth-child(3){grid-column:3;grid-row:1}:root .import-table td:nth-child(4){grid-column:1;grid-row:2;font-size:.8125rem}:root .import-table td:nth-child(5){grid-column:2;grid-row:2;font-size:.8125rem;color:var(--text-muted)}:root .import-table td:nth-child(6){grid-column:3;grid-row:2;font-size:.8125rem}:root .import-table td:nth-child(7){grid-column:1 / -1;grid-row:3;display:flex;gap:var(--space-2)}:root .import-table td:nth-child(7) .btn{flex:1}:root .import-table .import-external{display:inline-grid;place-items:center;width:2.75rem;min-height:2.75rem}}@media (max-width: 899px) and (pointer: coarse),(max-width: 599px){.lobby .tempo-chip{min-height:44px;min-width:44px}.lobby .btn{min-height:44px}}@media (max-width: 899px){:root .lobby-side{display:contents}:root .lobby-players{order:-1}:root .lobby-player-list{max-height:none}:root .lobby-player-list li{min-height:2.75rem}}@media (max-width: 899px){:root .welcome-intro .page-title,:root .landing-title{font-size:var(--text-display)}:root .welcome-result-level,:root .rush-start-title,:root .racer-countdown-number{font-size:2.75rem}:root .coord-clock span,:root .streak-over-score strong,:root .racer-results-title,:root .game-over-title{font-size:1.9rem}:root .progress-stat strong,:root .rated-card-value,:root .arena-clock-time,:root .review-summary-big,:root .insights-kpi strong,:root .admin-tile--big .admin-tile-value{font-size:1.6rem}}@media (max-width: 899px){:root .app-shell--mobile .app-main{padding-block:var(--space-3)}:root .page-header-ui,:root .today-head,:root .play-setup-head{gap:var(--space-2);padding-bottom:var(--space-2);margin-bottom:var(--space-2)}:root .page-header-ui-description,:root .today-head>div>p,:root .play-setup-head>div>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}:root :is(.today-hero,.hub-card,.bot-card,.lobby-card,.learn-next,.license-engine,.admin-section,.admin-login,.learn-hero-main,.learn-hero-side){padding:var(--space-3) var(--space-4)}:root .bot-card{min-height:0}:root .empty-state{padding:var(--space-4) var(--space-3)}:root .learn-hero{grid-template-columns:minmax(0,1fr)}:root .learn-hero-side{border-left:0;border-top:1px solid var(--border)}}@media (max-width: 899px){:root .today-head>.today-streak{display:flex;flex:none;flex-direction:row;align-items:center;gap:.45rem;padding:var(--space-2) var(--space-3);white-space:nowrap}:root .today-head>.today-streak strong{font-size:1.15rem}:root .play-setup-alt{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}:root .play-setup-alt a{flex:none}:root .learn-hero-main>p,:root .learn-play-card>p,:root .hub-card>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}}}@layer phone{@media (max-width: 899px){:root .route-view>:is(.today-page,.bot-select,.learn-page,.settings-page,.licenses-page,.progress-page,.arenas-page,.arena-page,.history-page,.leaderboard-page,.import-page,.lobby,.puzzle-hub,.watch-page,.whats-new-page){flex:none;height:auto;min-height:0}:root .route-view :is(.scroll-area,.hub-body,.learn-body,.watch-body,.settings-layout,.settings-main,.today-grid,.today-main,.today-side,.learn-grid,.arenas-layout,.arenas-main,.arenas-side,.arena-layout,.lobby-grid,.lobby-main,.lobby-table-card,.history-table-wrap){flex:none;height:auto;min-height:0;max-height:none;overflow:visible}:root .route-view .game-layout .side-panel{max-height:none!important;min-height:0}:root .route-view .game-layout .side-panel>.tab-panel,:root .route-view .game-layout .side-panel .tab-panel.stack{flex:none;max-height:none;overflow:visible}:root .route-view .scene-script{max-height:none;overflow:visible}}@media (max-width: 899px){:root .game-head .puzzle-settings[open]>.puzzle-settings-pop,:root .game-head .lesson-switcher[open]>.lesson-switcher-pop{position:fixed;left:0;right:0;top:auto;bottom:calc(var(--mobile-tabbar-height, 56px) + env(safe-area-inset-bottom));width:auto;max-width:none;max-height:min(70dvh,calc(100dvh - 7rem));overflow-y:auto;overscroll-behavior:contain;margin:0;padding:var(--space-4) var(--space-4) var(--space-5);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -12px 32px #0f141e38;z-index:60}}@media (max-width: 899px) and (max-height: 520px){:root .game-layout .side-panel>.panel-footer,:root .game-layout .card>.panel-footer,:root .game-layout>.side-panel>.panel-footer,:root .game-layout>.game-rail>.side-panel>.panel-footer{position:static}}@media (max-width: 599px){:root .game-head:has(~.game-layout>.board-stage)>div:not(.game-head-actions)>.crumb:has(svg){margin-left:0}:root .game-head:has(~.game-layout--rail>.board-stage) .crumb{display:none}}@media (max-width: 899px){:root :is([role=dialog],.dialog,.account-menu,.bell-pop,.notification-pop,.game-over,.game-over-card) :is(button,a.btn,.btn,.icon-btn,.account-item,.segmented-option,[role=radio],[role=tab],summary){min-height:44px}:root :is([role=dialog],.dialog,.account-menu,.game-over,.game-over-card) :is(.icon-btn,.dialog-close){min-width:44px}:root .account-menu .account-item{display:flex;align-items:center}}@media (max-width: 899px){:root .account-menu,:root .bell-pop,:root .notification-pop{max-height:calc(100dvh - 4.5rem - var(--mobile-tabbar-height, 56px) - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}}@media (max-width: 899px){body:has(.app-shell--mobile) .toast-region{top:calc(3.75rem + env(safe-area-inset-top));bottom:auto;left:var(--space-3);right:var(--space-3);pointer-events:none}body:has(.app-shell--mobile) .toast-region>*{pointer-events:auto}}@media (max-width: 899px){body:has(.app-shell--mobile) .toast-region{right:auto;max-width:calc(100% - 5rem)}}body:has([role=dialog]) .toast-region,body:has([role=dialog]) .toast-region>*{pointer-events:none}@media (max-width: 599px){:root .game-layout--rail{grid-template-columns:minmax(0,1fr) auto;grid-auto-flow:row dense;column-gap:var(--space-2);row-gap:6px}:root .game-layout--rail>:not(.game-rail),:root .game-layout--rail>.game-rail>*{grid-column:1 / -1}:root .game-layout--rail>.game-rail>.game-rail-tools:not(.game-rail-tools--coach){grid-column:2;width:auto;justify-self:end}:root .game-layout--rail .game-rail-tools--coach,:root .game-layout--rail .game-rail-tools--coach>.coach-bar{display:contents}:root .game-layout--rail .coach-bar-level{grid-column:1 / -1;order:4}:root .game-layout--rail .coach-bar-actions{grid-column:1;order:4;display:flex;align-items:center;gap:var(--space-1);min-width:0;margin:0}:root .game-layout--rail .coach-bar-actions>*,:root .game-layout--rail .coach-bar-actions .btn{min-width:0;max-width:100%}:root .game-layout--rail .coach-bar-actions .btn{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:root .game-layout--rail .board-controls-nav .icon-btn:first-child,:root .game-layout--rail .board-controls-nav .icon-btn:last-child{display:none}:root .game-layout--rail .board-controls-nav .icon-btn:nth-child(2){margin-left:0;border-radius:var(--radius-md) 0 0 var(--radius-md)}:root .game-layout--rail .board-controls-nav .icon-btn:nth-child(3){border-radius:0 var(--radius-md) var(--radius-md) 0}:root .game-layout--rail .game-rail-tools .board-controls{flex-wrap:nowrap}:root .game-layout .review-section:has(>.puzzle-actions){gap:var(--space-2);padding:var(--space-2) var(--space-3)}:root .game-layout .puzzle-actions{position:sticky;bottom:0;z-index:3;margin-inline:calc(-1 * var(--space-3));padding:var(--space-1) var(--space-3);background:var(--surface-1);box-shadow:0 -8px 12px -10px #00000040}:root .game-layout .review-section:has(>.puzzle-actions)>.eyebrow,:root .game-layout .review-section:has(>.puzzle-actions)>.puzzle-source{order:2}:root .game-layout .review-section:has(>.puzzle-actions)>.puzzle-actions{order:1}:root .game-layout .puzzle-status{gap:var(--space-2);padding:var(--space-2) var(--space-3)}:root .game-layout .puzzle-status--turn{grid-template-columns:2.25rem minmax(0,1fr)}:root .game-layout .puzzle-status--turn .puzzle-status-icon{width:2.25rem;height:2.25rem;font-size:1.35rem}:root .game-layout .puzzle-status-body strong{font-size:var(--text-base)}:root .game-layout .puzzle-status--turn .puzzle-status-body>span:not(.puzzle-status-steps){display:none}:root .game-layout .puzzle-actions{padding-block:2px}:root .app-shell--mobile .app-main:has(.game-layout){padding-bottom:0}}@media (max-width: 899px){:root input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),:root select,:root textarea{font-size:max(16px,1em)}}@media (max-width: 899px){:root .coach-bubble{position:fixed!important;top:auto!important;right:var(--space-3)!important;bottom:calc(var(--mnav-tabbar, 3.5rem) + var(--mnav-safe-bottom, 0px) + var(--space-2))!important;left:var(--space-3)!important;width:auto!important;z-index:var(--z-dialog)}:root .coach-bubble-pointer{display:none}:root .coach-bubble-text{max-height:min(17dvh,7rem);overflow-y:auto;overscroll-behavior:contain;font-size:var(--text-sm)}:root .coach-bubble-actions .btn{flex:1;min-height:2.75rem}}@media (max-width: 899px){:root .dialog-backdrop,:root .share-backdrop,:root .line-theater-backdrop{padding-bottom:calc(var(--space-4) + var(--overlay-bottom))}:root .dialog,:root .share-dialog,:root .line-theater{max-height:calc(100dvh - 2rem - var(--overlay-bottom))}:root .board-shell--fullscreen{width:100%;height:100dvh}:root .welcome-board{width:min(100%,34rem,calc(100dvh - 16rem))}}}@layer phone{html,body{overscroll-behavior:none}@media (pointer: coarse){:root a,:root button,:root summary,:root label,:root [role=button],:root [role=tab],:root .btn,:root .icon-btn,:root .tab,:root .switch,:root .segmented-option,:root .move-btn,:root .mnav-tab{-webkit-tap-highlight-color:transparent;touch-action:manipulation}:root .board-frame,:root .board-frame *,:root .move-glyph,:root .player-card,:root .mnav-tab,:root .segmented,:root .tabs{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}:root .move-list,:root .scroll-area,:root .tab-panel{overscroll-behavior:contain}:root .btn:active,:root .icon-btn:active,:root .mnav-tab:active,:root .move-btn:active{transform:scale(.97)}:root .btn,:root .icon-btn,:root .mnav-tab,:root .move-btn{transition:transform var(--duration-fast) ease,background var(--duration-fast) ease}}@media (pointer: coarse) and (prefers-reduced-motion: reduce){:root .btn:active,:root .icon-btn:active,:root .mnav-tab:active,:root .move-btn:active{transform:none}}@media (max-width: 899px){:root .app-shell--mobile{padding-top:env(safe-area-inset-top,0px)}:root .mnav-topbar,:root .public-shell .public-top,:root .landing .landing-header{padding-left:max(var(--space-2),env(safe-area-inset-left,0px));padding-right:max(var(--space-2),env(safe-area-inset-right,0px))}:root .app-shell--mobile .app-main{padding-left:max(var(--space-3),env(safe-area-inset-left,0px));padding-right:max(var(--space-3),env(safe-area-inset-right,0px))}}@media (max-width: 899px){:root :is(.eyebrow,.section-title,.tag,.nav-meta,.nav-badge,.badge,.bell-count),:root .player-name .tag,:root .segmented-option,:root .segmented-option span{font-size:max(var(--text-xs),.78rem)}:root .app-main :is(small,kbd,dt,th,figcaption),:root .public-main :is(small,kbd,dt,th,figcaption){font-size:max(var(--text-xs),.78rem)}:root .tree-quality,:root .lobby-chat .chat-author,:root .coach-quality,:root .coach-rank,:root .coach-scale,:root .coach-best,:root .hint-steps li,:root .move-note-who,:root .bar-hint-step,:root .streak-legend,:root .eval-graph-phases,:root .quality-strip small,:root .quick-tile span,:root .swiss-chip--bye{font-size:var(--text-xs)}:root .mnav-tab{font-size:var(--text-xs)}}@media (max-width: 899px){:root .mnav-topbar .brand,:root .mnav-topbar .mnav-signin,:root .welcome-skip,:root .lang-toggle,:root .admin-login-foot a,:root .page-header-ui-actions a:not(.btn){display:inline-flex;align-items:center;min-height:2.75rem}:root :is(.profile-link,.crumb,.welcome-name a,.landing-footer a,.lobby-player a,.forum-author a,.eyebrow a,.muted a){position:relative}:root :is(.profile-link,.crumb,.welcome-name a,.landing-footer a,.lobby-player a,.forum-author a,.eyebrow a,.muted a):after{content:"";position:absolute;top:-11px;right:-4px;bottom:-11px;left:-4px}:root .switch{position:relative}:root .switch:before{content:"";position:absolute;top:-11px;right:-8px;bottom:-11px;left:-8px}}}
