@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;1,500&display=swap";.pv3-shell{--bg: var(--bg0);--bg-page: var(--bg0);--bg-elevated: var(--card);--bg-sunken: var(--bg2);--bg-tint: var(--bg1);--ink: var(--text);--ink-strong: var(--text);--ink-muted: var(--muted);--ink-faint: var(--muted2);--ink-ghost: var(--muted2);--accent-hover: var(--accent);--accent-soft: var(--accent2);--accent-tint: color-mix(in srgb, var(--accent) 16%, var(--card));--accent-line: color-mix(in srgb, var(--accent) 16%, var(--card));--border-soft: var(--border);--border-strong:var(--border2);--hairline: var(--border);--success: var(--good);--success-bg: color-mix(in srgb, var(--good) 16%, var(--card));--cat-openings: #4A78B5;--cat-tactics: #BE8B1F;--cat-endgames: #4E7D49;--cat-other: #7E6AB0;--cat-openings-bg: #E2E7F0;--cat-tactics-bg: #EFE5C9;--cat-endgames-bg: #DEE8D5;--cat-other-bg: #E5DEEC;--shadow-sm: 0 1px 2px rgba(26,24,21,.05);--shadow-md: 0 1px 0 rgba(255,255,255,.6) inset, 0 6px 24px -8px rgba(26,24,21,.1);--r-xs: 4px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 18px;--vh-grow: clamp(0px, calc(100vh - 900px) , 1260px)}.pv3-shell[data-pv3theme=dark]{--cat-openings: #6A92C9;--cat-tactics: #D4A640;--cat-endgames: #6FA362;--cat-other: #9E89C9;--cat-openings-bg: rgba(106,146,201,.12);--cat-tactics-bg: rgba(212,166,64,.12);--cat-endgames-bg: rgba(111,163,98,.12);--cat-other-bg: rgba(158,137,201,.12);--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 1px 0 rgba(255,255,255,.03) inset, 0 8px 32px -10px rgba(0,0,0,.5)}.pv3-shell,.pv3-shell *,.pv3-shell *:before,.pv3-shell *:after{box-sizing:border-box}.pv3-shell .page{min-height:100vh;padding-bottom:64px}.pv3-shell .topnav{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:var(--bd-w) solid var(--hairline)}.pv3-shell .brand{display:flex;align-items:center;gap:14px;font-family:var(--font-serif);font-size:24px;font-weight:500;letter-spacing:-.01em}.pv3-shell .brand .awn{color:var(--accent);font-style:italic}.pv3-shell .brand-mark{width:30px;height:30px;border-radius:50%;background:var(--accent);color:var(--bg-elevated);display:grid;place-items:center;font-family:var(--font-serif);font-style:italic;font-size:18px;font-weight:500}.pv3-shell .nav-links{display:flex;align-items:center;gap:28px;font-size:14px}.pv3-shell .nav-links a{color:var(--ink-muted);text-decoration:none;padding:4px 0;position:relative;transition:color .15s ease}.pv3-shell .nav-links a:hover{color:var(--ink)}.pv3-shell .nav-links a.active{color:var(--ink-strong);font-weight:500}.pv3-shell .nav-links a.active:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1.5px;background:var(--accent)}.pv3-shell .nav-right{display:flex;align-items:center;gap:14px}.pv3-shell .lang-btn{display:flex;align-items:center;gap:8px;padding:7px 12px;border:var(--bd-w) solid var(--border);border-radius:var(--r-md);background:var(--bg-elevated);color:var(--ink);font-size:13px;cursor:default}.pv3-shell .theme-toggle{width:32px;height:32px;display:grid;place-items:center;border:var(--bd-w) solid var(--border);background:var(--bg-elevated);border-radius:50%;color:var(--ink-muted);cursor:default}.pv3-shell .theme-toggle:hover{color:var(--ink)}.pv3-shell .avatar{width:32px;height:32px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#e89376,#7e6ab0 60%,#4a78b5)}.pv3-shell .page-head{padding:18px 24px 10px;display:flex;align-items:center;justify-content:space-between;gap:24px}.pv3-shell .tabs{display:inline-flex;gap:4px;padding:4px;background:var(--bg-tint);border:var(--bd-w) solid var(--border-soft);border-radius:var(--r-md)}.pv3-shell .tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:7px 14px;font:500 13px/1 var(--font-sans);color:var(--ink-muted);border-radius:calc(6px * var(--r-scale));cursor:default;transition:background .12s ease,color .12s ease}.pv3-shell .tab:hover{color:var(--ink)}.pv3-shell .tab.active{background:var(--bg-elevated);color:var(--ink-strong);box-shadow:var(--shadow-sm)}.pv3-shell .streak{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 11px;background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:999px;font:500 13px/1 var(--font-sans);color:var(--ink)}.pv3-shell .streak .flame{display:inline-grid;place-items:center;width:18px;height:18px;color:var(--accent)}.pv3-shell .pv3-headstats{display:inline-flex;align-items:baseline;gap:18px;margin-left:auto;margin-right:14px}.pv3-shell .pv3-headstat{display:inline-flex;align-items:baseline;gap:5px;font:500 12px/1 var(--font-sans);color:var(--ink)}.pv3-shell .pv3-headstat strong{font-size:16px;font-weight:700;color:var(--ink-strong, var(--ink))}.pv3-shell .pv3-headstat strong.accent{color:var(--accent)}.pv3-shell .pv3-headstat span{opacity:.6}.pv3-shell .main{padding:8px 24px 0;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:10px}.pv3-shell .col-bottom{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-top:12px}.pv3-shell .session-card{position:relative;padding:calc(14px + var(--vh-grow) * .015) 22px calc(14px + var(--vh-grow) * .012);background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:var(--r-lg)}.pv3-shell .session-eyebrow{font:500 11px/1 var(--font-mono);letter-spacing:.14em;color:var(--ink-muted);text-transform:uppercase;margin-bottom:6px;display:flex;align-items:center;gap:10px}.pv3-shell .session-eyebrow:after{content:"";flex:1;height:1px;background:linear-gradient(to right,var(--hairline),transparent)}.pv3-shell .session-headline{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:2px}.pv3-shell .session-headline .figure{font-family:var(--font-serif);font-weight:400;font-size:calc(36px + var(--vh-grow) * .022);line-height:1;letter-spacing:-.02em;color:var(--ink-strong)}.pv3-shell .session-headline .figure em{font-style:italic;color:var(--accent);font-weight:400}.pv3-shell .session-headline .unit{font-family:var(--font-serif);font-size:calc(22px + var(--vh-grow) * .011);font-style:italic;color:var(--ink);font-weight:300}.pv3-shell .session-meta{font-size:13px;color:var(--ink-muted);margin-bottom:8px}.pv3-shell .session-meta strong{color:var(--ink);font-weight:500}.pv3-shell .stack-bar{display:flex;width:100%;height:6px;border-radius:calc(3px * var(--r-scale));overflow:hidden;background:var(--bg-sunken);margin-bottom:6px}.pv3-shell .stack-bar .seg{height:100%;transition:flex .25s ease}.pv3-shell .stack-bar .seg.openings{background:var(--cat-openings)}.pv3-shell .stack-bar .seg.tactics{background:var(--cat-tactics)}.pv3-shell .stack-bar .seg.endgames{background:var(--cat-endgames)}.pv3-shell .stack-bar .seg.other{background:var(--cat-other)}.pv3-shell .legend{display:flex;flex-wrap:wrap;gap:22px;font-size:13px;margin-bottom:10px}.pv3-shell .legend .item{display:inline-flex;align-items:center;gap:8px}.pv3-shell .legend .dot{width:8px;height:8px;border-radius:50%}.pv3-shell .legend .name{color:var(--ink);font-weight:500}.pv3-shell .legend .pct{color:var(--ink-muted);font-variant-numeric:tabular-nums}.pv3-shell .legend .weight{font:500 10px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.pv3-shell .focus-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pv3-shell .focus-label{font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.pv3-shell .focus-pills{display:inline-flex;gap:6px;flex-wrap:wrap}.pv3-shell .focus-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:var(--bd-w) solid var(--border);border-radius:999px;padding:7px 14px;font:500 13px/1 var(--font-sans);color:var(--ink-muted);cursor:default;transition:all .15s ease}.pv3-shell .focus-pill:hover{color:var(--ink);border-color:var(--border-strong)}.pv3-shell .focus-pill.active{background:var(--accent-tint);border-color:var(--accent-line);color:var(--accent)}.pv3-shell .clarity{display:flex;align-items:center;gap:14px;margin-top:0;padding:6px 14px;background:transparent;border:var(--bd-w) dashed var(--border-strong);border-radius:var(--r-md);font-size:13px;color:var(--ink)}.pv3-shell .clarity .pulse-row{display:inline-flex;gap:4px;align-items:center}.pv3-shell .clarity .pulse-row span{width:6px;height:6px;border-radius:50%;animation:pulse-dot 2.4s infinite ease-in-out}.pv3-shell .clarity .pulse-row span:nth-child(1){background:var(--cat-openings);animation-delay:0s}.pv3-shell .clarity .pulse-row span:nth-child(2){background:var(--cat-tactics);animation-delay:.15s}.pv3-shell .clarity .pulse-row span:nth-child(3){background:var(--cat-endgames);animation-delay:.3s}.pv3-shell .clarity .pulse-row span:nth-child(4){background:var(--cat-other);animation-delay:.45s}@keyframes pulse-dot{0%,to{opacity:.35;transform:scale(.9)}20%{opacity:1;transform:scale(1.2)}}.pv3-shell .clarity .arrow{color:var(--ink-faint);font-family:var(--font-mono)}.pv3-shell .clarity .text{flex:1}.pv3-shell .clarity .text strong{color:var(--ink-strong);font-weight:600}.pv3-shell .clarity .dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ink-faint);cursor:default;width:22px;height:22px;border-radius:calc(4px * var(--r-scale));font-size:15px;line-height:1}.pv3-shell .clarity .dismiss:hover{color:var(--ink);background:var(--hairline)}.pv3-shell .solo-banner{display:flex;align-items:center;gap:12px;margin-top:18px;padding:12px 16px;background:var(--ink-strong);color:var(--bg);border-radius:var(--r-md);font-size:12.5px;position:relative}.pv3-shell .solo-banner .solo-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #c9442d2e;animation:pulse-solo 1.6s infinite ease-in-out;flex:0 0 8px}@keyframes pulse-solo{0%,to{box-shadow:0 0 0 3px #c9442d1f}50%{box-shadow:0 0 0 6px #c9442d38}}.pv3-shell .solo-banner .solo-eyebrow{font:600 10px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-soft);white-space:nowrap}.pv3-shell .solo-banner .solo-text{flex:1;display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--bg)}.pv3-shell .solo-banner .solo-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 7px;border-radius:999px;background:#ffffff14;border:var(--bd-w) solid rgba(255,255,255,.1);font:500 12px/1 var(--font-sans);color:var(--bg)}.pv3-shell .solo-banner .solo-pill .status-dot{width:6px;height:6px;background:var(--cat-color)}.pv3-shell .solo-banner .solo-reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg);color:var(--ink-strong);border:0;padding:7px 14px;border-radius:var(--r-sm);font:500 12px/1 var(--font-sans);cursor:default;white-space:nowrap}.pv3-shell .solo-banner .solo-reset:hover{background:var(--accent);color:var(--bg)}.pv3-shell .item.soloed{background:var(--accent-tint);box-shadow:inset 2px 0 0 var(--accent)}.pv3-shell .item.soloed .name{color:var(--ink-strong);font-weight:500}.pv3-shell .item.soloed .status-dot{background:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-tint)}.pv3-shell .item.dimmed-by-solo{opacity:.42}.pv3-shell .item.dimmed-by-solo .status-dot{background:transparent;border:1.5px dashed var(--ink-ghost)}.pv3-shell .item.dimmed-by-solo:hover{opacity:.85}.pv3-shell .solo-eyebrow-chip{display:inline-block;margin-left:8px;padding:2px 7px;background:var(--accent-tint);border-radius:calc(3px * var(--r-scale));color:var(--accent);letter-spacing:.08em;font:600 10px/1.4 var(--font-mono)}.pv3-shell .row-actions .solo-act:hover{color:var(--accent);background:var(--accent-tint)}.pv3-shell .hidden-paused{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;width:100%;text-align:left;padding:8px;font:500 11px/1 var(--font-mono);letter-spacing:.06em;color:var(--ink-faint);cursor:default;border-radius:var(--r-sm)}.pv3-shell .hidden-paused:hover{color:var(--ink);background:var(--bg-tint)}.pv3-shell .ready-card{padding:calc(12px + var(--vh-grow) * .015) 18px calc(12px + var(--vh-grow) * .012);background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:var(--r-lg);display:flex;flex-direction:column;gap:calc(8px + var(--vh-grow) * .011);position:relative;overflow:hidden}.pv3-shell .ready-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(to right,var(--cat-openings) 0% 25%,var(--cat-tactics) 25% 50%,var(--cat-endgames) 50% 75%,var(--cat-other) 75% 100%)}.pv3-shell .ready-head{display:flex;align-items:center;justify-content:space-between;font:500 11px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.pv3-shell .ready-badge{display:inline-flex;align-items:center;gap:6px;color:var(--success);font:500 11px/1 var(--font-mono);letter-spacing:.1em}.pv3-shell .ready-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-bg)}.pv3-shell .ready-badge.is-loading{color:var(--ink-muted)}.pv3-shell .ready-badge.is-loading .dot{background:var(--ink-faint);box-shadow:var(--elev-1);animation:pv3-skel-shimmer 1.2s ease-in-out infinite}.pv3-shell .ready-queue{display:flex;align-items:center;gap:5px}.pv3-shell .ready-queue .pip{width:26px;height:8px;border-radius:calc(2px * var(--r-scale))}.pv3-shell .ready-queue .pip.openings{background:var(--cat-openings)}.pv3-shell .ready-queue .pip.tactics{background:var(--cat-tactics)}.pv3-shell .ready-queue .pip.endgames{background:var(--cat-endgames)}.pv3-shell .ready-queue .pip.other{background:var(--cat-other)}.pv3-shell .ready-text{font-size:12px;color:var(--ink-muted);line-height:1.5}.pv3-shell .ready-text strong{color:var(--ink);font-weight:500}.pv3-shell .ready-figures{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;border-top:var(--bd-w) solid var(--hairline);border-bottom:var(--bd-w) solid var(--hairline);padding:8px 0}.pv3-shell .ready-figures .fig{display:flex;flex-direction:column;gap:2px;padding:0 8px}.pv3-shell .ready-figures .fig+.fig{border-left:var(--bd-w) solid var(--hairline)}.pv3-shell .ready-figures .num{font-family:var(--font-serif);font-size:calc(36px + var(--vh-grow) * .022);line-height:1;letter-spacing:-.02em;color:var(--ink-strong)}.pv3-shell .ready-figures .num em{font-style:italic;color:var(--accent)}.pv3-shell .ready-figures .label{font:500 10px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-top:4px}.pv3-shell .start-btn{width:100%;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:var(--accent);color:#faf4e8;border:0;border-radius:var(--r-md);font:500 15px/1 var(--font-sans);cursor:default;transition:background .15s ease,transform .1s ease}.pv3-shell .start-btn:hover:not(:disabled){background:var(--accent-hover)}.pv3-shell .start-btn:active:not(:disabled){transform:translateY(1px)}.pv3-shell .start-btn:disabled,.pv3-shell .start-btn.is-loading{background:var(--accent);opacity:.65;cursor:progress;pointer-events:none;justify-content:center;gap:10px}.pv3-shell .start-btn-spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#faf4e8;animation:pv3-start-spin .8s linear infinite}@keyframes pv3-start-spin{to{transform:rotate(360deg)}}.pv3-shell .start-btn .kbd{display:inline-flex;align-items:center;gap:6px;font:500 10px/1 var(--font-mono);letter-spacing:.06em;opacity:.7}.pv3-shell .start-btn .kbd-key{border:var(--bd-w) solid rgba(255,255,255,.3);padding:3px 5px;border-radius:calc(3px * var(--r-scale));font-family:var(--font-mono)}.pv3-shell .start-btn .arrow{width:28px;height:28px;border-radius:50%;background:#ffffff2e;display:grid;place-items:center}.pv3-shell .ready-preview{display:flex;flex-direction:column;gap:4px;margin:-4px 0 0}.pv3-shell .preview-row{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12px;color:var(--ink);border-bottom:var(--bd-w) dashed var(--hairline)}.pv3-shell .preview-row:last-child{border-bottom:0}.pv3-shell .preview-num{font:500 10px/1 var(--font-mono);color:var(--ink-faint);letter-spacing:.06em;width:16px;flex:0 0 16px}.pv3-shell .preview-dot{width:5px;height:5px;border-radius:50%;flex:0 0 5px}.pv3-shell .preview-name{flex:1;font-family:var(--font-mono);font-size:11px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pv3-shell .manifest{display:flex;flex-direction:column;margin:-2px 0}.pv3-shell .manifest-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:7px 0;font-size:12px;color:var(--ink);border-bottom:var(--bd-w) dashed var(--hairline)}.pv3-shell .manifest-row:last-child{border-bottom:0}.pv3-shell .manifest-row.is-empty{opacity:.4}.pv3-shell .manifest-row.is-skel{grid-template-columns:1fr;padding:8px 0}.pv3-shell .manifest-skel-bar{height:12px;border-radius:calc(4px * var(--r-scale));background:linear-gradient(90deg,var(--bg-elevated) 0%,color-mix(in oklch,var(--border-strong) 55%,transparent) 50%,var(--bg-elevated) 100%);background-size:200% 100%;animation:pv3-skel-shimmer 1.2s ease-in-out infinite}.pv3-shell .manifest-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.pv3-shell .manifest-label{color:var(--ink);font-weight:500;letter-spacing:-.005em}.pv3-shell .manifest-items{font:500 10.5px/1 var(--font-mono);color:var(--ink-muted);letter-spacing:.04em}.pv3-shell .manifest-cards{font-family:var(--font-serif);font-size:18px;color:var(--ink-strong);font-weight:400;letter-spacing:-.01em;font-variant-numeric:tabular-nums;min-width:32px;text-align:right}.pv3-shell .goal{display:flex;flex-direction:column;gap:6px}.pv3-shell .goal-head{display:flex;align-items:center;justify-content:space-between;font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted)}.pv3-shell .goal-head .val{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:.04em}.pv3-shell .goal-bar{height:4px;border-radius:calc(2px * var(--r-scale));background:var(--bg-sunken);overflow:hidden}.pv3-shell .goal-bar .fill{height:100%;background:var(--success);border-radius:calc(2px * var(--r-scale));transition:width .3s ease}.pv3-shell .cats{margin-top:10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;grid-column:1 / -1}.pv3-shell .cat{background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:var(--r-lg);display:flex;flex-direction:column;overflow:hidden;position:relative;transition:opacity .2s ease,filter .2s ease}.pv3-shell .cat.paused{opacity:.55}.pv3-shell .cat.paused:after{content:"PAUSED · CATEGORY EXCLUDED FROM SESSIONS";position:absolute;left:0;right:0;top:0;text-align:center;font:500 10px/1 var(--font-mono);letter-spacing:.1em;background:var(--ink);color:var(--bg);padding:6px 0;z-index:2}.pv3-shell .cat.paused .cat-head{padding-top:30px}.pv3-shell .cat-head{padding:14px 14px 12px;border-bottom:var(--bd-w) solid var(--hairline);display:flex;flex-direction:column;gap:8px;position:relative;min-width:0}.pv3-shell .cat-head:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--cat-color)}.pv3-shell .cat-head-row{display:flex;align-items:center;gap:10px}.pv3-shell .cat-icon{width:22px;height:22px;display:grid;place-items:center;color:var(--cat-color)}.pv3-shell .cat-name{font:600 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-strong)}.pv3-shell .cat-counts{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font:500 10.5px/1 var(--font-mono);color:var(--ink-muted);white-space:nowrap}.pv3-shell .cat-counts .pos{display:inline-flex;align-items:center;gap:4px;color:var(--cat-color)}.pv3-shell .cat-counts .pos:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--cat-color)}.pv3-shell .cat-counts .dot-sep{color:var(--ink-ghost)}.pv3-shell .cat-toolbar{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--ink-muted);flex-wrap:wrap;row-gap:6px}.pv3-shell .cat-toolbar .meta{font-size:11px;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.pv3-shell .cat-toolbar .meta .live-dot{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-bg)}.pv3-shell .cat-toolbar .spacer{flex:1}.pv3-shell .cat-toolbar button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:4px 7px;border-radius:var(--r-xs);color:var(--ink-muted);font:500 11px/1 var(--font-sans);cursor:default;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.pv3-shell .cat-toolbar button:hover{background:var(--hairline);color:var(--ink)}.pv3-shell .cat-toolbar button.danger:hover{color:var(--accent)}.pv3-shell .cat-toolbar button .i{flex:0 0 auto}.pv3-shell .cat-toolbar button.icon-btn{width:24px;height:24px;padding:0;display:grid;place-items:center;border-radius:var(--r-xs);border:var(--bd-w) solid transparent}.pv3-shell .cat-toolbar button.icon-btn:hover{background:var(--bg);border-color:var(--border);color:var(--ink-strong)}.pv3-shell button.paused-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--ink-faint)!important;font:500 11px/1 var(--font-sans);padding:2px 4px;margin-left:-2px;border-radius:calc(3px * var(--r-scale));cursor:default;white-space:nowrap}.pv3-shell button.paused-toggle:hover{color:var(--ink-muted)!important;background:var(--hairline)}.pv3-shell .cat-skel{display:flex;flex-direction:column;gap:4px;padding:8px 4px}.pv3-shell .cat-skel-row{height:30px;border-radius:calc(6px * var(--r-scale));background:linear-gradient(90deg,var(--bg-elevated) 0%,color-mix(in oklch,var(--border-strong) 55%,transparent) 50%,var(--bg-elevated) 100%);background-size:200% 100%;animation:pv3-skel-shimmer 1.2s ease-in-out infinite}@keyframes pv3-skel-shimmer{0%{background-position:200% 0;opacity:.55}50%{opacity:.85}to{background-position:-200% 0;opacity:.55}}@media (prefers-reduced-motion: reduce){.pv3-shell .cat-skel-row{animation:none;opacity:.65}}.pv3-shell .empty-cat{padding:28px 18px 22px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:220px;border-radius:var(--r-md)}.pv3-shell .empty-cat-mark{display:flex;align-items:center;gap:6px;margin-bottom:14px;color:var(--cat-color);opacity:.7}.pv3-shell .empty-cat-dot{width:8px;height:8px;border-radius:50%;background:var(--cat-color);opacity:.4}.pv3-shell .empty-cat-line{width:24px;height:1.5px;background:var(--cat-color);opacity:.35}.pv3-shell .empty-cat-line.short{width:10px;opacity:.2}.pv3-shell .empty-cat-eyebrow{font:500 10px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:2px}.pv3-shell .empty-cat-title{font-family:var(--font-serif);font-size:18px;line-height:1.2;color:var(--ink-strong);letter-spacing:-.01em;font-weight:500}.pv3-shell .empty-cat-body{font-size:12.5px;line-height:1.5;color:var(--ink-muted);margin:4px 0 12px;text-wrap:pretty}.pv3-shell .empty-cat-cta{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:var(--bd-w) solid var(--cat-color);color:var(--cat-color);padding:8px 14px;border-radius:var(--r-sm);font:500 12px/1 var(--font-sans);cursor:default;transition:background .15s ease,color .15s ease}.pv3-shell .empty-cat-cta:hover{background:var(--cat-color);color:var(--bg-elevated)}.pv3-shell .pv3-col-add-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:11px 16px;background:transparent;border:var(--bd-w) dashed var(--border-strong, var(--border));border-radius:calc(8px * var(--r-scale));color:var(--ink-soft, var(--ink-muted));font:500 13px/1 var(--font-sans);cursor:default;transition:all .15s ease}.pv3-shell .pv3-col-add-btn:hover{border-color:var(--ink-muted);color:var(--ink);background:#00000005}.pv3-shell[data-pv3theme=dark] .pv3-col-add-btn:hover{background:#fffaeb0a}.pv3-shell .pv3-col-add-btn svg{color:var(--accent);flex-shrink:0}.pv3-hero-calm,.atp-overlay,.pv3-confirm-overlay{--dawn-bg: #efece5;--dawn-card: #f6f0df;--dawn-card-soft: #faf5e8;--dawn-ink: #262119;--dawn-ink-soft: #5a5247;--dawn-ink-faint: #8a8175;--dawn-rule: rgba(40,32,20,.1);--dawn-rule-strong: rgba(40,32,20,.18);--dawn-accent: #b54a30;--dawn-accent-deep: #933a25;--dawn-accent-soft: #f0d6c4;--dawn-green: #5a6b3a;--dawn-gold: #a8862e;--dawn-serif: var(--font-serif);--dawn-sans: var(--font-sans);--dawn-mono: var(--font-mono)}.pv3-shell[data-pv3theme=dark] .pv3-hero-calm,.atp-overlay[data-pv3theme=dark],.pv3-confirm-overlay[data-pv3theme=dark]{--dawn-bg: #0E0D0B;--dawn-card: #1B1813;--dawn-card-soft: #14110D;--dawn-ink: #F0E9D9;--dawn-ink-soft: #BBB4A4;--dawn-ink-faint: #8B8579;--dawn-rule: rgba(240,233,217,.1);--dawn-rule-strong: rgba(240,233,217,.18);--dawn-accent: #E8A33A;--dawn-accent-deep: #F2B354;--dawn-accent-soft: rgba(232,163,58,.18);--dawn-green: #6FA362;--dawn-gold: #D4A640}.pv3-hero-calm{margin:0;background:var(--dawn-card);border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(12px * var(--r-scale));padding:64px;display:flex;align-items:center;justify-content:space-between;gap:40px;color:var(--dawn-ink)}.pv3-hero-calm__title{font-family:var(--dawn-serif);font-weight:500;font-size:64px;line-height:.98;letter-spacing:-.025em;margin:0;color:var(--dawn-ink)}.pv3-hero-calm__title-it{font-family:var(--dawn-serif);font-style:italic;font-weight:500;color:var(--dawn-accent)}.pv3-hero-calm__cta{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--dawn-sans);font-weight:500;font-size:15px;background:var(--dawn-accent);color:#fff;border:0;border-radius:calc(6px * var(--r-scale));padding:15px 24px;cursor:default;flex-shrink:0;box-shadow:0 1px #0000000a,inset 0 1px #ffffff1f;transition:background .15s ease}.pv3-hero-calm__cta:hover{background:var(--dawn-accent-deep)}.pv3-shell[data-pv3theme=dark] .pv3-hero-calm__cta{color:#18161b}.atp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#140e048c;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000;font-family:var(--dawn-sans);color:var(--dawn-ink);animation:atp-fade .14s ease-out}@keyframes atp-fade{0%{opacity:0}to{opacity:1}}.atp-overlay[data-pv3theme=dark]{background:#0000009e}.atp-modal{background:var(--dawn-bg);border-radius:calc(14px * var(--r-scale));width:100%;max-width:1100px;max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px #140c0266,0 0 0 1px #28201414;animation:atp-slide .18s cubic-bezier(.2,.8,.2,1)}@keyframes atp-slide{0%{transform:translateY(8px) scale(.99);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.atp-head{padding:16px 22px;border-bottom:var(--bd-w) solid var(--dawn-rule);display:flex;align-items:center;gap:12px}.atp-search{flex:1;display:flex;align-items:center;gap:10px;background:var(--dawn-card);border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(6px * var(--r-scale));padding:8px 13px}.atp-search-icon{color:var(--dawn-ink-faint);font-size:14px}.atp-search-input{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;outline:0;font:500 14.5px/1 var(--dawn-sans);color:var(--dawn-ink);padding:4px 0;min-width:0}.atp-search-input::placeholder{color:var(--dawn-ink-faint)}.atp-search-hint{font:500 11px/1 var(--dawn-mono);letter-spacing:.05em;color:var(--dawn-ink-faint);border:var(--bd-w) solid var(--dawn-rule);padding:3px 6px;border-radius:calc(3px * var(--r-scale))}.atp-close{width:32px;height:32px;border-radius:calc(6px * var(--r-scale));border:0;background:transparent;color:var(--dawn-ink-soft);font-size:24px;line-height:1;cursor:default}.atp-close:hover{background:#2820140f;color:var(--dawn-ink)}.atp-body{display:flex;flex:1 1 auto;min-height:0;max-height:70vh}.atp-side{width:212px;padding:16px 10px 14px 18px;border-right:var(--bd-w) solid var(--dawn-rule);display:flex;flex-direction:column;min-height:0;overflow-y:auto}.atp-side-label{font:500 12px/1 var(--dawn-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dawn-ink-faint);padding:6px 8px 10px}.atp-side-gap{height:20px}.atp-side-cat{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;cursor:default;border:0;background:transparent;color:var(--dawn-ink-soft);padding:9px 11px;border-radius:calc(6px * var(--r-scale));margin-bottom:1px;font:400 14.5px/1 var(--dawn-sans);display:flex;justify-content:space-between;align-items:center}.atp-side-cat:hover{background:#2820140a}.atp-side-cat.active{background:var(--dawn-card);color:var(--dawn-accent);font-weight:500}.atp-side-cat.active .atp-side-count{color:var(--dawn-accent)}.atp-side-count{font:500 11px/1 var(--dawn-mono);letter-spacing:.06em;color:var(--dawn-ink-faint)}.atp-side-auto{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;cursor:default;border:0;background:transparent;padding:9px 11px;border-radius:calc(6px * var(--r-scale));margin-bottom:1px;display:flex;align-items:center;gap:9px;font-family:var(--dawn-sans)}.atp-side-auto:hover{background:#2820140a}.atp-side-auto.on{background:color-mix(in oklab,var(--dawn-accent-soft) 50%,transparent)}.atp-overlay[data-pv3theme=dark] .atp-side-auto.on{background:#e8a33a29}.atp-side-auto-text{min-width:0;flex:1}.atp-side-auto-name{font-size:13.5px;color:var(--dawn-ink-soft);display:flex;align-items:center;gap:6px;font-weight:400}.atp-side-auto.on .atp-side-auto-name{color:var(--dawn-ink);font-weight:500}.atp-auto-glyph{color:var(--dawn-ink-faint)}.atp-side-auto.on .atp-auto-glyph{color:var(--dawn-accent)}.atp-side-auto-sub{font:400 11.5px/1.3 var(--dawn-sans);color:var(--dawn-ink-faint);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.atp-side-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;cursor:default;border:0;background:transparent;color:var(--dawn-ink-soft);padding:9px 11px;margin-top:8px;font:400 12.5px/1 var(--dawn-sans);display:flex;align-items:center;gap:7px}.atp-side-link:hover{color:var(--dawn-ink)}.atp-side-link svg{color:var(--dawn-ink-faint)}.atp-connect-panel{margin-top:6px;padding:8px;border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(7px * var(--r-scale));background:var(--dawn-card-soft);display:flex;flex-direction:column;gap:6px}.atp-connect-row{display:flex;gap:6px;align-items:center}.atp-connect-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;padding:6px 8px;font:500 11.5px/1 var(--dawn-sans);background:var(--dawn-bg);border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(5px * var(--r-scale));color:var(--dawn-ink);cursor:default}.atp-connect-btn:hover:not(:disabled){border-color:var(--dawn-ink-soft)}.atp-connect-btn:disabled{opacity:.5}.atp-connect-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;border:0;background:transparent;font-size:14px;line-height:1;color:var(--dawn-ink-faint);cursor:default;border-radius:calc(4px * var(--r-scale))}.atp-connect-cancel:hover{background:#2820140f;color:var(--dawn-ink)}.atp-connect-cc{display:flex;gap:6px}.atp-connect-cc-input{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--dawn-bg);border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(5px * var(--r-scale));padding:6px 8px;font:500 11.5px/1 var(--dawn-sans);color:var(--dawn-ink);min-width:0}.atp-connect-cc-input::placeholder{color:var(--dawn-ink-faint)}.atp-connect-cc-input:focus{outline:none;border-color:var(--dawn-accent)}.atp-connect-cc-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:6px 10px;font:500 11.5px/1 var(--dawn-sans);background:var(--dawn-accent);border:0;border-radius:calc(5px * var(--r-scale));color:#fff;cursor:default}.atp-connect-cc-btn:hover:not(:disabled){background:var(--dawn-accent-deep)}.atp-connect-cc-btn:disabled{opacity:.5}.atp-overlay[data-pv3theme=dark] .atp-connect-cc-btn{color:#18161b}.atp-connect-msg{font:500 10.5px/1.3 var(--dawn-sans);padding:6px 8px;border-radius:calc(5px * var(--r-scale))}.atp-connect-msg-error{background:#b54a301a;color:var(--dawn-accent)}.atp-connect-msg-success{background:#5a6b3a26;color:var(--dawn-green)}.atp-pane{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.atp-pane-head{padding:16px 22px 10px;display:flex;justify-content:space-between;align-items:baseline}.atp-pane-title{font:500 24px/1 var(--dawn-serif);letter-spacing:-.01em;margin:0;color:var(--dawn-ink)}.atp-pane-sort{font:500 11px/1 var(--dawn-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dawn-ink-faint)}.atp-pane-list{flex:1;overflow-y:auto;padding:0 18px 14px;display:flex;flex-direction:column;gap:6px}.atp-pane-empty{padding:28px 16px;font:400 14.5px/1.4 var(--dawn-sans);color:var(--dawn-ink-faint);text-align:center}.atp-import{background:var(--dawn-card-soft);border:var(--bd-w) dashed var(--dawn-rule-strong);border-radius:calc(8px * var(--r-scale));padding:14px 16px;margin-bottom:6px}.atp-import-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;gap:10px}.atp-import-label{font:500 11px/1 var(--dawn-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dawn-ink-soft)}.atp-import-side{display:flex;align-items:center;background:var(--dawn-bg);border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(5px * var(--r-scale));padding:2px}.atp-import-side-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;padding:4px 11px;font:500 12.5px/1 var(--dawn-sans);border:0;border-radius:calc(3px * var(--r-scale));background:transparent;color:var(--dawn-ink-soft);cursor:default}.atp-import-side-btn.active{background:var(--dawn-ink);color:var(--dawn-card)}.atp-overlay[data-pv3theme=dark] .atp-import-side-btn.active{background:var(--dawn-card);color:var(--dawn-ink)}.atp-import-side-glyph{font-size:14px;line-height:1}.atp-import-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.atp-import-source{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:11px;padding:12px 14px;background:var(--dawn-card);border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(6px * var(--r-scale));font-family:var(--dawn-sans);color:var(--dawn-ink);cursor:default;text-align:left}.atp-import-source:hover{border-color:var(--dawn-ink-soft)}.atp-import-source-icon{color:var(--dawn-accent);font-size:16px;line-height:1}.atp-import-source-text{flex:1;min-width:0}.atp-import-source-name{font-weight:500;font-size:14px;color:var(--dawn-ink)}.atp-import-source-hint{font:500 11px/1 var(--dawn-mono);letter-spacing:.06em;color:var(--dawn-ink-faint);margin-top:3px}.atp-divider{display:flex;align-items:center;gap:12px;padding:8px 4px 4px}.atp-divider-line{flex:1;height:1px;background:var(--dawn-rule)}.atp-divider-label{font:500 11px/1 var(--dawn-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dawn-ink-faint)}.atp-openings-filter{display:inline-flex;align-items:center;background:var(--dawn-card-soft);border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(7px * var(--r-scale));padding:2px;margin:2px 0 6px;align-self:flex-start;gap:0}.atp-openings-filter-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:5px;padding:5px 12px;font:500 12.5px/1 var(--dawn-sans);border:0;border-radius:calc(5px * var(--r-scale));background:transparent;color:var(--dawn-ink-soft);cursor:default;transition:background .12s ease,color .12s ease}.atp-openings-filter-btn:hover:not(.active){color:var(--dawn-ink)}.atp-openings-filter-btn.active{background:var(--dawn-ink);color:var(--dawn-card)}.atp-overlay[data-pv3theme=dark] .atp-openings-filter-btn.active{background:var(--dawn-card);color:var(--dawn-ink)}.atp-row-wrap{display:flex;flex-direction:column}.atp-row{display:flex;align-items:stretch;gap:0;padding:0;background:transparent;border:var(--bd-w) solid transparent;border-radius:calc(7px * var(--r-scale));width:100%;font-family:var(--dawn-sans);transition:background .12s ease,border-color .12s ease;overflow:hidden}.atp-row:hover{background:#28201408}.atp-overlay[data-pv3theme=dark] .atp-row:hover{background:#fffaeb0a}.atp-row.is-selected{background:var(--dawn-card);border-color:var(--dawn-accent-soft)}.atp-row.is-expanded{border-radius:calc(7px * var(--r-scale)) calc(7px * var(--r-scale)) 0 0;border-bottom-style:dashed;border-bottom-color:var(--dawn-accent-soft)}.atp-row-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;display:flex;align-items:flex-start;gap:13px;padding:12px 14px;background:transparent;border:0;cursor:default;text-align:left;font:inherit;color:inherit;min-width:0}.atp-row-expand{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;background:transparent;border:0;border-left:var(--bd-w) solid transparent;color:var(--dawn-ink-faint);cursor:default;transition:color .12s ease,background .12s ease}.atp-row-expand:hover{color:var(--dawn-ink);background:#2820140d}.atp-overlay[data-pv3theme=dark] .atp-row-expand:hover{background:#fffaeb0d}.atp-row-expand svg{transition:transform .15s ease}.atp-row-expand.open svg{transform:rotate(180deg)}.atp-row.is-selected .atp-row-expand{border-left-color:var(--dawn-accent-soft)}.atp-row-text{flex:1;min-width:0}.atp-row-name{font-size:15.5px;line-height:1.25;color:var(--dawn-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.atp-row.is-selected .atp-row-name{font-weight:500}.atp-row-meta{margin-top:5px;display:flex;align-items:center;gap:8px;min-width:0}.atp-row-meta-tag{font:500 11px/1 var(--dawn-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--dawn-ink-soft);padding:3px 6px;border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(3px * var(--r-scale))}.atp-check{width:18px;height:18px;border-radius:calc(4px * var(--r-scale));flex-shrink:0;margin-top:1px;background:var(--dawn-card-soft);border:var(--bd-w) solid var(--dawn-rule-strong);display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:all .12s ease}.atp-check.on{background:var(--dawn-accent);border-color:var(--dawn-accent)}.atp-overlay[data-pv3theme=dark] .atp-check.on{color:#18161b}.atp-also{background:color-mix(in oklab,var(--dawn-accent-soft) 40%,transparent);border:var(--bd-w) solid var(--dawn-accent-soft);border-top:0;border-radius:0 0 calc(7px * var(--r-scale)) calc(7px * var(--r-scale));padding:12px 16px 14px 44px;margin-bottom:4px}.atp-overlay[data-pv3theme=dark] .atp-also{background:#e8a33a14}.atp-also-head{display:flex;align-items:center;gap:7px;margin-bottom:10px}.atp-also-arrow{color:var(--dawn-accent);font-size:14px;line-height:1}.atp-also-label{font:500 11px/1 var(--dawn-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dawn-accent)}.atp-also-line{flex:1;height:1px;background:var(--dawn-accent-soft)}.atp-also-empty{font:400 13px/1.4 var(--dawn-sans);color:var(--dawn-ink-faint);padding:4px 0 2px}.atp-preview,.atp-preview-inline{display:flex;gap:14px;align-items:flex-start;padding:0 0 12px;margin-bottom:10px;border-bottom:var(--bd-w) dashed var(--dawn-accent-soft)}.atp-preview-inline{margin:0 0 6px;padding:12px 14px;background:color-mix(in oklab,var(--dawn-accent-soft) 22%,transparent);border:var(--bd-w) solid var(--dawn-accent-soft);border-top:0;border-radius:0 0 calc(7px * var(--r-scale)) calc(7px * var(--r-scale))}.atp-overlay[data-pv3theme=dark] .atp-preview-inline{background:#e8a33a14}.atp-preview-board{flex-shrink:0;width:132px;height:132px;border-radius:calc(5px * var(--r-scale));overflow:hidden;border:var(--bd-w) solid var(--dawn-rule);position:relative}.atp-preview-board--big{width:240px;height:240px;border-color:var(--dawn-accent-soft);box-shadow:var(--elev-2)}.atp-preview-board-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;height:100%;padding:0;margin:0;border:0;background:transparent;cursor:default;position:relative}.atp-preview-board--clickable .atp-preview-board-btn{cursor:default}.atp-preview-board--clickable:hover{border-color:var(--dawn-accent)}.atp-preview-board--clickable:hover .atp-preview-board-cta{opacity:1;transform:translateY(0)}.atp-preview-board-cta{position:absolute;inset:auto 0 0 0;display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 8px;font:500 11.5px/1 var(--dawn-sans);color:#fff;background:linear-gradient(to top,#282014d9,#28201400);opacity:0;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease;pointer-events:none}.atp-preview-board-cta svg{color:#fff}.atp-overlay[data-pv3theme=dark] .atp-preview-board-cta{background:linear-gradient(to top,#000000d9,#0000)}.atp-preview.atp-preview--browsing{align-items:flex-start;gap:18px}.atp-preview-line{display:flex;flex-direction:column;gap:10px}.atp-preview-line-status{font:500 12.5px/1.3 var(--dawn-sans);color:var(--dawn-ink-soft)}.atp-preview-line-status--error{color:var(--dawn-accent)}.atp-preview-line-moves{font:500 13px/1.7 var(--dawn-mono);color:var(--dawn-ink-soft);background:var(--dawn-bg);border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(6px * var(--r-scale));padding:10px 12px;max-height:140px;overflow-y:auto;word-break:break-word}.atp-preview-line-no{color:var(--dawn-ink-faint);margin-right:2px}.atp-preview-line-san{display:inline-block;padding:0 6px;margin-right:2px;border-radius:calc(3px * var(--r-scale));color:var(--dawn-ink-soft)}.atp-preview-line-san.is-played{color:var(--dawn-ink)}.atp-preview-line-san.is-current{background:var(--dawn-accent);color:#fff;font-weight:600}.atp-overlay[data-pv3theme=dark] .atp-preview-line-san.is-current{color:#18161b}.atp-preview-line-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.atp-preview-line-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(6px * var(--r-scale));background:var(--dawn-card);color:var(--dawn-ink);font:500 16px/1 var(--dawn-sans);cursor:default;transition:background .12s ease,border-color .12s ease}.atp-preview-line-btn:hover:not(:disabled){border-color:var(--dawn-ink-soft);background:var(--dawn-card-soft)}.atp-preview-line-btn:disabled{opacity:.4}.atp-preview-line-counter{font:500 12px/1 var(--dawn-mono);letter-spacing:.04em;color:var(--dawn-ink-soft);padding:0 6px;min-width:56px;text-align:center}.atp-preview-line-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin-left:auto;padding:6px 12px;font:500 12px/1 var(--dawn-sans);background:transparent;border:var(--bd-w) solid var(--dawn-rule);border-radius:calc(6px * var(--r-scale));color:var(--dawn-ink-soft);cursor:default}.atp-preview-line-close:hover{color:var(--dawn-ink);border-color:var(--dawn-ink-soft)}.atp-preview-text{flex:1;min-width:0}.atp-preview-title{font:500 20px/1.2 var(--dawn-serif);letter-spacing:-.01em;color:var(--dawn-ink);margin-bottom:5px}.atp-preview-desc{font:400 14px/1.45 var(--dawn-sans);color:var(--dawn-ink-soft);margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.atp-preview-stats{display:flex;flex-wrap:wrap;gap:6px 16px;font:500 12.5px/1.4 var(--dawn-sans);color:var(--dawn-ink-soft)}.atp-preview-stat-num{color:var(--dawn-accent);font-weight:600}.atp-also-rows{display:flex;flex-direction:column;gap:5px}.atp-also-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:10px;padding:6px 5px;background:transparent;border:0;border-radius:calc(4px * var(--r-scale));cursor:default;font-family:var(--dawn-sans);text-align:left;width:100%}.atp-also-row:hover{background:#b54a300d}.atp-also-check{width:16px;height:16px;border-radius:calc(3px * var(--r-scale));flex-shrink:0;background:var(--dawn-card-soft);border:var(--bd-w) solid var(--dawn-rule-strong);display:inline-flex;align-items:center;justify-content:center;color:#fff}.atp-also-check.on{background:var(--dawn-accent);border-color:var(--dawn-accent)}.atp-also-check.partial{background:transparent;border-color:var(--dawn-accent);color:var(--dawn-accent)}.atp-also-row.on .atp-also-name{font-weight:500}.atp-also-name{flex:1 1 auto;min-width:0;font-size:13.5px;color:var(--dawn-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.atp-also-count{font:500 11px/1 var(--dawn-mono);letter-spacing:.06em;color:var(--dawn-ink-faint);flex-shrink:0}.atp-msg{margin:0 18px 10px;padding:9px 12px;border-radius:calc(6px * var(--r-scale));font:500 13px/1.3 var(--dawn-sans);border:var(--bd-w) solid transparent}.atp-msg-error{background:#b54a301a;border-color:#b54a304d;color:var(--dawn-accent)}.atp-foot{padding:14px 22px;border-top:var(--bd-w) solid var(--dawn-rule);background:var(--dawn-card-soft);display:flex;justify-content:space-between;align-items:center;gap:12px}.atp-foot-counter{font:400 14px/1.4 var(--dawn-sans);color:var(--dawn-ink-soft)}.atp-foot-counter-num{color:var(--dawn-accent);font-weight:500}.atp-foot-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:11px 18px;font:500 14.5px/1 var(--dawn-sans);background:var(--dawn-accent);color:#fff;border:0;border-radius:calc(6px * var(--r-scale));cursor:default;box-shadow:0 1px #0000000a,inset 0 1px #ffffff1f}.atp-foot-btn:hover:not(:disabled){background:var(--dawn-accent-deep)}.atp-foot-btn:disabled{opacity:.5;background:var(--dawn-ink-faint);box-shadow:none}.atp-overlay[data-pv3theme=dark] .atp-foot-btn{color:#18161b}.atp-overlay[data-pv3theme=dark] .atp-foot-btn:disabled{background:var(--dawn-rule-strong);color:var(--dawn-ink-faint)}@media (max-width: 720px){.pv3-hero-calm{flex-direction:column;align-items:flex-start;gap:22px;padding:32px 24px 28px}.pv3-hero-calm__title{font-size:46px;line-height:1.02;letter-spacing:-.015em}.pv3-hero-calm__cta{width:100%;padding:14px 18px}.atp-overlay{padding:0;align-items:stretch}.atp-modal{max-width:100%;max-height:100vh;border-radius:0}.atp-body{max-height:none;flex:1 1 auto}.atp-side{width:144px;padding:10px 6px 10px 12px}.atp-side-label{padding:4px 6px 6px;font-size:10.5px}.atp-side-cat{padding:7px 8px;font-size:13px}.atp-side-count{font-size:10px}.atp-side-auto{padding:7px 8px;gap:7px}.atp-side-auto-sub{display:none}.atp-side-auto-name{font-size:12.5px}.atp-side-link{padding:7px 8px;font-size:11.5px}.atp-head{padding:10px 12px;gap:8px}.atp-search{padding:6px 10px;gap:8px}.atp-search-input{font-size:13.5px}.atp-search-hint{display:none}.atp-close{width:28px;height:28px;font-size:22px}.atp-pane-head{padding:12px 14px 6px}.atp-pane-title{font-size:20px}.atp-pane-list{padding:0 10px 10px}.atp-row-select{padding:10px 12px;gap:11px}.atp-row-name{font-size:14px}.atp-row-meta-tag{font-size:10px;padding:2px 5px}.atp-row-expand{padding:0 12px}.atp-check{width:16px;height:16px}.atp-foot{padding:11px 14px 14px;flex-wrap:wrap;gap:8px}.atp-foot-counter{flex-basis:100%;font-size:12.5px}.atp-foot-btn{padding:10px 16px;font-size:13.5px}.atp-import{padding:11px 13px}.atp-import-head{flex-wrap:wrap;gap:6px 10px;margin-bottom:8px}.atp-import-label{font-size:10px}.atp-import-side-btn{padding:3px 8px;font-size:11px}.atp-import-source{padding:10px 11px;gap:9px}.atp-import-source-name{font-size:12.5px}.atp-import-source-hint{font-size:10.5px}.atp-preview-inline,.atp-preview{flex-direction:column;gap:10px}.atp-preview-board{width:110px;height:110px}.atp-preview-board--big{width:180px;height:180px}.atp-preview-title{font-size:17px}.atp-preview-desc{font-size:13px}.atp-preview-stats{font-size:12px}.atp-preview-line-moves{font-size:12.5px;padding:8px 10px;max-height:110px}.atp-preview-line-btn{width:28px;height:28px;font-size:15px}.atp-preview-line-counter{font-size:11px;min-width:48px}.atp-preview-line-close{padding:5px 10px;font-size:11.5px}.atp-also{padding:10px 12px 12px 38px}.atp-also-name{font-size:12.5px}.atp-also-count{font-size:10px}}@media (max-width: 380px){.atp-import-grid{grid-template-columns:1fr;gap:6px}}.pv3-shell .cat-subhead{padding:10px 16px 4px;font:500 10px/1 var(--font-mono);letter-spacing:.14em;color:var(--ink-faint);text-transform:uppercase}.pv3-shell .cat-list{flex:1;overflow-y:auto;padding:4px 6px;max-height:clamp(150px,calc(100vh - 760px - var(--vh-grow) * .055),1600px);scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.pv3-shell .cat-list::-webkit-scrollbar{width:8px}.pv3-shell .cat-list::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:calc(4px * var(--r-scale));border:2px solid transparent;background-clip:content-box}.pv3-shell .item{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--r-sm);font-size:12.5px;position:relative;cursor:default;-webkit-user-select:none;user-select:none;min-width:0}.pv3-shell .item:hover{background:var(--bg-tint)}.pv3-shell .item.selected{background:var(--accent-tint)}.pv3-shell .item.paused .name{color:var(--ink-faint)}.pv3-shell .item.paused .meta{color:var(--ink-ghost)}.pv3-shell .item.paused .status-dot{background:transparent;border:1.5px solid var(--ink-ghost)}.pv3-shell .status-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--cat-color);transition:background .15s ease,border .15s ease}.pv3-shell .item.paused .status-dot{background:transparent;border:1.5px solid var(--ink-ghost);width:8px;height:8px}.pv3-shell .item .checkbox{flex:0 0 auto;width:16px;height:16px;border-radius:calc(3px * var(--r-scale));border:1.5px solid var(--border-strong);background:var(--bg-elevated);display:grid;place-items:center;color:transparent;transition:all .12s ease}.pv3-shell .item.selected .checkbox{background:var(--accent);border-color:var(--accent);color:var(--bg-elevated)}.pv3-shell .item .name{flex:1 1 auto;min-width:0;color:var(--ink);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pv3-shell .item.has-mastery .name{font-weight:500}.pv3-shell .mastery-bar{position:absolute;left:8px;right:8px;bottom:1px;height:1.5px;background:var(--cat-color);opacity:.5;border-radius:calc(1px * var(--r-scale));transform-origin:left}.pv3-shell .item .meta{font:500 10.5px/1 var(--font-mono);color:var(--ink-muted);display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;transition:opacity .15s ease;letter-spacing:.02em}.pv3-shell .item .meta .sep{color:var(--ink-ghost)}.pv3-shell .item .meta .pct.strong{color:var(--cat-color)}.pv3-shell .row-actions{position:absolute;right:6px;top:50%;transform:translateY(-50%) translate(4px);display:inline-flex;gap:1px;opacity:0;transition:opacity .12s ease,transform .12s ease;background:linear-gradient(to right,transparent 0%,var(--bg-tint) 20%);padding-left:24px;border-radius:var(--r-sm);pointer-events:none}.pv3-shell .item:hover .row-actions{opacity:1;transform:translateY(-50%);pointer-events:auto}.pv3-shell .item.selected:hover .row-actions{background:linear-gradient(to right,transparent 0%,var(--accent-tint) 20%)}.pv3-shell .row-actions button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;width:24px;height:24px;border-radius:var(--r-xs);display:grid;place-items:center;color:var(--ink-muted);cursor:default}.pv3-shell .row-actions button:hover{background:var(--hairline);color:var(--ink)}.pv3-shell .row-actions button.danger:hover{background:var(--accent-tint);color:var(--accent)}.pv3-shell[data-crud=kebab] .row-actions,.pv3-shell[data-crud=hover] .kebab-trigger{display:none}.pv3-shell .kebab-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;width:24px;height:24px;border-radius:var(--r-xs);color:var(--ink-faint);display:grid;place-items:center;cursor:default;flex:0 0 auto}.pv3-shell .item:hover .kebab-trigger{color:var(--ink-muted)}.pv3-shell .kebab-trigger:hover{background:var(--hairline);color:var(--ink)}.pv3-shell .kebab-menu{position:absolute;right:8px;top:calc(100% - 4px);background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-md);padding:4px;z-index:50;min-width:170px;display:flex;flex-direction:column}.pv3-shell .kebab-menu button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:8px 10px;border-radius:var(--r-sm);font:400 13px/1 var(--font-sans);color:var(--ink);text-align:left;display:flex;align-items:center;gap:8px;cursor:default}.pv3-shell .kebab-menu button:hover{background:var(--bg-tint)}.pv3-shell .kebab-menu button.danger{color:var(--accent)}.pv3-shell .kebab-menu .sep{height:1px;background:var(--hairline);margin:4px 2px}.pv3-shell[data-paused-style=strike] .item.paused .name{text-decoration:line-through}.pv3-shell[data-paused-style=tag] .item.paused:after{content:"PAUSED";font:600 9px/1 var(--font-mono);letter-spacing:.1em;color:var(--ink-faint);background:var(--bg-sunken);padding:3px 5px;border-radius:calc(3px * var(--r-scale))}.pv3-shell .cat-footer{padding:10px 12px 12px;border-top:var(--bd-w) solid var(--hairline)}.pv3-shell .add-btn{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:var(--bd-w) dashed var(--border-strong);border-radius:var(--r-sm);padding:9px;font:500 12px/1 var(--font-sans);color:var(--ink-muted);cursor:default;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:all .12s ease}.pv3-shell .add-btn:hover{border-color:var(--accent-line);color:var(--accent);background:var(--accent-tint)}.pv3-shell .bulk-bar{display:flex;align-items:center;flex-wrap:wrap;gap:4px;row-gap:4px;padding:7px 10px;background:var(--ink);color:var(--bg);font:500 12px/1 var(--font-sans)}.pv3-shell .bulk-bar .count{font-family:var(--font-mono);letter-spacing:.04em;font-size:11px}.pv3-shell .bulk-bar .sep{color:var(--ink-faint)}.pv3-shell .bulk-bar button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--bg);padding:4px 7px;border-radius:var(--r-xs);font:500 11px/1 var(--font-sans);cursor:default;white-space:nowrap}.pv3-shell .bulk-bar button:hover{background:#ffffff1a}.pv3-shell .bulk-bar button.danger{color:var(--accent-soft)}.pv3-shell .bulk-bar button.spacer-l{margin-left:auto}.pv3-shell .progress{padding:18px 24px 16px;background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:var(--r-lg)}.pv3-shell .progress-label{font:500 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:14px}.pv3-shell .progress-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.pv3-shell .progress-card{position:relative;padding:12px 14px 32px;background:var(--bg);border:var(--bd-w) solid var(--border-soft);border-radius:var(--r-md);overflow:hidden}.pv3-shell .progress-card .tier{font:600 10px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.pv3-shell .progress-card .num{font-family:var(--font-serif);font-size:30px;line-height:1;letter-spacing:-.02em;color:var(--ink-strong)}.pv3-shell .progress-card .sub{font-size:11px;color:var(--ink-muted);margin-top:4px}.pv3-shell .progress-card svg{position:absolute;left:0;right:0;bottom:0;width:100%;height:32px}.pv3-shell .progress-today{display:flex;align-items:center;gap:18px;font-size:13px;color:var(--ink-muted)}.pv3-shell .progress-today .label{font:500 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.pv3-shell .progress-today .frac{font-family:var(--font-serif);font-size:18px;color:var(--ink)}.pv3-shell .progress-today .frac em{color:var(--accent);font-style:italic;font-weight:500}.pv3-shell .progress-today .track{flex:1;height:4px;background:var(--bg-sunken);border-radius:calc(2px * var(--r-scale));overflow:hidden}.pv3-shell .progress-today .fill{height:100%;width:80%;background:linear-gradient(to right,var(--cat-openings),var(--cat-tactics),var(--cat-endgames),var(--cat-other));border-radius:calc(2px * var(--r-scale))}.pv3-shell .progress-today .horizon{font:400 12px/1 var(--font-mono);color:var(--ink-faint)}.pv3-shell .settings{padding:18px 24px 16px;background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:var(--r-lg)}.pv3-shell .settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 22px}.pv3-shell .field{display:flex;flex-direction:column;gap:8px}.pv3-shell .field-label{font:500 11px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.pv3-shell .seg{display:inline-flex;background:var(--bg-tint);border:var(--bd-w) solid var(--border-soft);border-radius:var(--r-md);padding:3px;gap:2px}.pv3-shell .seg button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:7px 14px;border-radius:calc(6px * var(--r-scale));font:500 12px/1 var(--font-sans);color:var(--ink-muted);cursor:default}.pv3-shell .seg button:hover{color:var(--ink)}.pv3-shell .seg button.active{background:var(--bg-elevated);color:var(--ink-strong);box-shadow:var(--shadow-sm)}.pv3-shell .input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg);border:var(--bd-w) solid var(--border);border-radius:var(--r-sm);padding:9px 12px;font:400 13px/1.2 var(--font-mono);color:var(--ink);width:100%}.pv3-shell .input:focus{outline:2px solid var(--accent-line);outline-offset:-1px;border-color:var(--accent)}.pv3-shell .split-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.pv3-shell .helpers{display:flex;flex-direction:column;gap:10px}.pv3-shell .helper-row{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink)}.pv3-shell .toggle{width:32px;height:18px;background:var(--bg-sunken);border-radius:999px;position:relative;flex:0 0 auto;border:var(--bd-w) solid var(--border);cursor:default;transition:background .15s ease,border-color .15s ease}.pv3-shell .toggle:after{content:"";position:absolute;left:1.5px;top:1.5px;width:13px;height:13px;border-radius:50%;background:var(--bg-elevated);box-shadow:var(--shadow-sm);transition:left .15s ease}.pv3-shell .toggle.on{background:var(--accent);border-color:var(--accent)}.pv3-shell .toggle.on:after{left:16px;background:#faf4e8}.pv3-shell[data-look=editorial]{--cat-openings: #6E7E92;--cat-tactics: #998765;--cat-endgames: #6B7E6A;--cat-other: #807890;--cat-openings-bg: rgba(110,126,146,.1);--cat-tactics-bg: rgba(153,135,101,.1);--cat-endgames-bg: rgba(107,126,106,.1);--cat-other-bg: rgba(128,120,144,.1)}.pv3-shell[data-pv3theme=dark][data-look=editorial]{--cat-openings: #93A1B5;--cat-tactics: #B8A47F;--cat-endgames: #8DA08C;--cat-other: #A39CB3}.pv3-shell[data-look=editorial] .cat-head:before{display:none}.pv3-shell[data-look=editorial] .cat-head{padding-top:14px}.pv3-shell[data-look=editorial] .ready-card:before{background:var(--ink);height:1.5px;opacity:.5}.pv3-shell[data-look=editorial] .stack-bar .seg{border-right:1.5px solid var(--bg-elevated)}.pv3-shell[data-look=editorial] .stack-bar .seg:last-child{border-right:0}.pv3-shell[data-look=editorial] .mastery-bar{background:var(--ink);opacity:.45}.pv3-shell[data-look=editorial] .item .meta .pct.strong{color:var(--ink);font-weight:600}.pv3-shell ::selection{background:var(--accent-tint);color:var(--ink-strong)}.pv3-shell .i{width:14px;height:14px;display:inline-block;vertical-align:middle}.pv3-shell .i-lg{width:16px;height:16px}@media (max-width: 1024px){.pv3-shell .main{grid-template-columns:minmax(0,1fr)}.pv3-shell .cats{grid-template-columns:repeat(2,minmax(0,1fr))}.pv3-shell .col-bottom{grid-template-columns:minmax(0,1fr)}.pv3-shell .progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@media (max-width: 720px){.pv3-shell .topnav{padding:14px 16px;gap:8px}.pv3-shell .nav-links{display:none}.pv3-shell .lang-btn{padding:6px 10px;font-size:12px}.pv3-shell .lang-btn>span:nth-child(2){display:none}.pv3-shell .brand{font-size:18px;gap:8px}.pv3-shell .brand-mark{width:26px;height:26px;font-size:15px}.pv3-shell .avatar,.pv3-shell .theme-toggle{width:28px;height:28px}.pv3-shell .page-head{padding:16px 16px 8px;flex-direction:column;align-items:flex-start;gap:12px}.pv3-shell .tabs{width:100%;overflow-x:auto}.pv3-shell .streak{font-size:12px}.pv3-shell .pv3-headstats{margin-left:0;gap:14px}.pv3-shell .main{padding:8px 16px calc(80px + env(safe-area-inset-bottom,0px));gap:14px}.pv3-shell .session-card{padding:20px 16px 16px}.pv3-shell .session-eyebrow{margin-bottom:12px;font-size:10px}.pv3-shell .session-headline{gap:8px}.pv3-shell .session-headline .figure{font-size:36px}.pv3-shell .session-headline .unit{font-size:20px}.pv3-shell .session-headline>span:nth-child(n+4){display:none}.pv3-shell .session-meta{font-size:12.5px;margin-bottom:18px}.pv3-shell .legend{gap:12px 18px;margin-bottom:18px;font-size:12px}.pv3-shell .legend .weight{display:none}.pv3-shell .focus-row{flex-direction:column;align-items:flex-start;gap:8px}.pv3-shell .focus-pills{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.pv3-shell .focus-pill{white-space:nowrap}.pv3-shell .ready-card{padding:20px 18px 18px}.pv3-shell .clarity{padding:12px 14px;font-size:12.5px;flex-wrap:wrap}.pv3-shell .cats{grid-template-columns:minmax(0,1fr);gap:12px}.pv3-shell .cat-list{max-height:360px}.pv3-shell .col-bottom{gap:14px;margin-top:14px}.pv3-shell .progress{padding:18px}.pv3-shell .progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pv3-shell .progress-card{padding:12px 12px 32px}.pv3-shell .progress-card .num{font-size:26px}.pv3-shell .progress-card .sub{font-size:10.5px;line-height:1.35}.pv3-shell .progress-today{flex-wrap:wrap;gap:10px}.pv3-shell .progress-today .track{flex-basis:100%;order:5}.pv3-shell .progress-today .horizon{font-size:11px}.pv3-shell .settings{padding:18px}.pv3-shell .settings-grid{grid-template-columns:minmax(0,1fr);gap:18px}.pv3-shell .seg{overflow-x:auto}.pv3-shell .solo-banner{flex-wrap:wrap;padding:12px}.pv3-shell .solo-banner .solo-text{flex-basis:100%;order:3}.pv3-shell .solo-banner .solo-reset{order:2;margin-left:auto}}@media (hover: none),(max-width: 720px){.pv3-shell .row-actions{position:static;display:inline-flex!important;opacity:1!important;transform:none!important;pointer-events:auto!important;background:none;padding-left:0;flex:0 0 auto}.pv3-shell .row-actions button{width:32px;height:32px}.pv3-shell .kebab-trigger{display:none!important}}.pv3-shell .t2-add-picker{width:100%}.pv3-shell .t2-add-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;background:transparent;color:var(--ink-muted);border:var(--bd-w) dashed var(--border);border-radius:var(--r-md);padding:8px 12px;font:500 12px/1 var(--font-sans);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px}.pv3-shell .t2-add-btn:hover{color:var(--cat-color);border-color:var(--cat-color);background:#00000008}.pv3-shell[data-pv3theme=dark] .t2-add-btn:hover{background:#ffffff0a}.pv3-shell .t2-add-popover{display:flex;flex-direction:column;gap:6px;padding:6px;background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-md)}.pv3-shell .t2-add-input{width:100%;background:var(--bg);border:var(--bd-w) solid var(--border);border-radius:var(--r-sm);color:var(--ink);padding:6px 9px;font:400 12px/1 var(--font-mono)}.pv3-shell .t2-add-input:focus{outline:none;border-color:var(--accent)}.pv3-shell .t2-add-list{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:1px}.pv3-shell .t2-add-empty{color:var(--ink-muted);font-size:12px;padding:8px;text-align:center}.pv3-shell .t2-add-row{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer;display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:var(--r-sm);font:400 12.5px/1.2 var(--font-sans)}.pv3-shell .t2-add-row:hover{background:#0000000a;color:var(--ink-strong)}.pv3-shell[data-pv3theme=dark] .t2-add-row:hover{background:#ffffff0d}.pv3-shell .t2-add-row-create{color:var(--cat-color);font-weight:600;border-bottom:var(--bd-w) solid var(--border);border-radius:var(--r-sm) var(--r-sm) 0 0;margin-bottom:2px}.pv3-shell .t2-add-row-create:hover{color:var(--cat-color)}.pv3-shell .t2-add-row-marketplace{color:#c79a39;font-weight:600}.pv3-shell[data-pv3theme=dark] .t2-add-row-marketplace{color:#f0bf4f}.pv3-shell .t2-add-row-marketplace:hover{background:#f0bf4f1a;color:inherit}.pv3-shell .t2-add-row-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pv3-shell .t2-add-row-color{font:500 10px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint)}.pv3-shell .t2-add-cancel{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--ink-muted);font-size:11px;padding:4px;cursor:pointer;align-self:center}.pv3-shell .t2-add-cancel:hover{color:var(--ink)}.pv3-shell .t2-add-section-label{font:500 9.5px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-faint);padding:8px 8px 3px;margin-top:3px;border-top:var(--bd-w) solid var(--border)}.pv3-shell .t2-add-row-catalog,.pv3-shell .t2-add-row-catalog:hover{color:var(--cat-color)}.pv3-shell .t2-add-row.is-premium{box-shadow:inset 3px 0 #f0bf4fd9;background:linear-gradient(90deg,rgba(240,191,79,.07),transparent 36%)}.pv3-shell .t2-add-row.is-premium:hover{background:linear-gradient(90deg,#f0bf4f24,#0000000a 50%)}.pv3-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f11177a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;animation:pv3-fade-in .12s ease-out}@keyframes pv3-fade-in{0%{opacity:0}to{opacity:1}}.pv3-progress-modal{--ink: #1f2230;--ink-strong: #0d101a;--ink-muted: #5b6071;--ink-faint: #95989f;--bg: #FAF4E8;--bg-elevated: #FFFCF3;--border: rgba(20, 25, 40, .1);--border-soft: rgba(20, 25, 40, .06);--good: #4E7D49;--bad: #C9442D;--shadow-lg: 0 30px 80px rgba(0, 0, 0, .32);width:min(720px,100%);background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:calc(18px * var(--r-scale));padding:22px 24px 18px;color:var(--ink);box-shadow:var(--shadow-lg);font:14px/1.4 Inter,Manrope,ui-sans-serif,sans-serif;animation:pv3-modal-in .16s cubic-bezier(.2,.7,.2,1)}@keyframes pv3-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.pv3-progress-modal[data-pv3theme=dark]{--ink: #E8E6DD;--ink-strong: #FFFCF3;--ink-muted: #A8A8A0;--ink-faint: #6F6F6A;--bg: #18181C;--bg-elevated: #1F2025;--border: rgba(255, 250, 235, .1);--border-soft: rgba(255, 250, 235, .06);--good: #6B9B5F;--bad: #D86A55}.pv3-modal-head{display:flex;align-items:center;gap:16px;margin-bottom:14px}.pv3-modal-title{display:flex;align-items:baseline;gap:10px;flex:1 1 auto;min-width:0}.pv3-modal-title .dot{width:9px;height:9px;border-radius:50%;align-self:center;flex:0 0 auto}.pv3-modal-title>span:nth-child(2){font:600 18px/1.1 Inter,sans-serif;color:var(--ink-strong)}.pv3-modal-title .sub{font:400 12px/1.2 ui-monospace,monospace;color:var(--ink-muted)}.range-tabs{display:inline-flex;background:var(--bg);border:var(--bd-w) solid var(--border-soft);border-radius:calc(10px * var(--r-scale));padding:3px;gap:2px}.range-tabs .range-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:5px 11px;border-radius:calc(7px * var(--r-scale));font:500 11.5px/1 ui-monospace,monospace;color:var(--ink-muted);cursor:pointer}.range-tabs .range-tab:hover{color:var(--ink)}.range-tabs .range-tab.active{background:var(--bg-elevated);color:var(--ink-strong);box-shadow:var(--elev-1)}.pv3-modal-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;width:28px;height:28px;border-radius:calc(6px * var(--r-scale));display:grid;place-items:center;color:var(--ink-muted);cursor:pointer;flex:0 0 auto}.pv3-modal-close:hover{background:var(--bg);color:var(--ink)}.pv3-modal-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:12px}.pv3-modal-figures .fig{background:var(--bg);border:var(--bd-w) solid var(--border-soft);border-radius:calc(10px * var(--r-scale));padding:10px 14px}.pv3-modal-figures .fig .num{font:600 22px/1 Inter,sans-serif;color:var(--ink-strong)}.pv3-modal-figures .fig .label{font:500 10.5px/1 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-top:4px}.pv3-modal-figures .delta.up .num{color:var(--good)}.pv3-modal-figures .delta.down .num{color:var(--bad)}.pv3-chart-wrap{position:relative;background:var(--bg);border:var(--bd-w) solid var(--border-soft);border-radius:calc(10px * var(--r-scale));padding:6px 4px 0;margin-bottom:12px}.pv3-chart{width:100%;height:auto;display:block;color:var(--ink-muted)}.pv3-chart-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:12px;color:var(--ink-muted);pointer-events:none}.pv3-chart-tooltip{position:absolute;top:8px;right:12px;display:flex;flex-direction:column;gap:1px;align-items:flex-end;background:var(--bg-elevated);border:var(--bd-w) solid var(--border);border-radius:calc(7px * var(--r-scale));padding:6px 10px;pointer-events:none}.pv3-chart-tooltip .tt-day{font:500 10.5px/1 ui-monospace,monospace;color:var(--ink-muted);letter-spacing:.04em}.pv3-chart-tooltip .tt-count{font:600 14px/1 Inter,sans-serif;color:var(--ink-strong)}.pv3-modal-foot{font-size:12px;color:var(--ink-muted);padding-top:8px;border-top:var(--bd-w) solid var(--border-soft)}.pv3-shell .progress-card.is-clickable{cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.pv3-shell .progress-card.is-clickable:hover{background:#00000006;border-color:#14192829}.pv3-shell[data-pv3theme=dark] .progress-card.is-clickable:hover{background:#fffaeb0a}.pv3-shell .progress-card.is-clickable:focus-visible{outline:2px solid var(--accent-line);outline-offset:1px}.pv3-shell .progress-card.is-loading{cursor:default}.pv3-shell .progress-card.is-loading .num{color:var(--ink-faint);animation:pv3-skel-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,transparent 0%,color-mix(in oklch,var(--ink-faint) 30%,transparent) 50%,transparent 100%);background-clip:text;-webkit-background-clip:text}@media (prefers-reduced-motion: reduce){.pv3-shell .progress-card.is-loading .num{animation:none}.pv3-shell .manifest-skel-bar{animation:none;opacity:.6}.pv3-shell .ready-badge.is-loading .dot{animation:none}}@media (max-width: 720px){.pv3-modal-backdrop{padding:12px}.pv3-progress-modal{padding:18px 16px 14px}.pv3-modal-head{flex-wrap:wrap;gap:10px}.pv3-modal-title{order:1;flex-basis:calc(100% - 36px)}.pv3-modal-close{order:2}.range-tabs{order:3;width:100%;justify-content:space-between}.range-tabs .range-tab{flex:1 1 0;text-align:center}.pv3-modal-figures{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pv3-modal-figures .fig{padding:8px 10px}.pv3-modal-figures .fig .num{font-size:18px}.pv3-chart-tooltip{top:4px;right:6px;padding:4px 8px}}.pv3-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#140e048c;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1100;font-family:var(--dawn-sans);color:var(--dawn-ink);animation:pv3-confirm-fade .12s ease-out}.pv3-confirm-overlay[data-pv3theme=dark]{background:#0000009e}@keyframes pv3-confirm-fade{0%{opacity:0}to{opacity:1}}.pv3-confirm-card{background:var(--dawn-bg);border-radius:calc(14px * var(--r-scale));width:100%;max-width:420px;padding:22px 22px 16px;box-shadow:0 24px 60px #140c0266,0 0 0 1px #28201414;animation:pv3-confirm-pop .14s cubic-bezier(.2,.9,.3,1)}@keyframes pv3-confirm-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.pv3-confirm-title{font:500 17px/1.3 var(--dawn-serif);color:var(--dawn-ink);margin-bottom:6px}.pv3-confirm-message{font:400 14px/1.5 var(--dawn-sans);color:var(--dawn-ink-soft);white-space:pre-wrap;margin-bottom:18px}.pv3-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.pv3-confirm-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:var(--bd-w) solid var(--dawn-rule);background:transparent;color:var(--dawn-ink);font:500 14px/1 var(--dawn-sans);padding:11px 18px;min-height:44px;min-width:96px;border-radius:calc(10px * var(--r-scale));cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.pv3-confirm-btn.cancel:hover{background:var(--dawn-rule)}.pv3-confirm-btn.cancel:active{background:var(--dawn-rule-strong)}.pv3-confirm-btn.danger{background:var(--dawn-accent);border-color:var(--dawn-accent);color:#fff}.pv3-confirm-btn.danger:hover{background:var(--dawn-accent-deep);border-color:var(--dawn-accent-deep)}.pv3-confirm-btn.danger:active{background:var(--dawn-accent-deep)}.pv3-confirm-overlay[data-pv3theme=dark] .pv3-confirm-btn.danger{color:#18161b}.pv3-confirm-btn.primary{background:var(--dawn-ink);border-color:var(--dawn-ink);color:var(--dawn-bg)}.pv3-confirm-btn.primary:hover{background:var(--dawn-ink-soft);border-color:var(--dawn-ink-soft)}@media (max-width: 480px){.pv3-confirm-overlay{padding:16px}.pv3-confirm-card{padding:18px 16px 14px}.pv3-confirm-actions{flex-direction:column-reverse}.pv3-confirm-btn{width:100%}}@media (prefers-reduced-motion: reduce){.pv3-confirm-overlay,.pv3-confirm-card{animation:none}}.t2sess-shell{--bg: var(--bg0);--bg-soft: var(--bg1);--ink: var(--text);--ink-2: var(--muted);--ink-3: var(--muted2);--ink-4: var(--muted2);--line: var(--border);--line-soft: var(--border);--accent-bg: color-mix(in srgb, var(--accent) 16%, var(--card));--accent-fg: #ffffff;--mode-learning: oklch(.7 .13 230);--mode-new: oklch(.7 .14 155);--mode-review: oklch(.78 .14 80);--mode-mistake: oklch(.62 .2 25);--mode-drills: oklch(.65 .13 250);--mode-tactics: oklch(.62 .18 295);--mode-endgame: oklch(.65 .1 195);--serif: var(--font-serif);--sans: var(--font-sans);--mono: var(--font-mono);--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-pill: 999px;background:var(--bg);color:var(--ink);width:100%;max-width:1480px;margin:0 auto;padding:var(--s-5) var(--s-6);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased}body:has(.t2sess-shell),.app-shell:has(.t2sess-shell),.container:has(.t2sess-shell){background:var(--bg0)}.t2sess-shell *,.t2sess-shell *:before,.t2sess-shell *:after{box-sizing:border-box}.t2sess-shell button{font:inherit;color:inherit}.t2sess-shell .session-top{display:flex;justify-content:center;align-items:center;gap:14px;margin-bottom:var(--s-4);flex-wrap:wrap;min-height:28px}.t2sess-shell .session-top.is-empty{gap:0}.t2sess-shell .session-focus,.t2sess-shell .top-game-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--r-pill);font:500 12px/1 var(--sans);color:var(--ink-2);background:var(--card);border:1px solid var(--line)}.t2sess-shell .session-focus strong{color:var(--accent);font-weight:600}.t2sess-shell .session-focus .x{color:var(--ink-4);cursor:pointer;padding:0 0 0 6px;border:none;background:transparent;font-size:13px}.t2sess-shell .top-game-pill{cursor:default}.t2sess-shell .top-game-pill:hover{border-color:var(--ink-3);color:var(--ink)}.t2sess-shell .top-game-pill svg{color:var(--ink-3);flex-shrink:0}.t2sess-shell .top-game-pill strong{color:var(--ink);font-weight:600}.t2sess-shell .rail-card.topgame-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 12px;display:flex;flex-direction:column;gap:4px;font:500 12px/1.35 var(--sans);color:var(--ink-2)}.t2sess-shell .rail-card.topgame-card .caption{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);font-weight:600}.t2sess-shell .rail-card.topgame-card .caption svg{color:var(--ink-3);flex-shrink:0}.t2sess-shell .rail-card.topgame-card .body{color:var(--ink);font-size:12.5px;line-height:1.4}.t2sess-shell .rail-card.topgame-card .body strong{font-weight:600}.t2sess-shell .rail-card.topgame-card .body .suffix{color:var(--ink-3);font-weight:500}.t2sess-shell .session-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:var(--s-5);align-items:start}@media (max-width: 880px){.t2sess-shell{padding:var(--s-3);padding-left:max(var(--s-3),env(safe-area-inset-left));padding-right:max(var(--s-3),env(safe-area-inset-right));padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.t2sess-shell .session-grid{grid-template-columns:1fr;gap:var(--s-3)}.t2sess-shell .session-top{gap:8px;margin-bottom:var(--s-3)}.t2sess-shell .session-top .top-game-pill{font-size:11px;padding:5px 10px}.t2sess-shell .session-footer{padding:var(--s-3);gap:var(--s-3)}.t2sess-shell .progress-block{min-width:0;width:100%}.t2sess-shell .counters{gap:12px;font-size:12px}.t2sess-shell .action-bar{padding:0;gap:6px;background:transparent;border:none;border-radius:0}.t2sess-shell .rail-card.moves-card{display:none}.t2sess-shell .rail-card.drill-meta{padding:8px 10px;font-size:11.5px;line-height:1.4}.t2sess-shell .rail-card.drill-meta h3,.t2sess-shell .rail-card.drill-meta .head{font-size:11px}.t2sess-shell .rail-card.drill-meta .pills-row{gap:6px;margin-bottom:4px}.t2sess-shell .rail-card.drill-meta .meta-row{gap:6px 10px;font-size:10.5px}.t2sess-shell .rail-card.drill-meta .vs-line{font-size:11.5px;margin-bottom:4px}.t2sess-shell .rail-card.drill-meta .task-line{font-size:11px;margin-top:6px;padding-top:6px}.t2sess-shell .action-bar .btn-secondary,.t2sess-shell .action-bar .btn-primary{padding:2px 8px;font-size:10.5px;line-height:1;min-height:22px;flex:0 0 auto;min-width:0}.t2sess-shell .action-bar .btn-icon,.t2sess-shell .action-bar .menu{flex:0 0 auto;width:22px;height:22px;min-width:22px;padding:0;font-size:12px}.t2sess-shell .action-bar .grow{display:block;flex:1}.t2sess-shell .rail-card{padding:var(--s-3)}.t2sess-shell .outcome{padding:8px 10px}.t2sess-shell .outcome .head{font-size:11.5px;margin-bottom:4px;gap:4px}.t2sess-shell .outcome .lede{font-size:11px;line-height:1.3;margin-bottom:4px}.t2sess-shell .outcome .footnote{font-size:10px;margin-top:4px}.t2sess-shell .outcome .actions{margin-top:4px;padding-top:6px}.t2sess-shell .outcome .eval-table{gap:1px 8px;font:500 11.5px/1.3 var(--mono);grid-template-columns:10px 1fr auto}.t2sess-shell .outcome .eval-table .dot:before{width:5px;height:5px}.t2sess-shell .outcome .eval-table .you-tag{font-size:8.5px;margin-left:4px}.t2sess-shell .outcome .actions .btn-primary{flex:0 0 auto;padding:6px 14px;font-size:11.5px;font-weight:600;width:auto;min-width:96px;align-self:flex-end}.t2sess-shell .outcome .actions{display:flex;justify-content:flex-end;border-top:none}.t2sess-shell .drill-meta .pills-row{gap:4px}.t2sess-shell .drill-meta .pills-row .from{margin-left:0;width:100%;margin-top:2px}.t2sess-shell .drill-meta .meta-row{gap:8px}.t2sess-shell .board-eval{top:12px;right:14px;font-size:11px}.t2sess-shell .master-counter{top:12px;left:14px;font-size:10px;padding:4px 7px}.t2sess-shell .board-theme-panel{right:0;left:auto}}@media (max-width: 480px){.t2sess-shell .session-top{flex-direction:row;align-items:center;flex-wrap:wrap}.t2sess-shell .session-focus,.t2sess-shell .top-game-pill{justify-content:center}}@media (min-width: 601px) and (max-width: 880px){.t2sess-shell .mobile-preboard,.t2sess-shell .side-rail,.t2sess-shell .action-bar{max-width:min(640px,92%);margin-left:auto;margin-right:auto}.t2sess-shell .q2-card{max-height:50dvh}.t2sess-shell .q2-prompt{font-size:15.5px}.t2sess-shell .action-bar .btn-secondary,.t2sess-shell .action-bar .btn-primary{font-size:13px}}.t2sess-shell .board-area{display:flex;flex-direction:column;gap:6px;min-width:0}.t2sess-shell .mode-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);font:600 9px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;border:1px solid currentColor}.t2sess-shell .mode-pill.learning{color:var(--mode-learning);background:#28acdf1f}.t2sess-shell .mode-pill.review{color:var(--mode-review);background:#e6ac3d24}.t2sess-shell .mode-pill.mistake{color:var(--mode-mistake);background:#e6434324}.t2sess-shell .mode-pill.tactic,.t2sess-shell .mode-pill.tactic-opening{color:var(--mode-tactics);background:#906ae51f}.t2sess-shell .mode-pill.endgame-opening,.t2sess-shell .mode-pill.endgame{color:var(--mode-endgame);background:#2ca2a21f}.t2sess-shell .mode-pill.goodmove,.t2sess-shell .mode-pill.new{color:var(--mode-new);background:#47b7771f}.t2sess-shell .mode-pill.master{color:var(--mode-drills);background:#4a94db1f}.t2sess-shell .mode-pill.opening{color:var(--mode-learning);background:#28acdf1f}.t2sess-shell .mode-pill.challenge{color:var(--accent);background:var(--accent-bg)}.t2sess-shell .play-to-mate-rail .ptm-goal{font:700 14px/1.35 var(--sans);color:var(--accent);margin-top:8px}.t2sess-shell .play-to-mate-rail .ptm-progress{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font:500 12px/1.4 var(--mono);color:var(--ink-3);margin-top:4px}.t2sess-shell .play-to-mate-rail .ptm-retries{color:var(--mode-mistake)}.t2sess-shell .play-to-mate-rail .ptm-warn{margin-top:8px;padding:6px 9px;border-radius:8px;background:#e643431a;color:var(--mode-mistake);font:500 12px/1.45 var(--sans)}.t2sess-shell .play-to-mate-rail .ptm-hint{margin-top:10px;width:100%}.t2sess-shell .play-to-mate-rail .ptm-hint.active{color:var(--accent);border-color:currentColor}.t2sess-shell .board-meta-left{display:inline-flex;align-items:center;gap:8px;min-width:0}.t2sess-shell .study-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--r-pill);font:600 9px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);background:var(--accent-bg);border:1px solid currentColor}.t2sess-shell .board-theme-picker{position:relative;display:inline-flex}.t2sess-shell .board-theme-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:28px;height:24px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:var(--r-sm);color:var(--ink-4);cursor:pointer}.t2sess-shell .board-theme-trigger:hover{color:var(--ink-2);background:var(--bg-soft);border-color:var(--line)}.t2sess-shell .board-theme-panel{position:absolute;top:calc(100% + 6px);right:0;min-width:288px;padding:10px 12px 12px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 10px 28px #00000029;z-index:60}.t2sess-shell .board-theme-panel .head{font:500 10px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px}.t2sess-shell .board-theme-panel .grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.t2sess-shell .board-theme-panel .swatch{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:transparent;border-radius:8px;padding:6px 4px;display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;font:400 10px/1.15 var(--sans);color:var(--ink-3)}.t2sess-shell .board-theme-panel .swatch:hover{background:var(--bg-soft);color:var(--ink)}.t2sess-shell .board-theme-panel .swatch.active{border-color:var(--accent);background:var(--accent-bg);color:var(--accent)}.t2sess-shell .board-theme-panel .swatch .chip{width:30px;height:30px;border-radius:6px;border:1px solid rgba(0,0,0,.14);display:inline-block;box-shadow:inset 0 0 0 .5px #ffffff2e}.t2sess-shell .board-theme-panel .swatch.active .chip{box-shadow:0 0 0 2px var(--card),0 0 0 3px var(--accent)}.t2sess-shell .board-theme-panel .swatch .lbl{font-weight:500;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}[data-mode=dark] .t2sess-shell .board-theme-panel .swatch .chip{border-color:#ffffff29}.t2sess-shell .captured{display:inline-flex;align-items:center;font-size:16px;gap:0}.t2sess-shell .captured>span:not(:first-child){margin-left:-5px}.t2sess-shell .captured .extra{font:500 10px/1 var(--mono);color:var(--ink-4);margin-left:6px}.t2sess-shell .captured .piece-w{color:#161b20;-webkit-text-stroke:.4px oklch(.22 .012 250)}.t2sess-shell .captured .piece-b{color:#050a0f;-webkit-text-stroke:.4px oklch(.14 .014 250)}[data-mode=dark] .t2sess-shell .captured .piece-w{color:#fcfcfc;text-shadow:0 0 2px rgba(0,0,0,.6),1px 1px 0 rgba(0,0,0,.4);-webkit-text-stroke:0}[data-mode=dark] .t2sess-shell .captured .piece-b{color:#060606;-webkit-text-stroke:0}.t2sess-shell .board-meta{display:flex;align-items:center;justify-content:space-between;padding:4px}.t2sess-shell .board-frame{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s-3);max-width:100%;overflow:hidden}.t2sess-shell .board-frame[data-mode=mistake]{border-left:3px solid var(--mode-mistake)}.t2sess-shell .board-frame[data-mode=learning],.t2sess-shell .board-frame[data-mode=opening]{border-left:3px solid var(--mode-learning)}.t2sess-shell .board-frame[data-mode=review]{border-left:3px solid var(--mode-review)}.t2sess-shell .board-frame[data-mode=tactic],.t2sess-shell .board-frame[data-mode=tactic-opening]{border-left:3px solid var(--mode-tactics)}.t2sess-shell .board-frame[data-mode=endgame-opening],.t2sess-shell .board-frame[data-mode=endgame]{border-left:3px solid var(--mode-endgame)}.t2sess-shell .board-frame[data-mode=goodmove]{border-left:3px solid var(--mode-new)}.t2sess-shell .board-frame[data-mode=master]{border-left:3px solid var(--mode-drills)}@media (min-width: 881px){.t2sess-shell .board-frame .chessBoardWrap{width:100%!important;max-width:min(100%,calc(100dvh - 360px))!important;margin:0 auto}.t2sess-shell .board-frame .chessBoardWrap>svg{width:100%!important;max-width:100%!important;height:auto!important}.t2sess-shell .board-frame .chessBoardWrap>.material-bar{width:100%!important}}.t2sess-shell .rail-footer-slot{margin-top:8px}.t2sess-shell .rail-footer-slot .session-footer{padding:8px 10px;gap:8px;flex-wrap:wrap}@media (min-width: 881px){.t2sess-shell .rail-footer-slot .session-footer .kbd-hints{display:none}}@media (max-width: 880px){.t2sess-shell .board-frame .chessBoardWrap{margin:0 auto;max-width:min(100%,max(180px,calc(100dvh - var(--app-top-chrome-h, 96px) - var(--app-bottom-chrome-h, 60px) - var(--t2-bottom-panel-h, 0px) - var(--preboard-min-h, 0px) - 90px)));transition:max-width .22s var(--ease, cubic-bezier(.4, 0, .2, 1))}.t2sess-shell .board-frame .chessBoardWrap>svg{width:100%!important;max-width:100%!important;height:auto!important}}.t2sess-shell .board-eval{position:absolute;top:18px;right:20px;z-index:5;font:500 12px/1 var(--mono);color:var(--ink-3);pointer-events:none}.t2sess-shell .board-eval.good{color:var(--good)}.t2sess-shell .board-eval.bad{color:var(--bad)}.t2sess-shell .master-counter{position:absolute;top:18px;left:24px;z-index:5;font:500 11px/1 var(--mono);color:var(--mode-drills);background:#4a94db24;border:1px solid oklch(.65 .13 250 / .4);padding:5px 9px;border-radius:var(--r-pill)}.t2sess-shell .action-bar{display:flex;align-items:center;gap:10px;padding:var(--s-3) var(--s-4);background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);flex-wrap:wrap}.t2sess-shell .action-bar .grow{flex:1;min-width:8px}.t2sess-shell .action-bar .t2-act-secondary-row{display:contents}.t2sess-shell .btn-secondary{background:transparent;border:1px solid var(--line);color:var(--ink-2);font:500 13px/1 var(--sans);padding:9px 14px;cursor:pointer;border-radius:var(--r-sm)}@media (hover: hover){.t2sess-shell .btn-secondary:hover{background:var(--bg-soft);color:var(--ink)}}.t2sess-shell .btn-secondary:disabled{opacity:.4;cursor:not-allowed}.t2sess-shell .btn-secondary.btn-danger{color:color-mix(in oklab,var(--bad) 70%,var(--ink-2));border-color:color-mix(in oklab,var(--bad) 25%,var(--line))}@media (hover: hover){.t2sess-shell .btn-secondary.btn-danger:hover{background:color-mix(in oklab,var(--bad) 8%,var(--bg-soft));color:var(--bad);border-color:color-mix(in oklab,var(--bad) 40%,var(--line))}}.t2sess-shell .btn-primary{background:var(--accent);color:var(--accent-fg);border:1px solid var(--accent);font:600 13px/1 var(--sans);padding:9px 18px;border-radius:var(--r-sm);cursor:pointer}.t2sess-shell .btn-primary:hover{filter:brightness(1.05)}.t2sess-shell .btn-primary:disabled{opacity:.4;cursor:not-allowed}[data-mode=dark] .t2sess-shell .btn-primary{color:#070e15}.t2sess-shell .action-bar .menu,.t2sess-shell .action-bar .scrub-btn{width:36px;height:36px;border:1px solid var(--line);background:transparent;border-radius:var(--r-sm);cursor:pointer;color:var(--ink-3);display:grid;place-items:center;font-size:14px}.t2sess-shell .action-bar .menu:hover,.t2sess-shell .action-bar .scrub-btn:hover{color:var(--ink);background:var(--bg-soft)}.t2sess-shell .menu-wrap{position:relative;display:inline-flex}.t2sess-shell .menu-panel{position:absolute;bottom:calc(100% + 6px);right:0;min-width:180px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 8px 24px #0000002e;padding:4px;display:flex;flex-direction:column;z-index:50}.t2sess-shell .menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;font:500 13px/1.2 var(--sans);color:var(--ink-2);text-align:left;padding:9px 12px;border-radius:var(--r-sm);cursor:pointer}.t2sess-shell .menu-item:hover{background:var(--bg-soft);color:var(--ink)}.t2sess-shell .menu-item.danger{color:#e85854}.t2sess-shell .menu-item.danger:hover{background:color-mix(in oklab,oklch(.65 .18 25) 12%,transparent)}.t2sess-shell .btn-icon{width:36px;height:36px;padding:0;display:grid;place-items:center;font-size:14px;color:var(--ink-3)}.t2sess-shell .btn-icon:hover{color:var(--ink)}.t2sess-shell .history-badge{display:inline-flex;align-items:center;gap:4px;padding:0;border:none;background:transparent;cursor:pointer;line-height:1}.t2sess-shell .side-rail{display:flex;flex-direction:column;gap:var(--s-3);min-width:0}.t2sess-shell .rail-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-4)}.t2sess-shell .rail-card h3{font:500 11px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3);margin:0 0 var(--s-3)}.t2sess-shell .drill-meta .pills-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}.t2sess-shell .drill-meta .pills-row .move-target{font:500 12px/1 var(--sans);color:var(--ink)}.t2sess-shell .drill-meta .pills-row .move-target .label{color:var(--ink-3);font-weight:400}.t2sess-shell .drill-meta .pills-row .attempts{font:500 11px/1 var(--mono);color:var(--mode-mistake);padding:3px 7px;border-radius:var(--r-pill);background:#e643431a}.t2sess-shell .drill-meta .pills-row .from{font:400 11px/1 var(--sans);color:var(--ink-3);margin-left:auto;font-style:italic}.t2sess-shell .drill-meta .vs-line{font:500 12px/1.4 var(--sans);color:var(--ink-2);margin-bottom:4px}.t2sess-shell .drill-meta .vs-line strong{color:var(--ink);font-weight:500}.t2sess-shell .drill-meta .vs-line .rating{color:var(--ink-3);font-size:11px;margin-left:2px}.t2sess-shell .drill-meta .meta-row{display:flex;gap:10px;flex-wrap:wrap;font:400 11px/1.3 var(--mono);color:var(--ink-3)}.t2sess-shell .drill-meta .meta-row strong{color:var(--ink-2);font-weight:500}.t2sess-shell .drill-meta .view-game{display:inline-block;margin-top:8px;font:500 11px/1 var(--sans);color:var(--mode-learning);background:none;border:none;padding:0;cursor:pointer}.t2sess-shell .drill-meta .view-game:hover{text-decoration:underline}.t2sess-shell .drill-meta .task-line{margin-top:10px;padding-top:8px;border-top:1px solid var(--line-soft);font:400 12px/1.4 var(--sans);color:var(--ink-2);font-style:italic}.t2sess-shell .puzzle-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.t2sess-shell .chip{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font:700 11px/1.2 var(--sans);letter-spacing:.02em;white-space:nowrap}.t2sess-shell .chip-good{background:color-mix(in oklab,var(--good) 14%,transparent);color:var(--good)}.t2sess-shell .chip-yellow{background:color-mix(in oklab,var(--yellow, #f0c060) 16%,transparent);color:var(--yellow, #f0c060)}.t2sess-shell .chip-accent{background:color-mix(in oklab,var(--accent) 14%,transparent);color:var(--accent)}.t2sess-shell .eval-table{display:grid;grid-template-columns:14px 1fr auto;gap:4px 10px;font:500 13px/1.6 var(--mono)}.t2sess-shell .eval-table .dot{display:grid;place-items:center}.t2sess-shell .eval-table .dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#de4e4b80}.t2sess-shell .eval-table .row.best .dot:before{background:var(--good)}.t2sess-shell .eval-table .row.user .dot:before{background:var(--bad)}.t2sess-shell .eval-table .row{display:contents}.t2sess-shell .eval-table .move{color:var(--ink-2)}.t2sess-shell .eval-table .row.best .move{color:var(--good);font-weight:600}.t2sess-shell .eval-table .row.user .move{color:var(--bad);font-weight:600}.t2sess-shell .eval-table .score{color:var(--ink-3);text-align:right}.t2sess-shell .eval-table .row.best .score{color:var(--good)}.t2sess-shell .eval-table .you-tag{font:500 9px/1 var(--sans);letter-spacing:1.2px;text-transform:uppercase;color:var(--bad);margin-left:6px}.t2sess-shell .tactic-name{font:500 11px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--mode-tactics);margin-bottom:8px}.t2sess-shell .tactic-sequence{display:flex;flex-direction:column;gap:4px;font:500 13px/1.6 var(--mono)}.t2sess-shell .tactic-sequence .step{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--r-sm)}.t2sess-shell .tactic-sequence .step .num{font-size:10px;color:var(--ink-4);width:18px}.t2sess-shell .tactic-sequence .step .move{color:var(--ink);flex:1}.t2sess-shell .tactic-sequence .step .annot{font:400 11px/1 var(--sans);color:var(--ink-3)}.t2sess-shell .tactic-sequence .step.key{background:#906ae51a}.t2sess-shell .tactic-sequence .step.key .move{color:var(--mode-tactics);font-weight:600}.t2sess-shell .outcome{border-radius:var(--r-md);padding:var(--s-4);border:1px solid var(--line);background:var(--card)}.t2sess-shell .outcome.correct{border-color:var(--good);background:#4ca5630f}.t2sess-shell .outcome.mistake{border-color:var(--bad);background:#de4e4b0f}.t2sess-shell .outcome.learning-show{border-color:var(--mode-learning);background:#28acdf0f}.t2sess-shell .outcome.tactic-show{border-color:var(--mode-tactics);background:#906ae50f}.t2sess-shell .outcome.endgame-show{border-color:var(--mode-endgame);background:#2ca2a20f}.t2sess-shell .outcome.master-show{border-color:var(--mode-drills);background:#4a94db0f}.t2sess-shell .outcome.goodmove-show{border-color:var(--mode-new);background:#47b7770f}.t2sess-shell .outcome.review-show{border-color:var(--mode-review);background:#e6ac3d0f}.t2sess-shell .outcome .head{display:flex;align-items:center;gap:8px;font:600 14px/1 var(--sans);margin-bottom:12px}.t2sess-shell .outcome.correct .head{color:var(--good)}.t2sess-shell .outcome.mistake .head{color:var(--bad)}.t2sess-shell .outcome.learning-show .head{color:var(--mode-learning)}.t2sess-shell .outcome.tactic-show .head{color:var(--mode-tactics)}.t2sess-shell .outcome.endgame-show .head{color:var(--mode-endgame)}.t2sess-shell .outcome.master-show .head{color:var(--mode-drills)}.t2sess-shell .outcome.goodmove-show .head{color:var(--mode-new)}.t2sess-shell .outcome.review-show .head{color:var(--mode-review)}.t2sess-shell .outcome .lede{font:400 12px/1.45 var(--sans);color:var(--ink-2);margin-bottom:12px}.t2sess-shell .outcome .lede strong{font-family:var(--mono);font-weight:600}.t2sess-shell .outcome .lede em{font-style:italic;color:var(--ink-3);font-family:inherit}.t2sess-shell .outcome .footnote{font:400 11px/1.4 var(--sans);color:var(--ink-3);margin-top:10px}.t2sess-shell .outcome .actions{display:flex;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line-soft)}.t2sess-shell .outcome .actions .btn-primary{flex:1;padding:10px;font:600 13px/1 var(--sans)}.t2sess-shell .fsrs-row{display:flex;gap:6px;font:500 11px/1 var(--sans)}.t2sess-shell .fsrs-row .btn-secondary{flex:1;padding:8px 4px}.t2sess-shell .classification{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:var(--r-pill);font:600 10px/1 var(--sans);letter-spacing:.6px;text-transform:uppercase;border:1px solid currentColor;background:color-mix(in oklab,currentColor 12%,transparent)}.t2sess-shell .classification.blunder{color:var(--bad)}.t2sess-shell .classification.inaccuracy{color:var(--warn)}.t2sess-shell .classification.playable{color:var(--good)}.t2sess-shell .master-attr{font:400 11px/1.4 var(--sans);color:var(--ink-3);margin-top:8px;padding-top:8px;border-top:1px dashed var(--line-soft)}.t2sess-shell .master-attr strong{color:var(--ink-2);font-weight:500}.t2sess-shell .master-attr .view-master{display:inline-block;margin-top:4px;font:500 11px/1 var(--sans);color:var(--mode-drills);background:none;border:none;padding:0;cursor:pointer}.t2sess-shell .master-attr .view-master:hover{text-decoration:underline}.t2sess-shell .master-moves h3{font:500 11px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin:0 0 10px}.t2sess-shell .master-moves .moves-grid{display:grid;grid-template-columns:28px 1fr 1fr;gap:4px 10px;font:500 13px/1.6 var(--mono)}.t2sess-shell .master-moves .moves-grid .mn{color:var(--ink-4);font-size:11px}.t2sess-shell .master-moves .moves-grid .mv{color:var(--ink-2)}.t2sess-shell .master-moves .moves-grid .mv.test{background:#4a94db2e;color:var(--mode-drills);font-weight:600;padding:2px 6px;border-radius:3px;justify-self:start}.t2sess-shell .moves-card{padding:0;overflow:hidden}.t2sess-shell .moves-card .moves-card-head{padding:var(--s-3) var(--s-4);display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line-soft);flex-wrap:wrap}.t2sess-shell .moves-card .moves-card-head .label{font:500 10px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3)}.t2sess-shell .moves-card .moves-card-head .opening{font:400 11px/1 var(--sans);color:var(--ink-3);margin-left:auto}.t2sess-shell .moves-card .moveList{background:transparent;border:none;border-radius:0;padding:4px 8px 8px;max-height:200px;overflow-y:auto;overflow-x:hidden}.t2sess-shell .moves-card .moveListGrid{grid-template-columns:28px 1fr 1fr;gap:2px 8px;font:400 12px/1.5 var(--mono)}.t2sess-shell .moves-card .moveListNum{color:var(--ink-4);font-size:11px}.t2sess-shell .moves-card .moveListCell{color:var(--ink-2);padding:5px 8px;border-radius:4px}.t2sess-shell .moves-card .moveListCell:hover{background:var(--bg-soft)}.t2sess-shell .moves-card .moveListCell.active{background:var(--accent-bg);color:var(--accent);font-weight:600}.t2sess-shell .curiosity-banner{display:flex;align-items:center;gap:10px;margin:0 0 var(--s-4);padding:10px 14px;min-height:56px;box-sizing:border-box;border-radius:var(--r-md);border:1px solid color-mix(in oklab,var(--warn) 30%,transparent);background:color-mix(in oklab,var(--warn) 12%,var(--card));font:500 12.5px/1.4 var(--sans);color:var(--ink-2)}.t2sess-shell .curiosity-banner.empty{background:transparent;border-color:transparent}.t2sess-shell .curiosity-banner .icon{font-size:15px;line-height:1;flex-shrink:0}.t2sess-shell .curiosity-banner .body{flex:1;min-width:0}.t2sess-shell .curiosity-banner .body .sub{display:block;font:400 11px/1.4 var(--sans);color:var(--ink-3);margin-top:1px}.t2sess-shell .rail-footer-slot .curiosity-banner{margin:8px 0 0;min-height:0;padding:10px 12px;font-size:12px}.t2sess-shell .explore-card{padding:var(--s-3)}.t2sess-shell .explore-card .explore-head{display:flex;align-items:center;justify-content:space-between;padding:0 8px 10px;border-bottom:1px solid var(--line-soft);margin-bottom:10px}.t2sess-shell .explore-card .explore-head h3,.t2sess-shell .explore-card .explore-head .label{font:500 11px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin:0}.t2sess-shell .explore-card .explore-head .btn-primary{padding:6px 14px;font:600 11px/1 var(--sans)}.t2sess-shell .explore-card .explore-head.playing-cpu{border-bottom-color:var(--good)}.t2sess-shell .explore-card .explore-head.playing-cpu h3,.t2sess-shell .explore-card .explore-head.playing-cpu .label{color:var(--good)}.t2sess-shell .explore-card .explore-head-titles{display:flex;flex-direction:column;gap:2px;min-width:0}.t2sess-shell .explore-card .explore-head-game{font:400 11px/1.2 var(--mono);color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t2sess-shell .explore-scrub{display:flex;gap:4px;justify-content:center;padding:6px 0 12px;border-top:1px solid var(--line-soft)}.t2sess-shell .explore-scrub button{width:30px;height:28px;padding:0;border-radius:4px;border:1px solid var(--line);background:transparent;color:var(--ink-3);cursor:pointer;font-size:11px}.t2sess-shell .explore-scrub button:hover{background:var(--bg-soft);color:var(--ink)}.t2sess-shell .explore-card .varMoveNum{color:var(--ink-4);font:500 10px/1.6 var(--mono);padding-right:4px}.t2sess-shell .explore-card .varMove{color:var(--ink-2);font:500 13px/1.5 var(--mono);padding:2px 6px;border-radius:4px}.t2sess-shell .explore-card .varMove:hover{background:var(--bg-soft);color:var(--ink);cursor:pointer}.t2sess-shell .explore-card .varMove-active{background:var(--accent);color:var(--accent-fg);font-weight:600}.t2sess-shell .explore-card .varMove-side{font-size:12px;opacity:.85}.t2sess-shell .explore-card .varMove-critical{color:var(--mode-tactics)}.t2sess-shell .explore-card .openingTable-move{color:var(--ink);font:500 13px/1.5 var(--mono);padding:2px 6px;border-radius:4px}.t2sess-shell .explore-card .openingTable-move.varMove-active{background:var(--accent);color:var(--accent-fg)}.t2sess-shell .explore-card table{border-collapse:collapse;width:100%}.t2sess-shell .explore-card td{padding:1px 4px}.t2sess-shell .explore-card .pgn-tree{display:grid;grid-template-columns:28px 1fr 1fr;gap:2px 6px;align-items:center;font:500 13px/1.5 var(--mono);margin-bottom:12px}.t2sess-shell .explore-card .pgn-tree .mn{color:var(--ink-4);font-size:10px;padding-left:4px}.t2sess-shell .explore-card .pgn-tree .mv{color:var(--ink-2);padding:4px 8px;border-radius:4px;cursor:pointer}.t2sess-shell .explore-card .pgn-tree .mv:hover{background:var(--bg-soft)}.t2sess-shell .explore-card .pgn-tree .mv.current{background:var(--accent);color:var(--accent-fg);font-weight:600}.t2sess-shell .mg-viewer{padding:var(--s-3);cursor:pointer}.t2sess-shell .mg-viewer .mg-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:var(--s-2)}.t2sess-shell .mg-viewer .mg-viewer-title{font:600 12px/1.3 var(--sans);color:var(--ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.t2sess-shell .mg-viewer .mg-viewer-close{flex:none;width:22px;height:22px;padding:0;border-radius:4px;border:1px solid var(--line);background:transparent;color:var(--ink-3);cursor:pointer;font-size:14px;line-height:1}.t2sess-shell .mg-viewer .mg-viewer-close:hover{background:var(--bg-soft);color:var(--ink)}.t2sess-shell .mg-viewer .mg-viewer-nav{display:flex;gap:4px;justify-content:center;padding:4px 0 8px;border-bottom:1px solid var(--line-soft);margin-bottom:var(--s-2)}.t2sess-shell .mg-viewer .mg-viewer-nav button{width:30px;height:26px;padding:0;border-radius:4px;border:1px solid var(--line);background:transparent;color:var(--ink-3);cursor:pointer;font-size:11px}.t2sess-shell .mg-viewer .mg-viewer-nav button:hover:not(:disabled){background:var(--bg-soft);color:var(--ink)}.t2sess-shell .mg-viewer .mg-viewer-nav button:disabled{opacity:.4;cursor:default}.t2sess-shell .mg-viewer .mg-viewer-moves{max-height:140px;overflow-y:auto;font:500 12px/1.7 var(--mono);color:var(--ink-2)}.t2sess-shell .mg-viewer .mg-viewer-moves .mn{color:var(--ink-4)}.t2sess-shell .mg-viewer .mg-viewer-moves .mv{cursor:pointer;border-radius:3px;padding:0 3px}.t2sess-shell .mg-viewer .mg-viewer-moves .mv:hover{background:var(--bg-soft)}.t2sess-shell .mg-viewer .mg-viewer-moves .mv.active{background:var(--accent);color:var(--accent-fg);font-weight:700}.t2sess-shell .mg-viewer .mg-viewer-moves .mv.hl{background:#de4e4b2e;color:var(--bad)}.t2sess-shell .engine-card .engine-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.t2sess-shell .engine-card .eng-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:var(--r-pill);background:#4a94db24;color:var(--mode-drills);font:500 10px/1 var(--sans);border:1px solid oklch(.65 .13 250 / .4);cursor:pointer}.t2sess-shell .engine-card .eng-pill.active{background:#4a94db38}.t2sess-shell .engine-card .eng-eval{font:600 13px/1 var(--mono);color:var(--good)}.t2sess-shell .engine-card .eng-bar{flex:1;height:6px;border-radius:3px;background:var(--bg-soft);overflow:hidden;position:relative}.t2sess-shell .engine-card .eng-bar .eng-bar-fill{display:block;height:100%;background:var(--ink-2);transition:width .2s ease}.t2sess-shell .engine-card .eng-depth{font:500 10px/1 var(--mono);color:var(--ink-4)}.t2sess-shell .engine-card .pv-list{font:500 12px/1.7 var(--mono)}.t2sess-shell .engine-card .pv-list .pv-row{display:flex;gap:10px;padding:2px 0}.t2sess-shell .engine-card .pv-list .pv-row .score{color:var(--ink-3);width:36px;flex-shrink:0}.t2sess-shell .engine-card .pv-list .pv-row .moves{color:var(--mode-learning)}.t2sess-shell .engine-card .pv-list .mv-clickable{cursor:pointer}.t2sess-shell .engine-card .pv-list .mv-clickable:hover{color:var(--accent)}.t2sess-shell .db-card .db-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.t2sess-shell .db-card .db-head h3{margin:0;font:500 11px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3)}.t2sess-shell .db-card .db-head .db-toggle{background:none;border:0;padding:0;cursor:pointer;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;display:inline-flex;align-items:center;gap:6px}.t2sess-shell .db-card .db-head .db-toggle:hover{color:var(--ink)}.t2sess-shell .db-card .db-count{font:500 11px/1 var(--mono);color:var(--ink-3)}.t2sess-shell .db-card .db-row{display:grid;grid-template-columns:50px 32px 1fr 36px;gap:8px;align-items:center;padding:4px 0;font:500 12px/1 var(--sans)}.t2sess-shell .db-card .db-row .move{font-family:var(--mono);color:var(--ink);font-weight:600}.t2sess-shell .db-card .db-row .games{font-family:var(--mono);color:var(--ink-3);font-size:11px;text-align:right}.t2sess-shell .db-card .db-row .bar{display:flex;height:14px;border-radius:3px;overflow:hidden;border:1px solid var(--line-soft)}.t2sess-shell .db-card .db-row .bar>span{display:flex;align-items:center;justify-content:center;font:500 9px/1 var(--mono);color:#000000b3}.t2sess-shell .db-card .db-row .bar .w{background:#f6e2c0}.t2sess-shell .db-card .db-row .bar .d{background:#7d92a7;color:#eee}.t2sess-shell .db-card .db-row .bar .b{background:#262f38;color:#eee}.t2sess-shell .db-card .db-row .pct{font:500 11px/1 var(--mono);color:var(--ink-2);text-align:right}.t2sess-shell .engine-card{padding:var(--s-3)}.t2sess-shell .engine-card .stockfish-panel{background:transparent;border:0;padding:0}.t2sess-shell .engine-card .stockfish-panel-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding:0;background:transparent;border:0}.t2sess-shell .engine-card .stockfish-panel-toggle{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:var(--r-pill);background:color-mix(in oklab,var(--mode-drills) 14%,transparent);color:var(--mode-drills);font:500 10px/1 var(--sans);border:1px solid color-mix(in oklab,var(--mode-drills) 40%,transparent);cursor:pointer}.t2sess-shell .engine-card .stockfish-panel-toggle.active{background:color-mix(in oklab,var(--mode-drills) 22%,transparent)}.t2sess-shell .engine-card .stockfish-panel-icon{font-size:11px}.t2sess-shell .engine-card .stockfish-panel-label{letter-spacing:.06em;text-transform:uppercase}.t2sess-shell .engine-card .stockfish-panel-score{font:600 13px/1 var(--mono)}.t2sess-shell .engine-card .stockfish-panel-evalbar{flex:1;height:6px;border-radius:3px;overflow:hidden;background:var(--bg-soft)}.t2sess-shell .engine-card .stockfish-panel-evalbar-white{height:100%;background:var(--ink-2)}.t2sess-shell .engine-card .stockfish-panel-depth{font:500 10px/1 var(--mono);color:var(--ink-4)}.t2sess-shell .engine-card .stockfish-panel-lines{font:500 12px/1.7 var(--mono)}.t2sess-shell .engine-card .stockfish-pv-line{display:flex;gap:10px;padding:2px 0}.t2sess-shell .engine-card .compact-pv-score,.t2sess-shell .engine-card .stockfish-pv-line>span:first-child{color:var(--ink-3);width:36px}.t2sess-shell .engine-card .compact-pv-moves,.t2sess-shell .engine-card .stockfish-pv-line>span:nth-child(2){color:var(--mode-learning)}.t2sess-shell .db-card{padding:var(--s-3)}.t2sess-shell .db-card .database-panel{background:transparent;border:0;padding:0}.t2sess-shell .db-card .database-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0;background:transparent;border:0}.t2sess-shell .db-card .database-panel-header .stockfish-panel-label{font:500 11px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3)}.t2sess-shell .db-card .database-panel-total{font:500 11px/1 var(--mono);color:var(--ink-3)}.t2sess-shell .db-card .database-panel-table{display:flex;flex-direction:column;gap:0}.t2sess-shell .db-card .database-panel-row{display:grid;grid-template-columns:50px 32px 1fr 36px;gap:8px;align-items:center;padding:4px 0;font:500 12px/1 var(--sans)}.t2sess-shell .db-card .database-panel-move{font-family:var(--mono);color:var(--ink);font-weight:600}.t2sess-shell .db-card .database-panel-games{font-family:var(--mono);color:var(--ink-3);font-size:11px;text-align:right}.t2sess-shell .db-card .database-panel-bar,.t2sess-shell .db-card .explorer-result-bar{display:flex;height:14px;border-radius:3px;overflow:hidden;border:1px solid var(--line-soft)}.t2sess-shell .db-card .database-panel-score{font:500 11px/1 var(--mono);color:var(--ink-2);text-align:right}.t2sess-shell .position-stats-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:var(--r-sm);background:var(--bg-soft);border:1px solid var(--line);color:var(--ink-2);font:500 12px/1 var(--sans);cursor:pointer}@media (hover: hover){.t2sess-shell .position-stats-trigger:hover{border-color:var(--ink-3);color:var(--ink)}}.t2sess-shell .stats-spark{display:inline-flex;gap:3px}.t2sess-shell .stats-spark .d{width:6px;height:6px;border-radius:2px;background:var(--line)}.t2sess-shell .stats-spark .d.win{background:var(--good)}.t2sess-shell .stats-spark .d.fail{background:var(--bad)}.t2sess-shell .session-footer{display:flex;align-items:center;gap:var(--s-4);margin-top:var(--s-4);padding:var(--s-3) var(--s-4);background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);flex-wrap:wrap}.t2sess-shell .progress-block{display:flex;flex-direction:column;gap:6px;flex:1;min-width:240px}.t2sess-shell .counters{display:inline-flex;gap:14px;align-items:center;font:500 11px/1 var(--sans);flex-wrap:wrap}.t2sess-shell .counters .ct{display:inline-flex;align-items:center;gap:5px}.t2sess-shell .counters .ct:before{content:"";width:7px;height:7px;border-radius:2px}.t2sess-shell .counters .ct.review:before{background:var(--mode-review)}.t2sess-shell .counters .ct.new:before{background:var(--mode-new)}.t2sess-shell .counters .ct.drills:before{background:var(--mode-drills)}.t2sess-shell .counters .ct strong{color:var(--ink);font-weight:600}.t2sess-shell .counters .ct .lbl{color:var(--ink-3)}.t2sess-shell .progress-row{display:flex;align-items:center;justify-content:space-between;font:500 11px/1 var(--mono);color:var(--ink-3)}.t2sess-shell .progress-row strong{color:var(--ink);font-weight:600}.t2sess-shell .progress-bar{display:flex;height:4px;gap:1px;border-radius:2px;overflow:hidden;background:var(--line-soft)}.t2sess-shell .progress-bar>span{display:block;height:100%}.t2sess-shell .progress-bar .seg-review{background:var(--mode-review)}.t2sess-shell .progress-bar .seg-new{background:var(--mode-new)}.t2sess-shell .progress-bar .seg-drills{background:var(--mode-drills)}.t2sess-shell .progress-bar .seg-rem{background:transparent}.t2sess-shell .streak-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);font:500 11px/1 var(--sans);color:var(--warn);background:#eba9411a;border:1px solid oklch(.78 .14 75 / .25);transition:color .2s var(--ease-out, ease),background .2s var(--ease-out, ease),box-shadow .2s var(--ease-out, ease)}.t2sess-shell .streak-pill .streak-fire{line-height:1;font-size:13px}.t2sess-shell .streak-pill .streak-text{line-height:1}.t2sess-shell .streak-pill .streak-milestone-text{margin-left:4px;padding-left:6px;border-left:1px solid currentColor;font:700 11px/1 var(--sans);letter-spacing:.02em;text-transform:uppercase}.t2sess-shell .streak-pill.tier-0{color:#f0a040;background:#f0a04014;border-color:#f0a04040}.t2sess-shell .streak-pill.tier-1{color:#f08030;background:#f080301a;border-color:#f080304d}.t2sess-shell .streak-pill.tier-2{color:#f06020;background:#f060201f;border-color:#f0602059;box-shadow:0 0 8px #f0602026}.t2sess-shell .streak-pill.tier-3{color:#e84020;background:#e8402024;border-color:#e8402066;box-shadow:0 0 12px #e8402033}.t2sess-shell .streak-pill.tier-4{color:#e02010;background:#e0201029;border-color:#e0201073;box-shadow:0 0 16px #e0201040}.t2sess-shell .streak-pill.tier-5{color:#ff3010;background:#ff30102e;border-color:#ff301080;box-shadow:0 0 24px #ff30104d}.t2sess-shell .streak-pill.tier-6{color:#ff2800;background:#ff280033;border-color:#ff28008c;box-shadow:0 0 32px #ff280059}.t2sess-shell .streak-pill.tier-7{color:#ff1000;background:#ff100038;border-color:#ff100099;box-shadow:0 0 40px #ff100066}@keyframes streakMilestonePop{0%{transform:scale(1)}40%{transform:scale(1.15)}to{transform:scale(1)}}.t2sess-shell .streak-pill.milestone{animation:streakMilestonePop .5s var(--ease, cubic-bezier(.4, 0, .2, 1))}@media (prefers-reduced-motion: reduce){.t2sess-shell .streak-pill.milestone{animation:none}.t2sess-shell .streak-pill{transition:none}}.t2sess-shell .kbd-hints{display:inline-flex;gap:14px;align-items:center;font:400 10px/1 var(--sans);color:var(--ink-4)}.t2sess-shell .kbd-hints kbd{display:inline-flex;align-items:center;padding:2px 5px;margin-right:4px;border:1px solid var(--line);border-radius:3px;background:var(--bg-soft);font:500 9px/1 var(--mono);color:var(--ink-3)}@media (max-width: 720px){.t2sess-shell .kbd-hints{display:none}}.t2sess-shell .annotation{background:color-mix(in oklab,var(--accent) 8%,var(--card));border:1px solid color-mix(in oklab,var(--accent) 25%,var(--line));border-radius:var(--r-md);padding:var(--s-4);display:flex;flex-direction:column;gap:12px}.t2sess-shell .annotation p{margin:0;font:400 14px/1.6 var(--sans);color:var(--ink)}.t2sess-shell .intro-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s-4);display:flex;flex-direction:column;gap:10px}.t2sess-shell .intro-card.hero{background:color-mix(in oklab,var(--accent) 6%,var(--card));border-color:color-mix(in oklab,var(--accent) 25%,var(--line))}.t2sess-shell .intro-card .hero-title{font:500 18px/1.45 var(--serif);color:var(--ink);margin:0}.t2sess-shell .intro-card .meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.t2sess-shell .intro-card .section{font:500 11px/1 var(--sans);color:var(--ink-2);letter-spacing:.04em;text-transform:uppercase}.t2sess-shell .intro-card .move-line{font:500 13px/1 var(--sans);color:var(--accent)}.t2sess-shell .intro-card .move-line strong{font-family:var(--mono);font-weight:600;letter-spacing:.5px}.t2sess-shell .intro-card .comment{margin:0;padding:10px 12px;background:color-mix(in oklab,var(--accent) 8%,transparent);border-left:3px solid var(--accent);border-radius:var(--r-sm);font:400 13.5px/1.6 var(--sans);color:var(--ink);font-weight:500}.t2sess-shell .test-counter{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}.t2sess-shell .test-counter .label{font:500 11px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.t2sess-shell .test-counter strong{font:600 14px/1 var(--mono);color:var(--ink)}.t2sess-shell .hint-chain{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md)}.t2sess-shell .hint-chain .comment{font:500 13px/1.55 var(--sans);color:var(--ink);margin:0}.t2sess-shell .hint-chain .tier{padding:10px 12px;border-radius:var(--r-sm);background:color-mix(in oklab,var(--warn) 12%,transparent);border-left:3px solid var(--warn)}.t2sess-shell .hint-chain .tier.tier-2{background:color-mix(in oklab,var(--warn) 18%,transparent)}.t2sess-shell .hint-chain .tier p{margin:0;font:500 13px/1.55 var(--sans);color:var(--ink)}.t2sess-shell .hint-chain .tier-cta{align-self:flex-start;margin-top:2px}.t2sess-shell .cont-status{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:var(--r-md);background:color-mix(in oklab,var(--mode-tactics) 8%,var(--card));border:1px solid color-mix(in oklab,var(--mode-tactics) 30%,transparent);font:500 12px/1 var(--sans);color:var(--mode-tactics)}.t2sess-shell .cont-status .step{font-family:var(--mono);color:var(--ink-2)}.t2sess-shell .cont-status .label{letter-spacing:1px;text-transform:uppercase;font-size:10px;font-weight:600}.t2sess-shell .cue-stack{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:12;pointer-events:none;display:flex;flex-direction:column;gap:6px;align-items:center;width:max-content;max-width:92%}@keyframes cueIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.t2sess-shell .cue-stack>*{animation:cueIn .3s var(--ease-out, cubic-bezier(0,0,.2,1))}.t2sess-shell .cue{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:var(--r-pill, 999px);font:600 12px/1.35 var(--sans);text-align:left;background:var(--card);border:1px solid var(--line);box-shadow:0 6px 22px #00000024;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.t2sess-shell .cue.goal{color:#fff;border-color:transparent;background:color-mix(in oklab,var(--mode-learning) 92%,transparent)}.t2sess-shell .cue.bounce{color:#fff;border-color:transparent;background:color-mix(in oklab,var(--mode-new) 92%,transparent)}.t2sess-shell .cue.curiosity{color:var(--ink);border-color:color-mix(in oklab,var(--warn) 35%,transparent);background:color-mix(in oklab,var(--warn) 16%,var(--card))}.t2sess-shell .cue .icon{font-size:16px;line-height:1}.t2sess-shell .cue .body{flex:1}.t2sess-shell .cue .body .sub{font:400 11px/1.4 var(--sans);opacity:.85;margin-top:2px}.t2sess-shell .milestone{display:flex;align-items:center;gap:12px;max-width:360px;padding:11px 18px 11px 15px;border-radius:14px;color:#fff;border:1px solid rgba(255,255,255,.3);box-shadow:0 10px 32px #00000040;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.t2sess-shell .milestone.solid{background:linear-gradient(135deg,color-mix(in oklch,var(--accent) 95%,#000),color-mix(in oklch,var(--accent) 78%,#fff))}.t2sess-shell .milestone.strong{background:linear-gradient(135deg,color-mix(in oklch,var(--warn) 95%,#000),color-mix(in oklch,var(--warn) 80%,#fff))}.t2sess-shell .milestone.deep{background:linear-gradient(135deg,#8b4ec4,#b14dae,#d84497)}.t2sess-shell .milestone .icon{font-size:28px;line-height:1;filter:drop-shadow(0 0 8px rgba(255,255,255,.55))}.t2sess-shell .milestone .text .title{font:800 14px/1.15 var(--sans)}.t2sess-shell .milestone .text .sub{font:500 12px/1.35 var(--sans);opacity:.92;margin-top:2px}.t2sess-shell .err-banner{margin-bottom:12px;padding:10px 14px;border-radius:var(--r-md);background:color-mix(in oklab,var(--bad) 8%,var(--card));border:1px solid color-mix(in oklab,var(--bad) 35%,transparent);color:var(--bad);font:500 12px/1.4 var(--sans)}.t2sess-shell .mobile-preboard{display:none}@media (max-width: 880px){.t2sess-shell .mobile-preboard{display:block;min-height:var(--preboard-min-h, 0px);margin-bottom:0;transition:min-height .22s var(--ease, cubic-bezier(.4, 0, .2, 1))}.t2sess-shell .mobile-preboard:not(:empty){margin-bottom:6px}.t2sess-shell .mobile-preboard>*{animation:t2PreBoardIn .22s var(--ease-out, cubic-bezier(0, 0, .2, 1)) both}@keyframes t2PreBoardIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.t2sess-shell .mobile-preboard,.t2sess-shell .mobile-preboard>*{transition:none;animation:none}}.t2sess-shell .board-area:has(.mobile-preboard:not(:empty)) .board-meta{display:none}}.t2sess-shell .q2-card{padding:14px 16px;background:color-mix(in oklab,var(--accent) 5%,var(--card));border:1px solid color-mix(in oklab,var(--accent) 25%,transparent);border-radius:var(--r-md);box-shadow:var(--elev-2)}@media (max-width: 880px){.t2sess-shell .q2-card{max-height:42dvh;overflow-y:auto;padding:10px 12px;-webkit-overflow-scrolling:touch}.t2sess-shell .q2-prompt{font-size:14px}.t2sess-shell .q2-option{padding:9px 12px;font-size:13px}.t2sess-shell .q2-option-letter{width:20px;height:20px}.t2sess-shell .q2-multiselect-opt{padding:9px 12px;font-size:13px}}@media (max-width: 880px) and (max-height: 720px){.t2sess-shell .q2-card{max-height:35dvh;padding:8px 10px}.t2sess-shell .q2-inner{gap:8px}.t2sess-shell .q2-prompt{font-size:13px;line-height:1.35}.t2sess-shell .q2-option{padding:8px 10px;font-size:12px}.t2sess-shell .q2-continue{padding:8px 18px;font-size:13px}}.t2sess-shell .q2-overlay-card{padding:24px 28px;background:#10171ef0;border:1px solid color-mix(in oklab,var(--accent) 40%,transparent);border-radius:var(--r-lg);box-shadow:0 8px 32px #0006;max-width:92%;width:100%}.t2sess-shell .q2-inner{text-align:center;display:flex;flex-direction:column;gap:10px}.t2sess-shell .q2-followup{font:600 11px/1 var(--sans);letter-spacing:1.6px;text-transform:uppercase;color:var(--muted2)}.t2sess-shell .q2-inner.quiz .q2-followup{color:#fff6}.t2sess-shell .q2-prompt{font:700 15px/1.4 var(--sans);color:var(--text)}.t2sess-shell .q2-inner.quiz .q2-prompt{font-size:18px;color:#fff}.t2sess-shell .q2-prompt.answered{margin-bottom:2px}.t2sess-shell .q2-yesno{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.t2sess-shell .q2-yesno button{min-width:88px;padding:8px 24px}.t2sess-shell .q2-options{display:flex;flex-direction:column;gap:8px}.t2sess-shell .q2-option{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 14px;font:500 14px/1.3 var(--sans);background:color-mix(in oklab,var(--accent) 4%,var(--card));color:var(--text);border:1px solid color-mix(in oklab,var(--accent) 18%,transparent);border-radius:var(--r-sm);cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .08s ease}@media (hover: hover){.t2sess-shell .q2-option:hover{background:color-mix(in oklab,var(--accent) 10%,var(--card));border-color:color-mix(in oklab,var(--accent) 35%,transparent)}}.t2sess-shell .q2-option:active{transform:scale(.98)}.t2sess-shell .q2-option-letter{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:color-mix(in oklab,var(--accent) 12%,transparent);font:700 12px/1 var(--sans);color:var(--accent);flex-shrink:0}.t2sess-shell .q2-overlay-card .q2-option{background:#ffffff1a;color:#fff;border-color:#fff3}@media (hover: hover){.t2sess-shell .q2-overlay-card .q2-option:hover{background:#ffffff2e;border-color:#ffffff59}}.t2sess-shell .q2-overlay-card .q2-option-letter{background:#ffffff2e;color:#fff}.t2sess-shell .q2-multiselect{display:flex;flex-direction:column;gap:8px}.t2sess-shell .q2-multiselect-head{font:600 11px/1 var(--sans);letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.t2sess-shell .q2-multiselect.quiz .q2-multiselect-head{color:#ffffff80}.t2sess-shell .q2-multiselect-opt{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 14px;font:500 14px/1.3 var(--sans);background:color-mix(in oklab,var(--accent) 4%,var(--card));color:var(--text);border:1px solid color-mix(in oklab,var(--accent) 18%,transparent);border-radius:var(--r-sm);cursor:pointer}.t2sess-shell .q2-multiselect-opt.on{background:color-mix(in oklab,var(--accent) 14%,var(--card));border-color:var(--accent)}.t2sess-shell .q2-multiselect-letter{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:color-mix(in oklab,var(--accent) 12%,transparent);font:700 12px/1 var(--sans);color:var(--accent);flex-shrink:0}.t2sess-shell .q2-multiselect.quiz .q2-multiselect-opt{background:#ffffff1a;color:#fff;border-color:#fff3}.t2sess-shell .q2-multiselect.quiz .q2-multiselect-opt.on{background:#ffffff47;border-color:var(--accent)}.t2sess-shell .q2-freetext{display:flex;flex-direction:column;gap:8px}.t2sess-shell .q2-freetext input{padding:10px 14px;font:600 16px/1 var(--sans);letter-spacing:.04em;text-align:center;background:var(--bg1, var(--card));color:var(--text);border:1px solid var(--border, color-mix(in oklab, var(--accent) 18%, transparent));border-radius:var(--r-sm);outline:none}.t2sess-shell .q2-freetext input:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in oklab,var(--accent) 25%,transparent)}.t2sess-shell .q2-freetext.quiz input{background:#ffffff1f;color:#fff;border-color:#ffffff40}.t2sess-shell .q2-submit{padding:8px 24px;font:600 14px/1 var(--sans);background:var(--accent);color:#fff;border:none;border-radius:var(--r-sm);cursor:pointer;width:100%}.t2sess-shell .q2-submit:disabled{opacity:.5;cursor:not-allowed}.t2sess-shell .q2-result{font:700 14px/1.3 var(--sans);display:flex;justify-content:center;align-items:baseline;flex-wrap:wrap;column-gap:6px;row-gap:2px}.t2sess-shell .q2-verdict.good{color:var(--good)}.t2sess-shell .q2-verdict.bad{color:var(--bad)}.t2sess-shell .q2-dot{color:var(--muted2);font-weight:400}.t2sess-shell .q2-answer{color:var(--text);font-weight:600}.t2sess-shell .q2-overlay-card .q2-answer{color:#ffffffe6}.t2sess-shell .q2-overlay-card .q2-dot{color:#ffffff59}.t2sess-shell .q2-explanation{font:400 14px/1.45 var(--sans);color:var(--text);text-align:left}.t2sess-shell .q2-explanation.correct{font-style:italic}.t2sess-shell .q2-overlay-card .q2-explanation{color:#ffffffbf}.t2sess-shell .q2-continue{margin-top:6px;padding:10px 24px;font:700 15px/1 var(--sans);background:var(--accent);color:#fff;border:none;border-radius:var(--r-sm);cursor:pointer;width:100%}.t2sess-shell .q2-continue:hover{filter:brightness(1.05)}.t2sess-shell .q2-continue:active{transform:scale(.99)}.t2sess-shell .overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;background:#070e15b8;border-radius:var(--r-lg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:16px}.t2sess-shell .overlay-card{text-align:center;color:#fff;padding:28px 36px;background:#10171ef0;border-radius:var(--r-lg);border:1px solid color-mix(in oklab,var(--accent) 40%,transparent);box-shadow:0 8px 32px #0006;max-width:92%}.t2sess-shell .overlay-card .eyebrow{font:600 11px/1 var(--sans);letter-spacing:1.6px;text-transform:uppercase;color:color-mix(in oklab,var(--accent) 70%,white);margin-bottom:14px}.t2sess-shell .overlay-card .title{font:700 22px/1.2 var(--sans);margin-bottom:8px}.t2sess-shell .overlay-card .body{font:400 14px/1.6 var(--sans);color:#ffffffd9;margin-bottom:18px;text-align:left}.t2sess-shell .overlay-card .actions{display:flex;gap:8px;justify-content:center;margin-top:16px}.t2sess-shell .overlay-card .skip{font:500 12px/1 var(--sans);color:#ffffff80;background:none;border:none;cursor:pointer;margin-top:12px;text-decoration:underline}.t2sess-shell .overlay-card .skip:hover{color:#fffc}.t2sess-shell .overlay-banner{text-align:center;color:#fff;padding:24px 32px;background:#10171ee0;border-radius:var(--r-lg);border:1px solid color-mix(in oklab,var(--accent) 30%,transparent)}.t2sess-shell .overlay-banner .eyebrow{font:600 10px/1 var(--sans);letter-spacing:1.6px;text-transform:uppercase;color:#ffffff73;margin-bottom:10px}.t2sess-shell .overlay-banner .title{font:700 20px/1.2 var(--sans)}.t2sess-shell .overlay-banner .sub{font:400 13px/1.4 var(--sans);color:#fff9;margin-top:6px}.t2sess-shell .overlay-master{background:color-mix(in oklab,oklch(.18 .05 250) 95%,var(--card));color:#ffffffeb;padding:28px 36px;border-radius:var(--r-lg);border:1px solid color-mix(in oklab,var(--accent) 30%,transparent);box-shadow:0 16px 50px #0006;text-align:center;min-width:320px;max-width:480px;display:flex;flex-direction:column;gap:6px;align-items:center}.t2sess-shell .overlay-master .level{font:600 12px/1 var(--sans);color:var(--good);margin-bottom:8px}.t2sess-shell .overlay-master .eyebrow{font:700 12px/1 var(--sans);text-transform:uppercase;letter-spacing:.12em;color:color-mix(in oklab,var(--accent) 80%,white);margin-bottom:8px}.t2sess-shell .overlay-master .player{font:700 22px/1.2 var(--serif);color:#fffffff2}.t2sess-shell .overlay-master .vs{font:400 13px/1 var(--sans);color:#ffffff80;margin:4px 0}.t2sess-shell .overlay-master .event,.t2sess-shell .overlay-master .year,.t2sess-shell .overlay-master .meta,.t2sess-shell .overlay-master .collection{font:400 12px/1.4 var(--sans);color:#ffffff8c;font-style:italic}.t2sess-shell .overlay-master .matchup{font:600 16px/1.3 var(--sans);color:#fffffff2;margin:10px 0}.t2sess-shell .overlay-master .matchup strong{font-weight:700}.t2sess-shell .overlay-master .actions{display:flex;gap:12px;justify-content:center;margin-top:18px}.t2sess-shell .overlay-master .actions .btn-secondary{color:#ffffffe0;border-color:#ffffff38;background:#ffffff0a}@media (hover: hover){.t2sess-shell .overlay-master .actions .btn-secondary:hover{background:#ffffff1a;border-color:#ffffff61;color:#fff}}.t2sess-shell .overlay-master.result .result-big{font:800 32px/1 var(--mono);margin:8px 0}.t2sess-shell .overlay-master.result .players{font:500 14px/1.3 var(--sans);color:#fff9}@media (max-width: 880px){.t2sess-shell .action-bar{min-height:32px;padding:0;gap:6px;background:transparent;border:none;border-radius:0}.t2sess-shell .action-bar .btn-secondary,.t2sess-shell .action-bar .btn-primary{padding:3px 9px;font-size:11px;line-height:1;min-height:24px;flex:0 0 auto;min-width:0;border-radius:5px}.t2sess-shell .action-bar .btn-icon,.t2sess-shell .action-bar .menu,.t2sess-shell .action-bar .scrub-btn{flex:0 0 auto;width:24px;height:24px;min-width:24px;padding:0;font-size:12px;border-radius:5px}.t2sess-shell .action-bar .act-pos-mob{font-family:var(--mono);letter-spacing:0}.t2sess-shell .action-bar .t2-act-secondary-row,.t2sess-shell .side-rail .test-counter{display:none}.t2sess-shell .mobile-postboard-footer{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.t2sess-shell .t2-mob-recall{display:inline-flex;align-items:center;gap:5px;font:500 11px/1 var(--sans);color:var(--ink-2)}.t2sess-shell .t2-mob-recall:before{content:"";width:7px;height:7px;border-radius:2px;background:var(--mode-learning)}.t2sess-shell .t2-mob-recall .lbl{color:var(--ink-3)}.t2sess-shell .t2-mob-recall strong{color:var(--ink);font-weight:600;font-family:var(--mono)}}.t2-mob-theme-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f19328c;z-index:200;display:flex;align-items:flex-end;justify-content:center}.t2-mob-theme-panel{width:100%;max-width:480px;max-height:80vh;overflow-y:auto;background:var(--card);color:var(--ink);border-top-left-radius:16px;border-top-right-radius:16px;padding:16px;box-shadow:0 -8px 32px #00000040;font:14px/1.5 var(--sans)}.t2-mob-theme-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.t2-mob-theme-head h3{margin:0;font:600 14px/1.2 var(--sans);letter-spacing:.6px;text-transform:uppercase;color:var(--ink)}.t2-mob-theme-close{width:28px;height:28px;border:1px solid var(--line);background:transparent;border-radius:6px;font-size:18px;color:var(--ink-3);cursor:pointer}.t2-mob-theme-section{margin-bottom:14px}.t2-mob-theme-section:last-child{margin-bottom:0}.t2-mob-theme-label{font:500 11px/1 var(--sans);letter-spacing:.8px;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.t2-mob-theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.t2-mob-theme-grid .swatch{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;border:1px solid var(--line);border-radius:8px;background:transparent;cursor:pointer}.t2-mob-theme-grid .swatch.active{border-color:var(--accent);background:var(--accent-bg)}.t2-mob-theme-grid .swatch .chip{display:block;width:100%;height:30px;border-radius:4px;border:1px solid var(--line)}.t2-mob-theme-grid .swatch .lbl{font:500 10.5px/1.2 var(--sans);color:var(--ink-2);text-align:center}.t2-mob-theme-grid .swatch.active .lbl{color:var(--accent);font-weight:600}.t2-mob-theme-app{display:flex;gap:8px}.t2-mob-theme-app .app-opt{flex:1;padding:10px;border:1px solid var(--line);background:transparent;border-radius:6px;font:500 13px/1 var(--sans);color:var(--ink-2);cursor:pointer}.t2-mob-theme-app .app-opt.active{border-color:var(--accent);background:var(--accent-bg);color:var(--accent);font-weight:600}@media (max-width: 880px){.t2sess-shell .board-meta .board-theme-trigger{display:none}.t2sess-shell .curiosity-banner{padding:6px 11px;font-size:12px;min-height:30px;margin-bottom:4px}.t2sess-shell .curiosity-banner.empty{min-height:30px;margin-bottom:4px}.t2sess-shell .session-top{margin-bottom:6px;gap:6px;min-height:28px}.t2sess-shell .session-top.is-empty{min-height:28px}.t2sess-shell .session-focus,.t2sess-shell .top-game-pill{padding:6px 12px;font-size:12px;min-height:26px}.t2sess-shell .session-grid{gap:6px!important}.t2sess-shell .board-meta{padding:0 2px;min-height:26px}.t2sess-shell .t2-mob-movelist{display:flex;align-items:center;gap:5px;margin-top:5px;min-height:26px}.t2sess-shell .t2-mob-movelist>.btn-icon{flex:0 0 auto;width:26px;height:26px;min-width:26px;padding:0;font-size:13px;border-radius:5px}.t2sess-shell .t2-mob-moves{flex:1 1 auto;display:flex;align-items:center;gap:2px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;padding:2px 4px;background:var(--bg-soft);border:1px solid var(--line);border-radius:5px;min-width:0;min-height:24px}.t2sess-shell .t2-mob-moves::-webkit-scrollbar{display:none}.t2sess-shell .t2-mob-mv{flex:0 0 auto;display:inline-flex;align-items:baseline;gap:2px;padding:2px 5px;border:none;background:transparent;color:var(--ink-2);font:500 11.5px/1 var(--mono);border-radius:3px;cursor:pointer;white-space:nowrap}.t2sess-shell .t2-mob-mv .mn{color:var(--ink-4);font-size:10px}.t2sess-shell .t2-mob-mv.active{background:var(--accent);color:var(--accent-fg)}.t2sess-shell .t2-mob-mv.active .mn{color:var(--accent-fg);opacity:.7}.t2sess-shell .t2-mob-mv.placeholder .san{color:var(--ink-4);font-style:italic}.t2sess-shell .t2-mob-mv.placeholder.active .san{color:var(--accent-fg)}.t2sess-shell .side-rail .position-stats-trigger{display:none}.t2sess-shell .session-footer{margin-top:0;padding:0;background:transparent;border:none;border-radius:0}.t2sess-shell .session-footer .progress-row,.t2sess-shell .session-footer .progress-bar,.t2sess-shell .session-footer .streak-pill,.t2sess-shell .session-footer .kbd-hints,.t2sess-shell .rail-footer-slot{display:none}.t2sess-shell .mobile-postboard-footer{margin-top:6px;margin-bottom:6px}}body.session-handoff-mobile{--bg: var(--bg0);--paper: var(--card);--paper-2: var(--card2);--paper-3: var(--bg2);--ss-ink: var(--text);--ss-ink-2: var(--muted);--ss-ink-3: var(--muted2);--ss-ink-4: var(--muted2);--ss-rule: var(--border);--ss-rule-2: var(--border2);--cta-bg: var(--accent);--cta-fg: oklch(.99 .012 60);--cta-line: var(--accent2);--cta-hover: var(--accent2);--cta-shadow-inset: var(--accent2);--sq-light: oklch(.92 .045 82);--sq-dark: oklch(.6 .078 48);--sq-hint: oklch(.88 .13 88);--sq-good: oklch(.78 .16 142);--sq-bad: oklch(.7 .18 30);--board-ring: rgba(0,0,0,.04);--piece-dark: oklch(.2 .02 50);--piece-light: #faf3e7;--piece-light-shadow: rgba(0,0,0,.55);--cat-theory: oklch(.53 .175 278);--cat-mistakes: oklch(.55 .205 24);--cat-inaccuracy: oklch(.58 .115 110);--cat-tactics: oklch(.7 .165 72);--cat-endgames: oklch(.57 .13 198);--cat-good: oklch(.59 .15 156);--cat-games: oklch(.62 .155 52);--cat-coach: oklch(.6 .2 2);--cat-master: oklch(.55 .225 306);--cat-defense: oklch(.55 .165 250);--cat-master-soft: oklch(.97 .05 306);--cat-defense-soft: oklch(.97 .04 250);--ss-dot-review: var(--cat-mistakes);--ss-dot-new: var(--cat-good);--ss-dot-drill: var(--cat-theory);--cat-theory-soft: oklch(.97 .03 278);--cat-mistakes-soft: oklch(.97 .03 24);--cat-inaccuracy-soft: oklch(.97 .035 110);--cat-tactics-soft: oklch(.97 .045 72);--cat-endgames-soft: oklch(.97 .035 198);--cat-good-soft: oklch(.97 .035 156);--cat-games-soft: oklch(.97 .04 52);--cat-coach-soft: oklch(.97 .04 2);--cat-on: oklch(.99 0 0);--hint-bg: color-mix(in srgb, var(--warn) 16%, var(--card));--hint-line: var(--warn);--hint-fg: var(--warn);--hint-emph: var(--warn);--correct-bg: color-mix(in srgb, var(--good) 16%, var(--card));--correct-line: var(--good);--correct-fg: var(--good);--correct-cta: var(--good);--correct-cta-2: var(--good);--wrong-bg: color-mix(in srgb, var(--bad) 16%, var(--card));--wrong-line: var(--bad);--wrong-fg: var(--bad);--wrong-cta: var(--bad);--wrong-cta-2: var(--bad);--eval-pos-fg: var(--good);--eval-pos-bg: color-mix(in srgb, var(--good) 16%, var(--card));--eval-neg-fg: var(--bad);--eval-neg-bg: color-mix(in srgb, var(--bad) 16%, var(--card));--reveal-bg: color-mix(in srgb, var(--good) 16%, var(--card));--reveal-line: var(--good);--reveal-fg: var(--good);--reveal-emph: var(--good);--reveal-mute: var(--muted);--reveal-dot: var(--good);--reveal-glow: color-mix(in srgb, var(--good) 50%, transparent);--reveal-ring: color-mix(in srgb, var(--good) 40%, transparent);--answer-best: var(--good);--answer-best-fg: var(--good);--answer-alt: var(--muted);--answer-played: var(--bad);--answer-played-fg: var(--bad);--answer-you-played: var(--bad);--ss-serif: var(--font-serif);--ss-sans: var(--font-sans);--ss-mono: var(--font-mono);--shadow-card: var(--shadow);--shadow-sheet: var(--shadow);--cta-paper-inset: color-mix(in srgb, var(--accent) 16%, var(--card))}html[data-mode=dark][data-dark-palette=refined] body.session-handoff-mobile,html[data-dark-palette=refined] body.session-handoff-mobile[data-v3theme=dark],html[data-dark-palette=refined] body.session-handoff-mobile .ss[data-v3theme=dark]{--cat-theory: oklch(.78 .13 280);--cat-theory-soft: oklch(.27 .05 280);--cat-mistakes: oklch(.74 .15 25);--cat-mistakes-soft: oklch(.27 .05 25);--cat-games: oklch(.8 .13 55);--cat-games-soft: oklch(.28 .05 55);--cat-tactics: oklch(.85 .14 85);--cat-tactics-soft: oklch(.29 .05 85);--cat-good: oklch(.8 .13 150);--cat-good-soft: oklch(.27 .04 150);--cat-endgames: oklch(.8 .1 210);--cat-endgames-soft: oklch(.27 .04 210)}html[data-mode=dark][data-dark-palette=aurora] body.session-handoff-mobile,html[data-dark-palette=aurora] body.session-handoff-mobile[data-v3theme=dark],html[data-dark-palette=aurora] body.session-handoff-mobile .ss[data-v3theme=dark]{--cat-theory: oklch(.74 .18 275);--cat-theory-soft: oklch(.27 .07 275);--cat-mistakes: oklch(.72 .18 18);--cat-mistakes-soft: oklch(.27 .07 18);--cat-games: oklch(.8 .16 55);--cat-games-soft: oklch(.28 .06 55);--cat-tactics: oklch(.86 .16 90);--cat-tactics-soft: oklch(.29 .06 90);--cat-good: oklch(.82 .16 155);--cat-good-soft: oklch(.28 .06 155);--cat-endgames: oklch(.8 .13 215);--cat-endgames-soft: oklch(.28 .05 215)}body.session-handoff-mobile .topbar,body.session-handoff-mobile .mobile-bottom-nav,body.session-handoff-mobile .container>.topbar-inner,body.session-handoff-mobile .trainerHeader{display:none!important}body.session-handoff-mobile,body.session-handoff-mobile #root,body.session-handoff-mobile .container{background:var(--bg);margin:0;padding:0;max-width:none}html:has(body.session-handoff-mobile){scrollbar-gutter:auto}.ss *{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ss{border:0!important;margin:0;padding:0;position:relative;width:100%;min-height:100vh;background:var(--bg);font-family:var(--ss-sans);color:var(--ss-ink);font-size:14px;display:flex;flex-direction:column;overflow:hidden}.ss__top-spacer{height:0;flex:none}.ss__context{flex:0 0 128px;min-height:0;margin:0;border-radius:0;background:var(--paper);border:0;border-bottom:var(--bd-w) solid var(--ss-rule);position:relative;display:grid;grid-template-rows:auto auto 1fr;padding:16px 14px 12px;overflow:hidden}.ss__context:before{content:"";position:absolute;top:0;left:0;right:0;width:100%;height:2.5px;background:var(--cat-active);border-radius:0}.ss__context-row1{display:flex;align-items:center;gap:8px;font-size:11px}.ss__badge{display:inline-flex;align-items:center;height:20px;padding:0 9px;border-radius:999px;border:var(--bd-w) solid currentColor;color:var(--cat-active);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;flex:0 1 auto;min-width:0;max-width:62%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ss__badge-new{display:inline-flex;align-items:center;height:20px;padding:0 9px;border-radius:999px;font:700 9.5px/1 var(--ss-mono, "JetBrains Mono", monospace);letter-spacing:.13em;text-transform:uppercase;color:#412805;background:linear-gradient(100deg,#ebbd51,#dd9225);box-shadow:0 2px 8px -2px #dcb14980}.ss__badge--community{color:#738292}.ss__source{color:var(--ss-ink-3);font-size:11.5px;display:inline-flex;align-items:center;gap:6px;overflow:hidden;flex:1;min-width:0}.ss__source-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.ss__source-icon{flex:none;opacity:.5}.ss__source-seg.is-emph{color:var(--cat-active);font-weight:600}@media (max-width: 880px){.ss__badge-new{display:none}.ss__context-row1{gap:6px}.ss__badge{max-width:58%;padding:0 8px;font-size:10px;letter-spacing:.05em}.ss__source{font-size:11px;gap:5px}}.ss__prompt{font-family:var(--ss-serif);font-size:20px;line-height:1.15;letter-spacing:-.01em;color:var(--ss-ink);font-weight:500;margin:6px 0 8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;overflow-wrap:anywhere}.ss__prompt em{font-style:italic;color:var(--cat-active)}.ss__fact-row{display:flex;align-items:flex-start;gap:10px;overflow:hidden;align-self:start;flex-wrap:wrap}.ss__fact-pills{display:inline-flex;align-items:center;gap:8px;flex:none;margin-left:auto}.ss__fact{display:flex;align-items:flex-start;gap:6px;flex:1;min-width:0;font-size:11.5px;line-height:1.35;color:var(--ss-ink-2);font-style:italic;font-family:var(--ss-serif)}.ss__fact b{font-style:normal;font-weight:600;color:var(--ss-ink);font-family:var(--ss-sans);font-size:11px}.ss__fact-icon{flex:none;width:14px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:var(--cat-active);margin-top:1px}.ss__fact-icon svg{width:13px;height:13px}.ss__fact-text{flex:1;min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;text-overflow:ellipsis}.ss__fact-seg{font-style:normal;font-weight:600}.ss__fact-seg.is-good{color:#2f9c63}.ss__fact-seg.is-yellow{color:#c08a2a}.ss__fact-seg.is-accent{color:var(--cat-active)}.ss[data-v3theme=dark] .ss__fact-seg.is-good{color:#6fd49a}.ss[data-v3theme=dark] .ss__fact-seg.is-yellow{color:#e6a93c}.ss__eval-pill{flex:none;font-family:var(--ss-mono);font-size:11.5px;font-weight:600;padding:3px 8px;border-radius:calc(6px * var(--r-scale));background:var(--paper-2);letter-spacing:.02em}.ss__eval-pill.is-pos{color:var(--eval-pos-fg);background:var(--eval-pos-bg)}.ss__eval-pill.is-neg{color:var(--eval-neg-fg);background:var(--eval-neg-bg)}.ss__chips-row{display:flex;flex-wrap:nowrap;gap:5px;margin-top:6px;overflow:hidden;align-self:start;max-height:20px}.ss__fact-row[data-has-chips="1"] .ss__fact-text{-webkit-line-clamp:2}.ss__chip{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;font:600 10.5px var(--ss-sans, "Geist"),system-ui,sans-serif;line-height:1.2;letter-spacing:.02em;white-space:nowrap;flex:none;min-width:0}.ss__chip.is-good{background:color-mix(in oklab,#4caf7d 14%,transparent);color:#2f9c63}.ss__chip.is-yellow{background:color-mix(in oklab,#c08a2a 16%,transparent);color:#c08a2a}.ss__chip.is-accent{background:color-mix(in oklab,var(--cat-active) 14%,transparent);color:var(--cat-active)}.ss[data-v3theme=dark] .ss__chip.is-good{background:color-mix(in oklab,#6fd49a 18%,transparent);color:#6fd49a}.ss[data-v3theme=dark] .ss__chip.is-yellow{background:color-mix(in oklab,#e6a93c 18%,transparent);color:#e6a93c}.ss__board-wrap{flex:none;padding:0;position:relative}.ss__board-wrap[data-mode=theory]{--ss-mode-stripe: var(--cat-theory)}.ss__board-wrap[data-mode=mistakes]{--ss-mode-stripe: var(--cat-mistakes)}.ss__board-wrap[data-mode=tactics]{--ss-mode-stripe: var(--cat-tactics)}.ss__board-wrap[data-mode=endgames]{--ss-mode-stripe: var(--cat-endgames)}.ss__board-wrap[data-mode=good]{--ss-mode-stripe: var(--cat-good)}.ss__board-wrap[data-mode=games]{--ss-mode-stripe: var(--cat-games)}.ss__stab-flash{position:absolute;left:2px;top:0;bottom:0;width:3px;border-radius:calc(2px * var(--r-scale));background:transparent;box-shadow:none;pointer-events:none;z-index:3;animation:ss-stab-flash 1.4s ease-out forwards}@keyframes ss-stab-flash{0%,to{background:transparent;box-shadow:none}15%{background:#00bd6c;background:oklch(.7 .18 155);box-shadow:0 0 10px #00bd6cb3;box-shadow:0 0 10px oklch(.7 .18 155 / .7)}40%{background:transparent;box-shadow:0 0 6px #00bd6c59;box-shadow:0 0 6px oklch(.7 .18 155 / .35)}}.fsrs-tick{position:absolute;width:12.5%;height:12.5%;z-index:22;pointer-events:none}.fsrs-tick[data-h=mid]{--tick-tx: -50%}.fsrs-tick[data-h=left],.fsrs-tick[data-h=right]{--tick-tx: 0px}.fsrs-tick__chip{position:absolute;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;transform:translate(var(--tick-tx, 0px))}.fsrs-tick[data-v=above] .fsrs-tick__chip{bottom:calc(100% + 4px)}.fsrs-tick[data-h=mid] .fsrs-tick__chip{left:50%}.fsrs-tick[data-h=left] .fsrs-tick__chip{left:-2px}.fsrs-tick[data-h=right] .fsrs-tick__chip{right:-2px}.fsrs-tick[data-v=side]{--tick-tx: 0px}.fsrs-tick[data-v=side][data-h=left] .fsrs-tick__chip{right:calc(100% + 6px);left:auto;top:-2px}.fsrs-tick[data-v=side][data-h=right] .fsrs-tick__chip{left:calc(100% + 6px);right:auto;top:-2px}@media (pointer: coarse){.fsrs-tick[data-v=above] .fsrs-tick__chip{bottom:calc(100% + 14px)}}.fsrs-tick{--tick-fs: 11px}@media (min-width: 1000px){.fsrs-tick{--tick-fs: 13px}}.fsrs-tick__halo{position:absolute;top:0;right:0;bottom:0;left:0}.fsrs-tick[data-anchor=corner]{left:12px;top:8px;width:0;height:0}.fsrs-tick[data-anchor=corner] .fsrs-tick__halo{display:none}.fsrs-tick[data-anchor=corner] .fsrs-tick__chip{top:0;bottom:auto;left:0;right:auto;--tick-tx: 0px}.fsrs-tick__chip{padding:5px 10px;border-radius:999px;background:#e5fceaf7;color:#005729;color:oklch(.4 .13 152);font:700 var(--tick-fs, 11px) var(--ss-mono, "JetBrains Mono", ui-monospace, monospace);box-shadow:0 4px 14px #0000001f,0 0 0 1px #005d2d47;box-shadow:0 4px 14px #0000001f,0 0 0 1px oklch(.42 .14 152 / .28);animation:fsrs-tick-float 1.6s ease-out forwards}.fsrs-tick__up{font-weight:800}.fsrs-tick__before{opacity:.55}.fsrs-tick__arrow{opacity:.7}.fsrs-tick__after{font-weight:800}html[data-mode=dark] .fsrs-tick__chip{background:#112d1af5;color:#6ee895}.fsrs-tick__halo{border-radius:18%;background:radial-gradient(circle,oklch(.72 .17 152 / .35) 0%,transparent 72%);box-shadow:inset 0 0 0 2px #0ea0538c;animation:fsrs-halo-bloom 1.1s ease-out forwards}@keyframes fsrs-tick-float{0%{opacity:0;transform:translate(var(--tick-tx, 0px),7px) scale(.92)}12%{opacity:1;transform:translate(var(--tick-tx, 0px)) scale(1)}72%{opacity:1;transform:translate(var(--tick-tx, 0px),-3px) scale(1)}to{opacity:0;transform:translate(var(--tick-tx, 0px),-13px) scale(.97)}}@keyframes fsrs-halo-bloom{0%{opacity:0;transform:scale(.55)}25%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}html[data-theme=brutal] .fsrs-tick__chip{padding:4px 8px;border-radius:0;background:#c6f600;color:#0d0d0c;border:2px solid var(--border, #0d0d0c);box-shadow:3px 3px 0 0 var(--border, #0d0d0c);font:800 var(--tick-fs, 11px) var(--font-mono, "JetBrains Mono", ui-monospace, monospace);text-transform:uppercase;letter-spacing:.02em;animation:fsrs-tick-stamp 1.6s linear forwards}html[data-theme=brutal] .fsrs-tick__up{display:none}html[data-theme=brutal] .fsrs-tick__before{opacity:1;text-decoration:line-through;text-decoration-thickness:2px}html[data-theme=brutal] .fsrs-tick__arrow{color:#e64a18;opacity:1}html[data-theme=brutal] .fsrs-tick__halo{border-radius:0;background:transparent;box-shadow:inset 0 0 0 3px #c6f600,inset 0 0 0 5px #0d0d0c;animation:fsrs-halo-strobe .9s steps(1,end) forwards}@keyframes fsrs-tick-stamp{0%{opacity:0;transform:translate(var(--tick-tx, 0px)) scale(1.6) rotate(-5deg)}6%{opacity:1;transform:translate(var(--tick-tx, 0px)) scale(.95) rotate(-2deg)}10%{transform:translate(var(--tick-tx, 0px)) scale(1.05) rotate(-2deg)}14%,80%{opacity:1;transform:translate(var(--tick-tx, 0px)) scale(1) rotate(-2deg)}81%,to{opacity:0;transform:translate(var(--tick-tx, 0px)) scale(1) rotate(-2deg)}}@keyframes fsrs-halo-strobe{0%{opacity:1}25%{opacity:0}40%{opacity:1}70%,to{opacity:0}}html[data-theme=swiss] .fsrs-tick__chip{padding:4px 9px;border-radius:0;background:#fff;color:#0b0d12;border:1px solid #14171d;box-shadow:none;font:700 var(--tick-fs, 11px) var(--font-display, "Inter Tight", "Inter", system-ui, sans-serif);text-transform:uppercase;letter-spacing:.08em;animation:fsrs-tick-rise-swiss 1.6s cubic-bezier(.22,1,.36,1) forwards}html[data-theme=swiss][data-mode=dark] .fsrs-tick__chip{background:var(--card, #14171d);color:var(--text, #f2f3f5);border-color:var(--border2, #4a4f58)}html[data-theme=swiss] .fsrs-tick__up{display:none}html[data-theme=swiss] .fsrs-tick__before{opacity:.45}html[data-theme=swiss] .fsrs-tick__arrow{color:#0533f3;opacity:1}html[data-theme=swiss] .fsrs-tick__chip:after{content:"";position:absolute;left:-1px;right:-1px;bottom:-1px;height:2px;background:#0533f3;transform-origin:left center;animation:fsrs-rule-draw .45s cubic-bezier(.22,1,.36,1) .12s backwards}html[data-theme=swiss] .fsrs-tick__halo{--tick-mark: #0533f3;border-radius:0;background:linear-gradient(var(--tick-mark),var(--tick-mark)) top left / 24% 2px,linear-gradient(var(--tick-mark),var(--tick-mark)) top left / 2px 24%,linear-gradient(var(--tick-mark),var(--tick-mark)) top right / 24% 2px,linear-gradient(var(--tick-mark),var(--tick-mark)) top right / 2px 24%,linear-gradient(var(--tick-mark),var(--tick-mark)) bottom left / 24% 2px,linear-gradient(var(--tick-mark),var(--tick-mark)) bottom left / 2px 24%,linear-gradient(var(--tick-mark),var(--tick-mark)) bottom right / 24% 2px,linear-gradient(var(--tick-mark),var(--tick-mark)) bottom right / 2px 24%;background-repeat:no-repeat;box-shadow:none;animation:fsrs-halo-register 1s cubic-bezier(.22,1,.36,1) forwards}@keyframes fsrs-tick-rise-swiss{0%{opacity:0;transform:translate(var(--tick-tx, 0px),6px)}14%{opacity:1;transform:translate(var(--tick-tx, 0px))}78%{opacity:1;transform:translate(var(--tick-tx, 0px))}to{opacity:0;transform:translate(var(--tick-tx, 0px))}}@keyframes fsrs-rule-draw{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes fsrs-halo-register{0%{opacity:0;transform:scale(1.25)}20%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1)}}.fsrs-tick__tier{font-weight:900;letter-spacing:.06em;text-transform:uppercase}.fsrs-tick__burst{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.fsrs-tick__ray{position:absolute;left:50%;top:50%;opacity:0}.fsrs-tick[data-tier=solid] .fsrs-tick__burst{display:none}.fsrs-tick[data-tier=strong] .fsrs-tick__ray:nth-child(2n){display:none}.fsrs-tick__tier{color:#005729;color:oklch(.4 .13 152)}.fsrs-tick__ray{width:6px;height:6px;border-radius:50%;background:#0ea053;animation:fsrs-ray-classic 1.5s ease-out forwards}.fsrs-tick[data-tier=deep] .fsrs-tick__ray{width:7px;height:7px;background:#d2a408}.fsrs-tick[data-tier=deep] .fsrs-tick__halo{box-shadow:inset 0 0 0 2px #0ea05399,0 0 26px 7px #d2a40880}@keyframes fsrs-ray-classic{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-4px)}22%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-42px)}}html[data-theme=brutal] .fsrs-tick__tier{background:#0d0d0c;color:#c6f600;padding:0 4px;margin-right:2px}html[data-theme=brutal] .fsrs-tick__ray{width:0;height:0;border-radius:0;background:transparent;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:13px solid #c6f600;animation:fsrs-ray-brutal 1.6s steps(1,end) forwards}html[data-theme=brutal] .fsrs-tick[data-tier=deep] .fsrs-tick__halo{box-shadow:inset 0 0 0 4px #c6f600,inset 0 0 0 7px #0d0d0c;animation:fsrs-halo-strobe 1.2s steps(1,end) forwards}@keyframes fsrs-ray-brutal{0%,8%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-2px)}16%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-22px)}84%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-46px)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-52px)}}html[data-theme=swiss] .fsrs-tick__tier{background:#0533f3;color:#fff;padding:0 4px;margin-right:2px}html[data-theme=swiss] .fsrs-tick__ray{width:3px;height:22px;border-radius:0;background:#0533f3;animation:fsrs-ray-swiss 1.6s cubic-bezier(.22,1,.36,1) forwards}html[data-theme=swiss] .fsrs-tick[data-tier=deep] .fsrs-tick__ray{width:3.5px;height:27px}html[data-theme=swiss] .fsrs-tick[data-tier=deep] .fsrs-tick__halo{box-shadow:inset 0 0 0 1.5px #0533f3}@keyframes fsrs-ray-swiss{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(0) scaleY(.3)}35%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-20px) scaleY(1)}85%{opacity:1;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-20px) scaleY(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--a)) translateY(-28px)}}html[data-theme=brutal] .fsrs-tick[data-dir=held] .fsrs-tick__up,html[data-theme=brutal] .fsrs-tick[data-dir=down] .fsrs-tick__up,html[data-theme=swiss] .fsrs-tick[data-dir=held] .fsrs-tick__up,html[data-theme=swiss] .fsrs-tick[data-dir=down] .fsrs-tick__up{display:inline}.fsrs-tick[data-dir=down] .fsrs-tick__chip{background:#fff3e6f7;background:oklch(.97 .04 70 / .97);color:#7f4400;color:oklch(.45 .13 60);box-shadow:0 4px 14px #0000001f,0 0 0 1px #ae67004d;box-shadow:0 4px 14px #0000001f,0 0 0 1px oklch(.58 .14 65 / .3)}html[data-mode=dark] .fsrs-tick[data-dir=down] .fsrs-tick__chip{background:#3a230bf5;color:#fab45f}.fsrs-tick[data-dir=down] .fsrs-tick__halo{background:radial-gradient(circle,oklch(.72 .15 70 / .3) 0%,transparent 72%);box-shadow:inset 0 0 0 2px #c57d0080;box-shadow:inset 0 0 0 2px oklch(.65 .15 70 / .5)}html[data-theme=brutal] .fsrs-tick[data-dir=down] .fsrs-tick__chip{background:#e64a18;color:#fff}html[data-theme=brutal] .fsrs-tick[data-dir=down] .fsrs-tick__arrow{color:#0d0d0c}html[data-theme=brutal] .fsrs-tick[data-dir=down] .fsrs-tick__halo{box-shadow:inset 0 0 0 3px #e64a18,inset 0 0 0 5px #0d0d0c}html[data-theme=swiss] .fsrs-tick[data-dir=down] .fsrs-tick__arrow{color:#ff8a00}html[data-theme=swiss] .fsrs-tick[data-dir=down] .fsrs-tick__chip:after{background:#ff8a00}html[data-theme=swiss] .fsrs-tick[data-dir=down] .fsrs-tick__halo{--tick-mark: #ff8a00}@media (prefers-reduced-motion: reduce){.ss__stab-flash{animation:none;opacity:1;transform:none}.fsrs-tick__chip,.fsrs-tick__halo,html[data-theme=swiss] .fsrs-tick__chip:after{animation:none}.fsrs-tick__halo{opacity:0}.fsrs-tick__chip{opacity:1}}.ss__multimove-banner{flex:none;margin:0 14px 8px;padding:6px 12px;background:color-mix(in oklab,var(--cat-good, #4caf7d) 14%,var(--paper));border:var(--bd-w) solid color-mix(in oklab,var(--cat-good, #4caf7d) 40%,transparent);border-radius:calc(8px * var(--r-scale));color:#005126;color:oklch(.38 .14 152);font:600 12.5px/1.3 var(--ss-sans);text-align:center;letter-spacing:.01em}[data-mode=dark] .ss__multimove-banner{color:#67e18f}.ss__multimove-banner--persist{background:color-mix(in oklab,var(--cat-active, #3b7aff) 12%,var(--paper));border-color:color-mix(in oklab,var(--cat-active, #3b7aff) 38%,transparent);color:color-mix(in oklab,var(--cat-active, #3b7aff) 72%,var(--ink, #1a2240))}[data-mode=dark] .ss__multimove-banner--persist{color:color-mix(in oklab,var(--cat-active, #6ea0ff) 60%,#e8eefc)}.ss__board{position:relative;width:100%;aspect-ratio:1 / 1;border-radius:calc(8px * var(--r-scale));overflow:hidden;background:var(--sq-light);display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);font-family:DejaVu Sans,Segoe UI Symbol,"Apple Color Emoji","Noto Sans Symbols 2",sans-serif;-webkit-user-select:none;user-select:none;isolation:isolate;box-shadow:0 1px 2px var(--board-ring),0 0 0 1px var(--ss-rule);container-type:inline-size}.ss__sq{position:relative;display:flex;align-items:center;justify-content:center}.ss__sq.is-dark{background:var(--sq-dark)}.ss__sq.is-hint{background:var(--sq-hint)!important}.ss__sq.is-good{background:var(--sq-good)!important}.ss__sq.is-bad{background:var(--sq-bad)!important}.ss__sq-coord{position:absolute;font-size:7.5px;font-family:var(--ss-mono);font-weight:600;letter-spacing:.02em;color:var(--sq-dark);opacity:.65}.ss__sq.is-dark .ss__sq-coord{color:var(--sq-light)}.ss__sq-coord.is-rank{top:2px;left:3px}.ss__sq-coord.is-file{bottom:1px;right:3px}.ss__piece{font-size:clamp(20px,8.5cqi,36px);line-height:1;color:var(--piece-dark);text-shadow:0 1px 0 rgba(255,255,255,.15)}.ss__piece.is-white{color:var(--piece-light);text-shadow:0 0 1px var(--piece-light-shadow),0 1px 0 rgba(0,0,0,.25)}.ss__board-arrows{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.ss__board-eval{position:absolute;top:6px;right:8px;font-family:var(--ss-mono);font-size:11px;color:var(--eval-pos-fg);font-weight:600;z-index:2;text-shadow:0 1px 0 rgba(255,255,255,.4)}.ss__continuation-row{display:flex;justify-content:flex-end;margin-top:4px}.ss__continuation-pill{display:inline-flex;align-items:center;font-family:var(--ss-mono);font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--paper);border:var(--bd-w) solid var(--cat-active);color:var(--cat-active);white-space:nowrap;box-shadow:var(--elev-1)}.ss__continuation-pill .step{color:var(--ss-ink-2);margin-left:6px;font-family:var(--ss-mono)}.ss--bold .ss__continuation-pill{background:transparent;box-shadow:none}.ss--bold .ss__continuation-pill .step{color:var(--cat-active);opacity:.7}.ss__scrub{display:flex;align-items:stretch;gap:6px;margin-top:8px;margin-bottom:6px}.ss__scrub-arrow{flex:0 0 auto;width:32px;height:32px;display:inline-grid;place-items:center;border:var(--bd-w) solid var(--ss-rule);background:var(--paper);color:var(--ss-ink-2);border-radius:var(--r-sm, 8px);font:600 14px/1 var(--ss-sans);cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.ss__scrub-arrow:hover:not(:disabled){color:var(--cat-active);border-color:var(--cat-active)}.ss__scrub-arrow:disabled{opacity:.35;cursor:not-allowed}.ss__scrub-list{flex:1 1 auto;display:flex;flex-wrap:nowrap;align-items:center;gap:0 4px;padding:4px 6px;background:var(--paper-2);border:var(--bd-w) solid var(--ss-rule);border-radius:var(--r-sm, 8px);overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:none;-ms-overflow-style:none;min-width:0}.ss__scrub-list::-webkit-scrollbar{display:none}.ss__mvb{flex:0 0 auto;display:inline-flex;align-items:baseline;gap:2px;padding:3px 7px;border:none;background:transparent;color:var(--ss-ink-2);font:500 12px/1.05 var(--ss-mono);border-radius:calc(5px * var(--r-scale));cursor:pointer;white-space:nowrap;height:21px}.ss__mvb:hover:not(.is-active){background:#0000000a;color:var(--ss-ink)}[data-mode=dark] .ss__mvb:hover:not(.is-active){background:#ffffff0f}.ss__mvb-n{color:var(--ss-ink-3);font-size:10.5px}.ss__mvb.is-active{background:var(--cat-active);color:var(--cat-on)}.ss__mvb--theory{box-shadow:inset 0 -2px #3b7affd9}.ss__mvb--theory:not(.is-active){background:#3b7aff1a;color:var(--ss-ink)}.ss__mvb.is-active .ss__mvb-n{color:color-mix(in oklab,var(--cat-on) 75%,transparent)}.ss__mvb--here{border:var(--bd-w) dashed var(--cat-active);background:var(--cat-active-soft, transparent);margin-left:2px}.ss__mvb--here .ss__mvb-s{color:var(--cat-active);font-style:normal;font-weight:700}.ss__mvb--here.is-active{background:var(--cat-active-soft, var(--paper-3))}.ss__mvb--here.is-active .ss__mvb-s{color:var(--cat-active)}.ss__board-captured{position:absolute;top:4px;left:8px;font-size:13px;color:var(--piece-dark);font-family:DejaVu Sans,Segoe UI Symbol,sans-serif;letter-spacing:-1px;z-index:2}.ss__captured{flex:none;display:flex;align-items:center;gap:6px;min-height:22px;padding:2px 10px;color:var(--ss-ink);font-size:15px;line-height:1;letter-spacing:1px}.ss__captured--top{padding-bottom:4px}.ss__captured--bot{padding-top:4px}.ss__captured-glyphs{font-family:Segoe UI Symbol,"Apple Color Emoji","Noto Sans Symbols 2",Symbola,DejaVu Sans,system-ui,sans-serif;color:var(--ss-ink)}.ss__captured-lead{font:700 12px JetBrains Mono,ui-monospace,monospace;color:var(--cat-good, #4caf7d);letter-spacing:0}.ss__bottom{flex:none;display:flex;flex-direction:column;padding:14px 14px 26px;min-height:0}.ss__actions{flex:none;display:grid;grid-template-columns:1fr 1fr 1fr 36px;gap:8px}.ss__actions-dock{position:fixed;left:0;right:0;bottom:0;z-index:5;padding:0 10px env(safe-area-inset-bottom,0px) 10px;background:transparent;display:flex;flex-direction:column;pointer-events:none}.ss__actions-dock>*{pointer-events:auto}.ss__actions-dock .ss__actions{margin:0;padding:0;background:transparent;border:none;box-shadow:none}.ss__bottom.ss__bottom--docked{padding-bottom:calc(58px + env(safe-area-inset-bottom,0px))}.ss__q-card{flex:none;background:var(--paper);border:var(--bd-w) solid var(--ss-rule);border-radius:calc(14px * var(--r-scale));padding:12px 14px 14px;margin-bottom:10px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--elev-1);max-height:48dvh;overflow-y:auto;-webkit-overflow-scrolling:touch}.ss__q-eyebrow{font:600 10.5px/1 var(--ss-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--cat-active)}.ss__q-prompt{font-family:var(--ss-serif);font-size:16px;line-height:1.4;color:var(--ss-ink)}.ss__q-yesno{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ss__q-options{display:flex;flex-direction:column;gap:6px}.ss__q-option{height:auto;min-height:40px;padding:8px 12px;justify-content:flex-start;text-align:left;gap:10px;white-space:normal}.ss__q-letter{width:22px;height:22px;border-radius:50%;background:color-mix(in oklab,var(--cat-active) 12%,transparent);color:var(--cat-active);font:700 11px/1 var(--ss-sans);display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px}.ss__q-option.is-primary .ss__q-letter{background:#ffffff38;color:#fff}.ss__q-option-text{flex:1;min-width:0;line-height:1.3}.ss__q-freetext{display:grid;grid-template-columns:1fr 88px;gap:8px}.ss__q-input{height:40px;text-align:left;padding:0 12px;font-weight:400}.ss__q-verdict{font:600 14px/1.3 var(--ss-sans);display:flex;align-items:baseline;flex-wrap:wrap;column-gap:6px;row-gap:2px}.ss__q-verdict-good{color:var(--good, #2f9c63);font-weight:700}.ss__q-verdict-bad{color:var(--bad, #c44a3a);font-weight:700}.ss__q-verdict-ans{color:var(--ss-ink-2);font-weight:400}.ss__q-verdict-ans em{font-style:normal;font-weight:600;color:var(--ss-ink)}.ss__q-explanation{font:400 13px/1.45 var(--ss-serif);color:var(--ss-ink-2);font-style:italic}.ss__q-continue{margin-top:4px;height:44px;width:100%;font-size:14px;font-weight:600}.ss__action{height:30px;border-radius:calc(11px * var(--r-scale));background:var(--paper);border:var(--bd-w) solid var(--ss-rule);color:var(--ss-ink);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap;transition:background .12s ease,border-color .12s ease,transform .08s ease}.ss__action:active{transform:translateY(1px)}.ss__action.is-primary{background:var(--cta-bg);color:var(--cta-fg);border:var(--bd-w) solid var(--cta-line);font-weight:600;box-shadow:0 1px 0 var(--cta-shadow-inset) inset,0 1px 2px #00000014}.ss__action.is-primary:hover{background:var(--cta-hover)}.ss__action[disabled]{opacity:.42;cursor:not-allowed}.ss__action.is-icon{padding:0;width:30px}.ss__action svg{width:13px;height:13px}.ss__action--hinted:not([disabled]){border-color:var(--cat-active);color:var(--cat-active);font-weight:600}.ss__hint-badge{display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;padding:0 3px;margin-left:1px;border-radius:999px;background:var(--cat-active);color:var(--cat-on, #fff);font-size:10px;font-weight:700;line-height:1}.ss__board.is-answer-revealed{box-shadow:0 0 0 2px var(--reveal-ring),0 1px 2px var(--board-ring),0 0 0 1px var(--ss-rule)}.ss__reveal-bar{display:flex;align-items:center;gap:9px;margin:-2px 0 12px;padding:9px 12px;background:var(--reveal-bg);border:var(--bd-w) solid var(--reveal-line);border-radius:calc(10px * var(--r-scale));font-family:var(--ss-serif);font-style:italic;font-size:12.5px;color:var(--reveal-fg);line-height:1.3;flex:none}.ss__reveal-bar b{font-style:normal;font-family:var(--ss-sans);font-weight:700;color:var(--reveal-emph);margin:0 1px}.ss__reveal-bar i{color:var(--reveal-mute);font-style:italic}.ss__reveal-dot{width:8px;height:8px;border-radius:50%;background:var(--reveal-dot);flex:none;box-shadow:0 0 0 3px var(--reveal-glow)}.ss__reveal-text{flex:1;min-width:0}.ss__rail{margin-top:18px;margin-bottom:8px;padding:0 10px;display:flex;align-items:center;gap:14px;font-size:11px;color:var(--ss-ink-3);font-family:var(--ss-mono);letter-spacing:.02em;flex:none}.ss__rail-item{display:inline-flex;align-items:center;gap:6px}.ss__rail-item .dot{width:7px;height:7px;border-radius:50%}.ss__rail-spend{margin-left:auto;color:var(--ss-ink-2)}.ss__rail-spend--btn{margin-left:auto;color:var(--ss-ink-2);background:transparent;border:var(--bd-w) solid var(--ss-rule);border-radius:999px;padding:1px 8px;font:inherit;cursor:pointer}.ss__rail-spend--btn:hover{color:var(--ss-ink);border-color:var(--ss-ink-3)}.ss__sprog{margin:8px 0 6px;padding:0 10px;flex:none}.ss__sprog-bar{display:flex;gap:4px;height:8px;margin-bottom:8px}.ss__sprog-zone{position:relative;min-width:10px;border-radius:99px;overflow:hidden;background:color-mix(in srgb,var(--zc) 16%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--zc) 24%,transparent)}.ss__sprog-zone--new{--zc: var(--ss-dot-new)}.ss__sprog-zone--rev{--zc: var(--ss-dot-review)}.ss__sprog-fill{position:absolute;top:0;bottom:0;left:0;width:0;border-radius:99px;background:var(--zc);transition:width .5s cubic-bezier(.4,0,.2,1)}.ss__sprog-foot,.ss__sprog-stats{display:flex;align-items:center;gap:14px}.ss__sprog-stat{display:inline-flex;align-items:center;gap:5px}.ss__sprog-dot{width:7px;height:7px;border-radius:50%;flex:none}.ss__sprog-lab{font-size:11px;color:var(--ss-ink-3)}.ss__sprog-num{font-family:var(--ss-mono);font-size:12px;font-weight:600;color:var(--ss-ink);letter-spacing:.02em}.ss__sprog .ss__rail-spend,.ss__sprog .ss__rail-spend--btn{margin-left:auto}.ss__sprog-types{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px;font-family:var(--ss-mono);font-size:10px;color:var(--ss-ink-3);opacity:.82;letter-spacing:.02em}.ss__sprog-type{display:inline-flex;align-items:center;gap:4px}.ss__sprog-type i{width:6px;height:6px;border-radius:50%;display:inline-block;flex:none}html[data-theme=brutal] .ss__sprog-zone,html[data-theme=brutal] .ss__sprog-fill{border-radius:0}html[data-theme=brutal] .ss__sprog-zone{box-shadow:inset 0 0 0 1.5px var(--ss-ink)}html[data-theme=brutal] .ss__sprog-dot,html[data-theme=brutal] .ss__sprog-type i{border-radius:0}html[data-theme=swiss] .ss__sprog-zone,html[data-theme=swiss] .ss__sprog-fill{border-radius:2px}.ss__sheet{flex:1;display:flex;flex-direction:column;border-radius:calc(16px * var(--r-scale));padding:14px 16px;position:relative}.ss__sheet--hint{background:var(--hint-bg);border:var(--bd-w) solid var(--hint-line)}.ss__sheet--correct{background:var(--correct-bg);border:var(--bd-w) solid var(--correct-line)}.ss__sheet--wrong{background:var(--wrong-bg);border:var(--bd-w) solid var(--wrong-line)}.ss__sheet--master{background:var(--paper);border:var(--bd-w) solid var(--ss-rule);box-shadow:var(--shadow-card)}.ss__sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ss__sheet-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.ss__sheet--hint .ss__sheet-eyebrow{color:var(--hint-fg)}.ss__sheet--correct .ss__sheet-eyebrow{color:var(--correct-fg)}.ss__sheet--wrong .ss__sheet-eyebrow{color:var(--wrong-fg)}.ss__sheet--master .ss__sheet-eyebrow{color:var(--cat-active)}.ss__mgv-strip{flex:1;min-height:0;display:flex;flex-wrap:nowrap;align-items:center;gap:4px;overflow-x:auto;overflow-y:hidden;white-space:nowrap;padding:4px 2px;scrollbar-width:none;-ms-overflow-style:none}.ss__mgv-strip::-webkit-scrollbar{display:none}.ss__mgv-chip{flex:0 0 auto;display:inline-flex;align-items:baseline;gap:2px;padding:4px 8px;border:none;background:transparent;color:var(--ss-ink);font:500 13px/1.05 var(--ss-mono);border-radius:calc(5px * var(--r-scale));cursor:pointer;white-space:nowrap;font-family:var(--ss-mono)}.ss__mgv-chip:hover:not(.is-active){background:#0000000a}[data-mode=dark] .ss__mgv-chip:hover:not(.is-active){background:#ffffff0f}.ss__mgv-chip.is-active{background:var(--cat-active-soft);color:var(--cat-active);font-weight:700}.ss__mgv-chip.is-hl:not(.is-active){color:var(--reveal-emph)}.ss__mgv-chip-n{color:var(--ss-ink-3);font-size:11px}.ss__mgv-chip.is-active .ss__mgv-chip-n{color:var(--cat-active)}.ss__sheet-close{width:26px;height:26px;border-radius:50%;background:transparent;border:var(--bd-w) solid var(--ss-rule);color:var(--ss-ink-3);font-size:16px;line-height:1;cursor:pointer;font-family:inherit;padding:0}.ss__sheet-body{font-family:var(--ss-serif);font-size:15px;line-height:1.4;color:var(--ss-ink);flex:1;margin-bottom:12px}.ss__sheet-body b{color:var(--hint-emph);font-weight:600}.ss__sheet-cta{height:44px;border-radius:calc(11px * var(--r-scale));background:var(--cta-bg);color:var(--cta-fg);font-weight:600;font-size:14px;border:var(--bd-w) solid var(--cta-line);cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:none;box-shadow:0 1px 0 var(--cta-shadow-inset) inset,0 1px 2px #00000014}.ss__sheet-cta.is-primary{background:var(--cat-active);color:var(--cat-on);border-color:var(--cat-active)}.ss__sheet-cta.is-ghost{background:transparent;color:var(--ss-ink-2);border:var(--bd-w) solid var(--ss-rule);box-shadow:none}.ss__sheet--wrong .ss__sheet-cta{background:var(--wrong-cta);color:#fff;border-color:var(--wrong-cta-2);box-shadow:0 1px 0 var(--wrong-cta-2) inset,0 1px 2px #00000014}.ss__sheet--correct .ss__sheet-cta{background:var(--correct-cta);color:#fff;border-color:var(--correct-cta-2);box-shadow:0 1px 0 var(--correct-cta-2) inset,0 1px 2px #00000014}.ss__answer-list{display:grid;grid-template-columns:auto 1fr auto;align-items:center;row-gap:6px;column-gap:10px;font-family:var(--ss-mono);font-size:12px;flex:1;margin-bottom:12px;margin-top:2px}.ss__answer-list--4col{grid-template-columns:auto 1fr auto auto}.ss__answer-list .dot{width:7px;height:7px;border-radius:50%;align-self:center}.ss__answer-list .dot.is-best{background:var(--answer-best)}.ss__answer-list .dot.is-alt{background:var(--answer-alt)}.ss__answer-list .dot.is-played{background:var(--answer-played)}.ss__answer-list .mv{color:var(--ss-ink);font-weight:500}.ss__answer-list .mv.is-best{color:var(--answer-best-fg);font-weight:600}.ss__answer-list .mv.is-played{color:var(--answer-played-fg)}.ss__answer-list .ev{color:var(--ss-ink-3);justify-self:end}.ss__answer-list .yp{font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--answer-you-played);font-weight:700;font-family:var(--ss-sans);justify-self:end}.ss__master-title{font-family:var(--ss-serif);font-size:22px;font-weight:500;line-height:1.15;letter-spacing:-.01em;color:var(--ss-ink);display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin:2px 0 8px}.ss__master-vs{font-style:italic;font-size:15px;color:var(--ss-ink-3);font-weight:400}.ss__master-meta{font-size:12.5px;color:var(--ss-ink-2);margin-bottom:14px;flex:1}.ss__master-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:none}.ss--bold .ss__context{background:var(--cat-active-soft, var(--paper));border-color:var(--cat-active)}.ss--bold .ss__context:before{width:100%;top:0;left:0;right:0;bottom:auto;height:5px;border-radius:calc(14px * var(--r-scale)) calc(14px * var(--r-scale)) 0 0}.ss--bold .ss__badge{background:var(--cat-active);color:var(--cat-on);border-color:var(--cat-active)}.ss--bold .ss__action.is-primary{background:var(--cat-active);border-color:var(--cat-active);color:var(--cat-on)}.ss__overflow{position:relative}.ss__overflow-menu{position:absolute;right:0;bottom:50px;z-index:50;min-width:180px;padding:6px;border-radius:calc(10px * var(--r-scale));background:var(--paper);color:var(--ss-ink);border:var(--bd-w) solid var(--ss-rule);box-shadow:var(--shadow-sheet);font-family:var(--ss-sans);font-size:13px}.ss__overflow-item{display:block;width:100%;text-align:left;padding:8px 10px;border:none;background:transparent;color:var(--ss-ink);cursor:pointer;border-radius:calc(6px * var(--r-scale));font:inherit}.ss__overflow-item:hover{background:var(--paper-2)}.ss__overflow-item.is-danger{color:var(--wrong-cta)}.ss__transition{flex:none;margin:0 14px 8px;padding:8px 12px;border-radius:calc(10px * var(--r-scale));background:var(--cat-active-soft, var(--paper-2));border:var(--bd-w) solid var(--cat-active);display:flex;align-items:baseline;gap:8px}.ss__transition-eyebrow{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--cat-active);flex:none}.ss__transition-title{font-family:var(--ss-serif);font-size:14px;font-weight:500;color:var(--ss-ink);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss__lineprog{flex:none;display:flex;align-items:baseline;gap:8px;margin:0 14px 8px;padding:5px 12px;border-radius:calc(8px * var(--r-scale));background:var(--cat-active-soft, var(--paper-2));border:var(--bd-w) solid var(--cat-active);font-size:12px}.ss__lineprog-main{font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:10.5px;color:var(--cat-active);flex:none}.ss__lineprog-sub{color:var(--ss-ink);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss__lineprog-left{color:var(--ss-ink-soft, var(--ss-ink));opacity:.7;flex:none}.ss__lineprog-round{flex:1;min-width:0;display:flex;align-items:center;gap:7px}.ss__lineprog-round-lab{flex:none;font-family:JetBrains Mono,ui-monospace,monospace;font-size:9.5px;letter-spacing:.04em;color:var(--ss-ink-soft, var(--ss-ink));opacity:.7;white-space:nowrap}.ss__lineprog-dashes{flex:1;min-width:24px;display:flex;gap:2.5px;align-items:center}.ss__lineprog-dashes i{flex:1;height:3.5px;border-radius:2px;background:color-mix(in srgb,var(--ss-ink) 18%,transparent)}.ss__lineprog-dashes i.on{background:var(--cat-active)}.ss__explore-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;padding:6px 10px 8px;margin:0;align-items:stretch}.ss__explore-col{min-width:0;background:var(--paper);border:var(--bd-w) solid var(--ss-rule);border-radius:calc(8px * var(--r-scale));padding:6px 7px;font-family:var(--ss-sans);color:var(--ss-ink);overflow:hidden;display:flex;flex-direction:column;gap:4px;max-height:180px}.ss__explore-col-head{display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0}.ss__explore-col-title{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--ss-ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss__explore-scrub{display:inline-flex;gap:2px}.ss__explore-scrub button{width:18px;height:18px;padding:0;border-radius:calc(4px * var(--r-scale));border:var(--bd-w) solid var(--ss-rule);background:var(--paper-2);color:var(--ss-ink);font-size:11px;line-height:1;cursor:pointer}.ss__explore-scrub button:hover{background:var(--paper-3)}.ss__explore-col .pgn-tree{display:grid;grid-template-columns:14px 1fr 1fr;gap:1px 3px;align-items:center;align-content:start;font-size:10.5px;line-height:1.3;overflow-y:auto;height:48px}.ss__explore-col .pgn-tree .mn{color:var(--ss-ink-3);font-size:9px}.ss__explore-col .pgn-tree .mv{padding:1px 3px;border-radius:calc(3px * var(--r-scale));cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ss__explore-col .pgn-tree .mv:hover{background:var(--paper-2)}.ss__explore-col .pgn-tree .mv.current{background:var(--cat-active-soft, var(--paper-2));color:var(--ss-ink);font-weight:600}.ss__explore-col .engine-head,.ss__explore-col .db-head{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:10px}.ss__explore-col .eng-pill,.ss__explore-col .db-toggle{font-size:10px;padding:2px 5px;border-radius:calc(4px * var(--r-scale));border:var(--bd-w) solid var(--ss-rule);background:var(--paper-2);color:var(--ss-ink);cursor:pointer;white-space:nowrap}.ss__explore-col .eng-pill.active,.ss__explore-col .db-toggle.active{background:var(--cat-active-soft, var(--paper-3));color:var(--ss-ink);border-color:var(--cat-active, var(--ss-rule))}.ss__explore-col .eng-eval{font-weight:700;font-size:11px}.ss__explore-col .eng-bar{flex:1;height:4px;background:var(--paper-3);border-radius:calc(2px * var(--r-scale));overflow:hidden;min-width:30px}.ss__explore-col .eng-bar-fill{display:block;height:100%;background:var(--ss-ink)}.ss__explore-col .eng-depth{font-size:9px;color:var(--ss-ink-3)}.ss__explore-col .pv-list{display:flex;flex-direction:column;gap:1px;margin-top:4px;font-size:10px;line-height:1.3;max-height:48px;overflow:hidden}.ss__explore-col .pv-list .pv-row{display:flex;gap:4px;min-width:0;align-items:baseline}.ss__explore-col .pv-list .pv-row .score{color:var(--ss-ink-3);font-weight:600;flex:none;min-width:24px;font-size:9.5px}.ss__explore-col .pv-list .pv-row .moves{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss__explore-col .pv-list .pv-row .mv-clickable{cursor:pointer;color:var(--ss-ink)}.ss__explore-col .pv-list .pv-row .mv-clickable:hover{color:var(--cat-active, var(--ss-ink));text-decoration:underline}.ss__explore-col .db-head h3{margin:0;padding:0;font:inherit;line-height:1}.ss__explore-col .db-count{font-size:10px;color:var(--ss-ink-3);white-space:nowrap}.ss__explore-col .db-row{display:grid;grid-template-columns:minmax(0,auto) 1fr minmax(0,auto);gap:3px;align-items:center;font-size:10.5px;padding:1px 0}.ss__explore-col .db-row .move{font-weight:600}.ss__explore-col .db-row .games{display:none}.ss__explore-col .db-row .bar{display:flex;height:5px;background:var(--paper-3);border-radius:calc(2px * var(--r-scale));overflow:hidden}.ss__explore-col .db-row .bar .w{background:#d5cdc0}.ss__explore-col .db-row .bar .d{background:#877f73}.ss__explore-col .db-row .bar .b{background:#332d23}.ss__explore-col .db-row .bar>span{display:flex;align-items:center;justify-content:center;font-size:8px;color:#000000a6}.ss__explore-col .db-row .pct{font-size:9.5px;color:var(--ss-ink-3);white-space:nowrap}.ss .ss__cue-stack{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:20;pointer-events:none;display:flex;flex-direction:column;gap:6px;align-items:center;width:max-content;max-width:92%}@keyframes ss-cueIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ss .ss__cue-stack>*{animation:ss-cueIn .3s cubic-bezier(0,0,.2,1)}.ss .ss__milestone{display:flex;align-items:center;gap:12px;max-width:360px;padding:11px 18px 11px 15px;border-radius:calc(14px * var(--r-scale));color:#fff;border:var(--bd-w) solid rgba(255,255,255,.3);box-shadow:0 10px 32px #00000040;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--ss-sans)}.ss .ss__milestone--solid{background:linear-gradient(135deg,#0074c7,#0079db,#167eed 50%,#448bff);background:linear-gradient(135deg,color(xyz 0.172 0.165 0.65),color(xyz 0.2 0.188 0.737),#167eed 50%,color(xyz 0.302 0.267 1.045))}.ss .ss__milestone--strong{background:linear-gradient(135deg,#b36300,#ec6f00);background:linear-gradient(135deg,color(xyz 0.252 0.181 -0.014),color(xyz 0.419 0.289 0.012))}.ss .ss__milestone--deep{background:linear-gradient(135deg,#8b4ec4,#b14dae,#d84497)}.ss .ss__milestone-icon{font-size:28px;line-height:1;filter:drop-shadow(0 0 8px rgba(255,255,255,.55))}.ss .ss__milestone-title{font:800 14px/1.15 var(--ss-sans)}.ss .ss__milestone-sub{font:500 12px/1.35 var(--ss-sans);opacity:.92;margin-top:2px}body.session-handoff-mobile{--bg: var(--bg0);--paper: var(--card);--ink: var(--text);--ink-muted: var(--muted);--ink-soft: var(--muted2);--hairline: var(--border);--primary: var(--accent);--primary-soft: color-mix(in srgb, var(--accent) 16%, var(--card));--review: #c96442;--new: #6f9764;--drill: #8a6a8a;--font: -apple-system, "SF Pro Text", system-ui, sans-serif;--num: "SF Mono", ui-monospace, "Roboto Mono", monospace}body.session-handoff-mobile .ss{--ss-dot-review: var(--review);--ss-dot-new: var(--new);--ss-dot-drill: var(--drill)}body.session-handoff-mobile .stat-row{display:flex;align-items:center;justify-content:space-between;padding:4px;margin:4px -14px 0}body.session-handoff-mobile .ss__bottom{padding-top:0}body.session-handoff-mobile .stat-group{display:flex;gap:14px}body.session-handoff-mobile .stat{display:flex;align-items:center;gap:7px}body.session-handoff-mobile .stat-row .dot{width:8px;height:8px;border-radius:999px;flex-shrink:0}body.session-handoff-mobile .stat-text{display:flex;flex-direction:column;line-height:1.1}body.session-handoff-mobile .stat-count{font-size:12px;font-weight:700;color:var(--ink);font-family:var(--num)}body.session-handoff-mobile .stat-label{font-size:10.5px;color:var(--ink-muted)}body.session-handoff-mobile .winloss{display:inline-flex;align-items:center;gap:6px;background:var(--paper);border:var(--bd-w) solid var(--hairline);border-radius:999px;padding:4px 10px;font-family:var(--num);font-size:11px;font-weight:600}body.session-handoff-mobile .winloss .w{color:var(--new)}body.session-handoff-mobile .winloss .sep,body.session-handoff-mobile .winloss .l{color:var(--ink-soft)}body.session-handoff-mobile .winloss .arr{margin-left:4px;color:var(--ink-soft);font-family:var(--font);font-weight:500}body.session-handoff-mobile .move-row{margin-top:8px;padding:6px 10px;background:var(--paper);border:var(--bd-w) solid var(--hairline);border-radius:calc(10px * var(--r-scale));display:flex;align-items:center;gap:8px}body.session-handoff-mobile .iconbtn{background:none;border:0;padding:4px;cursor:pointer;display:flex}body.session-handoff-mobile :is(button,[role=button],a[href],input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--ss-ink, #3b7aff);outline-offset:2px}body.session-handoff-mobile .moves{display:flex;align-items:center;gap:4px;flex:1;min-width:0}body.session-handoff-mobile .ply{font-family:var(--num);font-size:13px;font-weight:500;color:var(--ink);padding:2px}body.session-handoff-mobile .ply.num{color:var(--ink-soft)}body.session-handoff-mobile .next-q{margin-left:4px;width:20px;height:20px;border-radius:calc(5px * var(--r-scale));border:1.5px dashed var(--primary);display:inline-flex;align-items:center;justify-content:center;color:var(--primary);font-weight:700;font-size:11px;font-family:var(--num);flex-shrink:0}body.session-handoff-mobile .actions{display:flex;gap:7px;margin-top:12px}body.session-handoff-mobile .btn-ghost,body.session-handoff-mobile .btn-primary{padding:9px 10px;border-radius:calc(12px * var(--r-scale));font-family:var(--font);font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:5px;line-height:1.1;cursor:pointer}body.session-handoff-mobile .btn-ghost{flex:1;background:var(--paper);border:var(--bd-w) solid var(--hairline);color:var(--ink)}body.session-handoff-mobile .btn-primary{flex:1;background:var(--cta-bg);border:0;color:var(--cta-fg);font-weight:600;box-shadow:0 4px 10px color-mix(in oklab,var(--cta-bg) 30%,transparent)}body.session-handoff-mobile .btn-kebab{padding:0}body.session-handoff-mobile .theory{background:var(--paper);border:0;border-bottom:var(--bd-w) solid var(--ss-rule);border-radius:0;padding:12px 14px 14px}body.session-handoff-mobile .theory-meta{display:flex;align-items:center;gap:7px}body.session-handoff-mobile .theory-sub{font-size:12px;color:var(--ink-muted);font-weight:500}body.session-handoff-mobile .theory-foot{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px}body.session-handoff-mobile .theory-foot-left{display:flex;align-items:center;gap:5px}body.session-handoff-mobile .theory-chapter{font-size:11.5px;color:var(--ink-muted);font-family:Times New Roman,serif;font-style:italic}body.session-handoff-mobile .eval-pos{background:#def1d9;color:#2d6533;font-size:11px;font-weight:700;padding:3px 8px;border-radius:calc(6px * var(--r-scale));font-family:var(--num)}body.session-handoff-mobile .ss__scrub.move-row{margin-left:-14px;margin-right:-14px}body.session-handoff-mobile .ss__scrub.move-row .ss__scrub-arrow{width:auto;height:auto;padding:4px;background:transparent;border:0;border-radius:0;color:var(--ink-muted, var(--ss-ink-2))}body.session-handoff-mobile .ss__scrub.move-row .ss__scrub-arrow svg{display:block}body.session-handoff-mobile .ss__scrub.move-row .ss__scrub-list{background:transparent;border:0;padding:0;border-radius:0;scroll-snap-type:x mandatory}body.session-handoff-mobile .ss__scrub.move-row .ss__mvb{scroll-snap-align:start}body.session-handoff-mobile .ss--bold .ss__context.theory{background:var(--cat-active-soft, var(--paper));border-color:var(--cat-active);border-top:var(--bd-w) solid var(--cat-active)}body.session-handoff-mobile .ss--bold .ss__context.theory:before{display:block}body.session-handoff-mobile .ss--bold .theory-tag{background:var(--cat-active);color:var(--cat-on)}body.session-handoff-mobile .ss--bold .theory-title em{color:var(--cat-active)}body.session-handoff-mobile .ss__scrub.move-row .ss__mvb{background:transparent;border:0;padding:0;height:auto;border-radius:0;font:inherit;color:inherit;display:inline-flex;gap:4px}body.session-handoff-mobile .ss__scrub.move-row .ss__mvb:hover:not(.is-active){background:transparent;color:inherit}body.session-handoff-mobile .ss__scrub.move-row .ss__mvb.is-active{background:color-mix(in oklab,var(--cat-active, var(--primary)) 14%,transparent);color:var(--cat-active, var(--primary));font-weight:700;border-radius:calc(5px * var(--r-scale));padding:2px 5px}body.session-handoff-mobile .ss__scrub.move-row .ss__mvb.is-active .ply.num{color:var(--cat-active, var(--primary));opacity:.7}body.session-handoff-mobile .ss__scrub.move-row .ss__mvb--here{border:0;background:transparent}body.session-handoff-desktop .mobile-bottom-nav,body.session-handoff-desktop .trainerHeader{display:none!important}body.session-handoff-desktop #root,body.session-handoff-desktop .container{padding:0!important;margin:0 auto!important;max-width:none!important}body.session-handoff-desktop{background:var(--bg0)!important}body.session-handoff-desktop :is(button,[role=button],a[href],input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--ssd-ink, #3b7aff);outline-offset:2px}.ssd{--ssd-serif: "Source Serif 4", Georgia, serif;--ssd-bg: var(--bg0);--ssd-surface: var(--card);--ssd-surface-2: var(--card2);--ssd-ink: var(--text);--ssd-ink-muted: var(--muted);--ssd-ink-faint: var(--muted2);--ssd-accent: var(--accent);--ssd-on-accent: #fff;--ssd-accent-soft: color-mix(in srgb, var(--accent) 12%, transparent);--ssd-accent-soft-border: color-mix(in srgb, var(--accent) 32%, transparent);--ssd-rule: var(--border);--ssd-rule-strong: var(--border2);--ssd-good: var(--good);--ssd-bad: var(--bad)}.ssd--light{--ssd-cat-review: #d97a2a;--ssd-cat-new: #5a8a3f;--ssd-cat-drills: #4a7eb8;--ssd-cat-theory: oklch(.53 .175 278);--ssd-cat-theory-soft: oklch(.96 .04 278);--ssd-cat-mistakes: oklch(.55 .205 24);--ssd-cat-mistakes-soft: oklch(.96 .04 24);--ssd-cat-inaccuracy: oklch(.58 .115 110);--ssd-cat-inaccuracy-soft: oklch(.96 .035 110);--ssd-cat-tactics: oklch(.7 .165 72);--ssd-cat-tactics-soft: oklch(.96 .06 72);--ssd-cat-endgames: oklch(.57 .13 198);--ssd-cat-endgames-soft: oklch(.96 .04 198);--ssd-cat-good: oklch(.59 .15 156);--ssd-cat-good-soft: oklch(.96 .04 156);--ssd-cat-games: oklch(.62 .155 52);--ssd-cat-games-soft: oklch(.96 .05 52);--ssd-cat-coach: oklch(.6 .2 2);--ssd-cat-coach-soft: oklch(.96 .05 2);--ssd-cat-master: oklch(.55 .225 306);--ssd-cat-master-soft: oklch(.96 .05 306);--ssd-cat-defense: oklch(.55 .165 250);--ssd-cat-defense-soft: oklch(.96 .05 250)}.ssd--dark{--ssd-on-accent: var(--bg0);--ssd-cat-review: #e6a93c;--ssd-cat-new: #8aba6a;--ssd-cat-drills: #6c98c8;--ssd-cat-theory: oklch(.76 .1 295);--ssd-cat-theory-soft: oklch(.26 .04 295);--ssd-cat-mistakes: oklch(.71 .17 22);--ssd-cat-mistakes-soft: oklch(.26 .06 22);--ssd-cat-inaccuracy: oklch(.8 .12 110);--ssd-cat-inaccuracy-soft: oklch(.28 .05 110);--ssd-cat-games: oklch(.78 .16 48);--ssd-cat-games-soft: oklch(.28 .06 48);--ssd-cat-tactics: oklch(.84 .16 82);--ssd-cat-tactics-soft: oklch(.29 .06 82);--ssd-cat-good: oklch(.82 .13 148);--ssd-cat-good-soft: oklch(.27 .05 148);--ssd-cat-endgames: oklch(.78 .07 215);--ssd-cat-endgames-soft: oklch(.26 .03 215);--ssd-cat-coach: oklch(.8 .16 356);--ssd-cat-coach-soft: oklch(.28 .07 356);--ssd-cat-master: oklch(.78 .17 306);--ssd-cat-master-soft: oklch(.28 .06 306);--ssd-cat-defense: oklch(.78 .13 250);--ssd-cat-defense-soft: oklch(.27 .05 250)}html[data-dark-palette=refined] .ssd--dark{--ssd-cat-theory: oklch(.78 .13 280);--ssd-cat-theory-soft: oklch(.27 .05 280);--ssd-cat-mistakes: oklch(.74 .15 25);--ssd-cat-mistakes-soft: oklch(.27 .05 25);--ssd-cat-games: oklch(.8 .13 55);--ssd-cat-games-soft: oklch(.28 .05 55);--ssd-cat-tactics: oklch(.85 .14 85);--ssd-cat-tactics-soft: oklch(.29 .05 85);--ssd-cat-good: oklch(.8 .13 150);--ssd-cat-good-soft: oklch(.27 .04 150);--ssd-cat-endgames: oklch(.8 .1 210);--ssd-cat-endgames-soft: oklch(.27 .04 210)}html[data-dark-palette=aurora] .ssd--dark{--ssd-cat-theory: oklch(.74 .18 275);--ssd-cat-theory-soft: oklch(.27 .07 275);--ssd-cat-mistakes: oklch(.72 .18 18);--ssd-cat-mistakes-soft: oklch(.27 .07 18);--ssd-cat-games: oklch(.8 .16 55);--ssd-cat-games-soft: oklch(.28 .06 55);--ssd-cat-tactics: oklch(.86 .16 90);--ssd-cat-tactics-soft: oklch(.29 .06 90);--ssd-cat-good: oklch(.82 .16 155);--ssd-cat-good-soft: oklch(.28 .06 155);--ssd-cat-endgames: oklch(.8 .13 215);--ssd-cat-endgames-soft: oklch(.28 .05 215)}.ssd[data-cat=theory]{--ssd-cat-active: var(--ssd-cat-theory);--ssd-cat-active-soft: var(--ssd-cat-theory-soft)}.ssd[data-cat=mistakes]{--ssd-cat-active: var(--ssd-cat-mistakes);--ssd-cat-active-soft: var(--ssd-cat-mistakes-soft)}.ssd[data-cat=tactics]{--ssd-cat-active: var(--ssd-cat-tactics);--ssd-cat-active-soft: var(--ssd-cat-tactics-soft)}.ssd[data-cat=endgames]{--ssd-cat-active: var(--ssd-cat-endgames);--ssd-cat-active-soft: var(--ssd-cat-endgames-soft)}.ssd[data-cat=good]{--ssd-cat-active: var(--ssd-cat-good);--ssd-cat-active-soft: var(--ssd-cat-good-soft)}.ssd[data-cat=games]{--ssd-cat-active: var(--ssd-cat-games);--ssd-cat-active-soft: var(--ssd-cat-games-soft)}.ssd[data-cat=coach]{--ssd-cat-active: var(--ssd-cat-coach);--ssd-cat-active-soft: var(--ssd-cat-coach-soft)}.ssd[data-cat=master]{--ssd-cat-active: var(--ssd-cat-master);--ssd-cat-active-soft: var(--ssd-cat-master-soft)}.ssd[data-cat=defense]{--ssd-cat-active: var(--ssd-cat-defense);--ssd-cat-active-soft: var(--ssd-cat-defense-soft)}.ssd[data-cat=inaccuracy]{--ssd-cat-active: var(--ssd-cat-inaccuracy);--ssd-cat-active-soft: var(--ssd-cat-inaccuracy-soft)}.ssd{width:100%;max-width:1600px;margin:0 auto;background:var(--ssd-surface);color:var(--ssd-ink);display:grid;grid-template-rows:auto 1fr;padding:16px 32px 18px;box-sizing:border-box;font-family:Geist,system-ui,sans-serif;position:relative;--ssd-rail-w: clamp(340px, calc(290px + 9vh) , 460px);--ssd-fs-prompt: clamp(23px, 3.1vh, 38px);--ssd-fs-focus: clamp(14px, 1.95vh, 19px);--ssd-fs-source: clamp(12px, 1.5vh, 15px);--ssd-fs-meta: clamp(11px, 1.4vh, 14px);--ssd-fs-mono: var(--font-mono);--ssd-fs-btn: clamp(13px, 1.6vh, 15px);--ssd-fs-cta: clamp(13px, 1.6vh, 15px);--ssd-fs-chip: clamp(11px, 1.4vh, 14px);--ssd-fs-eyebrow: clamp(10px, 1.25vh, 12px);--ssd-fs-fact: clamp(12px, 1.5vh, 15px);--ssd-fs-captured: clamp(18px, 2.3vh, 25px);--ssd-fs-rail-icon: clamp(14px, 1.95vh, 19px);--ssd-tick-fs: clamp(10px, 1.4vh, 13px);--ssd-pad-btn-x: clamp(8px, 1vh, 12px);--ssd-pad-btn-y: clamp(5px, .7vh, 8px);--ssd-nav-btn: clamp(30px, 3.9vh, 38px);--ssd-grid-num-col: clamp(22px, 2.9vh, 28px);--ssd-grid-gap-x: clamp(7px, 1.1vh, 11px);--ssd-chip-pad-x: clamp(7px, 1vh, 11px);--ssd-chip-pad-y: clamp(3px, .35vh, 4px);--ssd-captured-h: clamp(26px, 3.1vh, 32px);--ssd-board-pad: 330px}.ssd[data-board-size=compact]{--ssd-board-pad: 460px}.ssd__topbar{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:8px;border-bottom:var(--bd-w) solid var(--ssd-rule);margin-bottom:10px;gap:22px;flex-wrap:wrap}.ssd__topbar-left{display:flex;flex-direction:row;align-items:baseline;gap:12px;min-width:0;flex:1}.ssd__topbar-focus-row{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:nowrap;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ssd__topbar-focus-row .ssd__topbar-focus{overflow:hidden;text-overflow:ellipsis;min-width:0}.ssd__topbar-context{font:500 var(--ssd-fs-source) var(--ssd-serif);color:var(--ssd-ink-secondary, var(--ssd-ink));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ssd__topbar-eyebrow-quiet{opacity:.6}.ssd__topbar-focus{font:600 var(--ssd-fs-focus) var(--ssd-serif);color:var(--ssd-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.ssd__topbar-source{display:inline-flex;align-items:center;gap:8px;padding:clamp(3px,.5vh,6px) clamp(10px,1.4vh,14px);border-radius:999px;background:var(--ssd-surface-2);border:var(--bd-w) solid var(--ssd-rule);font:400 var(--ssd-fs-source) var(--ssd-serif);color:var(--ssd-ink-muted);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ssd__topbar-source-prefix{color:var(--ssd-ink-muted)}.ssd__topbar-source-body{color:var(--ssd-ink);font-weight:600}.ssd__topbar-source-suffix{color:var(--ssd-ink-faint);font-style:italic}.ssd__topbar-dot{color:var(--ssd-ink-faint);margin:0 4px}.ssd__topbar-meta{display:flex;align-items:center;gap:14px;font:500 var(--ssd-fs-mono) "JetBrains Mono",ui-monospace,monospace;color:var(--ssd-ink-muted);flex:none;min-height:26px}.ssd__topbar-meta-item{white-space:nowrap}.ssd__main{display:grid;grid-template-columns:minmax(0,calc(100vh - var(--ssd-board-pad) + 17px)) var(--ssd-rail-w);width:fit-content;max-width:100%;margin-inline:auto;gap:0;align-items:start;position:relative}.ssd__main:before{content:"";position:absolute;top:0;right:var(--ssd-rail-w);width:1px;height:100%;background:var(--ssd-rule);pointer-events:none}.ssd__board-col{display:flex;flex-direction:column;align-items:center;gap:14px;padding-right:32px;min-width:0;position:relative}.ssd__board-stack{width:min(100%,calc(100vh - var(--ssd-board-pad) + 17px));display:flex;flex-direction:column;gap:6px}.ssd__board-frame{position:relative;display:flex;align-items:stretch;width:100%;max-width:100%}.ssd__board-stripe{width:3px;align-self:stretch;margin-right:14px;background:transparent;border-radius:calc(2px * var(--r-scale));flex:none}.ssd__board-stripe[data-flash="1"]{animation:ssd-stripe-flash 1.4s ease-out}@keyframes ssd-stripe-flash{0%,to{background:transparent;box-shadow:none}15%{background:var(--ssd-good);box-shadow:0 0 12px var(--ssd-good)}40%{background:transparent}}@media (prefers-reduced-motion: reduce){.ssd__board-stripe[data-flash="1"]{animation:none}}.ssd__board-wrap{position:relative;width:min(100%,calc(100vh - var(--ssd-board-pad)));aspect-ratio:1 / 1;flex:0 1 auto;min-width:0}.ssd__eval-pill{padding:2px 8px;border-radius:calc(5px * var(--r-scale));font:600 var(--ssd-fs-meta) "JetBrains Mono",ui-monospace,monospace;background:var(--ssd-surface-2);border:var(--bd-w) solid var(--ssd-rule);color:var(--ssd-ink-muted);min-width:48px;box-sizing:border-box;text-align:center}.ssd__eval-pill.is-pos{color:var(--ssd-good)}.ssd__eval-pill.is-neg{color:var(--ssd-bad)}.ssd__captured{height:var(--ssd-captured-h);box-sizing:border-box;overflow:hidden;display:flex;align-items:center;gap:6px;color:var(--ssd-ink);font-size:var(--ssd-fs-captured);line-height:1;padding:2px 0;letter-spacing:1px;margin-left:17px}.ssd__captured--top{padding-bottom:4px}.ssd__captured--bot,.ssd__captured--empty.ssd__captured--bot{padding-top:4px}.ssd__captured-glyphs{color:var(--ssd-ink);font-family:Segoe UI Symbol,"Apple Color Emoji","Noto Sans Symbols 2",Symbola,DejaVu Sans,system-ui,sans-serif}.ssd__captured-lead{font:700 var(--ssd-fs-meta) "JetBrains Mono",ui-monospace,monospace;color:var(--ssd-good);letter-spacing:0}.ssd__toolbar{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:100%;padding-top:10px;gap:14px;min-height:44px}.ssd__toolbar-left{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.ssd__toolbar-right{display:flex;align-items:center;gap:10px}.ssd__link-btn{background:transparent;border:var(--bd-w) solid transparent;padding:var(--ssd-pad-btn-y) var(--ssd-pad-btn-x);border-radius:calc(7px * var(--r-scale));font:500 var(--ssd-fs-btn) "Geist",system-ui,sans-serif;color:var(--ssd-ink-muted);cursor:pointer;letter-spacing:.01em;transition:color .15s,background .15s,border-color .15s}.ssd__link-btn:hover{color:var(--ssd-ink);background:var(--ssd-surface-2);border-color:var(--ssd-rule)}.ssd__link-btn:disabled{opacity:.45;cursor:default}.ssd__link-btn:disabled:hover{background:transparent;border-color:transparent}.ssd__link-btn--accent{color:var(--ssd-accent)}.ssd__link-btn--accent:hover{color:var(--ssd-accent);background:var(--ssd-accent-soft);border-color:var(--ssd-accent-soft-border)}.ssd__link-btn--muted{opacity:.65}.ssd__link-btn--muted:hover{opacity:1}.ssd__link-btn--hinted:not(:disabled){color:var(--ssd-accent);background:var(--ssd-accent-soft);border-color:var(--ssd-accent-soft-border);font-weight:600}.ssd__link-btn--hinted:not(:disabled):hover{color:var(--ssd-accent);background:var(--ssd-accent-soft);border-color:var(--ssd-accent-soft-border)}.ssd__hint-pop{display:flex;align-items:center;gap:10px;margin:0 0 8px;padding:8px 12px;border-radius:calc(9px * var(--r-scale));background:var(--ssd-accent-soft);border:var(--bd-w) solid var(--ssd-accent-soft-border);font:500 var(--ssd-fs-btn) "Geist",system-ui,sans-serif;color:var(--ssd-ink)}.ssd__hint-pop-label{flex:0 0 auto;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--ssd-accent)}.ssd__hint-pop-text{flex:1 1 auto;line-height:1.4}.ssd__hint-pop-btn{flex:0 0 auto;background:transparent;border:var(--bd-w) solid var(--ssd-accent-soft-border);color:var(--ssd-accent);border-radius:calc(7px * var(--r-scale));padding:var(--ssd-pad-btn-y) var(--ssd-pad-btn-x);font:600 var(--ssd-fs-btn) "Geist",system-ui,sans-serif;cursor:pointer;white-space:nowrap}.ssd__hint-pop-btn:hover{background:var(--ssd-accent);color:var(--ssd-on-accent)}.ssd__qoverlay{display:flex;flex-direction:column;margin-top:-2px}.ssd__qoverlay-card{width:100%;background:var(--ssd-surface);border:var(--bd-w) solid var(--ssd-rule-strong);border-radius:calc(14px * var(--r-scale));box-shadow:var(--elev-2);padding:18px 18px 16px;display:flex;flex-direction:column;gap:12px}.ssd__qoverlay-eyebrow{font:600 11px/1 Geist,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--ssd-accent);margin-bottom:2px}.ssd__qoverlay-prompt{font:500 17px/1.35 var(--ssd-serif);color:var(--ssd-ink)}.ssd__qoverlay-options{display:flex;flex-direction:column;gap:8px}.ssd__qoverlay-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:calc(9px * var(--r-scale));border:var(--bd-w) solid var(--ssd-rule);background:var(--ssd-surface-2, var(--ssd-surface));color:var(--ssd-ink);font:500 14px/1.3 Geist,system-ui,sans-serif;text-align:left;cursor:pointer;transition:background .15s,border-color .15s}.ssd__qoverlay-option:hover{background:var(--ssd-accent-soft);border-color:var(--ssd-accent-soft-border)}.ssd__qoverlay-option.is-selected{background:var(--ssd-accent-soft);border-color:var(--ssd-accent);color:var(--ssd-accent)}.ssd__qoverlay-letter{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:calc(5px * var(--r-scale));border:var(--bd-w) solid var(--ssd-rule);font:600 11px Geist,system-ui,sans-serif;color:var(--ssd-ink-muted);flex:0 0 auto}.ssd__qoverlay-yesno{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ssd__qoverlay-yesno .ssd__cta-btn{margin-left:0;width:100%}.ssd__qoverlay-freetext{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch}.ssd__qoverlay-input{height:38px;padding:0 12px;border-radius:calc(7px * var(--r-scale));border:var(--bd-w) solid var(--ssd-rule);background:var(--ssd-surface);color:var(--ssd-ink);font:500 14px Geist,system-ui,sans-serif}.ssd__qoverlay-input:focus{outline:none;border-color:var(--ssd-accent)}.ssd__qoverlay-verdict{font:500 14px Geist,system-ui,sans-serif;color:var(--ssd-ink)}.ssd__qoverlay-verdict.is-correct strong{color:#2ea069}.ssd__qoverlay-verdict.is-wrong strong{color:#c44a3a}.ssd__qoverlay-answer{color:var(--ssd-ink-muted)}.ssd__qoverlay-explanation{font:400 13px/1.45 var(--ssd-serif);color:var(--ssd-ink-muted);font-style:italic}.ssd__qoverlay-cta{margin-left:0;width:100%}.ssd__board-col{position:relative}.ssd__nav-btn{width:var(--ssd-nav-btn);height:var(--ssd-nav-btn);display:inline-flex;align-items:center;justify-content:center;border-radius:calc(7px * var(--r-scale));border:var(--bd-w) solid var(--ssd-rule);background:transparent;color:var(--ssd-ink-muted);font:500 clamp(14px,1.9vh,18px) "Geist",system-ui,sans-serif;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.ssd__nav-btn:hover{background:var(--ssd-surface-2);color:var(--ssd-ink);border-color:var(--ssd-rule-strong)}.ssd__nav-btn:disabled{opacity:.45;cursor:default}.ssd__nav-btn:disabled:hover{background:transparent;color:var(--ssd-ink-muted);border-color:var(--ssd-rule)}.ssd__cta-btn{margin-left:10px;border:var(--bd-w) solid var(--ssd-accent);color:var(--ssd-accent);background:transparent;padding:var(--ssd-pad-btn-y) calc(var(--ssd-pad-btn-x) + 2px);border-radius:calc(7px * var(--r-scale));font:500 var(--ssd-fs-cta) "Geist",system-ui,sans-serif;letter-spacing:.02em;cursor:pointer;transition:background .15s,color .15s}.ssd__cta-btn:hover{background:var(--ssd-accent-soft)}.ssd__cta-btn--primary{background:var(--ssd-accent);color:var(--ssd-on-accent)}.ssd__cta-btn--primary:hover{background:var(--ssd-accent);opacity:.92}.ssd__toolbar--engine{border-top:var(--bd-w) solid var(--ssd-rule);padding-top:12px;margin-top:4px}.ssd__toolbar-engine-state{display:flex;align-items:baseline;gap:10px}.ssd__toolbar-engine-dot{width:8px;height:8px;border-radius:calc(8px * var(--r-scale));background:var(--ssd-good);align-self:center;flex:none}.ssd__toolbar-engine-dot.is-thinking{background:var(--ssd-accent);animation:ssd-engine-pulse 1.1s ease-in-out infinite}@keyframes ssd-engine-pulse{0%,to{opacity:.4}50%{opacity:1}}.ssd__toolbar-engine-label{font:600 var(--ssd-fs-focus) var(--ssd-serif);color:var(--ssd-ink)}.ssd__toolbar-engine-sub{font:400 var(--ssd-fs-meta) var(--ssd-serif);font-style:italic;color:var(--ssd-ink-muted)}.ssd__feedback{width:100%;max-width:100%;margin-top:10px;padding:10px 14px;border-radius:calc(8px * var(--r-scale));border:var(--bd-w) solid var(--ssd-rule);background:var(--ssd-surface);display:flex;flex-direction:column;gap:8px}.ssd__feedback.is-wrong{border-color:#c4493a47;background:#c4493a0d}.ssd__feedback.is-correct,.ssd__feedback.is-multimove{border-color:#5a8a3f47;background:#5a8a3f0d}.ssd__feedback-title{font:500 var(--ssd-fs-source) var(--ssd-serif);color:var(--ssd-ink)}.ssd__feedback-title b{color:var(--ssd-cat-active);font-weight:600}.ssd__feedback-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}.ssd__feedback-row{display:flex;align-items:center;gap:8px;font:500 12px JetBrains Mono,ui-monospace,monospace;color:var(--ssd-ink-muted)}.ssd__feedback-row.is-red{color:var(--ssd-bad)}.ssd__feedback-row.is-amber{color:#c08a2a}.ssd__feedback-row.is-green{color:var(--ssd-good)}.ssd__feedback-move{font-weight:600}.ssd__feedback-eval{color:var(--ssd-ink-faint)}.ssd__feedback-tag{padding:1px 6px;border-radius:999px;background:var(--ssd-surface-2);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ssd-ink-muted)}.ssd__rail{display:flex;flex-direction:column;padding-left:26px;min-width:0}.ssd__rail--with-captured{padding-top:calc(var(--ssd-captured-h) + 6px)}.ssd__rail-badge-row{display:flex;align-items:center;gap:10px;margin-bottom:14px}.ssd__rail-badge{display:inline-flex;align-items:center;gap:7px;padding:clamp(3px,.5vh,6px) clamp(8px,1.2vh,12px);border-radius:999px;background:var(--ssd-cat-active-soft);color:var(--ssd-cat-active);font:600 var(--ssd-fs-eyebrow) "Geist",system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase}.ssd__rail-badge-dot{width:clamp(4.5px,.6vh,6px);height:clamp(4.5px,.6vh,6px);border-radius:calc(5px * var(--r-scale));background:var(--ssd-cat-active)}.ssd__rail-badge-new{display:inline-flex;align-items:center;padding:clamp(3px,.5vh,6px) clamp(8px,1.2vh,12px);border-radius:999px;font:700 var(--ssd-fs-eyebrow) "Geist",system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#412805;background:linear-gradient(100deg,#ebbd51,#dd9225);box-shadow:0 2px 8px -2px #dcb14980}.ssd__rail-badge--community{background:#7a869829;color:#798898}.ssd__rail-badge--community .ssd__rail-badge-dot{background:#798898}.ssd__rail-prompt{margin:0;font:400 var(--ssd-fs-prompt) var(--ssd-serif);line-height:1.15;letter-spacing:-.015em;color:var(--ssd-ink)}.ssd__rail-prompt-em{font-style:italic;color:var(--ssd-cat-active)}.ssd__rail-source{margin-top:10px;font:400 var(--ssd-fs-source) var(--ssd-serif);line-height:1.45;font-style:italic;color:var(--ssd-ink-muted)}.ssd__rail-source-seg.is-emph{color:var(--ssd-cat-active);font-style:normal;font-weight:600}.ssd__rail-fact{margin-top:14px;padding-top:14px;border-top:var(--bd-w) solid var(--ssd-rule);display:flex;align-items:flex-start;gap:10px;font:400 var(--ssd-fs-fact) var(--ssd-serif);line-height:1.45;color:var(--ssd-ink-muted)}.ssd__rail-fact-icon{color:var(--ssd-cat-active);flex:none;margin-top:1px;font-size:var(--ssd-fs-rail-icon);line-height:1;font-family:Segoe UI Symbol,"Apple Color Emoji","Noto Sans Symbols 2",Symbola,DejaVu Sans,system-ui,sans-serif}.ssd__rail-fact-text{flex:1;min-width:0}.ssd__rail-fact-text b{color:var(--ssd-ink);font-style:normal;font-weight:600}.ssd__rail-fact-sub{color:var(--ssd-ink-faint)}.ssd__rail-fact-seg{font-style:normal;font-weight:600}.ssd__rail-fact-seg.is-good{color:#2f9c63}.ssd__rail-fact-seg.is-yellow{color:#c08a2a}.ssd__rail-fact-seg.is-accent{color:var(--cat-active)}[data-v3theme=dark] .ssd__rail-fact-seg.is-good{color:#6fd49a}[data-v3theme=dark] .ssd__rail-fact-seg.is-yellow{color:#e6a93c}.ssd__rail-chips{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.ssd__rail-chip{display:inline-flex;align-items:center;padding:var(--ssd-chip-pad-y) var(--ssd-chip-pad-x);border-radius:999px;font:600 var(--ssd-fs-chip) "Geist",system-ui,sans-serif;line-height:1.2;letter-spacing:.02em;white-space:nowrap}.ssd__rail-chip.is-good{background:color-mix(in oklab,var(--ssd-good) 14%,transparent);color:var(--ssd-good)}.ssd__rail-chip.is-yellow{background:color-mix(in oklab,#c08a2a 16%,transparent);color:#c08a2a}html[data-mode=dark] .ssd__rail-chip.is-yellow{background:color-mix(in oklab,#e6a93c 18%,transparent);color:#e6a93c}.ssd__rail-chip.is-accent{background:color-mix(in oklab,var(--ssd-accent) 14%,transparent);color:var(--ssd-accent)}.ssd__rail-moves{padding-top:18px;margin-top:16px;border-top:var(--bd-w) solid var(--ssd-rule);margin-bottom:4px}.ssd__rail-moves-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.ssd__rail-moves-label{font:400 11px var(--ssd-serif);font-style:italic;color:var(--ssd-ink-muted);max-width:70%;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ssd__rail-moves-grid{font:500 13px JetBrains Mono,ui-monospace,monospace;display:grid;grid-template-columns:26px minmax(0,1fr) minmax(0,1fr);gap:3px 9px;align-items:center;min-width:0;max-height:168px;overflow-y:auto;scrollbar-width:thin}.ssd__rail-moves-grid::-webkit-scrollbar{width:4px}.ssd__rail-moves-grid::-webkit-scrollbar-thumb{background:#0000002e;border-radius:calc(2px * var(--r-scale))}[data-mode=dark] .ssd__rail-moves-grid::-webkit-scrollbar-thumb{background:#ffffff38}.ssd__rail-moves-elide{grid-column:1 / -1;color:var(--ssd-ink-faint);font:400 var(--ssd-fs-meta) var(--ssd-serif);font-style:italic;padding-bottom:2px}.ssd__rail-moves-num{color:var(--ssd-ink-faint);font-weight:500}.ssd__rail-moves-num.is-active{color:var(--ssd-cat-active);font-weight:700}.ssd__rail-moves-cell{padding:2px 6px;border-radius:calc(3px * var(--r-scale));cursor:pointer;transition:background .12s,color .12s;color:var(--ssd-ink-muted)}.ssd__rail-moves-cell:hover{background:var(--ssd-surface-2);color:var(--ssd-ink)}.ssd__rail-moves-cell.is-active{background:var(--ssd-cat-active-soft);color:var(--ssd-cat-active);font-weight:700}.ssd__rail-moves-cell--theory{box-shadow:inset 0 -2px #3b7affd9}.ssd__rail-moves-cell--theory:not(.is-active){background:#3b7aff1f;color:var(--ssd-ink)}.ssd__rail-moves-q{padding:3px 8px;border-radius:calc(4px * var(--r-scale));background:var(--ssd-cat-active-soft);box-shadow:inset 0 0 0 1px var(--ssd-cat-active);color:var(--ssd-cat-active);font-weight:700;text-align:center;justify-self:start}.ssd__rail-moves-dash{color:var(--ssd-ink-faint);padding-left:6px}.ssd__rail-stats{display:flex;justify-content:space-between;align-items:center;background:transparent;border:0;padding:10px 0;margin-top:18px;border-top:var(--bd-w) solid var(--ssd-rule);font:500 var(--ssd-fs-meta) "Geist",system-ui,sans-serif;color:var(--ssd-ink-muted);cursor:pointer;text-align:left}.ssd__rail-stats:hover{color:var(--ssd-ink)}.ssd__rail-stats-counts{display:inline-flex;align-items:center;gap:6px;font:600 var(--ssd-fs-mono) "JetBrains Mono",ui-monospace,monospace}.ssd__rail-stats-w{color:var(--ssd-good)}.ssd__rail-stats-l{color:var(--ssd-bad)}.ssd__rail-stats-dot{color:var(--ssd-ink-faint)}.ssd__rail-stats-arrow{color:var(--ssd-ink-faint);margin-left:4px}.ssd__rail-session{padding-top:16px;margin-top:16px;border-top:var(--bd-w) solid var(--ssd-rule)}.ssd__rail-session-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.ssd__rail-session-counts{font:500 var(--ssd-fs-mono) "JetBrains Mono",ui-monospace,monospace;color:var(--ssd-ink-muted)}.ssd__rail-session-dot{color:var(--ssd-ink-faint);margin:0 4px}.ssd__rail-session-left{color:var(--ssd-ink)}.ssd__rail-session-bar{display:flex;gap:3px;height:5px;margin-bottom:10px}.ssd__rail-session-seg{border-radius:calc(2px * var(--r-scale));opacity:.28}.ssd__rail-session-seg--review{background:var(--ssd-cat-review)}.ssd__rail-session-seg--new{background:var(--ssd-cat-new)}.ssd__rail-session-seg--drills{background:var(--ssd-cat-drills)}.ssd__rail-session-legend{display:flex;gap:14px;font:500 var(--ssd-fs-mono) "JetBrains Mono",ui-monospace,monospace;color:var(--ssd-ink-muted);flex-wrap:wrap}.ssd__rail-session-legend>span{display:inline-flex;align-items:center;gap:5px}.ssd__rail-session-bullet{width:7px;height:7px;border-radius:calc(7px * var(--r-scale));display:inline-block}.ssd__rail-session-bullet--review{background:var(--ssd-cat-review)}.ssd__rail-session-bullet--new{background:var(--ssd-cat-new)}.ssd__rail-session-bullet--drills{background:var(--ssd-cat-drills)}.ssd__eyebrow{font:600 var(--ssd-fs-eyebrow) "Geist",system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--ssd-ink-faint)}.ssd__fsrs-toast{position:absolute;top:36px;right:32px;z-index:30;pointer-events:none;background:var(--ssd-surface);border:var(--bd-w) solid var(--ssd-cat-theory);border-left:3px solid var(--ssd-cat-theory);border-radius:calc(6px * var(--r-scale));padding:10px 14px;display:flex;align-items:center;gap:10px;box-shadow:0 8px 28px #0000001f,0 2px 6px #0000000d;white-space:nowrap;min-width:200px;animation:ssd-toast-slide 2.6s ease-out forwards}.ssd__fsrs-toast-text{display:flex;flex-direction:column;gap:1px}.ssd__fsrs-toast-eyebrow{color:var(--ssd-cat-theory)}.ssd__fsrs-toast-line{font:400 15px var(--ssd-serif);line-height:1.15;margin-top:1px}.ssd__fsrs-toast-from{font-style:italic;color:var(--ssd-ink-muted)}.ssd__fsrs-toast-to{font-style:italic;color:var(--ssd-cat-theory)}.ssd__fsrs-toast-arrow{margin:0 6px;color:var(--ssd-ink-faint)}@keyframes ssd-toast-slide{0%{opacity:0;transform:translate(20px)}10%{opacity:1;transform:translate(0)}85%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(8px)}}.ssd__fsrs-mastered{position:absolute;top:30px;bottom:80px;left:17px;right:32px;z-index:35;pointer-events:none;animation:ssd-master-in .6s ease-out forwards}.ssd__fsrs-mastered-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#1f1a141a;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);border-radius:calc(4px * var(--r-scale))}.ssd__fsrs-mastered-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:16px}.ssd__fsrs-mastered-title{margin:0;font:400 32px/1 var(--ssd-serif);letter-spacing:-.02em;color:var(--ssd-ink)}.ssd__fsrs-mastered-title em{font-style:italic;color:var(--ssd-cat-games)}.ssd__fsrs-confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.ssd__fsrs-confetti-dot{position:absolute;top:100%;width:6px;height:6px;opacity:0}.ssd__fsrs-confetti-dot.c0{animation:ssd-confetti-0 2.4s ease-out forwards}.ssd__fsrs-confetti-dot.c1{animation:ssd-confetti-1 2.4s ease-out forwards}.ssd__fsrs-confetti-dot.c2{animation:ssd-confetti-2 2.4s ease-out forwards}@keyframes ssd-master-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes ssd-confetti-0{0%{opacity:0;transform:translateY(0) translate(0) rotate(0)}10%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(-260px) translate(-12px) rotate(180deg)}}@keyframes ssd-confetti-1{0%{opacity:0;transform:translateY(0) translate(0) rotate(0)}10%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(-290px) translate(18px) rotate(-220deg)}}@keyframes ssd-confetti-2{0%{opacity:0;transform:translateY(0) translate(0) rotate(0)}10%{opacity:1}85%{opacity:1}to{opacity:0;transform:translateY(-310px) translate(2px) rotate(140deg)}}@media (prefers-reduced-motion: reduce){.ssd__fsrs-toast,.ssd__fsrs-mastered,.ssd__fsrs-confetti-dot{animation:none}}@media (max-width: 880px){.ssd__main{grid-template-columns:1fr}.ssd__main:before{display:none}.ssd__rail,.ssd__rail--with-captured{padding-left:0;border-left:0;border-top:var(--bd-w) solid var(--ssd-rule);padding-top:18px;margin-top:18px}.ssd__board-col{padding-right:0}}.ssd__menu-wrap{position:relative;display:inline-flex;align-items:center}.ssd__menu-pop{position:absolute;bottom:calc(100% + 6px);right:0;min-width:180px;padding:6px;background:var(--paper, #faf4e8);border:var(--bd-w) solid var(--line, rgba(20, 25, 40, .1));border-radius:calc(10px * var(--r-scale));box-shadow:0 14px 36px #0000002e;display:flex;flex-direction:column;gap:1px;z-index:50;font:13px/1.3 Inter,Manrope,ui-sans-serif,sans-serif}.ssd__menu-section{font:500 10px/1 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint, rgba(20, 25, 40, .5));padding:6px 8px 3px;cursor:default}.ssd__menu-section--space{padding-top:10px;border-top:var(--bd-w) solid var(--line, rgba(20, 25, 40, .08));margin-top:4px}.ssd__menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;text-align:left;padding:7px 9px;border-radius:calc(6px * var(--r-scale));color:var(--ink, #1f2230);font:400 13px/1.2 Inter,Manrope,ui-sans-serif,sans-serif;cursor:pointer}.ssd__menu-item:hover{background:#0000000a}.ssd__menu-item.is-active{font-weight:600;background:#0000000a}[data-mode=dark] .ssd__menu-pop{background:#1f2025;border-color:#fffaeb1a}[data-mode=dark] .ssd__menu-item{color:#e8e6dd}[data-mode=dark] .ssd__menu-item:hover,[data-mode=dark] .ssd__menu-item.is-active{background:#fffaeb0f}[data-mode=dark] .ssd__menu-section{color:#fffaeb73}[data-mode=dark] .ssd__menu-section--space{border-top-color:#fffaeb14}.ssd__rail--explore{gap:14px}.ssd__rail-explore-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:var(--bd-w) solid var(--ssd-rule)}.ssd__rail-explore-label{display:inline-flex;align-items:center;gap:8px;font:600 var(--ssd-fs-eyebrow) "Geist",system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--ssd-ink)}.ssd__rail--play-cpu .ssd__rail-explore-label{color:var(--ssd-good, #2f9c63)}.ssd__rail-engine-dot{width:8px;height:8px;border-radius:50%;background:var(--ssd-good, #2f9c63);box-shadow:0 0 0 3px color-mix(in oklab,var(--ssd-good, #2f9c63) 20%,transparent)}.ssd__rail-engine-dot.is-thinking{animation:ssd-rail-eng-pulse 1.2s ease-in-out infinite}@keyframes ssd-rail-eng-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.7);opacity:.6}}.ssd__rail-explore-card{padding:10px 12px;background:var(--ssd-paper, var(--ssd-bg-elevated, transparent));border:var(--bd-w) solid var(--ssd-rule);border-radius:calc(10px * var(--r-scale))}.ssd__rail-explore-scrub{display:flex;gap:4px;margin-bottom:6px}.ssd__rail-explore-scrub button{flex:1;padding:4px 0;border:var(--bd-w) solid var(--ssd-rule);background:transparent;color:var(--ssd-ink);border-radius:calc(5px * var(--r-scale));font-size:12px;font-family:var(--ssd-mono, "JetBrains Mono", monospace);cursor:pointer}.ssd__rail-explore-scrub button:hover{background:color-mix(in oklab,var(--ssd-ink) 6%,transparent)}.ssd__rail-explore-card .pgn-tree{display:grid;grid-template-columns:22px 1fr 1fr;gap:2px 6px;align-items:center;align-content:start;font:500 12px/1.35 var(--ssd-mono, "JetBrains Mono", monospace);overflow-y:auto;max-height:140px}.ssd__rail-explore-card .pgn-tree .mn{color:var(--ssd-ink-muted);font-size:11px}.ssd__rail-explore-card .pgn-tree .mv{padding:2px 5px;border-radius:calc(4px * var(--r-scale));cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ssd__rail-explore-card .pgn-tree .mv:hover{background:color-mix(in oklab,var(--ssd-ink) 8%,transparent)}.ssd__rail-explore-card .pgn-tree .mv.current{background:var(--ssd-cat-active-soft);color:var(--ssd-cat-active);font-weight:700}.ssd__rail-explore-card .engine-head,.ssd__rail-explore-card .db-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11.5px}.ssd__rail-explore-card .eng-pill,.ssd__rail-explore-card .db-toggle{font-size:11px;padding:3px 8px;border-radius:calc(5px * var(--r-scale));border:var(--bd-w) solid var(--ssd-rule);background:transparent;color:var(--ssd-ink);cursor:pointer;white-space:nowrap}.ssd__rail-explore-card .eng-pill.active,.ssd__rail-explore-card .db-toggle.active{background:var(--ssd-cat-active-soft);color:var(--ssd-cat-active);border-color:var(--ssd-cat-active)}.ssd__rail-explore-card .eng-eval{font-weight:700;font-size:12px}.ssd__rail-explore-card .eng-bar{flex:1;height:4px;background:color-mix(in oklab,var(--ssd-ink) 12%,transparent);border-radius:calc(2px * var(--r-scale));overflow:hidden;min-width:30px}.ssd__rail-explore-card .eng-bar-fill{display:block;height:100%;background:var(--ssd-ink)}.ssd__rail-explore-card .eng-depth{font-size:10.5px;color:var(--ssd-ink-muted)}.ssd__rail-explore-card .pv-list{display:flex;flex-direction:column;gap:2px;margin-top:6px;font-size:11.5px;line-height:1.35;max-height:78px;overflow:hidden}.ssd__rail-explore-card .pv-list .pv-row{display:flex;gap:6px;min-width:0;align-items:baseline}.ssd__rail-explore-card .pv-list .pv-row .score{color:var(--ssd-ink-muted);font-weight:600;flex:none;min-width:32px;font-size:11px}.ssd__rail-explore-card .pv-list .pv-row .moves{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--ssd-mono, "JetBrains Mono", monospace)}.ssd__rail-explore-card .pv-list .pv-row .mv-clickable{cursor:pointer;color:var(--ssd-ink)}.ssd__rail-explore-card .pv-list .pv-row .mv-clickable:hover{color:var(--ssd-cat-active);text-decoration:underline}.ssd__rail-explore-card .db-head h3{margin:0;padding:0;font:inherit;line-height:1}.ssd__rail-explore-card .db-count{font-size:11px;color:var(--ssd-ink-muted)}.ssd__rail-explore-card .db-row{display:grid;grid-template-columns:minmax(0,56px) minmax(0,1fr) minmax(0,auto);gap:6px;align-items:center;font-size:11.5px;padding:2px 0}.ssd__rail-explore-card .db-row .move{font-weight:600;font-family:var(--ssd-mono, "JetBrains Mono", monospace)}.ssd__rail-explore-card .db-row .games{display:none}.ssd__rail-explore-card .db-row .bar{display:flex;height:6px;border-radius:calc(3px * var(--r-scale));overflow:hidden}.ssd__rail-explore-card .db-row .bar .w{background:#d5cdc0}.ssd__rail-explore-card .db-row .bar .d{background:#877f73}.ssd__rail-explore-card .db-row .bar .b{background:#332d23}.ssd__rail-explore-card .db-row .bar>span{display:flex;align-items:center;justify-content:center;font-size:8px;color:#000000a6}.ssd__rail-explore-card .db-row .pct{font-size:10.5px;color:var(--ssd-ink-muted);white-space:nowrap}.result-card{--rc-paper: var(--bg1);--rc-paper-2: var(--bg2);--rc-card: var(--card2);--rc-line: var(--border2);--rc-line-soft: var(--border);--rc-ink: var(--text);--rc-ink-2: var(--muted);--rc-ink-3: var(--muted2);--rc-ink-4: var(--muted2);--rc-moss-50: #ecf2e6;--rc-moss-100: #d6e3ca;--rc-moss-200: #adc89a;--rc-moss-500: #5a8b4a;--rc-moss-600: #426d34;--rc-moss-700: #2e4f25;--rc-amb-50: #fbf0d8;--rc-amb-100: #f5dfa5;--rc-amb-200: #e6c374;--rc-amb-500: #c0921f;--rc-amb-600: #97700f;--rc-amb-700: #6f520a;--rc-terra-50: #f8eae3;--rc-terra-100: #f0d2c2;--rc-terra-200: #dba88a;--rc-terra-500: #b85a3a;--rc-terra-600: #984026;--rc-terra-700: #6f2c17;--rc-neutral-50: color-mix(in srgb, var(--text) 5%, var(--card2));--rc-neutral-100: color-mix(in srgb, var(--text) 12%, var(--card2));--rc-tone-50: var(--rc-neutral-50);--rc-tone-100: var(--rc-neutral-100);--rc-tone-200: var(--rc-neutral-100);--rc-tone-600: var(--rc-ink-3);--rc-tone-700: var(--rc-ink-2);--rc-tone-band: var(--rc-ink-3);--rc-serif: var(--font-serif);--rc-mono: var(--font-mono);position:relative;width:100%;max-width:440px;background:var(--rc-card);border:var(--bd-w) solid var(--rc-line);border-radius:calc(14px * var(--r-scale));box-shadow:var(--elev-1);color:var(--rc-ink)}.result-card--playable{--rc-tone-50: var(--rc-moss-50);--rc-tone-100: var(--rc-moss-100);--rc-tone-200: var(--rc-moss-200);--rc-tone-600: var(--rc-moss-600);--rc-tone-700: var(--rc-moss-700);--rc-tone-band: var(--rc-moss-600)}.result-card--inaccuracy{--rc-tone-50: var(--rc-amb-50);--rc-tone-100: var(--rc-amb-100);--rc-tone-200: var(--rc-amb-200);--rc-tone-600: var(--rc-amb-600);--rc-tone-700: var(--rc-amb-700);--rc-tone-band: var(--rc-amb-600)}.result-card--blunder{--rc-tone-50: var(--rc-terra-50);--rc-tone-100: var(--rc-terra-100);--rc-tone-200: var(--rc-terra-200);--rc-tone-600: var(--rc-terra-600);--rc-tone-700: var(--rc-terra-700);--rc-tone-band: var(--rc-terra-600)}.result-card--editorial{padding:18px 22px}.result-card--editorial .rc__head{margin-bottom:16px}.result-card--bold{overflow:hidden;padding:0}.result-card--bold .rc__band{background:var(--rc-tone-band);color:#fff;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;position:relative}.rc__eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--rc-mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--rc-tone-700)}.rc__eyebrow--band{color:#fff;letter-spacing:.18em}.rc__eyebrow-label{line-height:1}.rc__eyebrow-sep{color:var(--rc-ink-4);letter-spacing:0}.rc__eyebrow-sep--band{color:#ffffff80}.rc__eyebrow-desc{color:var(--rc-ink-3)}.rc__eyebrow-desc--band{color:#ffffffd9;font-weight:500}.rc__dot{width:7px;height:7px;border-radius:999px;background:var(--rc-tone-600);box-shadow:0 0 0 3px var(--rc-tone-50);flex-shrink:0}.rc__dot--band{background:#fffffff2;box-shadow:none}.rc__close{position:absolute;top:14px;right:14px;width:26px;height:26px;border-radius:999px;border:none;background:#0000000a;color:var(--rc-ink-3);font-size:14px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0;transition:background .12s ease,color .12s ease;font-family:inherit}.rc__close:hover{background:#00000012;color:var(--rc-ink)}.rc__close--band{position:static;width:22px;height:22px;background:#ffffff29;color:#ffffffe0;font-size:13px}.rc__close--band:hover{background:#ffffff47;color:#fff}.rc__body{display:grid;grid-template-columns:1fr 1fr}.rc__body--editorial .rc__cell--theory{padding-right:16px;border-right:var(--bd-w) solid var(--rc-line-soft)}.rc__body--editorial .rc__cell--played{padding-left:16px}.rc__body--bold .rc__cell--theory{padding:14px 16px 16px;background:var(--rc-paper-2);border-right:var(--bd-w) solid var(--rc-line-soft)}.rc__body--bold .rc__cell--played{padding:14px 16px 16px;background:var(--rc-tone-50)}.rc__label{display:flex;align-items:center;gap:7px}.rc__label--editorial{font-family:var(--rc-serif);font-style:italic;font-size:13px;color:var(--rc-ink-3);margin-bottom:6px;letter-spacing:.005em}.rc__label--editorial.rc__label--playable{color:var(--rc-moss-700)}.rc__label--editorial.rc__label--inaccuracy{color:var(--rc-amb-700)}.rc__label--editorial.rc__label--blunder{color:var(--rc-terra-700)}.rc__label--bold{font-family:var(--rc-mono);font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px}.rc__label--bold.rc__label--theory,.rc__label--bold.rc__label--playable{color:var(--rc-moss-700)}.rc__label--bold.rc__label--inaccuracy{color:var(--rc-amb-700)}.rc__label--bold.rc__label--blunder{color:var(--rc-terra-700)}.rc__label-dot{width:6px;height:6px;border-radius:999px;flex-shrink:0}.rc__label-dot--theory,.rc__label-dot--playable{background:var(--rc-moss-600)}.rc__label-dot--inaccuracy{background:var(--rc-amb-600)}.rc__label-dot--blunder{background:var(--rc-terra-600)}.rc__move-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.rc__move{font-family:var(--rc-mono);font-weight:600;font-size:24px;letter-spacing:-.02em;line-height:1;color:var(--rc-ink)}.rc__move--lg{font-size:26px}.rc__chip{font-family:var(--rc-mono);font-weight:600;border-radius:999px;border:var(--bd-w) solid;white-space:nowrap}.rc__chip--sm{font-size:11.5px;padding:2px 8px}.rc__chip--lg{font-size:13px;padding:3px 9px}.rc__chip--neutral{color:var(--rc-ink-2);background:var(--rc-neutral-50);border-color:var(--rc-neutral-100)}.rc__chip--playable{color:var(--rc-moss-700);background:var(--rc-moss-50);border-color:var(--rc-moss-100)}.rc__chip--inaccuracy{color:var(--rc-amb-700);background:var(--rc-amb-50);border-color:var(--rc-amb-100)}.rc__chip--blunder{color:var(--rc-terra-700);background:var(--rc-terra-50);border-color:var(--rc-terra-100)}.rc__footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.result-card--editorial .rc__footer{margin-top:16px;padding-top:12px;border-top:var(--bd-w) solid var(--rc-line-soft)}.result-card--bold .rc__footer{padding:10px 16px;border-top:var(--bd-w) solid var(--rc-line-soft);background:var(--rc-card)}.rc__game-line{font-family:var(--rc-serif);font-style:italic;font-size:13.5px;color:var(--rc-ink-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rc__game-year{font-family:var(--rc-mono);font-size:11px;color:var(--rc-ink-3);letter-spacing:.08em}body.session-handoff-mobile .result-card{width:calc(100% + 28px);max-width:none;margin-left:-14px;margin-right:-14px;border-radius:0;border-left:none;border-right:none}[data-mode=dark] .result-card{box-shadow:0 4px 16px #00000059,0 1px #ffffff0a inset;--rc-moss-50: color-mix(in oklch, var(--good) 18%, transparent);--rc-moss-100: color-mix(in oklch, var(--good) 34%, transparent);--rc-moss-600: color-mix(in oklch, var(--good) 68%, black);--rc-moss-700: var(--good);--rc-amb-50: color-mix(in oklch, var(--accent) 18%, transparent);--rc-amb-100: color-mix(in oklch, var(--accent) 34%, transparent);--rc-amb-600: color-mix(in oklch, var(--accent) 68%, black);--rc-amb-700: var(--accent);--rc-terra-50: color-mix(in oklch, var(--bad) 18%, transparent);--rc-terra-100: color-mix(in oklch, var(--bad) 34%, transparent);--rc-terra-600: color-mix(in oklch, var(--bad) 68%, black);--rc-terra-700: var(--bad)}[data-mode=dark] .result-card--bold .rc__cell--theory{background:var(--rc-paper-2)}[data-mode=dark] .rc__close{background:#ffffff14;color:var(--rc-ink-2)}[data-mode=dark] .rc__close:hover{background:#ffffff24;color:var(--rc-ink)}.theoryContainer{background:var(--bg);min-height:calc(100vh - 80px);max-width:1320px!important;margin:0 auto;padding:var(--s-5, 24px) var(--s-6, 32px) var(--s-9, 96px)!important}body:has(.theoryContainer){background:var(--bg)}.theoryContainer>.boardCard,.theoryContainer .card.boardCard{background:transparent!important;border:none!important;box-shadow:var(--elev-1);padding:0!important}.theoryContainer{--bg: var(--bg0);--card: var(--card);--bg-soft: var(--bg1);--ink: var(--text);--ink-2: var(--text);--ink-3: var(--muted);--ink-4: var(--muted2);--line: var(--border);--line-soft: var(--border);--accent: var(--accent);--accent-bg: color-mix(in srgb, var(--accent) 16%, var(--card));--accent-fg: #ffffff;--m-1: oklch(.7 .1 25);--m-2: oklch(.78 .13 90);--m-3: oklch(.72 .12 150);--m-4: oklch(.7 .11 230);--good: var(--good);--warn: var(--warn);--bad: var(--bad);--serif: var(--font-serif);--sans: var(--font-sans);--mono: var(--font-mono);--t-display: clamp(40px, 6vw, 72px);--t-h1: clamp(32px, 4.2vw, 56px);--t-h2: clamp(24px, 2.8vw, 36px);--t-h3: 20px;--t-body-lg: 17px;--t-body: 14px;--t-small: 13px;--t-mini: 12px;--t-kicker: 11px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--s-9: 96px;--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgba(20,15,8,.04);--shadow-md: 0 4px 12px -4px rgba(20,15,8,.08);--shadow-lg: 0 12px 36px -10px rgba(20,15,8,.12);--ease-handoff: cubic-bezier(.2, .8, .2, 1)}.drill-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-5);margin-bottom:var(--s-5);flex-wrap:wrap}.theoryContainer .boardTopRow.trainerTopRow:empty,.theoryContainer .boardTopRow.trainerTopRow:has(.trainerTopLeft:empty+.trainerTopRight:empty){display:none!important}.drill-head .left{display:flex;align-items:center;gap:var(--s-4);flex-wrap:wrap}.mode-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:var(--r-pill);font:600 11px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;border:var(--bd-w) solid currentColor}.mode-pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.mode-theory{color:#0074c8;color:oklch(.55 .16 250)}.mode-mistakes{color:var(--bad)}.mode-tactics{color:#8771de}.mode-endgames{color:#008474;color:oklch(.55 .13 180)}.mode-goodmoves{color:var(--good)}.mode-games{color:var(--accent)}.drill-title,.theoryContainer .drill-title{font:400 28px/1.15 var(--serif)!important;letter-spacing:-.4px;margin:0;color:var(--ink)}.drill-title em{font-style:italic;color:var(--accent)}.drill-meta{font:400 12px/1.3 var(--sans);color:var(--ink-3);margin-top:4px}.drill-meta strong{color:var(--ink-2);font-weight:500}.drill-counter{font:500 12px/1 var(--mono);color:var(--ink-3);padding:8px 12px;background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-sm);white-space:nowrap}@media (max-width: 760px){.theoryContainer{padding-left:14px!important;padding-right:14px!important;padding-top:14px!important}.theoryContainer .drill-title,.drill-title{font-size:21px!important;line-height:1.18!important;letter-spacing:-.2px}.theoryContainer .drill-head,.drill-head{margin-bottom:var(--s-3)!important;gap:var(--s-2) var(--s-3)!important}.theoryContainer .drill-meta,.drill-meta{margin-top:2px}.theoryContainer .mode-tabs,.mode-tabs{margin-bottom:var(--s-3);padding-bottom:var(--s-2)}}.mode-tabs{display:flex;gap:6px;margin-bottom:var(--s-5);border-bottom:var(--bd-w) solid var(--line);padding-bottom:var(--s-3);flex-wrap:wrap}.mode-tabs .tab,.theoryContainer .mode-tabs .tab{padding:8px 14px!important;font:500 13px/1 var(--sans)!important;color:var(--ink-3);cursor:pointer;border:var(--bd-w) solid transparent!important;border-radius:var(--r-md)!important;background:transparent;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.mode-tabs .tab:hover{color:var(--ink);background:var(--bg-soft)}.mode-tabs .tab.active,.theoryContainer .mode-tabs .tab.active{background:var(--card)!important;border-color:var(--line)!important;border-bottom-color:var(--line)!important;color:var(--ink)!important;font-weight:600!important;box-shadow:inset 0 -2px 0 var(--accent)}.mode-tabs .tab[data-mode=theory].active{box-shadow:inset 0 -2px #0074c8;box-shadow:inset 0 -2px oklch(.55 .16 250)}.mode-tabs .tab[data-mode=mistakes].active{box-shadow:inset 0 -2px 0 var(--bad)}.mode-tabs .tab[data-mode=tactics].active{box-shadow:inset 0 -2px #8771de}.mode-tabs .tab[data-mode=endgames].active{box-shadow:inset 0 -2px #008474;box-shadow:inset 0 -2px oklch(.55 .13 180)}.mode-tabs .tab[data-mode=goodmoves].active{box-shadow:inset 0 -2px 0 var(--good)}.mode-tabs .tab[data-mode=games].active{box-shadow:inset 0 -2px 0 var(--accent)}.mode-tabs .tab .count{font:500 10px/1 var(--mono);color:var(--ink-4);padding:2px 6px;background:var(--bg-soft);border-radius:999px}.mode-tabs .tab.active .count{background:var(--accent-bg);color:var(--accent)}.mode-tabs .tab[data-mode=theory].active .count{background:#0074c81a;background:oklch(.55 .16 250 / .1);color:#0074c8;color:oklch(.55 .16 250)}.mode-tabs .tab[data-mode=mistakes].active .count{background:#de4e4b1a;color:var(--bad)}.mode-tabs .tab[data-mode=tactics].active .count{background:#8771de1a;color:#8771de}.mode-tabs .tab[data-mode=endgames].active .count{background:#0084741a;background:oklch(.55 .13 180 / .1);color:#008474;color:oklch(.55 .13 180)}.mode-tabs .tab[data-mode=goodmoves].active .count{background:#4ca5631a;color:var(--good)}.mode-tabs .tab[data-mode=games].active .count{background:var(--accent-bg);color:var(--accent)}.mode-tabs .spacer{flex:1}.mode-tabs .filter{font:400 12px/1 var(--sans);color:var(--ink-3);padding:8px 10px;background:transparent;border:var(--bd-w) solid var(--line);border-radius:var(--r-sm);cursor:pointer}.verdict{margin:0;padding:14px 18px;border-radius:var(--r-md);display:flex;align-items:center;gap:12px;font:500 14px/1.3 var(--sans);border:var(--bd-w) solid}.verdict .icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:600 16px/1 var(--sans);flex-shrink:0}.verdict .body{flex:1;min-width:0}.verdict .head{font-weight:600}.verdict .sub{font:400 12px/1.4 var(--sans);margin-top:2px;opacity:.85}.verdict-correct{background:#5bbd741a;border-color:#5bbd7466;color:var(--good)}.verdict-correct .icon{background:var(--good);color:#fff}.verdict-inaccurate{background:#eba9411a;border-color:#eba94166;color:var(--warn)}.verdict-inaccurate .icon{background:var(--warn);color:#fff}.verdict-blunder{background:#fc58551a;border-color:#fc585566;color:var(--bad)}.verdict-blunder .icon{background:var(--bad);color:#fff}.theoryContainer .reviewToolStar,.theoryContainer .reviewToolNote{box-sizing:border-box;height:28px;border:var(--bd-w) solid var(--line);background:transparent;color:var(--ink-3);border-radius:var(--r-sm);padding:0 10px;font:500 11px/1 var(--sans);cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:color .12s,border-color .12s;white-space:nowrap;flex-shrink:0}.theoryContainer .reviewAnnotationBar .reviewToolSep{display:inline-block;width:1px;height:18px;background:var(--line);margin:0 6px;flex-shrink:0;align-self:center}.theoryContainer .reviewToolStar:hover,.theoryContainer .reviewToolNote:hover{color:var(--ink);border-color:var(--ink-3)}.theoryContainer .reviewToolStar.active{color:#d8b349;border-color:#d8b349}@media (min-width: 1101px){.theoryContainer .reviewAnnotationBar.tool-row{display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:6px;align-items:center}.theoryContainer .reviewAnnotationBar .reviewAnnotationComment{display:none!important}.theoryContainer .reviewAnnotationBar .reviewNagRow,.theoryContainer .reviewAnnotationBar .reviewArrowRow{display:contents}.theoryContainer .reviewAnnotationBar .reviewArrowRow>.muted{font:500 10px/1 var(--sans);letter-spacing:1.2px;text-transform:uppercase;color:var(--ink-3);margin:0 4px 0 0}.theoryContainer .reviewAnnotationBar .reviewArrowBtn{width:18px!important;height:18px!important;min-width:18px!important;padding:0!important;border-radius:50%;border:2px solid transparent;background:var(--arrow-color, var(--accent))!important;flex-shrink:0;overflow:hidden}.theoryContainer .reviewAnnotationBar .reviewArrowBtn>svg{display:none}.theoryContainer .reviewAnnotationBar .reviewArrowBtn.active{border-color:currentColor}.theoryContainer .reviewAnnotationBar .reviewNagBtn.annot.good{color:#4ca563!important}.theoryContainer .reviewAnnotationBar .reviewNagBtn.annot.bad{color:#de4e4b!important}.theoryContainer .reviewAnnotationBar .reviewNagBtn.annot.brilliant{color:#8771de!important}}@media (min-width: 880px){.reviewAnnotatePanel--mobile{display:none!important}}@media (max-width: 879.98px){.reviewAnnotatePanel--desktop{display:none!important}}.coach-action-bar{display:flex;align-items:center;gap:6px;padding:var(--s-3) var(--s-4);background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);flex-wrap:wrap;box-shadow:var(--elev-2)}@media (min-width: 880px){.theoryContainer .coach-action-bar .failCounter{display:none}}@media (max-width: 879.98px){.theoryContainer .coach-action-bar .coach-scrub{display:none}}.theoryContainer .coach-action-bar .failGameInfo{display:none}.theoryContainer .coach-action-bar .coach-scrub{flex:1;height:4px;background:var(--bg-soft);border-radius:calc(2px * var(--r-scale));position:relative;min-width:80px;margin:0 6px}.theoryContainer .coach-action-bar .coach-scrub-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);border-radius:calc(2px * var(--r-scale));transition:width .4s var(--ease-handoff)}@media (min-width: 880px){.theoryContainer .reviewProgressBar{display:none}}@media (min-width: 880px){.theoryContainer .coach-action-bar .failNavPosJump,.theoryContainer .coach-action-bar .coach-hide-on-desktop{display:none!important}.theoryContainer .coach-action-bar .failNavToggle{display:grid!important;width:36px;height:36px;border:var(--bd-w) solid var(--line);background:transparent;border-radius:var(--r-sm);color:var(--ink-3);place-items:center;cursor:pointer;font:500 16px/1 var(--sans);margin-left:auto;transition:border-color .12s ease,color .12s ease,background .12s ease}.theoryContainer .coach-action-bar .failNavToggle:hover{color:var(--ink);background:var(--bg-soft)}.theoryContainer .coach-action-bar .failNavToggle.active{color:var(--ink);border-color:var(--ink-3);background:var(--bg-soft)}}.theoryContainer .review-filter-bar-row .repLegTip-wrap{display:none!important}.theoryContainer .review-filter-bar{border-bottom:var(--bd-w) solid var(--line)!important;margin:0 0 var(--s-5) 0!important;padding:0 0 var(--s-3) 0!important}.theoryContainer .review-filter-bar-cats.mode-tabs{border-bottom:none!important;padding-bottom:0!important;margin-bottom:0!important}.theoryContainer .review-filter-bar-row{flex-wrap:nowrap!important;align-items:center;gap:8px}.theoryContainer .review-filter-bar-cats{flex:1 1 auto;min-width:0;flex-wrap:wrap}.theoryContainer .review-filter-bar-row .review-filter-select{font:400 12px/1 var(--sans)!important;color:var(--ink-3)!important;padding:8px 16px 8px 10px!important;background-color:transparent!important;border:var(--bd-w) solid var(--line)!important;border-radius:var(--r-sm)!important;cursor:pointer;height:auto!important;width:auto!important;max-width:none!important;flex-shrink:0;-moz-appearance:none!important;appearance:none!important;-webkit-appearance:none!important;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%)!important;background-position:calc(100% - 8px) 50%,calc(100% - 4px) 50%!important;background-size:4px 4px,4px 4px!important;background-repeat:no-repeat!important}.theoryContainer .review-filter-bar-row .review-filter-select:hover{color:var(--ink)!important;border-color:var(--ink-4)!important}.theoryContainer .review-filter-bar-row .review-filter-toggle{display:inline-flex!important;align-items:center;justify-content:center;font:400 13px/1 var(--sans);color:var(--ink-3);padding:0;width:30px;height:30px;background:transparent;border:var(--bd-w) solid var(--line);border-radius:var(--r-sm);cursor:pointer;flex-shrink:0}.theoryContainer .review-filter-bar-row .review-filter-toggle:hover{color:var(--ink);border-color:var(--ink-4)}.theoryContainer .review-context-bar{background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);padding:var(--s-4) var(--s-5);margin:0}.theoryContainer .review-context-bar .review-context-badge,.theoryContainer .review-context-bar .review-context-result{display:none}.coach-action-bar .nav-btn{width:36px;height:36px;border:var(--bd-w) solid var(--line);background:transparent;border-radius:var(--r-sm);cursor:pointer;color:var(--ink-2);display:grid;place-items:center;font-size:15px;transition:background .12s var(--ease-handoff),color .12s var(--ease-handoff)}.coach-action-bar .nav-btn:hover:not(:disabled){background:var(--bg-soft);color:var(--ink)}.coach-action-bar .nav-btn:disabled{opacity:.4;cursor:not-allowed}.coach-action-bar .scrub{flex:1;height:4px;background:var(--bg-soft);border-radius:calc(2px * var(--r-scale));position:relative;min-width:80px}.coach-action-bar .scrub .fill{position:absolute;top:0;right:0;bottom:0;left:0;width:28%;background:var(--accent);border-radius:calc(2px * var(--r-scale));transition:width .4s var(--ease-handoff)}.coach-action-bar .btn{padding:9px 14px;font-size:13px}.coach-action-bar .ghost{background:transparent;border:var(--bd-w) solid var(--line);color:var(--ink);padding:9px 14px;border-radius:var(--r-sm);cursor:pointer;font:600 13px/1 var(--sans);transition:background .12s var(--ease-handoff)}.coach-action-bar .ghost:hover{background:var(--bg-soft)}.theoryContainer .coach-action-bar .btnSkip:not(.btnDoneDismissed){background:var(--accent)!important;color:var(--accent-fg)!important;border:var(--bd-w) solid var(--accent)!important;border-radius:var(--r-sm)!important;font:600 13px/1 var(--sans);padding:9px 14px;box-shadow:0 1px 2px #0000000a,0 4px 12px -4px #c74c3d66!important}.theoryContainer .coach-action-bar .btnSkip:not(.btnDoneDismissed):hover{transform:translateY(-1px);box-shadow:0 1px 2px #0000000a,0 6px 16px -4px #c74c3d80!important}.coach-action-bar .btn-reveal-on{background:var(--bg-soft)!important;color:var(--ink)!important;border:var(--bd-w) solid var(--line)!important}.coach-action-bar .menu{width:36px;height:36px;border:var(--bd-w) solid var(--line);background:transparent;border-radius:var(--r-sm);cursor:pointer;color:var(--ink-3);font:500 16px/1 var(--sans);display:grid;place-items:center}.coach-action-bar .menu:hover{color:var(--ink);background:var(--bg-soft)}.coach{display:flex;flex-direction:column;gap:var(--s-4)}.coach-card{background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);padding:var(--s-5) var(--s-5)}.coach-card .label{font:500 11px/1 var(--sans);letter-spacing:1.6px;color:var(--ink-3);text-transform:uppercase;margin-bottom:12px}.coach-narrative{font:400 18px/1.5 var(--serif);color:var(--ink);margin:0;text-wrap:pretty}.coach-narrative em{color:var(--accent);font-style:italic}.coach-narrative .bad{color:var(--bad);font-weight:500}.coach-narrative .good{color:var(--good);font-weight:500}.coach-narrative .mono{font-family:var(--mono);font-size:14px;font-style:normal}.engine-card .head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.engine-card .head .label{margin:0;flex:1}.engine-card .head .pill{font:500 9px/1 var(--mono);color:var(--accent);background:var(--accent-bg);padding:3px 6px;border-radius:calc(3px * var(--r-scale));text-transform:uppercase;letter-spacing:.5px}.engine-card .head .depth{font:400 11px/1 var(--mono);color:var(--ink-4)}.eval-line{display:grid;grid-template-columns:56px 1fr;gap:10px;align-items:center;padding:8px 10px;border-radius:var(--r-sm);font:400 13px/1.4 var(--mono);margin-bottom:4px;transition:background .12s}.eval-line:hover{background:var(--bg-soft)}.eval-line .score{font:600 13px/1 var(--mono);text-align:right}.eval-line .score.pos{color:var(--good)}.eval-line .score.neg{color:var(--bad)}.eval-line .score.zero{color:var(--ink-3)}.eval-line .moves{color:var(--ink-2);font-size:12px}.eval-line .moves .first{color:var(--ink);font-weight:500}.eval-line.played{background:#fc585514}.eval-line.played .score{color:var(--bad)}.eval-line.best{background:#5bbd7414;border:var(--bd-w) solid oklch(.72 .14 150 / .3)}.moves-card{padding:0;overflow:hidden}.moves-card .head{padding:var(--s-3) var(--s-4);display:flex;align-items:center;justify-content:space-between;border-bottom:var(--bd-w) solid var(--line-soft)}.moves-card .head .label{margin:0}.moves-card .head .opening{font:400 11px/1 var(--sans);color:var(--ink-3)}.moves-grid{display:grid;grid-template-columns:28px 1fr 1fr;font:400 12px/1 var(--mono);max-height:220px;overflow-y:auto}.moves-grid .mn{padding:7px 10px;color:var(--ink-4);border-bottom:var(--bd-w) solid var(--line-soft);text-align:right}.moves-grid .mv{padding:7px 10px;color:var(--ink-2);border-bottom:var(--bd-w) solid var(--line-soft);cursor:pointer}.moves-grid .mv:hover{background:var(--bg-soft);color:var(--ink)}.moves-grid .mv.current{background:var(--accent-bg);color:var(--accent);font-weight:600}.moves-grid .mv .glyph{font-family:var(--sans);font-size:11px;margin-right:2px;opacity:.6}.tool-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:var(--s-3) var(--s-4);background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-md)}.annot{width:30px;height:28px;border:var(--bd-w) solid var(--line);background:transparent;border-radius:var(--r-sm);cursor:pointer;font:600 12px/1 var(--mono);color:var(--ink-3);display:grid;place-items:center;transition:color .12s var(--ease-handoff),border-color .12s var(--ease-handoff)}.annot:hover{color:var(--ink);border-color:var(--ink-3)}.annot.good{color:var(--good)}.annot.bad{color:var(--bad)}.annot.brilliant{color:#8771de}.tool-row .sep{width:1px;height:18px;background:var(--line);margin:0 6px}.tool-row .arrow-color{width:18px;height:18px;border-radius:50%;cursor:pointer;border:2px solid transparent}.tool-row .arrow-color.active{border-color:currentColor}.arrow-green{background:#4ca563}.arrow-red{background:#de4e4b}.arrow-blue{background:#2a75ba}.arrow-amber{background:#eba941}.save-card{padding:var(--s-4)}.save-card h4{font:500 13px/1.2 var(--sans);margin:0 0 4px;color:var(--ink)}.save-card p{font:400 12px/1.4 var(--sans);color:var(--ink-3);margin:0 0 var(--s-3)}.save-actions{display:flex;gap:8px}.save-actions .btn{flex:1;justify-content:center;padding:9px 12px;font-size:12px}.save-actions .btn-ghost{background:transparent;color:var(--ink);border:var(--bd-w) solid var(--line);border-radius:var(--r-sm);font:600 12px/1 var(--sans);cursor:pointer;padding:9px 12px;flex:1}.save-actions .btn-ghost:hover{background:var(--bg-soft)}.comment-collapsed{padding:10px 14px;background:var(--card);border:var(--bd-w) dashed var(--line);border-radius:var(--r-md);font:400 12px/1.4 var(--sans);color:var(--ink-4);cursor:text;transition:border-color .12s,color .12s}.theoryContainer .comment-collapsed:hover{border-color:var(--ink-4);color:var(--ink-3)}.theoryContainer .review-comment-box{background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);padding:var(--s-3) var(--s-4) var(--s-4);display:flex;flex-direction:column;gap:6px}.theoryContainer .review-comment-box-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.theoryContainer .review-comment-box-label{font:500 10px/1 var(--sans);letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-3)}.theoryContainer .review-comment-box-close{border:none;background:transparent;color:var(--ink-4);cursor:pointer;font:400 18px/1 var(--sans);padding:0 2px;line-height:1}.theoryContainer .review-comment-box-close:hover{color:var(--ink-2)}.theoryContainer .review-comment-box .review-comment-input{width:100%;box-sizing:border-box;min-height:66px;resize:vertical;border:var(--bd-w) solid var(--line);border-radius:var(--r-sm);background:var(--bg-soft);color:var(--ink);padding:8px 10px;font:400 13px/1.45 var(--sans)}.theoryContainer .review-comment-box .review-comment-input::placeholder{color:var(--ink-4)}.theoryContainer .review-comment-box .review-comment-input:focus{outline:none;border-color:var(--accent);background:var(--card)}.theoryContainer .review-comment-box-hint{font:400 11px/1.3 var(--sans);color:var(--ink-4)}.theoryContainer .reviewAnnotatePanel .reviewAnnotationComment{display:none!important}.theoryContainer .stockfish-panel{background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);padding:var(--s-4) var(--s-5);margin-bottom:0}.theoryContainer .stockfish-panel-header{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}.theoryContainer .stockfish-panel-label{font:500 10px/1 var(--sans);letter-spacing:1.4px;color:var(--ink-3);text-transform:uppercase}.theoryContainer button.stockfish-panel-toggle .stockfish-panel-label{font-size:0;letter-spacing:0}.theoryContainer button.stockfish-panel-toggle .stockfish-panel-label:before{content:"Stockfish 18";font:500 10px/1 var(--sans);letter-spacing:1.4px;color:var(--ink-3);text-transform:uppercase}.theoryContainer button.stockfish-panel-toggle .stockfish-panel-label:after{content:"NNUE";display:inline-block;margin-left:8px;padding:3px 6px;border-radius:calc(3px * var(--r-scale));font:500 9px/1 var(--mono);color:var(--accent);background:var(--accent-bg);text-transform:uppercase;letter-spacing:.5px;vertical-align:middle}.theoryContainer .stockfish-panel-icon{display:none}.theoryContainer .stockfish-panel-toggle{padding:4px 10px!important;border-radius:var(--r-pill)!important}.theoryContainer .stockfish-panel-score{font:600 13px/1 var(--mono)}.theoryContainer .stockfish-panel-depth{font:400 11px/1 var(--mono);color:var(--ink-4);letter-spacing:.5px}.theoryContainer .stockfish-panel-evalbar{flex:1;height:4px;background:var(--bg-soft);border-radius:calc(2px * var(--r-scale));position:relative;overflow:hidden}.theoryContainer .stockfish-panel-evalbar-white{height:100%;background:var(--ink)}.theoryContainer .stockfish-panel-lines{display:flex;flex-direction:column;gap:4px}.theoryContainer .stockfish-pv-line{display:grid;grid-template-columns:56px 1fr;gap:10px;align-items:center;padding:8px 10px;border-radius:var(--r-sm);font:400 13px/1.4 var(--mono);transition:background .12s}.theoryContainer .stockfish-pv-line:hover{background:var(--bg-soft)}.theoryContainer .stockfish-pv-line:first-child{background:#5bbd7414;border:var(--bd-w) solid oklch(.72 .14 150 / .3)}.theoryContainer .stockfish-pv-score{font:600 13px/1 var(--mono);text-align:right}.theoryContainer .stockfish-pv-moves{color:var(--ink-2);font-size:12px}.theoryContainer .reviewAnalysisPanels{display:flex;flex-direction:column;gap:var(--s-2);padding:0!important}.theoryContainer .reviewAnalysisPanels>.stockfish-panel{background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);padding:var(--s-4) var(--s-5)}.theoryContainer .reviewAnalysisPanels>.database-panel,.theoryContainer .reviewAnalysisPanels>.repertoire-panel,.theoryContainer .reviewAnalysisPanels>.lichess-explorer-panel{background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);padding:var(--s-3) var(--s-4)}.theoryContainer .database-panel-header,.theoryContainer .repertoire-panel-header,.theoryContainer .lichess-explorer-panel-header{display:flex;align-items:center;gap:8px}.theoryContainer .panelStackTight>.masterFilterRow{display:none}.theoryContainer .panelStackTight.show-master>.masterFilterRow{display:block}.theoryContainer .boardSplit,.theoryContainer .boardSplit.boardSplitTight{grid-template-columns:min(calc(100dvh - 430px),calc(100% - 420px - var(--s-6))) 420px!important;gap:var(--s-6)!important;justify-content:center!important}.theoryContainer .boardSplit .boardSplitRight,.theoryContainer .boardSplitTight .boardSplitRight{min-width:0!important;max-width:none!important;max-height:none!important;overflow-y:visible!important}@media (min-width: 1101px){.theoryContainer .boardSplit .boardSplitLeft .chessBoardWrap{width:100%!important;max-width:min(100%,calc(100dvh - 430px))!important}.theoryContainer .boardSplit .boardSplitLeft svg{width:100%!important;max-width:100%!important;height:auto!important}.theoryContainer .boardSplit .boardSplitLeft .material-bar{width:100%!important;height:22px;min-height:22px;padding:0 4px}.theoryContainer .boardSplit .boardSplitLeft .material-bar .material-piece{width:18px;height:18px;opacity:1}.theoryContainer .boardSplit .boardSplitLeft .material-bar .material-diff{color:var(--ink-3)}.theoryContainer .boardSplit>.boardSplitRight{padding-top:22px!important}.theoryContainer .boardSplit>.boardSplitRight>.panelStack,.theoryContainer .boardSplit>.boardSplitRight>.panelStackTight{padding-top:0!important}}@media (max-width: 1100px){.theoryContainer .boardSplit,.theoryContainer .boardSplit.boardSplitTight{grid-template-columns:1fr!important}}.theoryContainer .panelStackTight{display:flex;flex-direction:column;gap:var(--s-4)}.theoryContainer .panelStackTight>*{margin-bottom:0!important;margin-top:0!important}.theoryContainer .panelStackTight>.reviewAnalysisPanelsWrapper{display:block}.theoryContainer .panelStackTight>.review-context-bar{order:5}.theoryContainer .panelStackTight>.coach-card{order:10}.theoryContainer .panelStackTight>.verdict{order:15}.theoryContainer .panelStackTight>.reviewAnalysisPanelsWrapper{order:20}.theoryContainer .panelStackTight>.movesCard{order:30}.theoryContainer .panelStackTight>.masterFilterRow{order:35}.theoryContainer .panelStackTight>.reviewSaveSection{order:40}.theoryContainer .panelStackTight>.reviewAnnotatePanel{order:50}.theoryContainer .panelStackTight>.comment-collapsed{order:60}.theoryContainer .panelStackTight>.review-comment-box{order:60}.theoryContainer .movesCard{background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);overflow:hidden;margin-bottom:var(--s-4);padding:0}.theoryContainer .movesCard-head{padding:var(--s-3) var(--s-4);display:flex;align-items:center;gap:10px;border-bottom:var(--bd-w) solid var(--line-soft);flex-wrap:wrap}.theoryContainer .movesCard-head .label{font:500 10px/1 var(--sans);letter-spacing:1.4px;color:var(--ink-3);text-transform:uppercase}.theoryContainer .movesCard-head .opening{font:400 11px/1 var(--sans);color:var(--ink-3);margin-left:auto}.theoryContainer .movesCard-head .eco{font:500 10px/1 var(--mono);color:var(--accent);background:var(--accent-bg);padding:3px 6px;border-radius:calc(3px * var(--r-scale));text-transform:uppercase;letter-spacing:.5px;margin-left:auto}.theoryContainer .movesCard .moveList{background:transparent;border:none;border-radius:0;padding:0 0 4px;height:auto!important;min-height:0!important;max-height:220px!important;overflow-y:auto;overflow-x:hidden}.theoryContainer .movesCard .openingTable{font:400 12px/1 var(--mono);border-collapse:collapse;width:100%}.theoryContainer .movesCard .openingTable td{padding:7px 10px;border-bottom:var(--bd-w) solid var(--line-soft)}.theoryContainer .movesCard .openingTable tr:last-child td{border-bottom:none}.theoryContainer .movesCard .openingTable-num{width:28px;text-align:right;color:var(--ink-4);font:400 12px/1 var(--mono)}.theoryContainer .movesCard .openingTable-move{color:var(--ink-2);font:400 12px/1 var(--mono);font-weight:400}.theoryContainer .movesCard .openingTable-move:hover{background:var(--bg-soft);color:var(--ink)}.theoryContainer .movesCard .openingTable-move.varMove-active{background:var(--accent-bg)!important;color:var(--accent)!important;font-weight:600!important}.theoryContainer .reviewSaveSection{background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-lg);padding:var(--s-4)!important;margin-bottom:0!important}.theoryContainer .reviewSaveSection.in-repertoire-card .already-saved-btn{background:var(--accent)!important;color:var(--accent-fg)!important;border:var(--bd-w) solid var(--accent)!important;border-radius:var(--r-sm)!important;padding:9px 12px;font:600 12px/1 var(--sans);width:100%;opacity:1!important;cursor:default!important;box-shadow:0 1px 2px #0000000a,0 4px 12px -4px #c74c3d66!important}.theoryContainer .reviewSaveSection .save-card-title{font:500 13px/1.2 var(--sans);margin:0 0 4px;color:var(--ink)}.theoryContainer .reviewSaveSection .save-card-blurb{font:400 12px/1.4 var(--sans);color:var(--ink-3);margin:0 0 var(--s-3)}.theoryContainer .reviewSaveSection>div{gap:8px!important}.theoryContainer .reviewSaveSection .btn{border-radius:var(--r-sm);padding:9px 12px;font:600 12px/1 var(--sans)}.theoryContainer .reviewSaveSection .btn:not(.btn-primary):not(.btn-key-active){background:transparent;border:var(--bd-w) solid var(--line);color:var(--ink)}.theoryContainer .reviewSaveSection .btn:not(.btn-primary):not(.btn-key-active):hover{background:var(--bg-soft)}.theoryContainer .reviewSaveSection .btn-key-active{background:var(--accent-bg);border:var(--bd-w) solid var(--accent);color:var(--accent)}@media (max-width: 880px){.theoryContainer .mobileReviewTabs{display:flex;gap:4px;padding:4px;background:var(--bg-soft);border-radius:var(--r-md);margin-bottom:var(--s-3)}.theoryContainer .mobileReviewTab{flex:1;background:transparent;border:none;padding:8px 6px;font:500 11px/1 var(--sans);letter-spacing:.5px;text-transform:uppercase;color:var(--ink-3);border-radius:var(--r-sm);cursor:pointer}.theoryContainer .mobileReviewTab.active{background:var(--card);color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}}.theoryContainer .moveListCell.active,.theoryContainer .moveListCell.critical.active,.theoryContainer .moveListCell.study-marked.active,.theoryContainer .varMove-active{background:var(--accent-bg)!important;color:var(--accent)!important;font-weight:600!important}.theoryContainer .movesCard .figPiece,.theoryContainer .moveList .figPiece{font-family:var(--sans);font-size:11px;margin-right:2px;opacity:.6}@media (min-width: 1101px){.theoryContainer .movesBottomNav{display:none}}.theoryContainer .stockfish-panel-header>.stockfish-panel-toggle{flex:1;display:flex;align-items:center;background:transparent!important;border:none!important;padding:0!important;border-radius:0!important}.theoryContainer button.stockfish-panel-toggle .stockfish-panel-label{flex:1;display:flex;align-items:center}.theoryContainer button.stockfish-panel-toggle .stockfish-panel-label:after{margin-left:auto}.theoryContainer .stockfish-panel-header .stockfish-panel-depth{margin-left:8px;font:400 11px/1 var(--mono);color:var(--ink-4)}.theoryContainer .stockfish-panel-header>.stockfish-panel-score,.theoryContainer .stockfish-panel-header>.stockfish-panel-evalbar{display:none}.theoryContainer{--bg: var(--bg0);--paper: var(--card);--paper-2: var(--card2);--bg-2: var(--bg2);--line: var(--border);--line-2: var(--border2);--accent: var(--accent);--accent-bg: color-mix(in srgb, var(--accent) 16%, var(--card));--accent-bdr: color-mix(in srgb, var(--accent) 16%, var(--card))}.theoryContainer .rfb{display:flex;align-items:center;gap:8px;min-height:40px;padding:10px 22px;background:var(--paper-2);border-bottom:var(--bd-w) solid var(--line);transition:background .12s ease;position:sticky;top:0;z-index:5;margin:0 calc(var(--s-6, 32px) * -1) var(--s-5, 24px);padding-left:var(--s-6, 32px);padding-right:var(--s-6, 32px)}.theoryContainer .rfb--expanded{background:var(--bg-2);border-bottom:none;margin-bottom:0}.theoryContainer .rfb .rfb-toggle{display:inline-flex;align-items:center;gap:7px;height:28px;padding:6px 10px 6px 9px;background:var(--paper);border:var(--bd-w) solid var(--line);border-radius:calc(6px * var(--r-scale));color:var(--ink-2);font:500 12px/1 var(--sans);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;flex-shrink:0}.theoryContainer .rfb .rfb-toggle:hover{border-color:var(--ink-3);color:var(--ink)}.theoryContainer .rfb .rfb-toggle--active{background:var(--accent-bg);border-color:var(--accent-bdr);color:var(--accent)}.theoryContainer .rfb .rfb-toggle-icon{width:13px;height:13px;flex-shrink:0}.theoryContainer .rfb .rfb-badge{display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 4px;border-radius:999px;background:var(--ink-3);color:#fff;font:500 10px/1 var(--sans);margin-left:1px}.theoryContainer .rfb .rfb-toggle--active .rfb-badge{background:var(--accent)}.theoryContainer .rfb .rfb-divider{width:1px;height:18px;background:var(--line);margin:0 4px;flex-shrink:0}.theoryContainer .rfb .rfb-chips{display:flex;align-items:center;gap:6px;flex:1 1 auto;min-width:0;flex-wrap:wrap}.theoryContainer .rfb .rfb-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 5px 5px 11px;border-radius:999px;background:var(--paper);border:var(--bd-w) solid var(--line);font:500 12px/1 var(--sans);color:var(--ink);cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease}.theoryContainer .rfb .rfb-chip:hover{border-color:var(--accent-bdr);box-shadow:0 1px #c0452f14}.theoryContainer .rfb .rfb-chip:hover .rfb-chip-value{color:var(--accent)}.theoryContainer .rfb .rfb-chip-value{white-space:nowrap;color:var(--ink);transition:color .12s ease}.theoryContainer .rfb .rfb-chip-x{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;background:transparent;border:none;color:var(--ink-3);font:400 14px/1 var(--sans);cursor:pointer;padding:0;transition:background .12s ease,color .12s ease}.theoryContainer .rfb .rfb-chip:hover .rfb-chip-x{background:var(--accent-bg);color:var(--accent)}.theoryContainer .rfb .rfb-chip--muted{background:transparent;border-color:var(--line);color:var(--ink-3);cursor:default;padding:5px 11px}.theoryContainer .rfb .rfb-chip--muted:hover{border-color:var(--line);box-shadow:none}.theoryContainer .rfb .rfb-chip--muted:hover .rfb-chip-value{color:var(--ink-3)}.theoryContainer .rfb .rfb-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.theoryContainer .rfb .rfb-reset{background:transparent;border:none;color:var(--ink-3);font:500 12px/1 var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:4px 2px}.theoryContainer .rfb .rfb-reset:hover{color:var(--accent)}.theoryContainer .rfb .rfb-reset--all{color:var(--ink-2);font-weight:600}.theoryContainer .rfp{background:var(--bg-2);padding:18px 22px;border-bottom:var(--bd-w) solid var(--line);margin:0 calc(var(--s-6, 32px) * -1) var(--s-5, 24px);padding-left:var(--s-6, 32px);padding-right:var(--s-6, 32px);animation:rfp-slide-in .18s ease-out}@keyframes rfp-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.theoryContainer .rfp-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 48px}.theoryContainer .rfp-group{display:flex;flex-direction:column;gap:10px}.theoryContainer .rfp-group-label{font:600 10px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.theoryContainer .rfp-row{display:flex;align-items:center;gap:12px}.theoryContainer .rfp-inline-label{flex-shrink:0;min-width:56px;font:500 12px/1 var(--sans);color:var(--ink-3)}.theoryContainer .rfp-empty{font:400 12px/1.3 var(--sans);color:var(--ink-3)}.theoryContainer .rfp-seg{display:inline-flex;align-items:center;background:var(--paper-2);border:var(--bd-w) solid var(--line);border-radius:calc(8px * var(--r-scale));padding:2px;gap:0}.theoryContainer .rfp-seg-btn{padding:6px 10px;background:transparent;border:var(--bd-w) solid transparent;border-radius:calc(6px * var(--r-scale));font:500 12px/1 var(--sans);color:var(--ink-2);cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease;white-space:nowrap}.theoryContainer .rfp-seg-btn:hover{color:var(--ink)}.theoryContainer .rfp-seg-btn.active{background:var(--paper);border-color:var(--line);color:var(--accent)}.theoryContainer .rfp-toggle-row{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font:500 12px/1.3 var(--sans);color:var(--ink)}.theoryContainer .rfp-toggle-row--indent{padding-left:58px}.theoryContainer .rfp-toggle{position:relative;display:inline-block;width:30px;height:18px;flex-shrink:0}.theoryContainer .rfp-toggle input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:2}.theoryContainer .rfp-toggle-thumb{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:#d9cfb8;transition:background .12s ease}.theoryContainer .rfp-toggle-thumb:before{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--paper);transition:left .12s ease}.theoryContainer .rfp-toggle input:checked+.rfp-toggle-thumb{background:var(--accent)}.theoryContainer .rfp-toggle input:checked+.rfp-toggle-thumb:before{left:14px}.theoryContainer .rfp-select{padding:6px 24px 6px 10px;background:var(--paper);border:var(--bd-w) solid var(--line);border-radius:calc(6px * var(--r-scale));font:500 12px/1 var(--sans);color:var(--ink);cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:calc(100% - 10px) 50%,calc(100% - 6px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat;min-width:140px;max-width:240px}.theoryContainer .rfp-select:hover{border-color:var(--ink-3)}.theoryContainer .drill-head-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.theoryContainer .match-count{font:500 11px/1 var(--sans);color:var(--ink-3);white-space:nowrap}.theoryContainer .match-count em{font:italic 13px/1 var(--serif);color:var(--ink-2);margin-right:1px}@media (max-width: 860px){.theoryContainer .rfb{padding:8px 14px}.theoryContainer .rfb .rfb-chips{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.theoryContainer .rfb .rfb-chips::-webkit-scrollbar{display:none}.theoryContainer .rfp-grid{grid-template-columns:1fr;gap:18px}}@media (min-width: 1101px){.theoryContainer .review-filter-bar{margin-bottom:var(--s-3)!important;padding-bottom:var(--s-2)!important}.theoryContainer .rfb,.theoryContainer .drill-head{margin-bottom:var(--s-3)}.theoryContainer .drill-head .drill-title{font-size:20px!important}.theoryContainer .coach-card{padding:var(--s-4) var(--s-4)}.theoryContainer .coach-card .label{margin-bottom:6px}.theoryContainer .coach-narrative{font-size:17px;line-height:1.45}.theoryContainer .reviewSaveSection.in-repertoire-card{padding:var(--s-3)!important}.theoryContainer .reviewSaveSection .save-card-title{margin-bottom:2px}.theoryContainer .comment-collapsed{padding:6px 12px}.theoryContainer .panelStackTight .reviewAnalysisPanels{padding:0!important}.theoryContainer .boardSplitRight .panelStackTight{gap:10px;padding-top:12px}.theoryContainer .coach-action-bar{padding:6px 10px!important;min-height:auto!important}.theoryContainer .reviewAnnotatePanel--desktop .tool-row{padding:6px 10px!important}.theoryContainer .boardSplitLeft .trainerUnderBoard{margin-top:4px!important}}@media (min-width: 1101px) and (max-height: 920px){.theoryContainer .drill-head{margin-bottom:8px}.theoryContainer .drill-head .drill-title{font-size:18px!important;line-height:1.2!important}.theoryContainer .drill-head .mode-pill{padding:5px 10px;font-size:10px}.theoryContainer .coach-card{padding:12px 16px}.theoryContainer .coach-narrative{font-size:15px;line-height:1.4}.theoryContainer .reviewSaveSection.in-repertoire-card{padding:10px!important}.theoryContainer .reviewSaveSection .save-card-blurb{font-size:11px;line-height:1.35;margin-bottom:6px}.theoryContainer .reviewSaveSection.in-repertoire-card .already-saved-btn{padding:7px 12px}.theoryContainer .boardSplitRight .panelStackTight{gap:8px;padding-top:8px}.theoryContainer .movesCard-head{padding:8px 12px!important}.theoryContainer .review-filter-bar{margin-bottom:8px!important;padding-bottom:6px!important}.theoryContainer .rfb{margin-bottom:8px;min-height:36px;padding-top:6px;padding-bottom:6px}}@media (min-width: 1101px) and (max-height: 800px){.theoryContainer .drill-head .drill-meta,.theoryContainer .coach-card .label{display:none}.theoryContainer .coach-card{padding:10px 14px}.theoryContainer .coach-narrative{font-size:14px;line-height:1.35}.theoryContainer .drill-head{margin-bottom:6px}.theoryContainer .boardSplitRight{max-height:calc(100dvh - 180px);overflow-y:auto;scrollbar-width:thin}}@media (max-width: 480px){body:has(.theoryContainer) .site-header,body:has(.theoryContainer) .topbar{display:none!important}.theoryContainer{padding-left:10px!important;padding-right:10px!important;padding-top:8px!important}.theoryContainer .review-filter-tab,.theoryContainer .mode-tabs .tab{padding:2px 5px!important;font:600 9px/1.4 var(--sans)!important;letter-spacing:.3px;text-transform:uppercase;border-radius:0!important;border:none!important;border-bottom:2px solid transparent!important;min-height:0!important;background:transparent!important;gap:3px!important}.theoryContainer .review-filter-tab.active,.theoryContainer .mode-tabs .tab.active{background:transparent!important;box-shadow:var(--elev-1);border-bottom-width:2px!important}.theoryContainer .review-filter-tab .count,.theoryContainer .mode-tabs .tab .count{display:inline!important;font:600 8px/1 var(--mono)!important;padding:0!important;margin:0 0 0 2px;background:transparent!important;color:var(--ink-3);opacity:.65;vertical-align:super}.theoryContainer .review-filter-tab.active .count,.theoryContainer .mode-tabs .tab.active .count{opacity:1;color:var(--accent)}.theoryContainer .review-filter-bar,.theoryContainer .review-filter-bar .review-filter-select,.theoryContainer .review-filter-bar--open .review-filter-select,.theoryContainer .review-filter-bar .repLegTip-wrap{display:none!important}body .theoryContainer .card.boardCard,body .theoryContainer>.card.boardCard{padding:0!important;background:transparent!important;border:none!important;box-shadow:var(--elev-1)}.theoryContainer .rfb{display:contents!important}.theoryContainer .rfb .rfb-toggle,.theoryContainer .rfb .rfb-chips,.theoryContainer .rfb .rfb-divider{display:none!important}.theoryContainer .rfb .rfp{grid-column:1 / -1;margin:0 0 6px;padding:8px 10px;background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-md);font-size:12px}.theoryContainer .rfb--expanded .rfb-reset{display:inline-block!important;font-size:11px;padding:2px 6px}.theoryContainer .drill-head{display:none!important}.theoryContainer .failNavRow{padding:4px 0 0!important}.theoryContainer .failNavPrimary{flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;padding:4px 6px!important;gap:4px!important;min-height:0!important}.theoryContainer .failNavPrimary::-webkit-scrollbar{display:none}.theoryContainer .failNavPrimary .btn-icon{width:30px!important;height:30px!important;min-width:30px!important;font-size:13px!important}.theoryContainer .failNavPrimary .btn:not(.btn-icon){padding:5px 8px!important;font-size:11px!important;height:30px!important;white-space:nowrap}.theoryContainer .failNavPrimary .coach-hide-on-desktop{display:none!important}.theoryContainer .coach-action-bar{position:relative}.theoryContainer .failNavRow.extras-open .failNavSecondary,.theoryContainer .failNavSecondary{display:flex!important;flex-direction:column;gap:2px!important;padding:6px!important;background:var(--card);border:var(--bd-w) solid var(--line);border-radius:var(--r-md);position:absolute;top:calc(100% + 6px);right:0;min-width:180px;z-index:60;box-shadow:0 12px 28px #0000001a,0 2px 6px #0000000a;margin-top:0}.theoryContainer .failNavSecondary .failMenuRow{display:flex;align-items:center;gap:10px;padding:6px 10px;font:500 12px/1 var(--sans);color:var(--ink);background:transparent;border:none;border-radius:var(--r-sm);cursor:pointer;text-align:left;width:100%}.theoryContainer .failNavSecondary .failMenuRow:hover,.theoryContainer .failNavSecondary .failMenuRow:active{background:var(--bg-soft)}.theoryContainer .failNavSecondary .failMenuRow.active{background:var(--accent-bg);color:var(--accent)}.theoryContainer .failNavSecondary .failMenuRow:disabled{opacity:.4;cursor:not-allowed}.theoryContainer .failNavSecondary .failMenuIcon{display:inline-grid;place-items:center;width:18px;height:18px;font-size:13px;color:var(--ink-3);flex-shrink:0}.theoryContainer .failNavSecondary .failMenuRow.active .failMenuIcon{color:var(--accent)}.theoryContainer .failNavSecondary .failMenuCatRow{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border-bottom:var(--bd-w) solid var(--line);margin-bottom:4px}.theoryContainer .failNavSecondary .failMenuCatPill{flex:1 1 30%;min-width:0;display:inline-flex;align-items:center;justify-content:space-between;gap:4px;padding:5px 8px;background:var(--bg-soft);border:var(--bd-w) solid transparent;border-radius:var(--r-sm);font:600 10px/1 var(--sans);text-transform:uppercase;letter-spacing:.3px;color:var(--ink-3);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.theoryContainer .failNavSecondary .failMenuCatPill.active{background:var(--accent-bg);border-color:var(--accent-bdr);color:var(--accent)}.theoryContainer .failNavSecondary .failMenuCatPill .failMenuCatCount{font:600 9px/1 var(--mono);opacity:.65}.theoryContainer .failNavSecondary .failMenuCatPill.active .failMenuCatCount{opacity:1}.theoryContainer .failNavSecondary .failMenuMasterRow{display:flex;align-items:center;gap:6px;padding:4px 10px 6px}.theoryContainer .failNavSecondary .failMenuMasterRow input{flex:1;min-width:0;font-size:11px;padding:4px 8px;height:26px}.theoryContainer .failNavSecondary .failMenuMasterRow .btn{font-size:11px;padding:4px 8px;height:26px;flex-shrink:0}.theoryContainer .failNavSecondary .failMenuMasterRow .btn.active{background:var(--accent-bg);color:var(--accent)}.theoryContainer .panelStack>.masterFilterRow,.theoryContainer .panelStack[data-mobile-tab=info] .masterFilterRow{display:none!important}.theoryContainer .boardSplitRight{margin-top:-8px!important}.theoryContainer .mobileReviewTabs{margin-top:0!important}.theoryContainer .mobileReviewTabs{margin:0!important;padding:0!important;border-radius:0!important;background:transparent!important;border-bottom:var(--bd-w) solid var(--line)!important}.theoryContainer .mobileReviewTab{padding:5px 0!important;font:600 10px/1 var(--sans)!important;letter-spacing:.4px}.theoryContainer .boardSplitRight{background:transparent!important}.theoryContainer .panelStack>.card,.theoryContainer .panelStack>.coach-card,.theoryContainer .panelStack>.review-context-bar,.theoryContainer .panelStack>.reviewSaveSection,.theoryContainer .panelStack>.comment-collapsed,.theoryContainer .panelStack>.masterFilterRow{background:transparent!important;border:none!important;box-shadow:var(--elev-1);border-radius:0!important;border-bottom:var(--bd-w) solid var(--line)!important;margin:0!important}.theoryContainer .panelStack>*:last-child{border-bottom:none!important}.theoryContainer .masterFilterRow{padding:4px 10px!important;gap:6px!important;align-items:center!important}.theoryContainer .masterFilterRow input,.theoryContainer .masterFilterRow select,.theoryContainer .masterFilterRow .input{font-size:11px!important;padding:3px 6px!important;height:26px!important}.theoryContainer .compact-engine-header{display:none!important}.theoryContainer .reviewAnalysisPanelsWrapper>.reviewAnalysisPanels{padding:0!important;gap:0!important}.theoryContainer .stockfish-panel,.theoryContainer .database-panel,.theoryContainer .repertoire-panel,.theoryContainer .lichess-explorer-panel{background:transparent!important;border:none!important;border-radius:0!important;border-bottom:var(--bd-w) solid var(--line)!important;box-shadow:var(--elev-1);padding:6px 10px!important;margin:0!important}.theoryContainer .stockfish-panel-header,.theoryContainer .database-panel-header,.theoryContainer .repertoire-panel-header{padding:0!important;margin:0 0 4px!important;min-height:0!important}.theoryContainer .stockfish-panel-toggle,.theoryContainer .database-panel-toggle,.theoryContainer .repertoire-panel-toggle{font-size:11px!important;padding:2px 6px!important}.theoryContainer .stockfish-panel-evalbar{height:10px!important}.theoryContainer .pv-line,.theoryContainer .stockfish-panel .pv-line{font-size:11px!important;padding:2px 0!important}.theoryContainer .coach-card{padding:6px 10px!important}.theoryContainer .coach-card .label{display:none!important}.theoryContainer .coach-narrative{font:400 13px/1.35 var(--serif)!important;margin:0!important}.theoryContainer .review-context-bar{padding:4px 10px!important;font-size:12px!important;min-height:0!important}.theoryContainer .review-context-bar .review-context-badge{padding:2px 6px!important;font-size:9px!important}.theoryContainer .review-context-bar .review-context-opponent,.theoryContainer .review-context-bar .review-context-opening{font-size:12px!important}.theoryContainer .comment-collapsed{padding:4px 10px!important;font-size:12px!important;min-height:0!important}.theoryContainer .reviewSaveSection.in-repertoire-card{padding:6px 10px!important}.theoryContainer .reviewSaveSection .save-card-title{font-size:12px!important;margin-bottom:2px!important}.theoryContainer .reviewSaveSection .save-card-blurb{font-size:11px!important;line-height:1.3!important;margin-bottom:4px!important}.theoryContainer .reviewSaveSection .already-saved-btn,.theoryContainer .reviewSaveSection .btn-primary{padding:6px 12px!important;font-size:12px!important}.theoryContainer .reviewProgressBar{height:8px!important;border-radius:calc(4px * var(--r-scale))!important;margin:4px 0 0!important;overflow:visible!important}.theoryContainer .reviewProgressFill{border-radius:calc(4px * var(--r-scale))!important}.theoryContainer .reviewProgressText{font-size:9px!important;line-height:1.2!important;font-weight:600!important;color:var(--ink-3)!important;top:100%;margin-top:1px}}[data-mode=dark] .theoryContainer .rfp-toggle-thumb{background:var(--ink-3)}body.review-mobile-handoff .topbar,body.review-mobile-handoff .topbar-inner,body.review-mobile-handoff .topbar-wrap,body.review-mobile-handoff .topbar-row,body.review-mobile-handoff .verify-banner,body.review-mobile-handoff .offline-banner,body.review-mobile-handoff .demo-banner{display:none!important}body.review-mobile-handoff .theoryContainer>*{display:none!important}body.review-mobile-handoff .theoryContainer>.review-mobile-root{display:flex!important}body.review-mobile-handoff .theoryContainer{background:transparent!important;padding:0!important;max-width:none!important;margin:0!important}body.review-mobile-handoff,body.review-mobile-handoff[data-theme=light]{--bg: var(--bg0);--bg-soft: var(--bg1);--surface: var(--card);--surface-2:var(--card2);--border-strong: var(--border2);--text-2: var(--muted);--muted: var(--muted2);--accent-soft: color-mix(in srgb, var(--accent) 16%, var(--card));--danger: var(--bad);--warm: var(--accent2);--yellow: #e8c050;--chip-bg: var(--card);--chip-bg-active: var(--card2);--sq-light: #f0d8b4;--sq-dark: #b76e54;--sq-hi: #e8c050;--on-light-sq: #6a4a34;--on-dark-sq: #f3e0c7}body.review-mobile-handoff{background:var(--bg)!important;color:var(--text);padding:0!important;margin:0!important}body.review-mobile-handoff #root,body.review-mobile-handoff .app,body.review-mobile-handoff .app-root{background:var(--bg)!important}body.review-mobile-handoff .review-mobile-root{background:var(--bg)!important;color:var(--text);font-family:Inter,system-ui,sans-serif;font-size:13px;line-height:1.35;min-height:100%;display:flex;flex-direction:column;box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;padding-bottom:48px}body.review-mobile-handoff .cat-row-wrap{position:relative;border-bottom:var(--bd-w) solid var(--border);background:var(--bg-soft)}body.review-mobile-handoff .cat-row-wrap:before,body.review-mobile-handoff .cat-row-wrap:after{content:"";position:absolute;top:0;bottom:0;width:28px;pointer-events:none;z-index:2;opacity:0;transition:opacity .15s ease}body.review-mobile-handoff .cat-row-wrap:before{left:0;background:linear-gradient(90deg,var(--bg-soft),transparent)}body.review-mobile-handoff .cat-row-wrap:after{right:0;background:linear-gradient(270deg,var(--bg-soft),transparent)}body.review-mobile-handoff .cat-row-wrap.fade-l:before{opacity:1}body.review-mobile-handoff .cat-row-wrap.fade-r:after{opacity:1}body.review-mobile-handoff .cat-row{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:8px 12px;scroll-snap-type:x proximity}body.review-mobile-handoff .cat-row::-webkit-scrollbar{display:none}body.review-mobile-handoff .cat{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;padding:6px 10px;border-radius:999px;font:600 12.5px Inter,sans-serif;color:var(--text);cursor:pointer;scroll-snap-align:center;transition:background .15s ease}body.review-mobile-handoff .cat:hover{background:#0000000a}[data-mode=dark] body.review-mobile-handoff .cat:hover{background:#ffffff0a}body.review-mobile-handoff .cat.active{background:var(--surface);box-shadow:inset 0 0 0 1px var(--border)}body.review-mobile-handoff .cat-dot{width:7px;height:7px;border-radius:50%;background:var(--cat-color);flex:0 0 auto}body.review-mobile-handoff .cat-count{font:700 11.5px JetBrains Mono,monospace;color:var(--cat-color);letter-spacing:-.01em}body.review-mobile-handoff .cat.active .cat-count{color:var(--cat-color)}body.review-mobile-handoff .subhead{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-soft);border-bottom:var(--bd-w) solid var(--border);font-size:11.5px;color:var(--text-2)}body.review-mobile-handoff .filters-btn{display:inline-flex;align-items:center;gap:5px;background:var(--surface);color:var(--text);border:var(--bd-w) solid var(--border);padding:4px 9px;border-radius:calc(6px * var(--r-scale));font:600 11.5px Inter;cursor:pointer}body.review-mobile-handoff .subhead-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.review-mobile-handoff .subhead-meta:nth-of-type(1){flex:1 1 auto;min-width:0}body.review-mobile-handoff .subhead-meta:nth-of-type(2){flex:0 0 auto;color:var(--muted)}body.review-mobile-handoff .position-counter{margin-left:auto;display:inline-flex;align-items:center;gap:4px;background:var(--surface);border:var(--bd-w) solid var(--border);padding:4px 7px;border-radius:calc(6px * var(--r-scale));font:700 11px JetBrains Mono,monospace;white-space:nowrap;color:var(--text)}body.review-mobile-handoff .pos-sep{opacity:.4}body.review-mobile-handoff .pos-tag{margin-left:4px;padding:1px 5px;background:var(--accent-soft);color:var(--accent);border-radius:calc(3px * var(--r-scale));font-size:9.5px;letter-spacing:.04em}body.review-mobile-handoff .goal-banner{display:flex;align-items:flex-start;gap:10px;padding:10px 14px 8px;background:var(--bg-soft)}body.review-mobile-handoff .pill{display:inline-flex;align-items:center;gap:5px;padding:3px 7px 3px 6px;border-radius:999px;font:700 10px Inter;letter-spacing:.06em;flex:0 0 auto;background:var(--surface);border:var(--bd-w) solid var(--border)}body.review-mobile-handoff .pill-theory{color:var(--accent)}body.review-mobile-handoff .pill-mistakes{color:var(--warn)}body.review-mobile-handoff .pill-tactics{color:#7a4fb8}body.review-mobile-handoff .pill-endgames{color:var(--good)}body.review-mobile-handoff .pill-good{color:#8a9655}body.review-mobile-handoff .pill-games{color:#d9a14a}body.review-mobile-handoff .pill-dot{width:6px;height:6px;border-radius:50%;background:currentColor}body.review-mobile-handoff .goal-text{flex:1;min-width:0}body.review-mobile-handoff .goal-text h1{margin:0 0 1px;font:700 15px "Source Serif 4",serif;letter-spacing:-.01em;color:var(--text)}body.review-mobile-handoff .goal-text p{margin:0;font-size:11.5px;color:var(--text-2)}body.review-mobile-handoff .board-wrap{background:var(--bg-soft);padding:0;flex:0 0 auto}body.review-mobile-handoff .capture-row{padding:0 14px;height:14px;display:flex;align-items:center;font-size:13px;color:var(--text-2);opacity:.5}body.review-mobile-handoff .capture-row.bottom{height:14px;padding-bottom:0}body.review-mobile-handoff .cap-piece{line-height:1}body.review-mobile-handoff .tab-strip-wrap{background:var(--surface);border-bottom:var(--bd-w) solid var(--border);position:relative}body.review-mobile-handoff .tab-strip-wrap:before,body.review-mobile-handoff .tab-strip-wrap:after{content:"";position:absolute;top:0;bottom:0;width:24px;pointer-events:none;z-index:2;opacity:0;transition:opacity .15s ease}body.review-mobile-handoff .tab-strip-wrap:before{left:0;background:linear-gradient(90deg,var(--surface),transparent)}body.review-mobile-handoff .tab-strip-wrap:after{right:0;background:linear-gradient(270deg,var(--surface),transparent)}body.review-mobile-handoff .tab-strip-wrap.fade-l:before{opacity:1}body.review-mobile-handoff .tab-strip-wrap.fade-r:after{opacity:1}body.review-mobile-handoff .tab-strip{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity}body.review-mobile-handoff .tab-strip::-webkit-scrollbar{display:none}body.review-mobile-handoff .tab{flex:0 0 auto;background:transparent;border:0;padding:10px 16px;font:500 13px Inter;color:var(--muted);cursor:pointer;position:relative;scroll-snap-align:center;white-space:nowrap}body.review-mobile-handoff .tab:after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:2px;background:transparent;border-radius:calc(2px * var(--r-scale)) calc(2px * var(--r-scale)) 0 0;transition:background .15s}body.review-mobile-handoff .tab.active{color:var(--text)}body.review-mobile-handoff .tab.active:after{background:var(--danger)}body.review-mobile-handoff .tab:hover:not(.active){color:var(--text-2)}body.review-mobile-handoff .panel{background:var(--surface);padding:10px 14px 12px;min-height:80px;border-bottom:var(--bd-w) solid var(--border)}body.review-mobile-handoff .panel-body{display:flex;flex-direction:column;gap:8px}body.review-mobile-handoff .panel-title{font:700 10.5px Inter;letter-spacing:.08em;color:var(--text);white-space:nowrap}body.review-mobile-handoff .panel-meta{font-size:11px;color:var(--muted)}body.review-mobile-handoff .row-between{display:flex;align-items:center;justify-content:space-between}body.review-mobile-handoff .engine-head,body.review-mobile-handoff .engine-meta{display:inline-flex;gap:8px;align-items:center}body.review-mobile-handoff .badge-nnue{background:var(--warn);color:#fff;padding:1.5px 5px;border-radius:calc(3px * var(--r-scale));font:700 9.5px Inter;letter-spacing:.04em}body.review-mobile-handoff .depth{font:700 10.5px JetBrains Mono;color:var(--muted)}body.review-mobile-handoff .engine-eval-row{display:flex;align-items:center;gap:10px}body.review-mobile-handoff .engine-eval{font:700 14px JetBrains Mono;color:var(--text);min-width:48px}body.review-mobile-handoff .eval-bar{position:relative;flex:1;height:6px;background:var(--surface-2);border-radius:calc(3px * var(--r-scale));overflow:hidden}body.review-mobile-handoff .eval-fill{position:absolute;left:0;top:0;bottom:0;background:var(--text);border-right:var(--bd-w) solid var(--border-strong)}body.review-mobile-handoff .eval-tick{position:absolute;top:-2px;bottom:-2px;width:1px;background:var(--border-strong)}body.review-mobile-handoff .line-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}body.review-mobile-handoff .line-list li{display:grid;grid-template-columns:14px 44px 1fr;gap:8px;align-items:baseline;font-size:12px}body.review-mobile-handoff .ln-mv{color:var(--muted);font:700 11px JetBrains Mono}body.review-mobile-handoff .ln-eval{font:600 11.5px JetBrains Mono;color:var(--text)}body.review-mobile-handoff .ln-line{color:var(--text-2);font-family:JetBrains Mono,monospace;font-size:11.5px}body.review-mobile-handoff .odds-bar{display:flex;height:22px;border-radius:calc(5px * var(--r-scale));overflow:hidden;border:var(--bd-w) solid var(--border)}body.review-mobile-handoff .odds-seg{display:grid;place-items:center;font:700 11px JetBrains Mono;color:#000000b3}body.review-mobile-handoff .odds-seg.win{background:#cfe2c4;color:#2d5b22}body.review-mobile-handoff .odds-seg.draw{background:#e2dcc8;color:#4a4234}body.review-mobile-handoff .odds-seg.loss{background:#e9c4b8;color:#6c2a1a}[data-mode=dark] body.review-mobile-handoff .odds-seg.win{background:#3e5a30;color:#d6e8c8}[data-mode=dark] body.review-mobile-handoff .odds-seg.draw{background:#3f3a2e;color:#d4cbb0}[data-mode=dark] body.review-mobile-handoff .odds-seg.loss{background:#5a3225;color:#e8c4b8}body.review-mobile-handoff .odds-legend{display:flex;gap:14px;font-size:11px;color:var(--muted)}body.review-mobile-handoff .odds-legend .dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px;vertical-align:middle}body.review-mobile-handoff .dot-win{background:#6ea15a}body.review-mobile-handoff .dot-draw{background:#a89870}body.review-mobile-handoff .dot-loss{background:#c97a64}body.review-mobile-handoff .review-viewer-strip{display:flex;align-items:center;gap:6px;margin:4px 12px 0;padding:5px 9px;background:var(--surface);border:var(--bd-w) solid var(--border);border-radius:calc(6px * var(--r-scale));color:var(--text)}body.review-mobile-handoff .review-viewer-tag{font-size:9px;letter-spacing:.08em;font-weight:700;color:var(--muted)}body.review-mobile-handoff .review-viewer-title{flex:1;font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}body.review-mobile-handoff .review-viewer-count{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--muted)}body.review-mobile-handoff .review-viewer-btn{width:22px;height:20px;font-size:10px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:var(--bd-w) solid var(--border);border-radius:calc(4px * var(--r-scale));color:var(--text);cursor:pointer}body.review-mobile-handoff .review-viewer-btn:disabled{opacity:.35;cursor:not-allowed}body.review-mobile-handoff .review-viewer-exit{width:auto;padding:0 6px}body.review-mobile-handoff .coach-body p{margin:0 0 6px;font-size:12.5px;color:var(--text)}body.review-mobile-handoff .coach-body p:last-child{margin:0}body.review-mobile-handoff .muted-sm{color:var(--muted);font-size:11.5px!important}body.review-mobile-handoff .chip-row{display:flex;flex-wrap:wrap;gap:6px}body.review-mobile-handoff .chip{background:var(--chip-bg);border:var(--bd-w) solid var(--border);color:var(--text);padding:5px 10px;border-radius:999px;font:600 11.5px Inter;cursor:pointer}body.review-mobile-handoff .chip.ghost{background:transparent}body.review-mobile-handoff .chip:hover{background:var(--chip-bg-active)}body.review-mobile-handoff .db-table{display:flex;flex-direction:column;gap:6px}body.review-mobile-handoff .db-row{display:grid;grid-template-columns:40px 56px 1fr 60px;align-items:center;gap:8px;font-size:11.5px}body.review-mobile-handoff .db-mv{font:700 13px JetBrains Mono;color:var(--text)}body.review-mobile-handoff .db-games{font:500 11px JetBrains Mono;color:var(--muted);text-align:right}body.review-mobile-handoff .db-bar{display:flex;height:9px;border-radius:calc(3px * var(--r-scale));overflow:hidden;border:var(--bd-w) solid var(--border)}body.review-mobile-handoff .db-seg.win{background:#cfe2c4}body.review-mobile-handoff .db-seg.draw{background:#e2dcc8}body.review-mobile-handoff .db-seg.loss{background:#e9c4b8}[data-mode=dark] body.review-mobile-handoff .db-seg.win{background:#5a8048}[data-mode=dark] body.review-mobile-handoff .db-seg.draw{background:#5b5440}[data-mode=dark] body.review-mobile-handoff .db-seg.loss{background:#8b4f3a}body.review-mobile-handoff .db-pct{font:500 10px JetBrains Mono;color:var(--muted);text-align:right}body.review-mobile-handoff .rep-tree{display:flex;flex-direction:column;gap:4px}body.review-mobile-handoff .rep-line{display:grid;grid-template-columns:28px 1fr 44px;gap:8px;align-items:center;padding:6px 8px;border-radius:calc(6px * var(--r-scale));background:var(--surface-2);font-size:12.5px}body.review-mobile-handoff .rep-line.current{background:var(--accent-soft)}body.review-mobile-handoff .rep-line.dim{opacity:.65}body.review-mobile-handoff .rep-num{font:700 11px JetBrains Mono;color:var(--muted)}body.review-mobile-handoff .rep-mv{font:600 13px JetBrains Mono;color:var(--text)}body.review-mobile-handoff .rep-mv.main{color:var(--accent)}body.review-mobile-handoff .rep-cov{font:600 10.5px JetBrains Mono;color:var(--muted);text-align:right}body.review-mobile-handoff .rep-foot{margin-top:4px}body.review-mobile-handoff .moves-list{display:flex;flex-direction:column;gap:2px}body.review-mobile-handoff .moves-row{display:grid;grid-template-columns:28px 1fr 1fr;gap:8px;align-items:center}body.review-mobile-handoff .moves-num{font:600 11.5px JetBrains Mono;color:var(--muted)}body.review-mobile-handoff .moves-mv{background:transparent;border:0;text-align:left;padding:4px 6px;border-radius:calc(4px * var(--r-scale));font:600 12.5px JetBrains Mono;color:var(--text);cursor:pointer}body.review-mobile-handoff .moves-mv:hover{background:var(--surface-2)}body.review-mobile-handoff .moves-mv.current{background:var(--accent-soft);color:var(--accent)}body.review-mobile-handoff .more-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}body.review-mobile-handoff .more-item{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:var(--bd-w) solid var(--border);color:var(--text);padding:8px 10px;border-radius:calc(6px * var(--r-scale));font:500 12px Inter;cursor:pointer}body.review-mobile-handoff .more-glyph{width:20px;height:20px;display:grid;place-items:center;background:var(--surface);border-radius:calc(4px * var(--r-scale));font:700 11px Inter;color:var(--accent)}body.review-mobile-handoff .panel .database-panel,body.review-mobile-handoff .panel .stockfish-panel{background:transparent;border:0;padding:0;margin:0;font-size:12px;color:var(--text)}body.review-mobile-handoff .panel .database-panel-header,body.review-mobile-handoff .panel .stockfish-panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:0;padding-bottom:4px}body.review-mobile-handoff .panel .stockfish-panel-toggle{display:none!important}body.review-mobile-handoff .panel .database-panel-total{font:700 10.5px Inter,sans-serif;letter-spacing:.08em;color:var(--text);text-transform:uppercase}body.review-mobile-handoff .panel .database-panel-table{margin-top:4px;display:flex;flex-direction:column;gap:6px;min-height:0}body.review-mobile-handoff .panel .database-panel-row{display:grid;grid-template-columns:44px 56px 1fr 60px;align-items:center;gap:8px;font-size:11.5px}body.review-mobile-handoff .panel .database-panel-move{font:700 13px JetBrains Mono,monospace;color:var(--text);min-width:0}body.review-mobile-handoff .panel .database-panel-games{font:500 11px JetBrains Mono,monospace;color:var(--muted);text-align:right;min-width:0}body.review-mobile-handoff .panel .database-panel-bar,body.review-mobile-handoff .panel .explorer-result-bar{display:flex;height:9px;border-radius:calc(3px * var(--r-scale));overflow:hidden;border:var(--bd-w) solid var(--border);min-width:0;max-width:none;background:transparent}body.review-mobile-handoff .panel .explorer-result-bar .seg-white{background:#cfe2c4!important;color:transparent!important;font-size:0}body.review-mobile-handoff .panel .explorer-result-bar .seg-gray{background:#e2dcc8!important;color:transparent!important;font-size:0}body.review-mobile-handoff .panel .explorer-result-bar .seg-black{background:#e9c4b8!important;color:transparent!important;font-size:0}[data-mode=dark] body.review-mobile-handoff .panel .explorer-result-bar .seg-white{background:#5a8048!important}[data-mode=dark] body.review-mobile-handoff .panel .explorer-result-bar .seg-gray{background:#5b5440!important}[data-mode=dark] body.review-mobile-handoff .panel .explorer-result-bar .seg-black{background:#8b4f3a!important}body.review-mobile-handoff .panel .database-panel-score{font:500 10px JetBrains Mono,monospace;color:var(--muted);text-align:right}body.review-mobile-handoff .panel .stockfish-panel-score{font:700 14px JetBrains Mono,monospace;color:var(--text)}body.review-mobile-handoff .panel .stockfish-panel-evalbar{background:var(--surface-2);border:var(--bd-w) solid var(--border);height:6px;border-radius:calc(3px * var(--r-scale));overflow:hidden;flex:1;max-width:none}body.review-mobile-handoff .panel .stockfish-panel-evalbar-white{background:var(--text)}body.review-mobile-handoff .panel .stockfish-panel-depth{font:700 10.5px JetBrains Mono,monospace;color:var(--muted)}body.review-mobile-handoff .panel .stockfish-panel-lines{display:flex;flex-direction:column;gap:4px;margin-top:4px}body.review-mobile-handoff .panel .stockfish-pv-line{display:flex;gap:8px;align-items:baseline;font-size:12px}body.review-mobile-handoff .panel .stockfish-pv-score{font:600 11.5px JetBrains Mono,monospace;color:var(--text);min-width:44px}body.review-mobile-handoff .panel .stockfish-pv-moves{font-family:JetBrains Mono,monospace;font-size:11.5px;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.review-mobile-handoff .panel .stockfish-panel-header:before{content:"STOCKFISH";font:700 10.5px Inter,sans-serif;letter-spacing:.08em;color:var(--text);white-space:nowrap}body.review-mobile-handoff .slider-row{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-soft);border-top:var(--bd-w) solid var(--border);flex:0 0 auto}body.review-mobile-handoff .icon-btn{width:28px;height:28px;display:grid;place-items:center;background:var(--surface);border:var(--bd-w) solid var(--border);border-radius:calc(6px * var(--r-scale));font:600 14px Inter;color:var(--text);cursor:pointer}body.review-mobile-handoff .slider-track{flex:1;position:relative;height:28px;display:flex;align-items:center}body.review-mobile-handoff .slider-track:before{content:"";position:absolute;left:0;right:0;height:4px;background:var(--surface);border:var(--bd-w) solid var(--border);border-radius:999px}body.review-mobile-handoff .slider-fill{position:absolute;left:0;height:4px;background:var(--warm);border-radius:999px;z-index:1}body.review-mobile-handoff .slider-thumb{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--warm);transform:translate(-50%,-50%);top:50%;z-index:2;box-shadow:0 0 0 2px var(--bg-soft)}body.review-mobile-handoff .slider-track input[type=range]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}body.review-mobile-handoff .answer-btn{flex:0 0 auto;background:var(--surface);border:var(--bd-w) solid var(--border-strong);color:var(--text);padding:6px 12px;border-radius:calc(6px * var(--r-scale));font:600 12.5px Inter;cursor:pointer;white-space:nowrap}body.review-mobile-handoff .anno-row{display:flex;align-items:center;gap:4px;padding:2px 12px 8px;background:var(--bg-soft);font-size:11px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;flex:0 0 auto}body.review-mobile-handoff .anno-row::-webkit-scrollbar{display:none}body.review-mobile-handoff .anno-btn{flex:0 0 auto;min-width:24px;background:transparent;border:0;color:var(--danger);font:700 13px JetBrains Mono;padding:4px 6px;cursor:pointer;border-radius:calc(4px * var(--r-scale))}body.review-mobile-handoff .anno-btn:hover{background:var(--surface)}body.review-mobile-handoff .anno-btn.ghost{color:var(--text-2);font:600 11.5px Inter}body.review-mobile-handoff .anno-label{flex:0 0 auto;font:700 10px Inter;letter-spacing:.08em;color:var(--muted);margin:0 4px 0 6px}body.review-mobile-handoff .color-dots{display:inline-flex;gap:4px;flex:0 0 auto}body.review-mobile-handoff .cd{width:14px;height:14px;border-radius:50%;border:0;cursor:pointer;box-shadow:0 0 0 1.5px var(--bg-soft),0 0 0 2.5px var(--border-strong)}body.review-mobile-handoff .cd-green{background:#5a9a3e}body.review-mobile-handoff .cd-red{background:#c84d4d}body.review-mobile-handoff .cd-blue{background:#3a78c9}body.review-mobile-handoff .cd-yellow{background:#e8c050}body.review-mobile-handoff .cd.active{box-shadow:0 0 0 1.5px var(--bg-soft),0 0 0 3px currentColor}body.review-mobile-handoff .mobile-bottom-nav{background:var(--surface)!important;border-top:var(--bd-w) solid var(--border)!important;height:48px!important;padding:0!important}body.review-mobile-handoff .mobile-bottom-nav button{background:transparent!important;border:none!important;color:var(--muted)!important;font-family:Inter,system-ui,sans-serif!important;font-size:9.5px!important;font-weight:500!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;position:relative!important;padding:0!important}body.review-mobile-handoff .mobile-bottom-nav button.active{color:var(--danger)!important;font-weight:600!important}body.review-mobile-handoff .mobile-bottom-nav button.active:before{content:"";position:absolute;top:0;left:25%;right:25%;height:2px;background:var(--danger);border-radius:calc(2px * var(--r-scale))}body.review-mobile-handoff .mobile-bottom-nav button .mobile-bottom-icon{font-size:18px!important;line-height:1!important}.hero-session--mobile{--bg: var(--bg0);--paper: var(--card);--paper-2: var(--card2);--paper-3: var(--bg2);--ss-ink: var(--text);--ss-ink-2: var(--muted);--ss-ink-3: var(--muted2);--ss-ink-4: var(--muted2);--ss-rule: var(--border2);--ss-rule-2: var(--border);--sq-light: oklch(.92 .045 82);--sq-dark: oklch(.6 .078 48);--sq-hint: oklch(.88 .13 88);--sq-good: oklch(.78 .16 142);--sq-bad: oklch(.7 .18 30);--board-ring: rgba(0,0,0,.04);--piece-dark: oklch(.2 .02 50);--piece-light: #faf3e7;--piece-light-shadow: rgba(0,0,0,.55);--cat-theory: oklch(.56 .16 282);--cat-mistakes: oklch(.56 .18 28);--cat-tactics: oklch(.62 .15 72);--cat-endgames: oklch(.56 .12 175);--cat-good: oklch(.56 .14 152);--cat-games: oklch(.6 .16 42);--cat-theory-soft: oklch(.97 .025 282);--cat-mistakes-soft: oklch(.97 .025 28);--cat-tactics-soft: oklch(.97 .04 72);--cat-endgames-soft: oklch(.97 .03 175);--cat-good-soft: oklch(.97 .03 152);--cat-games-soft: oklch(.97 .035 42);--cat-on: oklch(.99 0 0);--ss-serif: var(--font-serif);--ss-sans: var(--font-sans);--ss-mono: var(--font-mono);--eval-pos-fg: var(--good);--eval-pos-bg: color-mix(in srgb, var(--good) 16%, var(--card));--eval-neg-fg: var(--bad);--eval-neg-bg: color-mix(in srgb, var(--bad) 16%, var(--card));--cat-active: var(--cat-tactics);--cat-active-soft: var(--cat-tactics-soft);display:block;width:100%;max-width:100%}.hero-session--mobile .ss__board-wrap{width:100%}.hero-session--mobile .ss__board{width:100%;display:block;border-radius:0;box-shadow:none}.hero-session-card .ss--bold .ss__context:before{border-radius:0}.hero-session--mobile .ss__board>.chessBoardWrap{width:100%!important;max-width:none!important}.hero-session--mobile .ss__board>.chessBoardWrap>svg{width:100%!important;height:auto!important}.hero-session--desktop .ssd__board-wrap>.chessBoardWrap{width:100%!important;max-width:none!important}.hero-session--desktop .ssd__board-wrap>.chessBoardWrap>svg{width:100%!important;height:auto!important}.hero-session--desktop{--ssd-board-pad: 0px;display:block;width:100%;max-width:100%}.hero-session--desktop .ssd__board-frame,.hero-session--desktop .ssd__board-wrap{width:100%}.hero-session-caption{display:flex;justify-content:space-between;align-items:center;font-family:var(--ss-mono, "JetBrains Mono", ui-monospace, monospace);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ss-ink-3, var(--ssd-ink-muted, currentColor));padding:0 2px 12px}.hero-session-caption strong{color:var(--ss-ink, var(--ssd-ink, currentColor));font-weight:600}.hero-session-caption .hero-session-pulse{display:inline-flex;align-items:center;gap:6px;color:var(--cat-mistakes, var(--ssd-accent, currentColor))}.hero-session-caption .hero-session-pulse:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;animation:hero-session-pulse 1.6s ease-in-out infinite}@keyframes hero-session-pulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.hero-session-foot{display:flex;justify-content:space-between;align-items:center;font:400 12px/1.4 var(--ss-sans, "Inter Tight", system-ui, sans-serif);color:var(--ss-ink-3, var(--ssd-ink-muted, currentColor));padding:12px 2px 0}.hero-session-foot .hero-session-foot-end{font-family:var(--ss-mono, ui-monospace, monospace)}.hero-session-foot .hero-session-foot-end.is-final{color:var(--correct-fg, var(--ssd-good, currentColor))}.hero-session-card{background:var(--card, #fff);border:var(--bd-w) solid var(--border, rgba(0,0,0,.08));border-radius:calc(16px * var(--r-scale));padding:20px;box-shadow:var(--shadow, 0 1px 2px rgba(0,0,0,.04))}@media (max-width: 720px){.hero-session-card{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;margin-left:-22px;margin-right:-22px}.hero-session-card .ss__context,.hero-session-card .hero-session-foot{padding-left:22px;padding-right:22px}.hero-session-card .ss__actions.actions{padding:0 10px;margin-top:8px;grid-template-columns:1fr 1fr 1fr 30px}.hero-session-card .ss__fact-row .ss__eval-pill{flex-shrink:0}}.hero-fact-bad{color:#d40e14;font-weight:600;font-style:normal}html[data-mode=dark] .hero-fact-bad,[data-v3theme=dark] .hero-fact-bad,.ssd--dark .hero-fact-bad{color:#ff7264;color:oklch(.72 .18 28)}.hero-session-card--full{padding:0;background:transparent;border:0;box-shadow:none;border-radius:calc(18px * var(--r-scale));overflow:hidden}.hero-session-card--full .ssd{padding:18px 22px 14px;border-radius:calc(18px * var(--r-scale));border:var(--bd-w) solid var(--ssd-rule, rgba(0,0,0,.1))}.hero-session-card--full .ssd__board-stack,.hero-session-card--full .ssd__board-wrap{width:100%;max-width:100%}.hero-session-card--full{--ssd-rail-w: clamp(260px, 22vw, 360px)}.lpbg{margin-top:18px}.lpbg-eyebrow{display:flex;align-items:center;justify-content:center;gap:8px;font:600 12px/1 Inter Tight,system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--muted, rgba(20,30,65,.65));margin-bottom:18px}.lpbg-eyebrow-pulse{width:7px;height:7px;border-radius:999px;background:var(--accent, #3b7aff);animation:lpbg-pulse 2s ease-in-out infinite}@keyframes lpbg-pulse{0%,to{opacity:.55;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.lpbg-m-item{margin-bottom:22px}.lpbg-m-cap{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding-left:10px;border-left:4px solid var(--c, #3b7aff);font:700 13px/1.2 Inter Tight,system-ui,sans-serif;letter-spacing:.02em;text-transform:uppercase;color:var(--text, #1a2240)}.lpbg-m-cap-num{font:600 11px/1 JetBrains Mono,monospace;color:var(--c, #3b7aff)}.lpbg-pills{display:flex;flex-wrap:wrap;gap:10px}.lpbg-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:var(--card, rgba(255, 255, 255, .6));border:var(--bd-w) solid var(--border, rgba(30, 60, 130, .12));font-size:15px;font-weight:600;color:var(--text, #1a2240);box-shadow:0 2px 10px #1e326e0f}.lpbg-pill-dot{width:9px;height:9px;border-radius:50%;background:var(--c, #3b7aff);box-shadow:0 0 10px var(--c, #3b7aff)}.lpbg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.lpbg-card{--c: var(--accent, #3b7aff);margin:0;display:flex;flex-direction:column;gap:12px;padding:15px 15px 14px;background:var(--card, rgba(255,255,255,.55));border:var(--bd-w) solid var(--border, rgba(30,60,130,.1));border-radius:calc(16px * var(--r-scale));box-shadow:var(--elev-1);transition:transform .18s cubic-bezier(.4,0,.2,1),box-shadow .18s cubic-bezier(.4,0,.2,1),border-color .18s cubic-bezier(.4,0,.2,1)}.lpbg-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #141e411a;border-color:color-mix(in oklch,var(--c) 40%,var(--border, rgba(30,60,130,.12)))}.lpbg-head{display:flex;align-items:center;gap:9px;min-height:22px}.lpbg-badge{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:4px 10px 4px 8px;border-radius:999px;font:600 12px/1 Inter Tight,system-ui,sans-serif;color:var(--c);background:color-mix(in oklch,var(--c) 12%,transparent);border:var(--bd-w) solid color-mix(in oklch,var(--c) 26%,transparent)}.lpbg-badge:before{content:"";width:6px;height:6px;border-radius:999px;background:var(--c)}.lpbg-source{font:500 12px/1.3 Inter Tight,system-ui,sans-serif;color:var(--muted, rgba(20,30,65,.62));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lpbg-board{width:100%;border-radius:calc(10px * var(--r-scale));overflow:hidden;box-shadow:0 1px #0000000a,inset 0 0 0 1px #0000000a}.lpbg-board svg{display:block;width:100%!important;height:auto!important;border-radius:calc(10px * var(--r-scale))}.lpbg-prompt{font:500 14.5px/1.35 Inter Tight,system-ui,sans-serif;color:var(--text, #1a2240)}.lpbg-prompt em{font-style:normal;font-weight:700;color:var(--c)}.lpbg-card[data-cat=theory]{--c: oklch(.56 .16 282)}.lpbg-card[data-cat=tactics]{--c: oklch(.58 .15 64)}.lpbg-card[data-cat=mistakes]{--c: oklch(.56 .18 28)}.lpbg-card[data-cat=good]{--c: oklch(.52 .14 152)}.lpbg-card[data-cat=endgames]{--c: oklch(.54 .12 200)}.lpbg-card[data-cat=games]{--c: oklch(.58 .16 42)}html[data-mode=dark] .lpbg-card[data-cat=theory]{--c: oklch(.78 .12 295)}html[data-mode=dark] .lpbg-card[data-cat=tactics]{--c: oklch(.84 .16 82)}html[data-mode=dark] .lpbg-card[data-cat=mistakes]{--c: oklch(.72 .17 22)}html[data-mode=dark] .lpbg-card[data-cat=good]{--c: oklch(.82 .13 148)}html[data-mode=dark] .lpbg-card[data-cat=endgames]{--c: oklch(.8 .09 210)}html[data-mode=dark] .lpbg-card[data-cat=games]{--c: oklch(.8 .16 48)}html[data-mode=dark] .lpbg-card:hover{box-shadow:0 12px 30px #00000059}@media (max-width: 1080px){.lpbg-grid{grid-template-columns:repeat(2,1fr);gap:16px}}@media (max-width: 640px){.lpbg-grid{grid-template-columns:1fr;gap:16px;max-width:420px;margin:0 auto}.lpbg{margin-top:20px}}.lpbg-sessions{display:flex;flex-direction:column;gap:30px}@media (max-width: 768px){.lp-session-demo{display:none}}.dc-root{--dc-bg: var(--bg0);--dc-bg-2: var(--bg1);--dc-elev: var(--card);--dc-elev-2: var(--card2);--dc-ink: var(--text);--dc-ink-2: var(--muted);--dc-ink-3: var(--muted2);--dc-ink-4: var(--muted2);--dc-line: var(--border);--dc-line-2: var(--border);--dc-brand: var(--accent);--dc-brand-2: var(--accent2);--dc-brand-soft:color-mix(in srgb, var(--accent) 16%, var(--card));--dc-brand-ink: #fff8f4;--dc-amber: #c98a18;--dc-amber-soft:#f5e4ba;--dc-green: #4f7d3a;--dc-green-soft:#dbe7c8;--dc-purple: #6a5acd;--dc-purple-soft:#dfd9f4;--dc-blue: #3c6ea8;--dc-blue-soft: #d6e2ee;--dc-serif: var(--font-serif);--dc-sans: var(--font-sans);--dc-mono: var(--font-mono);background:var(--dc-bg);color:var(--dc-ink);font-family:var(--dc-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.dc-root,.dc-root *{box-sizing:border-box}.dc-root button{font:inherit;color:inherit;cursor:pointer}.dc-root .dc-classswitch-row{display:flex;justify-content:center;padding:18px 16px 4px}.dc-root .dc-classswitch{display:inline-flex;gap:3px;padding:4px;background:var(--dc-bg-2);border:var(--bd-w) solid var(--dc-line);border-radius:999px}.dc-root .dc-classseg{border:none;background:transparent;color:var(--dc-ink-3);font:600 13px var(--dc-sans);letter-spacing:.01em;padding:7px 22px;border-radius:999px;transition:background .14s,color .14s}.dc-root .dc-classseg:hover:not(.active){color:var(--dc-ink)}.dc-root .dc-classseg.active{background:var(--dc-brand);color:var(--dc-brand-ink);cursor:default}@media (max-width: 640px){.dc-root .dc-classswitch-row{padding:12px 12px 2px}.dc-root .dc-classseg{padding:8px 26px;font-size:13.5px}}.dc-root input,.dc-root textarea,.dc-root select{font:inherit;color:inherit}.dc-root ::selection{background:var(--dc-brand-soft);color:var(--dc-brand-2)}.dc-root .dc-micro{font-family:var(--dc-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--dc-ink-3);font-weight:500}.dc-root .dc-display{font-family:var(--dc-serif);font-weight:600;letter-spacing:-.012em;margin:0}.dc-root .dc-display em{font-style:italic;color:var(--dc-brand);font-weight:500}.dc-root .dc-logo{font-family:var(--dc-serif);font-style:italic;font-weight:600;font-size:22px;letter-spacing:-.02em;color:var(--dc-ink);display:inline-flex;align-items:baseline;gap:1px}.dc-root .dc-logo .d1{color:var(--dc-brand);font-size:26px;line-height:1}.dc-root .dc-nav{display:flex;align-items:center;gap:32px;padding:14px 28px;border-bottom:var(--bd-w) solid var(--dc-line);background:var(--dc-bg);position:sticky;top:0;z-index:50}.dc-root .dc-nav-links{display:flex;gap:28px;flex:1;justify-content:center;font-size:14px;color:var(--dc-ink-2)}.dc-root .dc-nav-links a{color:inherit;text-decoration:none;padding:6px 2px;cursor:default}.dc-root .dc-nav-links a.active{color:var(--dc-ink);font-weight:500}.dc-root .dc-nav-right{display:flex;align-items:center;gap:16px;color:var(--dc-ink-2);font-size:13px}.dc-root .dc-avatar{width:32px;height:32px;border-radius:50%;background:var(--dc-bg-2);display:flex;align-items:center;justify-content:center;font-size:14px;border:var(--bd-w) solid var(--dc-line)}.dc-root .dc-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:0;border-radius:calc(8px * var(--r-scale));background:var(--dc-brand);color:var(--dc-brand-ink);font-weight:500;font-size:13.5px;letter-spacing:.01em;transition:background .15s ease,transform .05s ease}.dc-root .dc-btn:hover{background:var(--dc-brand-2)}.dc-root .dc-btn:active{transform:translateY(1px)}.dc-root .dc-btn:disabled{opacity:.5;cursor:default}.dc-root .dc-btn.ghost{background:transparent;color:var(--dc-ink);border:var(--bd-w) solid var(--dc-line)}.dc-root .dc-btn.ghost:hover{background:var(--dc-bg-2)}.dc-root .dc-btn.small{padding:6px 10px;font-size:12.5px;border-radius:calc(7px * var(--r-scale))}.dc-root .dc-btn.icon{padding:8px}.dc-root .dc-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-family:var(--dc-mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;font-weight:500}.dc-root .dc-chip .dot{width:6px;height:6px;border-radius:50%}.dc-root .dc-chip[data-kind=opening]{background:var(--dc-blue-soft);color:var(--dc-blue)}.dc-root .dc-chip[data-kind=tactic]{background:var(--dc-amber-soft);color:var(--dc-amber)}.dc-root .dc-chip[data-kind=endgame]{background:var(--dc-green-soft);color:var(--dc-green)}.dc-root .dc-chip[data-kind=custom]{background:var(--dc-purple-soft);color:var(--dc-purple)}.dc-root .dc-card{background:var(--dc-elev);border:var(--bd-w) solid var(--dc-line);border-radius:calc(14px * var(--r-scale))}.dc-root .dc-input{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--dc-elev);color:var(--dc-ink);border:var(--bd-w) solid var(--dc-line);border-radius:calc(8px * var(--r-scale));padding:10px 12px;font-size:13.5px;width:100%;outline:none;transition:border-color .15s ease}.dc-root .dc-input:focus{border-color:var(--dc-brand)}.dc-root .dc-input::placeholder{color:var(--dc-ink-4)}.dc-root .dc-tabs{display:inline-flex;gap:4px;align-items:center;flex-wrap:wrap}.dc-root .dc-tab{padding:8px 14px;border-radius:999px;border:var(--bd-w) solid transparent;font-weight:500;font-size:14px;color:var(--dc-ink-3);background:transparent}.dc-root .dc-tab.active{background:var(--dc-brand-soft);color:var(--dc-brand-2);border-color:var(--dc-brand-soft)}.dc-root .dc-tab:hover:not(.active){color:var(--dc-ink)}.dc-root .dc-row{transition:background .12s ease,box-shadow .12s ease,transform .12s ease}.dc-root .dc-row.drop-target{background:var(--dc-brand-soft);box-shadow:inset 0 0 0 2px var(--dc-brand);border-radius:calc(12px * var(--r-scale))}.dc-root .dc-row.selected{background:var(--dc-bg-2);box-shadow:inset 3px 0 0 var(--dc-brand)}.dc-root .dc-topic-card{transition:transform .12s ease,box-shadow .12s ease}.dc-root .dc-topic-card:hover{transform:translateY(-1px);box-shadow:var(--elev-2)}.dc-root .dc-topic-card.dragging{opacity:.45;transform:scale(.98)}.dc-root .dc-divider{height:1px;background:var(--dc-line);border:0;margin:0}.dc-root .dc-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.dc-root .dc-scroll{scrollbar-width:thin;scrollbar-color:var(--dc-line) transparent}.dc-root .dc-scroll::-webkit-scrollbar{width:10px;height:10px}.dc-root .dc-scroll::-webkit-scrollbar-thumb{background:var(--dc-line);border-radius:calc(99px * var(--r-scale));border:2px solid transparent;background-clip:content-box}.dc-root .dc-scroll::-webkit-scrollbar-thumb:hover{background:var(--dc-line);background-clip:content-box}@keyframes dc-slide-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.dc-root .dc-slide-up{animation:dc-slide-up .22s cubic-bezier(.22,1,.36,1) both}@keyframes dc-fade-in{0%{opacity:0}to{opacity:1}}.dc-root .dc-fade-in{animation:dc-fade-in .2s ease both}.dc-drag-ghost{position:fixed;pointer-events:none;z-index:9999;background:#fbfaf5;border:var(--bd-w) solid rgba(26,22,18,.1);border-radius:calc(12px * var(--r-scale));padding:8px 12px;display:flex;align-items:center;gap:10px;box-shadow:0 10px 30px #1a161224,0 1px #1a16121a inset;font-size:13px;transform:rotate(-2deg);font-family:DM Sans,ui-sans-serif,system-ui,sans-serif;color:#1a1612}.dc-root .dc-dot{display:inline-block;width:7px;height:7px;border-radius:50%;vertical-align:middle}.dc-root .dc-link{color:var(--dc-ink);text-decoration:none;border-bottom:var(--bd-w) solid var(--dc-line);padding-bottom:1px;cursor:default}.dc-root .dc-link:hover{border-color:var(--dc-ink)}.dc-root .dc-bar-track{height:4px;background:var(--dc-bg-2);border-radius:999px;overflow:hidden}.dc-root .dc-bar-fill{height:100%;background:var(--dc-brand);border-radius:999px}@media (max-width: 760px){.dc-root .dc-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:none}.dc-root .dc-tabs::-webkit-scrollbar{display:none}.dc-root .dc-tab{white-space:nowrap;flex:0 0 auto}.dc-drag-ghost{display:none}}.dc-root .dcm-shell{position:relative;min-height:100vh;background:var(--dc-bg)}.dc-root .dcm-tab-content{padding-bottom:92px;min-height:100vh}.dc-root .dcm-tabbar{position:fixed;left:0;right:0;bottom:0;height:76px;background:color-mix(in oklch,var(--dc-bg) 86%,transparent);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border-top:.5px solid var(--dc-line);display:flex;align-items:stretch;justify-content:space-around;padding:6px 4px max(10px,env(safe-area-inset-bottom));z-index:90}.dc-root .dcm-tab{background:transparent;border:0;flex:1;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--dc-ink-3);padding:4px 0;position:relative;min-width:0}.dc-root .dcm-tab.active{color:var(--dc-brand)}.dc-root .dcm-tab .glyph{font-size:19px;line-height:1}.dc-root .dcm-tab .label{font-family:var(--dc-sans);font-size:10.5px;font-weight:500}.dc-root .dcm-tab .badge{position:absolute;top:-1px;right:22%;background:var(--dc-brand);color:var(--dc-brand-ink);font-family:var(--dc-mono);font-size:9px;font-weight:600;padding:1px 5px;border-radius:999px}.dc-root .dc-hw-celebrate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#1a16128c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:dc-hw-fade .3s var(--dc-ease, ease) both;overflow:hidden}@keyframes dc-hw-fade{0%{opacity:0}to{opacity:1}}.dc-root .dc-hw-celebrate-card{position:relative;z-index:2;text-align:center;background:var(--dc-elev);border:var(--bd-w) solid var(--dc-line);border-radius:calc(20px * var(--r-scale));padding:40px 44px;max-width:440px;width:calc(100% - 40px);box-shadow:0 24px 60px #1a161259;animation:dc-hw-pop .42s cubic-bezier(.18,.9,.3,1.2) both}@keyframes dc-hw-pop{0%{transform:scale(.86) translateY(10px);opacity:0}to{transform:none;opacity:1}}.dc-root .dc-hw-celebrate-card .glyph{font-size:52px;line-height:1}.dc-root .dc-hw-celebrate-card h2{font-family:var(--dc-serif);font-weight:600;font-size:30px;line-height:1.1;color:var(--dc-ink);margin:14px 0 6px}.dc-root .dc-hw-celebrate-card .topic{font-family:var(--dc-serif);font-style:italic;font-size:18px;color:var(--dc-brand);margin:0 0 4px}.dc-root .dc-hw-celebrate-card .sub{font-family:var(--dc-sans);font-size:14px;color:var(--dc-ink-3);margin:0 0 24px}.dc-root .dc-hw-confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}.dc-root .dc-hw-confetti i{position:absolute;top:-16px;width:9px;height:14px;border-radius:calc(2px * var(--r-scale));opacity:0;animation:dc-hw-fall linear infinite}.dc-root .dc-hw-confetti i:nth-child(4n){background:var(--dc-brand)}.dc-root .dc-hw-confetti i:nth-child(4n+1){background:var(--dc-amber)}.dc-root .dc-hw-confetti i:nth-child(4n+2){background:var(--dc-green)}.dc-root .dc-hw-confetti i:nth-child(4n+3){background:var(--dc-blue)}@keyframes dc-hw-fall{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:1}to{transform:translateY(104vh) rotate(540deg);opacity:.9}}@media (prefers-reduced-motion: reduce){.dc-root .dc-hw-confetti{display:none}.dc-root .dc-hw-celebrate-card{animation:none}}.clip-root{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg0, #c2d4ec);overflow:hidden;z-index:9999;display:flex;align-items:flex-start;justify-content:center}.clip-root.clip-mobile{padding:0}.clip-root.clip-mobile>*{width:100%;max-width:420px;height:100%;max-height:100vh;overflow:auto}.clip-root.clip-desktop>*{width:100%;height:100%}.clip-root .topbar,.clip-root .mobile-bottom-nav,.clip-root .nav-link,.clip-root .container>.topbar,.clip-root .achievement-toast,.clip-root .toast-host{display:none!important}.clip-root.clip-clean .ss__context,.clip-root.clip-clean .ss__captured,.clip-root.clip-clean .ss__rail,.clip-root.clip-clean .ss__scrub,.clip-root.clip-clean .ss__actions-dock,.clip-root.clip-clean .ss__chips-row,.clip-root.clip-clean .ss__top-spacer{display:none!important}.clip-root.clip-clean .ss{justify-content:center!important}.clip-root.clip-clean .ss__board-wrap{margin:0 auto!important;padding:0 10px!important;width:100%!important}.clip-root.clip-clean .ss__bottom{padding:0!important;min-height:0!important}.clip-error{padding:32px;font-family:var(--font-sans, system-ui, -apple-system, sans-serif);color:var(--text, #1a2240)}.clip-error h2{margin-top:0}.clip-error code{background:#0000000f;padding:2px 6px;border-radius:4px;font-size:.9em}.clip-index{padding:32px;font-family:var(--font-sans, system-ui, -apple-system, sans-serif);color:var(--text, #1a2240);max-width:720px}.clip-index h1{margin-top:0}.clip-index ul{list-style:none;padding:0}.clip-index li{padding:10px 14px;margin:6px 0;background:#ffffff8c;border:1px solid rgba(30,60,130,.08);border-radius:10px}.clip-index a{color:var(--accent, #3b7aff);text-decoration:none}.clip-index a:hover{text-decoration:underline}.clip-index code{background:#0000000f;padding:2px 6px;border-radius:4px;font-size:.9em}.clip-index h3{margin-top:24px;margin-bottom:6px;color:var(--text, #1a2240);font-size:1.05em}.clip-loading{padding:48px 32px;font-family:var(--font-sans, system-ui, -apple-system, sans-serif);color:var(--muted, rgba(20,30,65,.65));font-size:16px;text-align:center}:root{--build-id: "v1.4.50";--bg0: oklch(.96 .012 80);--bg1: oklch(.94 .012 80);--bg2: oklch(.92 .012 80);--card: oklch(.99 .005 80);--card2: oklch(.97 .008 80);--border: oklch(.88 .01 80);--border2: oklch(.83 .012 80);--text: oklch(.18 .014 250);--muted: oklch(.5 .01 250);--muted2: oklch(.68 .008 250);--accent: oklch(.58 .16 30);--accent2: oklch(.62 .18 25);--primary: oklch(.58 .16 30);--good: oklch(.55 .13 150);--bad: oklch(.58 .18 25);--warn: oklch(.66 .14 75);--green: oklch(.55 .13 150);--red: oklch(.58 .18 25);--yellow: oklch(.62 .14 75);--missed-theory: #14b8a6;--missed-theory-soft: rgba(20, 184, 166, .12);--surface: oklch(.97 .008 80 / .55);--m-1: oklch(.7 .1 25);--m-2: oklch(.78 .13 90);--m-3: oklch(.72 .12 150);--m-4: oklch(.7 .11 230);--r-lg: 18px;--r-md: 14px;--r-sm: 10px;--r-scale: 1;--bd-w: 1px;--shadow: 0 1px 2px rgba(20, 15, 8, .04), 0 4px 12px -4px rgba(20, 15, 8, .08), 0 12px 36px -10px rgba(20, 15, 8, .1);--elev-1: 0 1px 2px rgba(20, 15, 8, .05);--elev-2: 0 2px 10px rgba(20, 15, 8, .07);--elev-3: 0 12px 32px rgba(20, 15, 8, .16);--max-w: 1600px;--emph-bg: transparent;--emph-fg: inherit;--emph-pad: 0;--ease: cubic-bezier(.2, .8, .2, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--font-serif: "Instrument Serif", "Iowan Old Style", Georgia, serif;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--card-bd: 1px solid var(--border);--card-r: 12px;--card-sh: none;--font-display: "Cormorant Garamond", Georgia, serif;--disp-style: italic;--disp-weight: 500;--label-tt: none;--cta-bg: var(--accent);--cta-fg: #ffffff;--cta-bd: none;--cta-r: 6px;--cta-sh: none;--cta-tt: none;--cta-ff: inherit;--cta-fw: 600}[data-mode=dark]{--bg0: oklch(.16 .018 250);--bg1: oklch(.2 .02 250);--bg2: oklch(.23 .02 250);--card: oklch(.22 .02 250);--card2: oklch(.26 .02 250);--border: oklch(.3 .018 250);--border2: oklch(.36 .018 250);--text: oklch(.96 .005 80);--muted: oklch(.72 .012 80);--muted2: oklch(.55 .012 80);--accent: oklch(.82 .14 80);--accent2: oklch(.78 .16 60);--primary: oklch(.82 .14 80);--good: oklch(.72 .14 150);--bad: oklch(.68 .2 25);--warn: oklch(.78 .14 75);--green: oklch(.72 .14 150);--red: oklch(.68 .2 25);--yellow: oklch(.78 .14 75);--surface: oklch(.22 .02 250 / .7);--shadow: 0 4px 20px rgba(0, 0, 0, .35), 0 12px 40px -10px rgba(0, 0, 0, .45);--missed-theory: oklch(.72 .12 190);--missed-theory-soft: oklch(.72 .12 190 / .14)}[data-mode=dark] body{background:linear-gradient(180deg,var(--bg0),var(--bg1))}[data-mode=dark]{scrollbar-color:rgba(255,255,255,.14) transparent}[data-mode=dark] ::-webkit-scrollbar-thumb{background:#ffffff24}[data-mode=dark] ::-webkit-scrollbar-thumb:hover{background:#ffffff3d}[data-mode=dark] .topbar{background:#070e15d9;border-bottom:1px solid var(--border)}[data-mode=dark] .topbar:after{opacity:.45}[data-mode=dark] .card{background:var(--card);border:1px solid var(--border);box-shadow:0 4px 18px #0000004d}[data-mode=dark] .card:hover{background:var(--card2);border-color:var(--border2)}[data-mode=dark] .btn{background:var(--card2);border:1px solid var(--border);color:var(--text)}[data-mode=dark] .btn:hover{background:#f3b94c1a;border-color:#f3b94c4d}[data-mode=dark] .btn.active,[data-mode=dark] .btn.active:hover{background:#f3b94c29;border-color:#f3b94c6b;color:var(--accent)}[data-mode=dark] .btn-primary,[data-mode=dark] .btn.btn-primary{background:var(--accent);border-color:#f3b94c99;color:#070e15}[data-mode=dark] .btn-primary:hover{background:#ffc761;background:oklch(.86 .14 80)}[data-mode=dark] .input{background:var(--card);border:1px solid var(--border);color:var(--text)}[data-mode=dark] .input:focus{border-color:#f3b94c73;box-shadow:0 0 0 3px #f3b94c2e}[data-mode=dark] .input::placeholder{color:var(--muted2)}[data-mode=dark] .pill{background:var(--card);border:1px solid var(--border)}[data-mode=dark] .pill.active{background:#f3b94c29;border-color:#f3b94c6b;color:var(--accent)}[data-mode=dark] .muted{color:var(--muted)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#3c28141f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3c281438}*{box-sizing:border-box}html{height:100%;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;scrollbar-color:rgba(60,40,20,.12) transparent;scrollbar-width:thin;scrollbar-gutter:stable}body{height:100%;overscroll-behavior-y:contain;overflow-x:hidden}body{margin:0;font-family:Inter Tight,Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}.serif{font-family:var(--font-serif);font-weight:400}.serif-italic{font-family:var(--font-serif);font-style:italic;font-weight:400}.mono{font-family:var(--font-mono)}.kicker{font:500 11px/1 Inter Tight,system-ui,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted)}.cb-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.cb-page-head h1{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:44px;line-height:1.02;letter-spacing:-.6px;margin:0;color:var(--text)}.cb-page-head h1 em{color:var(--accent)}.cb-page-head .sub{margin-top:8px;font:400 14px/1.5 Inter Tight,sans-serif;color:var(--muted)}.cb-page-head .actions{display:flex;gap:10px;flex-shrink:0}.cb-btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;background:var(--card);color:var(--text);border:1px solid var(--border);font:500 13px/1 Inter Tight,sans-serif;cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease)}.cb-btn-ghost:hover{background:var(--card2);border-color:var(--border2)}.cb-session{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:32px;position:relative;overflow:hidden}.cb-session:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(700px 350px at 90% -20%,color-mix(in oklch,var(--accent) 8%,transparent),transparent 60%);pointer-events:none}.cb-session-row{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;position:relative}.cb-session-eyebrow{display:inline-flex;align-items:center;gap:8px;font:500 11px/1 var(--font-mono);color:var(--accent);letter-spacing:1.4px;text-transform:uppercase;margin-bottom:14px}.cb-session-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:cb-pulse 2.4s infinite}@keyframes cb-pulse{0%,to{opacity:1}50%{opacity:.4}}.cb-session-title{font-family:var(--font-serif);font-weight:400;font-size:38px;line-height:1.05;letter-spacing:-.6px;margin:0 0 6px;color:var(--text)}.cb-session-title em{font-style:italic;color:var(--accent)}.cb-session-meta{font:400 14.5px/1.5 Inter Tight,sans-serif;color:var(--muted);margin:0 0 20px;max-width:560px}.cb-session-meta strong{color:var(--text);font-weight:600}.cb-session-breakdown{display:flex;border:1px solid var(--border);border-radius:10px;background:var(--bg0);overflow:hidden;width:fit-content}.cb-session-breakdown .seg{padding:11px 18px;display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--border);min-width:100px}.cb-session-breakdown .seg:last-child{border-right:none}.cb-session-breakdown .seg .v{font:500 18px/1 var(--font-mono);color:var(--text);font-variant-numeric:tabular-nums}.cb-session-breakdown .seg .l{font:500 10.5px/1 Inter Tight,sans-serif;color:var(--muted);letter-spacing:.6px;text-transform:uppercase}.cb-session-breakdown .seg.due .v{color:var(--accent)}.cb-session-breakdown .seg.new .v{color:var(--good)}.cb-session-cta-col{display:flex;flex-direction:column;gap:10px;align-items:stretch;min-width:220px}.cb-start-btn{background:var(--accent);color:#0d1218;border:none;border-radius:10px;padding:22px 28px;font:600 17px/1.1 Inter Tight,sans-serif;letter-spacing:-.2px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;transition:transform .12s var(--ease),box-shadow .2s var(--ease);box-shadow:0 6px 30px -8px color-mix(in oklch,var(--accent) 50%,transparent)}.cb-start-btn:hover{transform:translateY(-1px);box-shadow:0 10px 36px -6px color-mix(in oklch,var(--accent) 65%,transparent)}.cb-start-btn .arrow{width:36px;height:36px;border-radius:50%;background:#0000001f;display:grid;place-items:center;flex-shrink:0}.cb-start-btn .meta{font:500 11.5px/1.2 var(--font-mono);color:#00000080;margin-top:4px;letter-spacing:.4px}.cb-start-btn .label{display:flex;flex-direction:column;align-items:flex-start;gap:0}.cb-start-secondary{display:flex;gap:6px}.cb-start-secondary button{flex:1;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:7px;padding:9px 10px;font:500 11.5px/1 Inter Tight,sans-serif;cursor:pointer;transition:background .15s var(--ease)}.cb-start-secondary button:hover{background:var(--card2);color:var(--text)}.lp-shell{background:var(--bg0);color:var(--text);min-height:100vh;font-family:Inter Tight,system-ui,sans-serif}.lp-wrap{max-width:1320px;margin:0 auto;padding:0 32px}.lp-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);background:color-mix(in oklch,var(--bg0) 85%,transparent);border-bottom:1px solid var(--border)}.lp-nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0;gap:32px}.lp-nav-left{display:flex;align-items:center;gap:48px}.lp-brand{display:inline-flex;align-items:center;gap:10px;font:600 16px/1 Inter Tight,sans-serif;letter-spacing:1.6px;color:var(--text);text-decoration:none;cursor:pointer}.lp-brand .lp-brand-mark{color:var(--accent)}.lp-brand-logo{height:38px;width:auto;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.18))}.lp-nav-links{display:flex;gap:24px}.lp-nav-links a{font:500 13px/1 Inter Tight,sans-serif;color:var(--muted);padding:6px 0;border-bottom:1.5px solid transparent;transition:color .15s var(--ease),border-color .15s var(--ease);text-decoration:none;white-space:nowrap}.lp-nav-links a:hover{color:var(--text)}.lp-nav-right{display:flex;align-items:center;gap:16px}.lp-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font:600 14px/1 Inter Tight,sans-serif;letter-spacing:.2px;cursor:pointer;border:1px solid transparent;transition:transform .12s var(--ease),box-shadow .2s var(--ease),background .15s var(--ease);text-decoration:none;background:transparent;color:var(--text)}.lp-btn-primary{background:var(--accent);color:#0d1218;box-shadow:0 1px 2px #0000000a,0 4px 12px -4px color-mix(in oklch,var(--accent) 40%,transparent)}.lp-btn-primary:hover{transform:translateY(-1px);box-shadow:0 1px 2px #0000000a,0 6px 16px -4px color-mix(in oklch,var(--accent) 50%,transparent)}.lp-btn-primary.lg{padding:16px 28px;font-size:14px;letter-spacing:.4px;text-transform:uppercase}.lp-btn-text{background:transparent;color:var(--accent);padding:8px 12px;white-space:nowrap}.lp-btn-text:hover{background:color-mix(in oklch,var(--accent) 8%,transparent)}@media (max-width: 600px){.lp-shell .lp-nav .brand-wordmark{font-size:18px}.lp-nav-right{gap:6px}.lp-nav-right .lp-btn-primary,.lp-nav-right .lang-dropdown,.lp-nav-right .lp-theme-toggle{display:none}.lp-shell .lp-btn-text{padding:8px 10px;flex-shrink:0}}.lp-gm-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.lp-gm-chip{display:inline-flex;align-items:baseline;gap:8px;padding:9px 16px;background:var(--card);border:var(--card-bd);border-radius:var(--card-r);box-shadow:var(--card-sh);font-size:15px;font-weight:600;color:var(--text)}.lp-gm-chip b{font-family:var(--font-mono);font-size:13px;color:var(--accent)}.lp-gm-chip--more{background:transparent;box-shadow:none;border-style:dashed;color:var(--muted);font-weight:500}.lp-gm-samples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}.lp-gm-sample{background:var(--card);border:var(--card-bd);border-radius:var(--card-r);box-shadow:var(--card-sh);padding:14px}.lp-gm-sample-cap{font:700 14px/1.25 Inter Tight,system-ui,sans-serif;color:var(--text);margin-bottom:10px}.lp-gm-sample .static-mini-board,.lp-gm-sample svg{width:100%;height:auto;display:block}.lp-gm-sample-meta{margin-top:9px;display:flex;flex-direction:column;gap:2px;font:500 11px/1.45 var(--font-mono);color:var(--muted)}.lp-gm-sample-meta .op{color:var(--accent)}@media (max-width: 700px){.lp-gm-samples{grid-template-columns:1fr;max-width:420px}}.lp-gm-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:26px}.lp-gm-stats>div{border-top:2px solid var(--text);padding-top:10px}.lp-gm-stats b{display:block;font-family:var(--font-display);font-style:normal;font-size:34px;line-height:1;color:var(--text)}.lp-gm-stats span{display:block;margin-top:5px;font:500 11px/1.4 var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.lp-breadth-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:32px}.lp-breadth-cell{background:var(--card);border:var(--card-bd);border-radius:var(--card-r);box-shadow:var(--card-sh);padding:18px 18px 16px}.lp-breadth-cell b{display:block;font-family:var(--font-mono);font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--accent);margin-bottom:10px}.lp-breadth-cell h3{margin:0 0 6px;font-size:16.5px;font-weight:700;color:var(--text)}.lp-breadth-cell p{margin:0;font-size:13.5px;line-height:1.5;color:var(--muted)}@media (max-width: 860px){.lp-breadth-grid{grid-template-columns:1fr 1fr}.lp-gm-stats{grid-template-columns:1fr 1fr;row-gap:18px}}@media (max-width: 540px){.lp-breadth-grid{grid-template-columns:1fr}.lp-gm-chip{font-size:13.5px;padding:8px 12px}}.lp-eyebrow{font:500 11px/1 Inter Tight,sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.lp-section-title{font:400 clamp(32px,4.2vw,56px)/1.02 var(--font-serif);letter-spacing:-.5px;margin:0 0 12px;color:var(--text)}.lp-section-title em{font-style:italic;color:var(--accent)}.lp-section-lede{font:400 17px/1.55 Inter Tight,sans-serif;color:var(--muted);max-width:600px;margin:0}.lp-hero{padding:96px 0 64px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:64px;align-items:center}.lp-hero>div:first-child{min-width:0}.lp-hero--stacked{display:block;padding:36px 0 28px}.lp-hero--stacked .lp-hero-text{max-width:760px;margin:0 auto 24px;text-align:center}.lp-hero--stacked .lp-hero-cta,.lp-hero--stacked .lp-hero-meta{justify-content:center}.lp-hero--stacked .lp-hero-sub{margin-left:auto;margin-right:auto}.lp-hero--stacked .lp-hero-eyebrow{margin-bottom:24px}.lp-hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font:500 12px/1 Inter Tight,sans-serif;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);margin-bottom:24px}.lp-hero-eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:lp-pulse 2.4s var(--ease) infinite}@keyframes lp-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.lp-headline{font:400 clamp(40px,5.2vw,64px)/1.02 var(--font-serif);letter-spacing:-1px;text-wrap:balance;margin:0 0 16px;color:var(--text)}.lp-headline em{font-style:italic;color:var(--accent)}.lp-hero-sub{font:400 17px/1.55 Inter Tight,sans-serif;color:var(--muted);max-width:520px;margin:0 0 32px}.lp-hero-cta{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:22px;max-width:300px}.lp-hero-google-btn{flex:none;max-width:none;margin:0;display:inline-flex;align-items:center;justify-content:center;gap:10px}.lp-hero-meta{display:flex;gap:24px;flex-wrap:wrap;font:400 13px/1.4 Inter Tight,sans-serif;color:var(--muted)}.lp-hero-meta .item{display:flex;align-items:center;gap:6px}.lp-board-caption strong{color:var(--text);font-weight:600}.lp-hero-board-wrap>div,.lp-hero-board-wrap svg{width:100%!important;height:100%!important;max-width:none!important}.lp-sq.l{background:#f5e1c8}.lp-sq.d{background:#ae785a}.lp-sq.bad{background:#ff716b8c!important;background:oklch(.72 .18 25 / .55)!important}.lp-sq.good{background:#4cd6768c!important}.lp-piece.black{color:#262f38;text-shadow:0 1px 0 rgba(255,255,255,.3)}[data-mode=dark] .lp-piece{color:#eee}[data-mode=dark] .lp-piece.black{color:#0f171f}.lp-pipeline{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:32px}.lp-step{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px}.lp-step-num{font:400 28px/1 var(--font-serif);font-style:italic;color:var(--accent);margin-bottom:12px}.lp-step h3{font:500 15px/1.3 Inter Tight,sans-serif;margin:0 0 6px;color:var(--text)}.lp-step p{font:400 13px/1.5 Inter Tight,sans-serif;margin:0;color:var(--muted)}.lp-features{margin-top:96px}.lp-feature-row{display:grid;grid-template-columns:80px 1fr 1.1fr;gap:32px;padding:48px 0;border-bottom:1px solid var(--border);align-items:center}.lp-feature-row:last-child{border-bottom:none}.lp-num-big{font:400 56px/1 var(--font-serif);font-style:italic;color:var(--muted2)}.lp-feat-h{font:400 28px/1.15 var(--font-serif);margin:0 0 12px;color:var(--text);letter-spacing:-.3px}.lp-feat-h em{font-style:italic;color:var(--accent)}.lp-feat-p{font:400 15px/1.6 Inter Tight,sans-serif;color:var(--muted);margin:0}.lp-visual{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px;min-height:200px;display:flex;flex-direction:column;gap:12px}.lp-v-label{font:500 11px/1 Inter Tight,sans-serif;letter-spacing:1.4px;color:var(--muted);text-transform:uppercase}.lp-q-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border);font:400 13px/1.3 Inter Tight,sans-serif}.lp-q-row:last-child{border-bottom:none}.lp-q-row .game{font-family:var(--font-mono);color:var(--muted);font-size:11px}.lp-q-row .move{color:var(--text);font-weight:500}.lp-q-row .tag{font-family:var(--font-mono);font-size:11px;padding:2px 6px;border-radius:3px;background:color-mix(in oklch,var(--accent) 12%,transparent);color:var(--accent)}.lp-q-row .tag.bad{background:color-mix(in oklch,var(--bad) 12%,transparent);color:var(--bad)}.lp-rep-bar{display:grid;grid-template-columns:110px 1fr 38px;gap:12px;align-items:center;font:400 12px/1 Inter Tight,sans-serif;padding:6px 0}.lp-rep-bar .name{color:var(--text)}.lp-rep-bar .pct{font-family:var(--font-mono);color:var(--muted);text-align:right;font-size:11px}.lp-rep-bar .track{height:4px;border-radius:2px;background:var(--bg0);border:1px solid var(--border);overflow:hidden}.lp-rep-bar .fill{height:100%;background:linear-gradient(90deg,var(--m-2),var(--accent))}.lp-fsrs-lanes{display:flex;flex-direction:column;gap:8px}.lp-lane{display:grid;grid-template-columns:80px 1fr;gap:12px;align-items:center}.lp-lane-label{font:500 11px/1 var(--font-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.lp-lane-track{height:18px;background:var(--bg0);border:1px solid var(--border);border-radius:3px;position:relative}.lp-lane-marker{position:absolute;top:0;bottom:0;width:3px;border-radius:1px}.lp-lane-marker.due{background:var(--accent)}.lp-lane-marker.soon{background:var(--m-2);opacity:.7}.lp-lane-marker.future{background:var(--m-4);opacity:.5}.lp-eval-row .num{color:var(--accent);font-weight:500}.lp-eval-row .neg{color:var(--bad)}.lp-master-list{font:400 12px/1.5 Inter Tight,sans-serif}.lp-master-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:6px 0;border-bottom:1px solid var(--border)}.lp-master-row:last-child{border-bottom:none}.lp-master-row .who{color:var(--text)}.lp-master-row .yr{font-family:var(--font-mono);color:var(--muted);font-size:11px}.lp-countdown .days{font:400 64px/1 var(--font-serif);font-style:italic;color:var(--accent);margin-bottom:4px}.lp-countdown .label{font:500 11px/1 Inter Tight,sans-serif;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted)}.lp-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px}.lp-testimonial{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px}.lp-testimonial blockquote{font:400 17px/1.5 var(--font-serif);font-style:italic;color:var(--text);margin:0 0 16px}.lp-who{display:flex;align-items:center;gap:10px}.lp-who-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#d58679,#8d7987,#3e668f);display:grid;place-items:center;font:600 11px/1 Inter Tight,sans-serif;color:#fff}.lp-who-name{font:600 13px/1.2 Inter Tight,sans-serif;color:var(--text)}.lp-who-meta{font:400 11px/1.2 Inter Tight,sans-serif;color:var(--muted);margin-top:2px}.lp-stat .v{font:400 44px/1 var(--font-serif);font-style:italic;color:var(--accent)}.lp-stat .l{font:400 13px/1.4 Inter Tight,sans-serif;color:var(--muted);margin-top:6px;max-width:180px}.lp-tech-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:32px}.lp-tech-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:12px}.lp-tech-card .logo{width:56px;height:56px;background:var(--bg0);border:1px solid var(--border);border-radius:8px;display:grid;place-items:center;font:600 14px/1 var(--font-mono);color:var(--accent);text-align:center}.lp-tech-card h4{font:600 14px/1.2 Inter Tight,sans-serif;margin:0;color:var(--text)}.lp-tech-card p{font:400 12px/1.5 Inter Tight,sans-serif;color:var(--muted);margin:0}.lp-faq{margin-top:32px}.lp-faq-item{border-bottom:1px solid var(--border)}.lp-faq-q{width:100%;display:flex;align-items:center;gap:12px;justify-content:space-between;padding:16px 0;background:transparent;border:none;cursor:pointer;font:500 16px/1.4 Inter Tight,sans-serif;color:var(--text);text-align:left}.lp-faq-q .ix{font:500 12px/1 var(--font-mono);color:var(--muted);margin-right:12px}.lp-faq-q .chev{font:400 18px/1 var(--font-serif);color:var(--muted);transition:transform .2s var(--ease),color .2s var(--ease)}.lp-faq-a{display:none;padding:0 0 24px 44px;font:400 14px/1.6 Inter Tight,sans-serif;color:var(--muted);max-width:760px}.lp-faq-item.open .lp-faq-a{display:block}.lp-faq-item.open .lp-faq-q .chev{color:var(--accent);transform:rotate(45deg)}.lp-final-cta{text-align:center;padding:96px 0;margin-top:64px}.lp-final-cta h2{font:400 clamp(32px,4.2vw,56px)/1.05 var(--font-serif);margin:0 0 12px;letter-spacing:-.5px;color:var(--text)}.lp-final-cta h2 em{font-style:italic;color:var(--accent)}.lp-final-cta p{font:400 17px/1.55 Inter Tight,sans-serif;color:var(--muted);margin:0 auto 24px;max-width:540px}.lp-footer{border-top:1px solid var(--border);padding:36px 0;font:400 12px/1.6 Inter Tight,sans-serif;color:var(--muted)}.lp-footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}.lp-footer a{color:var(--muted);text-decoration:none}.lp-footer a:hover{color:var(--text)}.lp-theme-toggle{width:38px;height:38px;border:none;background:transparent;border-radius:10px;color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s var(--ease)}.lp-theme-toggle:hover{background:var(--card2)}.lp-theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lp-hero-meta-link{color:var(--text);font:400 13px/1.4 Inter Tight,sans-serif;text-decoration:underline;text-decoration-color:var(--border2);text-underline-offset:3px}.lp-hero-meta-link:hover{text-decoration-color:var(--accent);color:var(--accent)}@media (max-width: 880px){.lp-hero{grid-template-columns:1fr;padding:64px 0 48px;gap:32px}.lp-pipeline,.lp-testimonials,.lp-tech-grid,.lp-stats{grid-template-columns:1fr 1fr}.lp-feature-row{grid-template-columns:1fr;gap:16px;padding:32px 0}.lp-num-big{font-size:36px}.lp-nav-links{display:none}.lp-nav{gap:8px}.lp-nav-left{padding-left:4px}.lp-nav-right{gap:6px;padding-right:2px}.lp-nav-right .lang-dropdown-btn{border-color:#1e3c8247}.lp-nav-right .lp-btn-text{padding:8px 10px;font-size:13px}.lp-nav-right .lp-btn-primary{display:none}}@media (max-width: 640px){.lp-wrap{padding:0 22px}.lp-header{backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px)}.lp-nav{height:56px;padding:0}.lp-nav-left{gap:0}.lp-brand-logo{height:36px}.lp-hero{padding:28px 0 14px;gap:22px}.lp-hero-eyebrow{font:500 11px/1 var(--font-mono);letter-spacing:.08em;margin-bottom:14px;gap:8px}.lp-headline{font:400 40px/1 var(--font-serif);letter-spacing:-.025em;margin:0 0 12px}.lp-hero-sub{font:400 15.5px/1.45 Inter Tight,sans-serif;margin:0 0 18px}.lp-hero-cta{margin-bottom:10px;flex-direction:column;gap:10px;max-width:none}.lp-hero-cta .lp-btn-primary{width:100%;height:52px;border-radius:12px;font:600 15px/1 Inter Tight,sans-serif;letter-spacing:.04em;text-transform:uppercase;padding:0 18px;gap:10px}.lp-hero-google-btn{width:100%;height:52px}.lp-hero-meta{justify-content:center;gap:10px;font-size:12.5px}.lp-hero-meta .item{gap:5px}.lp-board-frame{border-radius:18px;padding:18px;box-shadow:none}.lp-board-caption{font-family:var(--font-mono);letter-spacing:.08em;margin-bottom:14px}.lp-board-foot{margin-top:14px;font-size:13px}.lp-eyebrow{font:500 11px/1 var(--font-mono);letter-spacing:.08em;display:inline-flex;align-items:center;gap:8px}.lp-eyebrow:before{content:"";width:6px;height:6px;border-radius:99px;background:var(--accent);display:inline-block}.lp-section-title{font:400 36px/1.05 var(--font-serif);letter-spacing:-.02em;margin:14px 0 12px}.lp-section-lede{font:400 15px/1.5 Inter Tight,sans-serif;margin:0 0 20px}.lp-pipeline{grid-template-columns:1fr;gap:10px;margin-top:0}.lp-step{border-radius:14px;padding:16px 18px 18px}.lp-step-num{font:italic 400 22px/1 var(--font-serif);margin-bottom:8px}.lp-step h3{font:600 17px/1.3 Inter Tight,sans-serif;margin:0 0 4px}.lp-step p{font:400 14px/1.45 Inter Tight,sans-serif}.lp-features{margin-top:32px}.lp-feature-row{padding:24px 0;gap:12px}.lp-num-big{font:italic 400 28px/1 var(--font-serif);color:var(--accent);margin-bottom:4px}.lp-feat-h{font:400 22px/1.15 var(--font-serif);margin:0 0 8px;letter-spacing:-.01em}.lp-feat-p{font:400 14.5px/1.5 Inter Tight,sans-serif}.lp-visual{border-radius:14px;padding:16px;min-height:0}.lp-testimonials{grid-template-columns:1fr;gap:10px;margin-top:20px}.lp-testimonial{border-radius:14px;padding:18px}.lp-testimonial blockquote{font:italic 400 15.5px/1.5 var(--font-serif);margin-bottom:12px}.lp-stats{grid-template-columns:repeat(3,1fr);gap:6px;padding:18px 8px;margin:24px 0 0;background:var(--card);border:1px solid var(--border);border-radius:14px}.lp-stat{text-align:center;padding:0 4px}.lp-stat+.lp-stat{border-left:1px solid var(--border)}.lp-stat .v{font:400 22px/1 var(--font-serif);letter-spacing:-.01em}.lp-stat .l{font:500 10px/1.2 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;max-width:none}.lp-tech-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.lp-tech-card{border-radius:14px;padding:16px;gap:8px}.lp-faq-q{font:500 15.5px/1.4 Inter Tight,sans-serif;padding:14px 0}.lp-faq-a{padding:0 0 18px 36px;font-size:14px}.lp-final-cta{padding:0;margin:28px 0 22px}.lp-final-cta-inner{background:var(--card2);border:1px solid var(--border);border-radius:18px;padding:24px 20px 22px;text-align:left}.lp-final-cta h2{font:400 28px/1.1 var(--font-serif);letter-spacing:-.02em;margin:12px 0 14px}.lp-final-cta p{font:400 14px/1.5 Inter Tight,sans-serif;margin:0 0 14px;max-width:none}.lp-final-cta .lp-btn-primary{width:100%;height:50px;border-radius:12px;font:600 14px/1 Inter Tight,sans-serif;letter-spacing:.04em;text-transform:uppercase}.lp-footer{padding:8px 0 36px;font-size:12px}.lp-footer-inner{border-top:1px solid var(--border);padding:16px 0;flex-direction:row}.lp-footer .lp-build{font:500 10px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted2)}.lp-shell main>section{margin-top:0!important;padding-top:24px;padding-bottom:8px}.lp-shell main>section:first-of-type{padding-top:0}}.repName-meta{margin-left:10px;font:500 11px/1 var(--font-mono);color:var(--muted);letter-spacing:.3px}.cb-rail-band{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.cb-platform-mark{width:30px;height:30px;border-radius:7px;background:#0d1218;color:var(--bg0);display:grid;place-items:center;font:600 13px/1 Inter Tight,sans-serif;flex-shrink:0}.cb-source-stats{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--border);margin-top:4px;padding-top:12px}.cb-source-stats .s{border-right:1px solid var(--border);padding:0 12px;display:flex;flex-direction:column;gap:3px}.cb-source-stats .s:first-child{padding-left:0}.cb-source-stats .s:last-child{border-right:none;padding-right:0}.cb-source-stats .s .v{font:500 17px/1 var(--font-mono);color:var(--text);font-variant-numeric:tabular-nums}.cb-source-stats .s .l{font:500 10px/1 Inter Tight,sans-serif;color:var(--muted);letter-spacing:.5px;text-transform:uppercase}.cb-mistakes-card{padding:0;overflow:hidden}.cb-mistakes-card .head{padding:14px 16px}.cb-live-pill{margin-left:auto;font:500 10px/1 var(--font-mono);color:var(--bad);display:inline-flex;align-items:center;gap:5px;letter-spacing:.4px}.cb-live-pill .dot{width:6px;height:6px;border-radius:50%;background:var(--bad);animation:cb-pulse 2s infinite}.cb-mis-row{padding:12px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .15s var(--ease)}.cb-mis-row:last-child{border-bottom:none}.cb-mis-row:hover{background:var(--card2)}.cb-mis-row .top{display:flex;align-items:center;gap:8px;font:500 11px/1 var(--font-mono);color:var(--muted);margin-bottom:6px}.cb-mis-row .top .opp{color:var(--text)}.cb-mis-row .top .when{margin-left:auto}.cb-mis-row .move{font:500 13px/1.3 Inter Tight,sans-serif;color:var(--text);display:flex;align-items:baseline;gap:8px}.cb-mis-row .move .bad{color:var(--bad);font-family:var(--font-mono);font-size:12.5px}.cb-mis-row .move .arr{color:var(--muted)}.cb-mis-row .move .good{color:var(--good);font-family:var(--font-mono);font-size:12.5px}.cb-mis-eval{margin-left:auto;color:var(--bad);font:500 11px/1 var(--font-mono)}.cb-bolt-tile{width:30px;height:30px;border-radius:7px;background:color-mix(in oklch,var(--accent) 12%,transparent);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.cb-bolt-bar{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;height:28px;margin-top:4px}.cb-bolt-foot{display:flex;justify-content:space-between;margin-top:10px;font:500 11px/1 var(--font-mono);color:var(--muted)}.cb-bolt-foot .cb-on-track{color:var(--good)}@media (max-width: 1100px){.cb-rail-band{grid-template-columns:1fr}}.cb-side-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px 18px}.cb-side-card .head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.cb-side-card .head .title{font:500 13px/1.2 Inter Tight,sans-serif;color:var(--text)}.cb-side-card .head .sub{font:500 11px/1 var(--font-mono);color:var(--muted);margin-top:3px}.cb-side-card .head .status{margin-left:auto;display:flex;align-items:center;gap:6px;font:500 11px/1 var(--font-mono);color:var(--good)}.cb-side-card .head .status .dot{width:6px;height:6px;border-radius:50%;background:var(--good)}@media (max-width: 1100px){.cb-session-row{grid-template-columns:1fr}.cb-session-cta-col{min-width:0}}.mastery-bar{display:flex;gap:2px;height:3px;width:100%;border-radius:2px;overflow:hidden}.mastery-bar>span{display:block;min-height:100%}.dots{display:inline-flex;gap:5px}.dots .d{width:6px;height:6px;border-radius:50%;background:var(--border);display:inline-block}.dots .d.f1{background:var(--m-1)}.dots .d.f2{background:var(--m-2)}.dots .d.f3{background:var(--m-3)}.dots .d.f4{background:var(--m-4)}.s2-page{max-width:1180px;margin:0 auto;padding:24px 16px}.s2-top{display:flex;justify-content:center;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}.s2-focus,.s2-opening-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;font:500 12px/1 var(--font-sans, system-ui);color:var(--muted);background:var(--card);border:1px solid var(--border)}.s2-focus strong{color:var(--accent);font-weight:600}.s2-focus-x{background:transparent;border:none;color:var(--muted2, var(--muted));cursor:pointer;padding:0 0 0 6px;font-size:13px}.s2-opening-eco{font:500 10.5px/1 var(--font-mono);color:var(--muted);margin-left:4px;letter-spacing:.3px}.s2-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,320px);gap:24px;align-items:start}@media (max-width: 880px){.s2-grid{grid-template-columns:1fr;gap:14px}}.s2-board-area{display:flex;flex-direction:column;gap:10px}.s2-board-frame{position:relative;background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:14px}.s2-page{--mode-color: var(--accent)}.s2-page[data-mode=mistake]{--mode-color: var(--bad)}.s2-page[data-mode=learning]{--mode-color: var(--accent)}.s2-page[data-mode=review]{--mode-color: var(--yellow, #f0c060)}.s2-page[data-mode=tactic],.s2-page[data-mode=tactic-opening]{--mode-color: var(--accent2, #7b6cff)}.s2-page[data-mode=goodmove]{--mode-color: var(--good)}.s2-page[data-mode=master]{--mode-color: var(--accent)}.s2-page[data-mode=endgame-opening]{--mode-color: #2bb39a}.s2-board-frame[data-mode=mistake]{border-left:3px solid var(--bad)}.s2-board-frame[data-mode=learning]{border-left:3px solid var(--accent)}.s2-board-frame[data-mode=review]{border-left:3px solid var(--yellow, #f0c060)}.s2-board-frame[data-mode=tactic],.s2-board-frame[data-mode=tactic-opening]{border-left:3px solid var(--accent2, #7b6cff)}.s2-board-frame[data-mode=goodmove]{border-left:3px solid var(--good)}.s2-board-frame[data-mode=master]{border-left:3px solid var(--accent)}.s2-board-frame[data-mode=endgame-opening]{border-left:3px solid #2bb39a}.s2-master-counter{position:absolute;top:18px;left:22px;z-index:5;font:500 11px/1 var(--font-mono);color:var(--accent);background:color-mix(in oklch,var(--accent) 14%,transparent);border:1px solid color-mix(in oklch,var(--accent) 40%,transparent);padding:5px 9px;border-radius:999px;pointer-events:none}.s2-board-meta{display:flex;align-items:center;justify-content:space-between;padding:0 4px;min-height:18px}.s2-captured{display:inline-flex;align-items:center;font-size:14px;gap:0}.s2-captured>span:not(:first-child){margin-left:-5px}.s2-captured .extra{font:500 10px/1 var(--font-mono);color:var(--muted2, var(--muted));margin-left:6px}.s2-board-eval{position:absolute;top:18px;right:22px;z-index:5;font:500 12px/1 var(--font-mono);color:var(--muted);pointer-events:none}.s2-board-eval.good{color:var(--good)}.s2-board-eval.bad{color:var(--bad)}.s2-board-inner{display:flex;justify-content:center;align-items:center}.s2-action-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);flex-wrap:wrap}.s2-action-bar .s2-grow{flex:1;min-width:8px}.s2-btn-secondary{background:transparent;border:1px solid var(--border);color:var(--muted);font:500 13px/1 var(--font-sans, system-ui);padding:9px 14px;cursor:pointer;border-radius:var(--r-sm);transition:background .15s var(--ease),color .15s var(--ease)}.s2-btn-secondary:hover{background:var(--card2);color:var(--text)}.s2-btn-primary{background:var(--accent);color:#fff;border:1px solid var(--accent);padding:9px 18px;font:600 13px/1 var(--font-sans, system-ui);cursor:pointer;border-radius:var(--r-sm);transition:background .15s var(--ease)}.s2-btn-primary:hover{background:color-mix(in oklch,var(--accent) 88%,#000)}.s2-menu{width:36px;height:36px;border:1px solid var(--border);background:transparent;border-radius:var(--r-sm);cursor:pointer;color:var(--muted);display:grid;place-items:center;font-size:14px}.s2-menu:hover{color:var(--text);background:var(--card2)}.s2-menu-wrap{position:relative;display:inline-flex}.s2-menu-dropdown{position:absolute;bottom:calc(100% + 6px);right:0;min-width:200px;background:var(--card2, var(--card));border:1px solid var(--border);border-radius:var(--r-md);box-shadow:0 1px 2px #0000000a,0 12px 32px -8px #141e412e;padding:6px;z-index:60}.s2-menu-dropdown button{display:block;width:100%;text-align:left;background:transparent;border:none;padding:9px 12px;border-radius:var(--r-sm);font:500 13px/1 var(--font-sans, system-ui);color:var(--text);cursor:pointer;transition:background .12s var(--ease)}.s2-menu-dropdown button:hover{background:var(--card)}.s2-menu-dropdown button.danger{color:var(--bad)}.s2-menu-dropdown button.danger:hover{background:color-mix(in oklch,var(--bad) 8%,transparent)}.s2-rail{display:flex;flex-direction:column;gap:12px;min-width:0}.s2-rail-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);padding:16px 18px}.s2-pills-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}.s2-mode-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font:600 9px/1 var(--font-sans, system-ui);letter-spacing:1.4px;text-transform:uppercase;border:1px solid currentColor}.s2-mode-pill.mistake{color:var(--bad);background:color-mix(in oklch,var(--bad) 12%,transparent)}.s2-mode-pill.learning{color:var(--accent);background:color-mix(in oklch,var(--accent) 12%,transparent)}.s2-mode-pill.review{color:var(--yellow, #f0c060);background:color-mix(in oklch,var(--yellow, #f0c060) 14%,transparent)}.s2-mode-pill.tactic,.s2-mode-pill.tactic-opening{color:var(--accent2, #7b6cff);background:color-mix(in oklch,var(--accent2, #7b6cff) 12%,transparent)}.s2-mode-pill.goodmove{color:var(--good);background:color-mix(in oklch,var(--good) 12%,transparent)}.s2-mode-pill.master{color:var(--accent);background:color-mix(in oklch,var(--accent) 12%,transparent)}.s2-mode-pill.endgame-opening{color:#2bb39a;background:color-mix(in oklch,#2bb39a 12%,transparent)}.s2-top-game-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;font:500 12px/1 var(--font-sans, system-ui);color:var(--muted);background:var(--card);border:1px solid var(--border);cursor:default}.s2-top-game-pill strong{color:var(--text);font-weight:600}.s2-top-game-pill svg{color:var(--muted2, var(--muted))}.s2-attempts{font:500 11px/1 var(--font-mono);color:var(--mode-color, var(--bad));padding:3px 7px;border-radius:999px;background:color-mix(in oklch,var(--mode-color, var(--bad)) 10%,transparent)}.s2-move-target{font:500 12px/1 var(--font-sans, system-ui);color:var(--text)}.s2-move-target .label{color:var(--muted);font-weight:400}.s2-from{font:400 11px/1 var(--font-sans, system-ui);color:var(--muted);font-style:italic;margin-left:auto}.s2-vs-line{font:500 12px/1.4 var(--font-sans, system-ui);color:var(--muted);margin-bottom:4px}.s2-vs-line strong{color:var(--text);font-weight:500}.s2-rating{color:var(--muted);font-size:11px;margin-left:4px}.s2-meta-row{display:flex;gap:10px;flex-wrap:wrap;font:400 11px/1.3 var(--font-mono);color:var(--muted)}.s2-meta-row strong{color:var(--text);font-weight:500}.s2-view-game{display:inline-block;margin-top:8px;font:500 11px/1 var(--font-sans, system-ui);color:var(--accent);text-decoration:none}.s2-view-game:hover{text-decoration:underline}.s2-task-line{margin-top:10px;padding-top:8px;border-top:1px solid var(--border);font:400 12px/1.4 var(--font-sans, system-ui);color:var(--muted);font-style:italic}.s2-played{color:var(--bad);font-family:var(--font-mono);font-style:normal;font-weight:600}.s2-outcome{border-radius:var(--r-md);padding:16px 18px;border:1px solid var(--border);background:var(--card)}.s2-outcome.mistake{border-color:var(--bad);background:color-mix(in oklch,var(--bad) 6%,var(--card))}.s2-outcome.correct{border-color:var(--good);background:color-mix(in oklch,var(--good) 6%,var(--card))}.s2-outcome.learning-show{border-color:var(--accent);background:color-mix(in oklch,var(--accent) 6%,var(--card))}.s2-outcome.tactic-show{border-color:var(--accent2, #7b6cff);background:color-mix(in oklch,var(--accent2, #7b6cff) 6%,var(--card))}.s2-outcome.endgame-show{border-color:#2bb39a;background:color-mix(in oklch,#2bb39a 6%,var(--card))}.s2-outcome.master-show{border-color:var(--accent);background:color-mix(in oklch,var(--accent) 6%,var(--card))}.s2-outcome-head{display:flex;align-items:center;gap:8px;font:600 14px/1 var(--font-sans, system-ui);margin-bottom:12px;color:var(--bad)}.s2-outcome.correct .s2-outcome-head{color:var(--good)}.s2-outcome.learning-show .s2-outcome-head{color:var(--accent)}.s2-outcome.tactic-show .s2-outcome-head{color:var(--accent2, #7b6cff)}.s2-outcome.endgame-show .s2-outcome-head{color:#2bb39a}.s2-outcome.master-show .s2-outcome-head{color:var(--accent)}.s2-outcome-lede{font:400 12.5px/1.45 var(--font-sans, system-ui);color:var(--muted);margin-bottom:12px}.s2-outcome-lede strong{font-family:var(--font-mono);font-weight:600;color:var(--bad)}.s2-outcome-actions{display:flex;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.s2-continue{flex:1;padding:10px}.s2-eval-table{display:grid;grid-template-columns:14px 1fr auto;gap:4px 10px;font:500 13px/1.6 var(--font-mono)}.s2-eval-row{display:contents}.s2-eval-dot{display:grid;place-items:center}.s2-eval-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:color-mix(in oklch,var(--bad) 50%,transparent)}.s2-eval-row.best .s2-eval-dot:before{background:var(--good)}.s2-eval-row.user .s2-eval-dot:before{background:var(--bad)}.s2-eval-move{color:var(--muted)}.s2-eval-row.best .s2-eval-move{color:var(--good);font-weight:600}.s2-eval-row.user .s2-eval-move{color:var(--bad);font-weight:600}.s2-eval-score{color:var(--muted);text-align:right}.s2-eval-row.best .s2-eval-score{color:var(--good)}.s2-eval-row.user .s2-eval-score{color:var(--bad)}.s2-you-tag{font:500 9px/1 var(--font-sans, system-ui);letter-spacing:1.2px;text-transform:uppercase;color:var(--bad);margin-left:6px}.s2-annotation em{color:var(--muted2, var(--muted));font-style:italic}.s2-footer{display:flex;align-items:center;gap:16px;margin-top:16px;padding:12px 16px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);flex-wrap:wrap}.s2-progress-block{flex:1;min-width:240px;display:flex;flex-direction:column;gap:6px}.s2-counters{display:flex;gap:16px;font:500 11px/1 var(--font-mono);color:var(--muted)}.s2-counters strong{color:var(--text)}.s2-counters .lbl{color:var(--muted2, var(--muted))}.s2-counters .s2-ct.review strong{color:var(--m-2)}.s2-counters .s2-ct.new strong{color:var(--m-3)}.s2-counters .s2-ct.drills strong{color:var(--m-4)}.s2-progress-row{display:flex;justify-content:space-between;font:500 11px/1 var(--font-mono);color:var(--muted)}.s2-progress-row strong{color:var(--text)}.s2-progress-bar{display:flex;height:4px;border-radius:2px;overflow:hidden;background:var(--border)}.s2-progress-bar>span{display:block;min-height:100%}.s2-seg-review{background:var(--m-2)}.s2-seg-new{background:var(--m-3)}.s2-seg-drills{background:var(--m-4)}.s2-seg-rem{background:transparent}.s2-streak-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:color-mix(in oklch,var(--accent) 14%,transparent);border:1px solid color-mix(in oklch,var(--accent) 30%,var(--border));border-radius:999px;font:600 11px/1 var(--font-mono);color:var(--accent)}.s2-kbd-hints{display:flex;gap:12px;font:400 11px/1 var(--font-sans, system-ui);color:var(--muted)}.s2-kbd-hints kbd{font-family:var(--font-mono);background:var(--bg1);border:1px solid var(--border);border-radius:3px;padding:2px 5px;font-size:10px;margin-right:4px}@media (max-width: 720px){.s2-kbd-hints{display:none}}.shell{min-height:100%;display:flex;flex-direction:column}.offline-banner{background:var(--yellow, #f0c060);color:#1a2240;text-align:center;padding:6px 16px;font-size:13px;font-weight:600;letter-spacing:.02em;z-index:25}.topbar{position:sticky;top:0;z-index:20;backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6);background:#f6f1e9d9;border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top,0px)}.topbar:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),var(--accent2),transparent);opacity:.25}.home-overline{display:var(--overline-display, block);background:var(--overline-bg, transparent);border:var(--overline-bd, none);padding:var(--overline-pad, 0);border-radius:var(--overline-r, 0)}.home-sectitle{font-weight:var(--sectitle-fw, inherit);letter-spacing:var(--sectitle-ls, normal)}.home-sectitle:before{content:"";display:var(--sectile-display, none);width:var(--sectile-w, 14px);height:var(--sectile-h, 24px);background:var(--sectile-bg, transparent);border:var(--sectile-bd, none);margin-right:var(--sectile-mr, 0);vertical-align:middle}.topbar-inner{max-width:1440px;margin:0 auto;height:64px;padding:0 28px;display:flex;align-items:center;gap:0}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.01em}.brand-mark{width:52px;height:52px;border-radius:10px;object-fit:contain}.brand-wordmark{display:inline-flex;align-items:baseline;font-family:var(--font-display);font-weight:600;font-size:28px;letter-spacing:-.01em;line-height:1;-webkit-user-select:none;user-select:none;white-space:nowrap}.brand-wordmark .wm-dawn{color:var(--text)}.brand-wordmark .wm-chess{color:var(--accent)}.fullscreen-exit-btn{position:fixed;top:12px;right:12px;z-index:200;display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 10px;border-radius:999px;background:var(--card2);color:var(--text);border:1px solid var(--border2);font:500 12px/1 Inter Tight,sans-serif;cursor:pointer;box-shadow:0 2px 10px #0000001a;opacity:.78;transition:opacity .15s var(--ease),transform 80ms var(--ease)}.fullscreen-exit-btn:hover{opacity:1}.fullscreen-exit-btn:active{transform:scale(.96)}@media (max-width: 720px){.brand-wordmark{font-size:22px}}.nav{margin-left:24px;display:flex;gap:14px;flex-wrap:nowrap}.nav .pill{background:none;border:none;border-radius:0;padding:10px 16px;font-size:14.5px;font-weight:550;color:var(--text);opacity:.6;border-bottom:2.5px solid transparent}.nav .pill:hover{opacity:.85;background:none}.nav .pill.active{background:none;border:none;border-bottom:2.5px solid var(--accent);color:var(--text);opacity:1;font-weight:650;box-shadow:none}.topbar-lang-dropdown{margin-left:auto}.topbar-lang-dropdown+.nav-user-actions{margin-left:0}.site-header{position:sticky;top:0;z-index:20;backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6);background:var(--chrome-header-bg, oklch(.96 .012 80 / .85));border-bottom:1px solid var(--border);padding-top:env(safe-area-inset-top,0px)}.site-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent),var(--accent2),transparent);opacity:.25}[data-mode=dark] .site-header{background:var(--chrome-header-bg-dark, oklch(.16 .018 250 / .85));border-bottom:1px solid var(--border)}[data-mode=dark] .site-header:after{opacity:.45}[data-mode=dark] .nav-menu{background:#10171e;border-color:#272f37;box-shadow:0 1px 2px #0003,0 12px 32px -8px #0009}[data-mode=dark] .nav-menu hr{border-top-color:#1d252d}[data-mode=dark] .nav-menu button:hover,[data-mode=dark] .nav-menu a:hover{background:#1d252d}[data-mode=dark] .account-head{border-bottom-color:#1d252d}[data-mode=dark] .nav-account .avatar-wrap:hover,[data-mode=dark] .nav-account .avatar-wrap[aria-expanded=true]{background:#192028}.nav-links{display:flex;align-items:center;gap:6px;margin:0 0 0 36px;flex-wrap:nowrap}.nav-link{background:transparent;border:var(--bd-w, 1px) solid transparent;border-radius:var(--r-sm);padding:8px 12px;font:500 13.5px/1 var(--font-sans, system-ui);color:var(--muted);cursor:pointer;transition:color .15s var(--ease),border-color .15s var(--ease),background .15s var(--ease);letter-spacing:.1px}.nav-link:hover{color:var(--text);border-color:var(--border)}.nav-link.active{background:var(--text);color:var(--bg0);border-color:var(--text);font-weight:600}.nav-more,.nav-account{position:relative}.nav-more{margin-left:0;padding-left:0;display:inline-flex;align-items:center;align-self:center}.nav-trigger{display:inline-flex;align-items:center;gap:6px;background:transparent;border:var(--bd-w, 1px) solid transparent;border-radius:var(--r-sm);cursor:pointer;padding:8px 12px;font:500 13.5px/1 var(--font-sans, system-ui);color:var(--muted);transition:color .15s var(--ease),border-color .15s var(--ease)}.nav-trigger:hover{color:var(--text);border-color:var(--border)}.nav-trigger.active,.nav-trigger[aria-expanded=true]{color:var(--text)}.nav-trigger .caret{opacity:.55;transition:transform .18s var(--ease),opacity .15s var(--ease)}.nav-trigger:hover .caret{opacity:.9}.nav-trigger[aria-expanded=true] .caret{transform:rotate(180deg)}.nav-right{display:flex;align-items:center;gap:10px;margin-left:auto;position:relative}.topbar-theme-toggle{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:var(--r-sm);background:var(--card);border:var(--bd-w, 1px) solid var(--border);cursor:pointer;color:var(--text);transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease);flex:0 0 auto}.topbar-theme-toggle:hover{background:var(--card2);color:var(--accent);border-color:var(--border2)}.topbar-theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-account .avatar-wrap{display:inline-flex;align-items:center;gap:5px;padding:2px;border-radius:var(--r-sm);background:var(--card);border:var(--bd-w, 1px) solid var(--border);cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease)}.nav-account .avatar-wrap:hover{background:var(--card2);border-color:var(--border2)}.nav-account .avatar-wrap[aria-expanded=true]{background:var(--card2)}.nav-account .avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#1e2f41,#07121e);display:grid;place-items:center;color:#fff;font:600 13px/1 var(--font-sans, system-ui);border:1.5px solid var(--border);box-shadow:0 0 0 1px var(--card2) inset;transition:border-color .15s var(--ease);overflow:visible}.nav-account .avatar-wrap:hover .avatar{border-color:var(--accent)}.nav-account .avatar-icon{width:28px;height:28px;object-fit:contain;filter:brightness(0) invert(1)}.nav-account .avatar-icon.icon-tier-stone{filter:brightness(0) invert(.85) drop-shadow(0 0 2px rgba(140,150,165,.6))}.nav-account .avatar-icon.icon-tier-bronze{filter:brightness(0) invert(1) drop-shadow(0 0 3px rgba(180,120,60,.85)) drop-shadow(0 0 8px rgba(180,120,60,.4))}.nav-account .avatar-icon.icon-tier-silver{filter:brightness(0) invert(1) drop-shadow(0 0 3px rgba(190,210,240,.9)) drop-shadow(0 0 8px rgba(190,210,240,.4))}.nav-account .avatar-icon.icon-tier-gold{filter:brightness(0) invert(1) drop-shadow(0 0 3px rgba(255,200,50,.9)) drop-shadow(0 0 8px rgba(255,200,50,.45))}.nav-account .avatar-icon.icon-tier-goldglow{filter:brightness(0) invert(1) drop-shadow(0 0 4px rgba(255,200,0,.95)) drop-shadow(0 0 10px rgba(255,170,0,.6)) drop-shadow(0 0 18px rgba(255,170,0,.35))}.nav-account .avatar-icon.icon-tier-darkglow{filter:brightness(0) invert(1) drop-shadow(0 0 4px rgba(168,85,247,.95)) drop-shadow(0 0 10px rgba(139,0,255,.6))}.nav-account .avatar-icon.icon-tier-diamond{filter:brightness(0) invert(1) drop-shadow(0 0 4px rgba(180,220,255,.95)) drop-shadow(0 0 10px rgba(120,180,255,.6)) drop-shadow(0 0 18px rgba(200,230,255,.35))}.nav-account .avatar-icon.icon-tier-cosmic{filter:brightness(0) invert(1) drop-shadow(0 0 4px rgba(255,100,200,.95)) drop-shadow(0 0 10px rgba(180,60,255,.6)) drop-shadow(0 0 18px rgba(120,0,200,.35))}.avatar-caret{margin-right:4px;opacity:.5;transition:transform .18s var(--ease),opacity .15s var(--ease);color:var(--muted)}.nav-account .avatar-wrap:hover .avatar-caret{opacity:.85}.nav-account .avatar-wrap[aria-expanded=true] .avatar-caret{transform:rotate(180deg);opacity:.85}.nav-menu{position:absolute;top:calc(100% + 10px);right:0;min-width:260px;background:var(--card2, var(--card));border:1px solid var(--border);border-radius:var(--r-md);box-shadow:0 1px 2px #0000000a,0 12px 32px -8px #141e412e;padding:6px;z-index:60;display:none}.nav-more .nav-menu{left:0;right:auto}.nav-menu.open{display:block}.nav-menu-section{padding:8px 12px 4px;font:500 10px/1 var(--font-sans, system-ui);letter-spacing:1.4px;text-transform:uppercase;color:var(--muted2, var(--muted))}.nav-menu button,.nav-menu a{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;padding:9px 12px;border-radius:var(--r-sm);font:500 13px/1.2 var(--font-sans, system-ui);color:var(--text);text-decoration:none;transition:background .12s var(--ease)}.nav-menu button:hover,.nav-menu a:hover{background:var(--card)}.nav-menu button.active{background:color-mix(in oklch,var(--accent) 10%,transparent);color:var(--accent)}.nav-menu .item-main{display:flex;flex-direction:column;gap:0;min-width:0}.nav-menu .item-main .desc{font:400 11px/1.3 var(--font-sans, system-ui);color:var(--muted);margin-top:2px;max-width:220px}.nav-menu .item-meta{font:500 10px/1 var(--font-mono);color:var(--muted2, var(--muted));flex-shrink:0}.nav-menu hr{border:none;border-top:1px solid var(--border);margin:6px 0}.nav-menu .danger{color:var(--bad)}.nav-menu .danger:hover{background:color-mix(in oklch,var(--bad) 8%,transparent)}.account-head{padding:12px 12px 10px;border-bottom:1px solid var(--border);margin-bottom:4px}.account-head .name{font:600 13px/1.2 var(--font-sans, system-ui);color:var(--text)}.account-head .email{font:400 11px/1.3 var(--font-sans, system-ui);color:var(--muted);margin-top:3px}.account-head .rating{margin-top:6px;display:inline-flex;gap:6px;font:500 10px/1 var(--font-mono);color:var(--muted)}.account-head .rating strong{color:var(--accent);font-weight:600}@media (max-width: 880px){.nav-links{display:none;margin-left:0}.topbar-inner.nav-open .nav-links{display:flex;flex-direction:column;align-items:stretch;gap:4px;width:100%;margin:12px 0;flex-basis:100%}.topbar-inner.nav-open .nav-link{padding:12px 0;text-align:left;border-bottom:1px solid var(--border)}.topbar-inner.nav-open .nav-link.active{border-bottom-color:var(--accent)}.topbar-inner.nav-open .nav-more{margin-left:0;padding-left:0;border-left:none;width:100%}.topbar-inner.nav-open .nav-more .nav-menu{position:static;box-shadow:none;border:none;width:100%;margin:4px 0 8px;padding:0}.nav-menu{right:8px}}.container{max-width:var(--max-w);margin:0 auto;padding:28px 28px calc(44px + env(safe-area-inset-bottom,0px));width:100%;overflow-x:hidden}.table-scroll-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.game-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.game-filters .input{min-width:0}.hero{display:grid;grid-template-columns:1.25fr .75fr;gap:24px;align-items:start;margin:20px 0 24px}@media (max-width: 980px){.hero{grid-template-columns:1fr}}.h-title{font-size:42px;line-height:1.05;letter-spacing:-.02em;margin:0 0 8px}.h-sub{margin:0;color:var(--muted);font-weight:600;line-height:1.55}.hero-banner{position:relative;background:linear-gradient(135deg,var(--bg1),var(--bg0));border:1px solid rgba(30,60,130,.1);border-radius:var(--r-lg);padding:24px 28px 22px;text-align:center;margin-bottom:14px}.hero-dismiss{position:absolute;top:10px;right:12px;background:none;border:none;font-size:20px;color:var(--muted2);cursor:pointer;line-height:1;padding:4px}.hero-dismiss:hover{color:var(--accent)}.hero-title{font-size:22px;font-weight:650;color:var(--text);margin-bottom:6px;letter-spacing:-.01em}.hero-subtitle{font-size:14px;color:var(--muted);max-width:560px;margin:0 auto 18px;line-height:1.45}.hero-features{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.hero-feature{display:flex;flex-direction:column;align-items:center;width:100px}.hero-feature-icon{margin-bottom:4px}.hero-feature-label{font-size:13px;font-weight:600;color:var(--text)}.hero-feature-desc{font-size:11.5px;color:var(--muted);line-height:1.35;margin-top:2px}.masterOfferBanner{display:flex;align-items:center;gap:16px;background:linear-gradient(135deg,color-mix(in oklch,var(--accent2) 8%,transparent),color-mix(in oklch,var(--accent) 8%,transparent));border:1px solid color-mix(in oklch,var(--accent2) 22%,transparent);border-radius:var(--r-md);padding:14px 18px;margin-bottom:14px}.masterOfferBanner-icon{font-size:28px;line-height:1;color:var(--accent2);flex-shrink:0}.masterOfferBanner-body{flex:1;min-width:0}.masterOfferBanner-title{font-size:14px;font-weight:650;color:var(--text);margin-bottom:3px}.masterOfferBanner-subtitle{font-size:13px;color:var(--muted);line-height:1.4}.masterOfferBanner-actions{display:flex;gap:8px;flex-shrink:0}.masterOfferBanner-actions .btn{font-size:13px;padding:8px 14px;font-weight:600}@media (max-width: 640px){.masterOfferBanner{flex-direction:column;align-items:flex-start;gap:10px}.masterOfferBanner-actions{width:100%}.masterOfferBanner-actions .btn{flex:1}}@media (max-width: 600px){.hero-banner{padding:24px 16px 20px}.hero-title{font-size:22px}.hero-features{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hero-feature{width:auto}}.home-daily-train{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--r-md);background:var(--card);border:1px solid var(--border);margin-bottom:12px}.home-daily-train-info{flex:1;min-width:0}.home-daily-train-top{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.home-daily-train-label{font-size:13px;font-weight:600;color:var(--text)}.home-daily-train-count{font-size:12px;color:var(--muted)}.home-daily-train-bar{height:5px;border-radius:3px;background:var(--border2);margin-top:6px;overflow:hidden}.home-daily-train-fill{height:100%;border-radius:3px;background:var(--good);transition:width .3s var(--ease)}.home-daily-train-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.home-daily-train-done{font-size:13px;font-weight:600;color:var(--good);white-space:nowrap}.home-streak{display:flex;flex-direction:column;gap:4px;white-space:nowrap}.home-streak-top{display:flex;align-items:center;gap:4px}.home-streak-flame{font-size:18px;line-height:1}.home-streak-num{font-size:16px;font-weight:700;color:var(--text)}.home-streak-label{font-size:12px;color:var(--muted)}.home-streak-rook{display:flex;align-items:center;gap:5px}.home-streak-rook-icon{width:18px;height:18px;flex-shrink:0}.home-streak-rook-bar{width:60px;height:4px;border-radius:2px;background:var(--border2);overflow:hidden}.home-streak-rook-fill{height:100%;border-radius:2px;background:var(--accent);transition:width .3s var(--ease)}.home-streak-rook-next{font-size:10px;color:var(--muted2)}.repHeader{margin-bottom:10px}.repHeader-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.card{background:var(--chrome-card-bg, rgba(255, 255, 255, .45));backdrop-filter:blur(var(--chrome-blur, 12px));-webkit-backdrop-filter:blur(var(--chrome-blur, 12px));border:var(--bd-w, 1px) solid var(--chrome-card-bd, rgba(255, 255, 255, .5));border-radius:var(--r-lg);box-shadow:var(--shadow);transition:border-color .2s var(--ease),box-shadow .2s var(--ease),transform .2s var(--ease)}.card:hover{border-color:var(--chrome-card-bd-hover, rgba(255, 255, 255, .7));box-shadow:var(--chrome-card-sh-hover, 0 4px 16px rgba(20, 40, 80, .08), 0 12px 32px rgba(20, 40, 80, .06));transform:translateY(-1px)}.card-pad{padding:22px}.card-pad-lg{padding:26px}.card-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}.card-title h2{margin:0;font-size:18px;font-weight:700;letter-spacing:-.01em}.kicker{color:var(--muted2);font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}table tr:hover td{background:var(--chrome-row-hover, rgba(50, 35, 15, .04))}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:var(--bd-w, 1px) solid var(--chrome-btn-bd, rgba(60, 40, 20, .1));background:var(--chrome-btn-bg, rgba(255, 255, 255, .22));color:var(--text);padding:9px 16px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s var(--ease);-webkit-user-select:none;user-select:none;letter-spacing:.01em;box-shadow:var(--chrome-btn-sh, 0 1px 3px rgba(50, 35, 15, .03))}.btn:hover:not(.btn-primary){border-color:var(--chrome-btn-bd-hover, rgba(60, 40, 20, .16));background:var(--chrome-btn-bg-hover, rgba(255, 255, 255, .35));transform:translateY(-1px)}.btn:active{transform:scale(.98)}.btn-primary{border:none;background:var(--accent);box-shadow:0 1px 2px #140f080a,0 4px 12px -4px color-mix(in oklch,var(--accent) 40%,transparent);font-weight:650;color:#fff}.btn-primary:hover{filter:brightness(.96);box-shadow:0 4px 16px color-mix(in oklch,var(--accent) 25%,transparent);transform:translateY(-1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.active,.btn.active:hover{background:color-mix(in oklch,var(--accent) 10%,transparent);border-color:color-mix(in oklch,var(--accent) 30%,transparent);color:var(--accent);box-shadow:none}.btn.btn-reveal-on,.btn.btn-reveal-on:hover{background:#00c8502e;border-color:#00c85080;color:#00dc5af2}.btn.btn-explore-on,.btn.btn-explore-on:hover{background:color-mix(in oklch,var(--accent) 18%,transparent);border-color:color-mix(in oklch,var(--accent) 50%,transparent);color:#64a0fff2}.btn-icon{width:44px;padding:10px 0;display:grid;place-items:center}.pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);padding:6px 10px;border-radius:0;font-size:14px;font-weight:600;cursor:pointer;transition:color .12s var(--ease);-webkit-user-select:none;user-select:none}.pill.active{color:var(--accent);font-weight:700;border:none;background:transparent;box-shadow:none}.input{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--chrome-input-bd, rgba(60, 40, 20, .12));background:var(--chrome-input-bg, rgba(255, 255, 255, .55));color:var(--text);outline:none;font-weight:500;transition:border-color .15s var(--ease),box-shadow .15s var(--ease);box-shadow:0 1px 2px #32230f0a}.input:focus{border-color:color-mix(in oklch,var(--accent) 40%,transparent);box-shadow:0 1px 2px #1428500a,0 0 0 3px color-mix(in oklch,var(--accent) 12%,transparent)}.input::placeholder{color:var(--chrome-placeholder, rgba(20, 30, 65, .35))}input[type=number].input{color:var(--text);-moz-appearance:textfield}input[type=number].input::-webkit-inner-spin-button,input[type=number].input::-webkit-outer-spin-button{opacity:.5}@media (max-width: 1180px){.grid-trainer{grid-template-columns:1fr}}.boardCard{padding:18px;scroll-margin-top:8px}.boardTopRow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;min-height:28px}.boardTitle{font-weight:700;letter-spacing:-.01em}.board-size-btn.active{opacity:1;background:color-mix(in oklch,var(--accent) 8%,transparent);color:var(--accent)}@media (max-width: 1000px){.board-size-selector{display:none}}.coaching-tip-card{padding:14px 16px;border-radius:var(--r-md);background:color-mix(in oklch,var(--accent) 6%,transparent);border:1px solid color-mix(in oklch,var(--accent) 12%,transparent)}.muted{color:var(--muted)}.hr{border:none;border-top:1px solid rgba(50,35,15,.07);margin:14px 0}.small{font-size:13px;line-height:1.35;color:#141e41cc}.repList{display:grid;gap:6px}.repRow{width:100%;text-align:left;padding:11px 14px;border-radius:var(--r-md);border:1px solid rgba(30,60,130,.08);background:#ffffff8c;color:var(--text);display:block;transition:border-color .15s var(--ease),background .15s var(--ease),box-shadow .15s var(--ease)}.repRow:hover{border-color:color-mix(in oklch,var(--accent) 20%,transparent);background:#ffffffc7;box-shadow:0 2px 10px #1e3c820f}.repRow.selected{border-color:color-mix(in oklch,var(--accent) 45%,transparent);background:color-mix(in oklch,var(--accent) 6%,transparent)}.repRow-main{min-width:0}.repRow-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.repRow-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.repName{font-weight:600;font-size:14px;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;color:var(--text)}.repMeta{color:var(--muted2);font-size:12px;font-weight:500;margin-top:3px}.repMeta-pct{color:var(--muted);font-weight:600}.repProgBar{height:4px;border-radius:2px;background:#1e3c820f;overflow:hidden;margin-top:7px}.repSeg-familiar{background:var(--accent)}.repSeg-solid{background:var(--good)}.repSeg-strong{background:#e05aa0}.repSeg-deep{background:#e06bff}.repStat-good{color:#66bb6a;font-weight:700}.repProgSeg{height:100%;min-width:2px;transition:width .4s ease}.repProgSeg-familiar{background:var(--accent)}.repProgSeg-solid{background:var(--good)}.repProgSeg-strong{background:#e05aa0}.repProgSeg-deep{background:#e06bff}.repDueBadge{font-size:11.5px;font-weight:600;color:var(--accent);white-space:nowrap;background:color-mix(in oklch,var(--accent) 10%,transparent);padding:2px 8px;border-radius:5px}.repDevBadge{font-size:11px;font-weight:600;color:var(--yellow);background:#f0c0601a;padding:2px 8px;border-radius:5px;white-space:nowrap}.repChapterArrow{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:9px;color:var(--muted);cursor:pointer;transition:transform .15s var(--ease),color .15s;flex-shrink:0;border-radius:4px}.repChapterArrow:hover{color:var(--accent);background:color-mix(in oklch,var(--accent) 8%,transparent)}.repChapterList{padding:2px 0 6px 26px;display:flex;flex-direction:column;gap:1px}.repChapterItem{display:flex;align-items:center;gap:8px;padding:4px 10px;border-radius:var(--r-sm);cursor:pointer;transition:background .12s;font-size:12.5px}.repChapterItem:hover{background:color-mix(in oklch,var(--accent) 6%,transparent)}.repChapterName{font-weight:550;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repChapterStats{display:flex;gap:6px;flex-shrink:0;font-size:10.5px;color:var(--muted)}.repChapterStat-learned{color:var(--good)}.repChapterStat-due{color:var(--accent)}.repChapterStat-new{color:var(--muted2)}.chapter-viewer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}.chapter-viewer-modal{background:var(--bg1);border-radius:var(--r-lg);box-shadow:0 24px 60px #00000040;width:min(96vw,1280px);height:min(92vh,860px);display:flex;flex-direction:column;overflow:hidden}.chapter-viewer-topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.chapter-viewer-layout{display:grid;grid-template-columns:200px 1fr 300px;flex:1;overflow:hidden;min-height:0}@media (max-width: 900px){.chapter-viewer-layout{grid-template-columns:1fr}.chapter-viewer-layout .study-chapters-sidebar{display:none}.chapter-viewer-layout .study-right-panel{max-height:200px}}.progressBar{width:160px;height:8px;border-radius:999px;background:#32230f14;overflow:hidden;border:1px solid rgba(50,35,15,.1)}.progressFill{height:100%;background:linear-gradient(135deg,#2f6bff,#6b5cff)}.addHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.addHeader-title{font-size:20px;font-weight:700;margin:0;letter-spacing:-.02em}.addGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}@media (max-width: 900px){.addGrid{grid-template-columns:1fr}}.addCard{text-align:left;border-radius:var(--r-lg);border:1px solid rgba(50,35,15,.1);background:#32230f0d;color:var(--text);padding:28px 24px;cursor:pointer;display:flex;flex-direction:column;gap:0;transition:all .2s var(--ease)}.addCard:hover{border-color:color-mix(in oklch,var(--accent) 35%,transparent);background:color-mix(in oklch,var(--accent) 6%,transparent);box-shadow:0 8px 32px color-mix(in oklch,var(--accent) 8%,transparent);transform:translateY(-2px)}.addCard:active{transform:translateY(0)}.addCard-icon{font-size:40px;line-height:1;opacity:.85;margin-bottom:20px}.addCard-body{flex:1}.addCard-title{font-weight:650;font-size:17px;letter-spacing:-.01em;margin-bottom:8px}.addCard-desc{color:var(--muted);font-size:13px;font-weight:450;line-height:1.55}.addCard-footer{display:flex;align-items:center;justify-content:space-between;margin-top:24px;padding-top:14px;border-top:1px solid rgba(50,35,15,.15)}.addCard-tag{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.addCard-arrow{font-size:18px;color:var(--muted);transition:color .15s ease,transform .15s ease}.addCard:hover .addCard-arrow{color:var(--accent);transform:translate(3px)}.textarea{width:100%;min-height:220px;padding:10px 12px;border-radius:12px;border:1px solid rgba(50,35,15,.14);background:#32230f14;color:var(--text);outline:none;font-weight:650;resize:vertical}.textarea::placeholder{color:#141e4166}.landing{min-height:100vh;min-height:100dvh;background:radial-gradient(1200px 700px at 20% -10%,rgba(255,153,0,.18),transparent 60%),radial-gradient(900px 600px at 85% 10%,rgba(255,153,0,.14),transparent 55%),linear-gradient(180deg,#f7efe4,#fbf4ea 60%,#fff 140%);color:#0b2238}.linkBtn{border:0;background:transparent;cursor:pointer;font-weight:900;color:#0b2238b8;padding:8px 10px;border-radius:10px}.linkBtn:hover{background:#0b22380d;color:#0b2238eb}.heroTitle{font-size:44px;line-height:1.05;letter-spacing:-.03em;margin:14px 0 10px;font-weight:1000}@media (max-width: 700px){.heroTitle{font-size:34px}}.lines{display:grid;gap:6px;margin-top:6px}.line{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(11,34,56,.08);background:#ffffffa6;padding:8px 10px;border-radius:12px;font-weight:900}.line .num{width:22px;height:22px;border-radius:8px;background:#ff8a002e;display:inline-grid;place-items:center}.eval{font-weight:1000}.eval.good{color:#0b6b2b}.eval.ok{color:#0b223899}.eval.bad{color:#b52121}@media (max-width: 700px){.statRow{grid-template-columns:repeat(2,1fr)}}.sectionTitle{font-size:32px;letter-spacing:-.02em;font-weight:1000}@media (max-width: 1100px){.tierGrid{grid-template-columns:1fr}}.stars{display:flex;gap:6px}.starBtn.on{background:#ff8a002e;color:#0b2238e0;border-color:#ff8a004d}@media (max-width: 1100px){.tierGridInApp{grid-template-columns:1fr}}@keyframes premade-shimmer{0%,to{filter:drop-shadow(0 0 6px rgba(136,223,255,.4))}50%{filter:drop-shadow(0 0 12px rgba(167,139,250,.6))}}.premade-rep-level-badge{font-size:12px;font-weight:700;color:var(--accent, #d48a2c);white-space:nowrap;display:inline-flex;align-items:center;gap:4px}.premade-badge-unlock{font-size:10px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:4px;padding:1px 8px;margin-left:4px;cursor:pointer;line-height:1.5;transition:opacity .15s}.premade-badge-unlock:hover{opacity:.85}.premade-badge-unlock:disabled{opacity:.5;cursor:default}.premade-badge-full-course{background:linear-gradient(135deg,var(--accent),var(--accent2))}.premade-badge-complete{font-size:10px;font-weight:600;color:var(--good);margin-left:4px}.premade-levelup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;animation:fadeIn .2s var(--ease)}.premade-levelup-card{background:#fff;border-radius:var(--r-lg, 18px);padding:0;text-align:center;box-shadow:0 12px 48px #00000038;max-width:380px;width:90vw;overflow:hidden;animation:scaleIn .3s var(--ease-out)}@keyframes scaleIn{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}@keyframes missedNxPop{0%{transform:scale(.55);opacity:0}55%{transform:scale(1.14);opacity:1}78%{transform:scale(.96)}to{transform:scale(1);opacity:1}}@keyframes missedNxAttention{0%,to{box-shadow:0 0 #ff6b6b00}40%{box-shadow:0 0 0 6px #ff6b6b2e}70%{box-shadow:0 0 0 3px #ff6b6b1a}}.missedNxBadge{animation:missedNxPop .48s var(--ease-out) both,missedNxAttention 1.4s var(--ease) .48s 1;transition:transform .16s var(--ease),background-color .16s var(--ease),border-color .16s var(--ease);transform-origin:center;will-change:transform}.missedNxBadge:hover{transform:scale(1.07);background:#141e411a!important;border-color:#1e3c8252!important}.missedNxBadge:active{transform:scale(.96)}@media (prefers-reduced-motion: reduce){.missedNxBadge{animation:none}.missedNxBadge:hover,.missedNxBadge:active{transform:none}}.premade-levelup-accent{height:4px;background:linear-gradient(90deg,var(--accent, #d48a2c),var(--accent2, #b8701a))}.premade-levelup-title{font-size:20px;font-weight:700;color:var(--text, #1a2240);margin:10px 0 4px}.premade-levelup-stat{margin:16px 0 0;display:flex;align-items:baseline;justify-content:center;gap:6px}.premade-levelup-stat-num{font-size:28px;font-weight:700;color:var(--accent, #d48a2c)}.premade-levelup-stat-label{font-size:15px;color:var(--muted, rgba(20,30,65,.65));font-weight:500}.premade-levelup-content{margin:20px 28px 0;padding-top:16px;border-top:1px solid var(--border, rgba(30,60,130,.1))}.premade-levelup-content-header{font-size:11px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted2, rgba(20,30,65,.4));margin-bottom:12px}.premade-levelup-master{background:color-mix(in oklch,var(--accent) 6%,transparent);border:1px solid color-mix(in oklch,var(--accent) 12%,transparent);border-radius:var(--r-sm, 10px);padding:12px 14px;margin-bottom:10px;text-align:left}.premade-levelup-master-label{font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--muted2, rgba(20,30,65,.4));margin-bottom:6px}.premade-levelup-master-players{font-size:14px;font-weight:600;color:var(--text, #1a2240);line-height:1.4}.premade-levelup-master-event{font-size:12px;color:var(--muted, rgba(20,30,65,.65));margin-top:2px}.premade-levelup-drill-row{display:flex;align-items:center;gap:6px;padding:6px 0;font-size:14px;color:var(--text, #1a2240)}.premade-levelup-drill-count{font-weight:700;color:var(--accent, #d48a2c);min-width:20px}.premade-levelup-btn{width:calc(100% - 56px);margin:20px 28px 28px;padding:10px 0;font-size:15px;font-weight:600}.onboarding-wizard button,.wizard-rating-card,.wizard-back-btn svg{opacity:.6}.wizard-plan-3col>.wizard-plan-col:last-child{overflow-y:auto;max-height:380px}.wizard-plan-3col>.wizard-plan-col+.wizard-plan-col{border-left:1px solid var(--border);padding-left:14px}.wizard-plan-3col>.wizard-plan-col{padding-right:10px}@media (max-width: 600px){.wizard-plan-3col{grid-template-columns:1fr;gap:12px;max-height:none}.wizard-plan-3col>.wizard-plan-col:last-child{overflow-y:visible;max-height:none}.wizard-plan-3col>.wizard-plan-col+.wizard-plan-col{border-left:none;padding-left:0;border-top:1px solid var(--border);padding-top:10px}.wizard-plan-3col>.wizard-plan-col{padding-right:0}}@keyframes wizardFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.wizard-phase-active .wizard-phase-dot{background:var(--accent)}.wizard-phase-current .wizard-phase-dot{box-shadow:0 0 0 4px color-mix(in oklch,var(--accent) 18%,transparent);transform:scale(1.2)}.wizard-phase-active .wizard-phase-label{color:var(--text);font-weight:600}.wizard-rating-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;width:100%;margin-bottom:16px}.wizard-rating-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--card);color:var(--text);font-family:inherit;text-align:left;cursor:pointer;transition:all .14s var(--ease)}.wizard-rating-card:hover{border-color:color-mix(in oklch,var(--accent) 35%,transparent);transform:translateY(-1px)}.wizard-rating-card.active{background:color-mix(in oklch,var(--accent) 12%,transparent);border-color:var(--accent);color:var(--accent)}.wizard-rating-card-label{font-weight:700;font-size:14px;line-height:1.2}.wizard-rating-card-desc{font-size:11px;color:var(--muted);line-height:1.3}.wizard-rating-card.active .wizard-rating-card-desc{color:color-mix(in oklch,var(--accent) 75%,transparent)}.wizard-phase-preview{margin-top:14px;padding:16px 18px 14px;border-radius:var(--r-md);border:1px solid color-mix(in oklch,var(--accent) 30%,transparent);background:linear-gradient(180deg,color-mix(in oklch,var(--accent) 10%,transparent),color-mix(in oklch,var(--accent) 4%,transparent));box-shadow:0 2px 10px color-mix(in oklch,var(--accent) 8%,transparent)}.wizard-phase-preview-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}.wizard-phase-preview-badge{flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;box-shadow:0 2px 6px color-mix(in oklch,var(--accent) 35%,transparent)}.wizard-phase-preview-label{flex:1;font-weight:700;font-size:15px;color:var(--accent);line-height:1.2}.wizard-phase-preview-topics{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.wizard-phase-preview-topics li{font-size:13px;color:var(--text);line-height:1.45;padding-left:22px;position:relative}.wizard-phase-preview-topics li:before{content:"";position:absolute;left:2px;top:6px;width:14px;height:8px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg);border-radius:1px}@keyframes wizardOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes wizardSpin{to{transform:rotate(360deg)}}@keyframes wizardTipIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 500px){.wizard-two-cols{grid-template-columns:1fr}}.wizard-badge-depth.wizard-badge-master{background:#f0c06026;color:#b8860b}@media (max-width: 600px){.onboarding-wizard{padding:12px 16px 96px}.wizard-hero-cta{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));transform:none!important;z-index:50;padding:14px 24px!important;font-size:15px!important;width:auto!important;max-width:none!important;box-shadow:0 6px 20px #0000002e;white-space:normal!important;line-height:1.3!important;min-height:48px}.wizard-sticky-row{display:flex!important;flex-direction:column;gap:8px!important;margin-top:16px!important;justify-content:center}.wizard-sticky-row>.btn{width:100%!important;min-width:0!important;max-width:none!important;padding:12px 16px!important;font-size:14px!important;white-space:normal!important;line-height:1.3!important;box-shadow:0 4px 14px #0000001f}body.t2-session-active .mobile-bottom-nav,body.session-receipt-active .mobile-bottom-nav{display:none!important}.wizard-step-center{padding:16px 0 0}.wizard-step-title{font-size:20px}.wizard-step-sub{font-size:13px;margin-bottom:14px}.wizard-rating-cards{grid-template-columns:1fr;gap:6px}.wizard-rating-card{padding:10px 12px;flex-direction:row;align-items:center;gap:10px}.wizard-rating-card-label{flex:0 0 auto;min-width:120px}.wizard-rating-card-desc{flex:1 1 auto}.wizard-card-mode .wizard-card-icon-wrap,.wizard-card-mode .wizard-card-icon-wrap-primary{width:40px!important;height:40px!important}.wizard-card-mode .wizard-card-label{font-size:15px!important}.wizard-card-mode .wizard-card-sub{font-size:12px!important}}@media (max-width: 1000px){.wizard-band-sticky{position:fixed;left:0;right:0;bottom:0;z-index:100;margin:0!important;padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));background:var(--bg0);border-top:1px solid var(--border);box-shadow:0 -8px 28px #00000038;max-height:70vh;overflow-y:auto;overscroll-behavior:contain;max-width:none!important}.wizard-band-sticky .wizard-phase-preview{margin-top:0;margin-bottom:10px;width:auto!important;max-width:none!important}.wizard-band-sticky .wizard-phase-preview-topics{gap:4px}.wizard-band-sticky .wizard-phase-preview-topics li{font-size:12.5px;line-height:1.4}.wizard-band-sticky .wizard-band-footer,.wizard-band-sticky .wizard-sticky-row{margin-top:10px!important}.wizard-step:has(.wizard-band-sticky[data-selected=true]),.landing-hero:has(.wizard-band-sticky[data-selected=true]){padding-bottom:360px!important}.wizard-step:has(.wizard-band-sticky[data-selected=false]),.landing-hero:has(.wizard-band-sticky[data-selected=false]){padding-bottom:140px!important}}@media (max-width: 600px){.studyPlanCompactCta,.studyPlanCompactCtaGoalMet{position:fixed;left:0;right:0;bottom:calc(60px + env(safe-area-inset-bottom,0px));z-index:30;margin:0!important;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));background:var(--card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--border);border-left:none;border-right:none;border-bottom:none;border-radius:0;box-shadow:0 -4px 16px #0000002e}[data-mode=dark] .studyPlanCompactCta{background:#0c1222eb;border-top-color:#ffffff1a}.studyPlanCompactCtaGoalMet{background:linear-gradient(180deg,#34d97a1f,#34d97a0a);border-top-color:#34d97a52;box-shadow:0 -4px 18px #34d97a1a,0 -2px 12px #34d97a0f}[data-mode=dark] .studyPlanCompactCtaGoalMet{background:radial-gradient(ellipse at top right,rgba(52,217,122,.16) 0%,transparent 60%),radial-gradient(ellipse at bottom left,rgba(79,140,255,.1) 0%,transparent 55%),linear-gradient(180deg,#121a30f0,#0c1222f5);border:none;border-top:1px solid rgba(52,217,122,.32);box-shadow:0 -4px 18px #34d97a1a,0 -2px 32px #34d97a0d}.studyPlanCompactCta .studyPlanStartBtn,.studyPlanCompactCtaGoalMet .studyPlanStartBtn,.studyPlanStartBtn{position:static;box-shadow:none;padding:12px 16px!important;font-size:14px!important}.studyPlanKeepTrainBar{position:fixed;left:0;right:0;bottom:calc(60px + env(safe-area-inset-bottom,0px));z-index:30;background:var(--card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--border);margin:0;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 16px #0000002e}.studyPlanKeepTrainBar .studyPlanStartBtn{position:static;box-shadow:none}.studyPlanCard{padding-bottom:180px!important}.studyPlanCard.studyPlanActive{padding-bottom:180px}.studyPlanEditActionBar{position:fixed;left:0;right:0;bottom:calc(60px + env(safe-area-inset-bottom,0px));z-index:30;margin:0!important;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px))!important;background:var(--card);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--border);box-shadow:0 -4px 16px #0000002e}.studyPlanCard,.studyPlanCard.studyPlanActive{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}@keyframes wizardCheckPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.wizard-goal-btn.active{background:var(--card2);color:var(--text);box-shadow:0 1px 3px #00000014}.wizard-confirm-row-off .wizard-confirm-name{text-decoration:line-through}.wizard-color-btn.active{background:var(--accent);color:#fff}.wizard-opening-col .wizard-card{flex:1}.wizard-modal-tab.active{background:var(--card2);color:var(--text);box-shadow:0 1px 3px #00000014}.highlight-viewer-nav button{background:none;border:1px solid var(--border);color:var(--text);width:32px;height:32px;border-radius:var(--r-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.highlight-viewer-nav button:hover:not(:disabled){background:color-mix(in oklch,var(--accent) 8%,transparent);border-color:var(--accent)}.highlight-viewer-nav button:disabled{opacity:.25;cursor:default}.shared-vote-group{display:flex;align-items:center;gap:2px}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;background:#4a9eff26;color:#141e41d1;font-size:11px;font-weight:600}.tag-chip button{background:none;border:none;color:#141e4185;cursor:pointer;padding:0;font-size:11px;line-height:1}.tag-chip button:hover{color:#141e41e6}.lp{min-height:100vh;min-height:100dvh;color:#141e41eb;background:radial-gradient(1100px 700px at 20% -10%,rgba(72,119,255,.22),transparent 60%),radial-gradient(900px 600px at 85% 10%,rgba(126,68,255,.16),transparent 55%),radial-gradient(900px 700px at 50% 110%,rgba(0,0,0,.55),transparent 55%),#0b0f18}.boardCard.card-pad{padding:12px}.chip{font-size:12px;padding:4px 8px;border-radius:999px;border:1px solid var(--border);background:#32230f0d}.btn{padding:10px 12px}.btn.btn-icon{width:42px;height:38px;padding:0}@media (max-width: 900px){.boardCard .boardWrap,.boardCard canvas,.boardCard svg{max-width:100%}}.boardSplit{display:grid;grid-template-columns:1fr 320px;gap:14px;align-items:start}.boardSplitLeft,.boardSplitRight{min-width:0}.panelStack{display:grid;gap:10px}@media (max-width: 1100px){.boardSplit{grid-template-columns:1fr}.boardSplit .boardSplitLeft svg{max-width:min(100%,60vh);margin:0 auto;display:block}}.boardSplit{display:grid;grid-template-columns:1fr 340px;gap:14px;align-items:start}@media (max-width: 1100px){.boardSplit{grid-template-columns:1fr}}.boardSplitTight{gap:18px;align-items:flex-start}.panelStackTight{gap:12px}.movesCard{padding:14px;border-radius:16px;background:#0000002e;border:1px solid rgba(50,35,15,.08)}.movesCell.active{background:#5a8cff47;border-color:#5a8cff73}.boardCard{padding:18px}.boardSplit.boardSplitTight{display:grid;grid-template-columns:var(--board-width, 520px) minmax(300px,460px);gap:18px;align-items:start}.boardSplitTight .boardSplitRight{min-width:300px;max-width:460px;max-height:calc(var(--board-width, 520px) + 60px);overflow-y:auto}@media (max-width: 1100px){.boardSplit.boardSplitTight{grid-template-columns:1fr}.boardSplitTight .boardSplitRight{min-width:0;max-width:100%;max-height:none}.boardSplitTight .boardSplitLeft svg{max-width:min(100%,calc(100dvh - 420px));max-height:calc(100dvh - 420px);margin:0 auto;display:block}}.movesCard{margin-top:10px;padding:12px;border-radius:14px;background:#32230f0a;border:1px solid rgba(50,35,15,.07);border-left:3px solid transparent}.movesCell.active{outline:2px solid rgba(90,140,255,.9)}.boardTitle{font-weight:1000}.kicker{font-weight:800;opacity:.6}.trainerUnderBoard{display:grid;gap:10px;margin-top:10px}.coachTitle{font-weight:950;letter-spacing:-.01em;font-size:13px;opacity:.9}.theoryContainer{position:relative}.trainerTopRow{margin-bottom:12px}.trainerTopLeft{display:grid;gap:2px}.movesProgress{display:grid;gap:6px;justify-items:end;min-width:140px}.movesBar .progressBar{width:140px;height:8px;border-radius:999px;background:repeating-linear-gradient(90deg,#32230f1a 0,#32230f1a 10px,#32230f0d 10px,#32230f0d 14px);border:1px solid rgba(50,35,15,.1)}.trainerUnderBoard{gap:10px;margin-top:10px}.coachTitle{font-weight:950}.movesBottomNav{display:flex;align-items:center;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(50,35,15,.08)}.badList{display:grid;gap:8px}.badRow{width:100%;text-align:left;border:1px solid var(--border);background:#32230f08;padding:10px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;color:var(--text)}.badRow:hover{background:#32230f0f}.badRow.selected{border-color:#7c5cff8c;box-shadow:0 0 0 2px #7c5cff2e}.badMove{display:flex;align-items:center;gap:10px;min-width:0}.badIdx{width:22px;opacity:.7}.badLabel{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.badScore{font-variant-numeric:tabular-nums;opacity:.85}.missedChanceCard{margin-bottom:10px}.missedChanceInfo{display:grid;gap:6px;margin-top:8px;font-size:12px}.missedChanceRow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.missedLabel{color:var(--muted);min-width:64px;font-size:11px}.missedMove{font-weight:700;font-size:13px}.missedMoveBad{color:var(--bad)}.missedMoveGood{color:var(--good)}.missedEval{font-size:11px;font-weight:600;opacity:.85}.missedEvalBad{color:var(--bad)}.missedEvalGood{color:var(--good)}.dropBadge{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.02em;margin-left:auto}.dropBadgeBad{background:#ff6b6b2e;color:var(--bad);border:1px solid rgba(255,107,107,.25)}.dropBadgeGood{background:#2cff7a24;color:var(--good);border:1px solid rgba(44,255,122,.2)}.coachTitle{font-size:12px}.boardSplitLeft{min-width:0;max-width:100%;overflow:hidden}.boardSplitLeft>*{min-width:0}.trainerUnderBoard{min-width:0;max-width:100%}.badList{max-height:120px;overflow-y:auto}.badRow{padding:5px 8px;font-size:12px}.badIdx{font-size:11px;opacity:.5}.badScore{font-size:11px;color:var(--good)}.integrations-list{display:flex;flex-direction:column;gap:16px}.integration-row{display:flex;align-items:center;gap:16px;padding:16px;background:#32230f0a;border:1px solid var(--border);border-radius:var(--r-md);transition:border-color .15s ease}.integration-row:hover{border-color:var(--border2)}.integration-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lichess-icon{background:linear-gradient(135deg,#333,#1a1a1a);color:#fff}.chesscom-icon{background:linear-gradient(135deg,#769656,#5a8a3a);color:#fff}.integration-info{flex:1;min-width:0}.integration-name{font-weight:700;font-size:15px;margin-bottom:4px}.integration-status{font-size:13px;color:var(--muted)}.integration-status.connected{color:var(--good)}.integration-action{flex-shrink:0}.integration-action .input{height:36px;font-size:13px}.game-fetch-status{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:16px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-sm);font-size:13px;color:var(--muted)}.game-fetch-status.success{background:#2cff7a0f;border-color:#2cff7a33;color:var(--good)}.game-fetch-status.error{background:#ff6b6b0f;border-color:#ff6b6b33;color:var(--bad)}.game-fetch-status.warning{background:#ffb43c14;border-color:#c8962840;color:#a07820}.fetch-spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.fetch-spinner-sm{width:12px;height:12px;border-width:1.5px;flex-shrink:0}.trainerLoadingIndicator{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}.spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.btn-sm{padding:4px 10px;font-size:12px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}.modal-content{max-width:500px;width:90%;max-height:80vh;overflow-y:auto;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(60,40,20,.1);border-radius:var(--r-lg);box-shadow:0 24px 80px #32230f26}.modal-content textarea.input{width:100%;resize:vertical}.study-row-btn:hover{background:#32230f14!important;border-color:var(--accent)!important}.study-row-btn:active{background:#32230f1f!important}.study-row-btn:focus{outline:none;border-color:var(--accent)!important}.chapter-row:hover{background:#32230f0d}.studies-table table{background:#32230f14;border-radius:var(--r-sm);overflow:hidden}.studies-table thead{background:#32230f0a}.trainerHeaderGroup .pill{padding:8px 14px;font-size:13px;font-weight:700;border-radius:12px;transition:background .15s var(--ease),box-shadow .15s var(--ease)}.trainerHeaderGroup .pill.active{box-shadow:0 1px 2px #0000000f}.trainerMovesCard{border-left:2px solid var(--accent);background:color-mix(in oklch,var(--accent) 4%,transparent)}.trainerMovesCard .card-title h2{color:var(--text)}.trainerAnnotationCard{background:var(--card2);border:1px solid var(--border);border-radius:var(--r-md);padding:14px 16px;margin-top:6px}.trainerAnnotationText{margin:0 0 12px;font-size:14px;line-height:1.65;color:var(--text);font-weight:500}@media (max-width: 1000px){.trainerAnnotationCard{order:-1;margin:0 0 4px;padding:10px 14px;border-radius:var(--r-md);border:1px solid var(--border);background:var(--card2);max-height:40vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.trainerAnnotationText{font-size:11.5px;line-height:1.45;margin:0 0 6px}.trainerAnnotationCard .trainerContinueCta{width:100%!important;padding:4px 10px!important;font-size:10.5px!important;font-weight:700!important;min-height:0!important;background:var(--accent, var(--accent));box-shadow:0 3px 10px color-mix(in oklch,var(--accent) 25%,transparent)}.trainerQuestionCard .trainerContinueCta,.trainerNewCard-drill .trainerContinueCta{padding:4px 10px!important;font-size:10.5px!important;min-height:0!important}}.trainerContinueCta{position:relative;box-shadow:0 4px 18px color-mix(in oklch,var(--accent) 28%,transparent);transition:transform .18s var(--ease, ease),box-shadow .3s var(--ease, ease),filter .18s var(--ease, ease)}.trainerContinueCta:after{content:" →";display:inline-block;margin-left:6px;transition:transform .18s var(--ease, ease)}.trainerContinueCta:hover{filter:brightness(1.03)}.trainerContinueCta:hover:after{transform:translate(3px)}[data-mode=dark] .trainerContinueCta,[data-mode=dark] .btn.btn-primary.trainerContinueCta{background:linear-gradient(180deg,#fac871,#cfc399,#a1bbb8,#6cb2d2 75%,#4bacde 87.5%,#35a8e3 93.75%,#27a7e6,#0ea5e9);border-color:#7dd3fcbf;color:#020617;box-shadow:0 0 0 1px #7dd3fc59,0 6px 24px #f3b94c73,0 2px 8px #f3b94c40;animation:trainerContinuePulse 2.4s ease-in-out infinite}[data-mode=dark] .trainerContinueCta:hover{filter:brightness(1.06);transform:translateY(-1px);animation:none;box-shadow:0 0 0 2px #7dd3fc8c,0 10px 36px #f3b94ca6}[data-mode=dark] .trainerContinueCta:active{transform:translateY(0) scale(.99)}@keyframes trainerContinuePulse{0%,to{box-shadow:0 0 0 1px #7dd3fc59,0 6px 24px #f3b94c73,0 2px 8px #f3b94c40}50%{box-shadow:0 0 0 2px #7dd3fc8c,0 10px 36px #f3b94cb3,0 4px 16px #f3b94c66}}@media (prefers-reduced-motion: reduce){.trainerContinueCta,[data-mode=dark] .trainerContinueCta{animation:none!important}.trainerContinueCta:after{transition:none}}.trainerQuestionOptions{display:flex;flex-direction:column;gap:8px;align-items:stretch}.trainerQuestionOptBtn{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:14px;font-weight:600;text-align:left;background:color-mix(in oklch,var(--accent) 8%,transparent);color:var(--text, #1a2240);border:1.5px solid color-mix(in oklch,var(--accent) 28%,transparent);border-radius:var(--r-sm, 10px);cursor:pointer;transition:background .18s var(--ease, ease),border-color .18s var(--ease, ease),transform .12s var(--ease, ease),box-shadow .2s var(--ease, ease)}@media (hover: hover){.trainerQuestionOptBtn:hover{background:color-mix(in oklch,var(--accent) 16%,transparent);border-color:color-mix(in oklch,var(--accent) 55%,transparent);box-shadow:0 4px 14px color-mix(in oklch,var(--accent) 18%,transparent);transform:translateY(-1px)}}.trainerQuestionOptBtn:active{transform:translateY(0) scale(.99)}.trainerQuestionOptLetter{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:24px;height:24px;border-radius:50%;background:color-mix(in oklch,var(--accent) 18%,transparent);color:var(--accent, var(--accent));font-weight:700;font-size:12px;letter-spacing:.02em}@media (max-width: 1000px){.trainerQuestionCard{order:-1;margin:0 0 4px!important;padding:12px 14px!important;max-height:50vh;overflow-y:auto;-webkit-overflow-scrolling:touch;border-radius:var(--r-md);border:1px solid color-mix(in oklch,var(--accent) 35%,transparent);background:var(--card2)!important;box-shadow:0 2px 12px #00000014}}[data-mode=dark] .trainerQuestionCard{background:linear-gradient(180deg,#0f172af2,#020617f2);border-color:#7dd3fc59;box-shadow:0 4px 20px #02061766}@media (max-width: 1000px){[data-mode=dark] .trainerQuestionCard{background:#0b1424!important;border-top-color:#7dd3fc73;box-shadow:0 -8px 28px #02061799}}[data-mode=dark] .trainerQuestionOptBtn{background:linear-gradient(135deg,#f3b94c29,#f3b94c0f);color:#e0f2fe;border-color:#7dd3fc52;border-left:3px solid rgba(125,211,252,.55);box-shadow:inset 0 1px #ffffff0a,0 2px 10px #02061766}@media (hover: hover){[data-mode=dark] .trainerQuestionOptBtn:hover{background:linear-gradient(135deg,#f3b94c47,#f3b94c1f);border-color:#7dd3fcbf;border-left-color:#fac871;box-shadow:inset 0 1px #ffffff14,0 0 0 1px #7dd3fc59,0 6px 20px #f3b94c52}}[data-mode=dark] .trainerQuestionOptLetter{background:#7dd3fc38;color:#fac871;box-shadow:inset 0 0 0 1px #7dd3fc59}@media (max-width: 720px){.trainerBottomBarMobile{display:flex}}[data-mode=dark] .sessionGridItem{background:linear-gradient(180deg,#ffffff0a,#fff0 60%),linear-gradient(135deg,#1e2d4e8c,#121c34b3);border:1px solid rgba(160,180,220,.12)}[data-mode=dark] .sessionGridItem:has(.sessionGridNum[style*=--bad]){background:radial-gradient(ellipse at top right,rgba(244,63,94,.15) 0%,transparent 65%),linear-gradient(135deg,#f43f5e14,#1e1428b3);border:1px solid rgba(244,63,94,.28)}[data-mode=dark] .sessionGridItem:has(.sessionGridNum[style*="--accent)"]){background:radial-gradient(ellipse at top right,oklch(.82 .14 80 / .15) 0%,transparent 65%),linear-gradient(135deg,#f3b94c14,#121c34b3);border:1px solid oklch(.82 .14 80 / .28)}[data-mode=dark] .sessionGridNum{color:#f5f9ff}[data-mode=dark] .sessionGridLbl{color:#cbd5ff99}@media (max-width: 400px){.sessionGrid{grid-template-columns:repeat(2,1fr)}}.sessionRepBreakdown{border-top:1px solid var(--border);padding-top:12px;margin-top:4px;text-align:left}.sessionRepRow{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:12px}.sessionRepName{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.sessionRepCount{color:var(--muted);font-size:11px;min-width:24px;text-align:right}.sessionRepPct{font-weight:900;min-width:36px;text-align:right}.sc25Root{padding:16px}.sc25Card{max-width:540px;margin:24px auto;padding:22px 22px 20px!important;border-radius:28px!important;background:linear-gradient(180deg,#0f172a,#172554 55%,#020617)!important;border:1px solid rgba(6,182,212,.22)!important;color:#e2e8f0;box-shadow:0 0 0 1px #94a3b814 inset,0 20px 60px #0206178c,0 2px 8px #02061740;display:flex;flex-direction:column;gap:16px}.sc25Head{text-align:center;margin:0}.sc25Title{margin:0 0 4px!important;font-size:28px!important;font-weight:800!important;letter-spacing:-.01em;color:#f1f5f9!important;background:none!important;-webkit-text-fill-color:#f1f5f9!important;filter:none!important}.sc25Sub{margin:0!important;font-size:13px!important;color:#94a3b8!important;line-height:1.4}.sc25PeakEnd{display:flex;align-items:center;gap:12px;padding:12px 16px;margin:0 0 14px;background:linear-gradient(135deg,color-mix(in oklch,var(--accent2) 14%,transparent),color-mix(in oklch,var(--accent) 10%,transparent));border:1px solid color-mix(in oklch,var(--accent2) 25%,transparent);border-radius:var(--r-md);animation:sc25PeakEndIn .6s var(--ease) both}.sc25PeakEndIcon{font-size:24px;line-height:1;flex-shrink:0;animation:sc25PeakEndIconBounce .9s var(--ease-out) both}.sc25PeakEndText{display:flex;flex-direction:column;gap:2px;min-width:0}.sc25PeakEndLabel{font-size:13px;font-weight:700;color:var(--text);letter-spacing:.01em}.sc25PeakEndDetail{font-size:12px;color:var(--muted);line-height:1.3}@keyframes sc25PeakEndIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes sc25PeakEndIconBounce{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.2);opacity:1}to{transform:scale(1)}}.sc25Commit{margin:18px 0 14px;padding:16px;border-radius:var(--r-md);background:linear-gradient(135deg,color-mix(in oklch,var(--accent) 6%,transparent),color-mix(in oklch,var(--accent2) 10%,transparent));border:1px solid color-mix(in oklch,var(--accent) 18%,transparent);text-align:center;animation:sc25CommitIn .5s var(--ease) both}.sc25CommitTitle{font-size:15px;font-weight:700;color:var(--text);margin-bottom:4px}.sc25CommitSub{font-size:12px;color:var(--muted);margin-bottom:14px;line-height:1.4}.sc25CommitChips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.sc25CommitChip{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 6px;background:var(--card2);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:transform .12s var(--ease),border-color .18s var(--ease),background .18s var(--ease);font-family:inherit}.sc25CommitChip:hover:not(:disabled){border-color:color-mix(in oklch,var(--accent) 45%,transparent);background:color-mix(in oklch,var(--accent) 6%,transparent)}.sc25CommitChip:active:not(:disabled){transform:scale(.98)}.sc25CommitChip:disabled{opacity:.5;cursor:default}.sc25CommitChip.sc25CommitChipActive,.sc25CommitChip.sc25CommitChipActive:disabled{opacity:1;border-color:var(--accent);background:color-mix(in oklch,var(--accent) 14%,transparent);cursor:progress}.sc25CommitChip.sc25CommitChipActive .sc25CommitChipLabel{color:var(--accent)}.sc25CommitChipSpinner{display:block;width:12px;height:12px;margin-top:4px;border:2px solid color-mix(in oklch,var(--accent) 25%,transparent);border-top-color:var(--accent);border-radius:50%;animation:sc25CommitSpin .6s linear infinite}@keyframes sc25CommitSpin{to{transform:rotate(360deg)}}.sc25CommitChipIcon{font-size:22px;line-height:1;margin-bottom:2px}.sc25CommitChipLabel{font-size:12px;font-weight:600;color:var(--text)}.sc25CommitChipTime{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.sc25CommitSkip{background:none;border:none;font-size:12px;color:var(--muted);cursor:pointer;padding:6px 12px;border-radius:var(--r-sm);font-family:inherit;transition:color .15s var(--ease)}.sc25CommitSkip:hover{color:var(--text)}.sc25CommitDone{display:flex;align-items:center;gap:12px;padding:4px 0;text-align:left}.sc25CommitDoneIcon{font-size:22px;line-height:1;flex-shrink:0}.sc25CommitDoneText{display:flex;flex-direction:column;gap:2px;min-width:0}.sc25CommitDoneTitle{font-size:13px;font-weight:700;color:var(--text)}.sc25CommitDoneSub{font-size:12px;color:var(--muted);line-height:1.3}@keyframes sc25CommitIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sc25Hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-radius:20px;background:#10b98126;border:1px solid rgba(52,211,153,.3)}.sc25Hero:not(:has(.sc25HeroStreakWrap)){justify-content:center}.sc25HeroStreakWrap{flex:1 1 0;min-width:0}.sc25Hero .sessionStreakCard{background:transparent!important;border:none!important;padding:0!important;display:flex!important;flex-direction:column;gap:4px}.sc25Hero .sessionStreakLabel{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#6ee7b7;opacity:1}.sc25Hero .sessionStreakValue{display:flex;align-items:baseline;gap:10px;font-weight:800;line-height:1}.sc25Hero .sessionStreakFlame{font-size:24px;line-height:1;filter:drop-shadow(0 0 8px rgba(52,211,153,.55))}.sc25Hero .sessionStreakNum{font-size:30px;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:#6ee7b7;text-shadow:0 0 10px rgba(52,211,153,.4)}.sc25Hero .sessionStreakPlus{font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;background:#34d39940;border:1px solid rgba(52,211,153,.5);color:#6ee7b7}.sc25HeroRing{position:relative;width:80px;height:80px;border-radius:50%;border:4px solid #334155;display:flex;align-items:center;justify-content:center;flex:0 0 80px;background:#0f172a73}.sc25HeroRing svg{position:absolute;top:0;right:0;bottom:0;left:0;margin:-4px}.sc25HeroRingText{position:relative;z-index:1;display:flex;align-items:center;justify-content:center}.sc25HeroRingNum{font-size:18px;font-weight:800;font-variant-numeric:tabular-nums;color:#f1f5f9;letter-spacing:-.02em}.sc25StatGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.sc25Stat{padding:16px 12px;border-radius:18px;text-align:center;border:1px solid transparent}.sc25Stat-slate{background:#1e293bb3;border-color:#33415580}.sc25Stat-rose{background:#f43f5e1a;border-color:#fb718540}.sc25Stat-accent{background:#06b6d41a;border-color:#22d3ee40}.sc25StatNum{font-size:28px;font-weight:800;line-height:1.1;color:#f1f5f9;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.sc25Stat-rose .sc25StatNum{color:#fda4af}.sc25Stat-accent .sc25StatNum{color:#67e8f9}.sc25StatNum-muted{color:#94a3b8!important;font-size:20px}.sc25StatLbl{margin-top:4px;font-size:11px;font-weight:600;color:#94a3b8;letter-spacing:.02em}.sc25Progress{padding:18px 18px 16px;border-radius:24px;background:#06b6d41a;border:1px solid rgba(34,211,238,.22);display:flex;flex-direction:column;gap:14px}.sc25ProgressHead{display:flex;align-items:center;justify-content:space-between;gap:10px}.sc25ProgressHeadLeft{min-width:0}.sc25ProgressTitle{font-size:14px;font-weight:600;color:#67e8f9;letter-spacing:.01em}.sc25ProgressSub{font-size:12px;color:#94a3b8;margin-top:2px}.sc25ProgressRight{text-align:right;flex-shrink:0}.sc25ProgressCount{font-size:18px;font-weight:800;color:#f1f5f9;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.1}.sc25ProgressDelta{font-size:13px;font-weight:700;color:#6ee7b7;margin-top:2px}.sc25ProgressBarTrack{height:12px;background:#1e293be6;border-radius:999px;overflow:hidden}.sc25ProgressBarFill{height:100%;background:linear-gradient(90deg,#22d3ee,#34d399);border-radius:999px;transition:width .9s var(--ease);box-shadow:0 0 12px #34d39959}.sc25ProgressRows{margin-top:4px;display:flex;flex-direction:column;gap:4px}.sc25ProgressSubhead{font-size:11px;font-weight:700;text-transform:uppercase;color:#94a3b8;letter-spacing:.08em;margin-top:6px;margin-bottom:6px}.sc25IconProgress{padding:18px 18px 16px;border-radius:24px;background:#f59e0b1a;border:1px solid rgba(251,191,36,.22);display:flex;flex-direction:column;gap:12px}.sc25IconProgressHead{display:flex;flex-direction:column;gap:2px}.sc25IconProgressTitle{font-size:14px;font-weight:700;color:#fcd34d;letter-spacing:.01em}.sc25IconProgressSub{font-size:12px;color:#94a3b8}.sc25IconProgressList{display:flex;flex-direction:column;gap:10px}.sc25IconProgressRow{display:flex;align-items:center;gap:12px}.sc25IconProgressIcon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.sc25IconProgressIcon img{width:36px;height:36px}.sc25IconProgressBody{flex:1;min-width:0}.sc25IconProgressLabel{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.sc25IconProgressName{font-size:13px;font-weight:700;color:#f1f5f9}.sc25IconProgressTierUp{font-size:11px;font-weight:800;color:#fcd34d;text-transform:uppercase;letter-spacing:.06em}.sc25IconProgressRemaining{font-size:11px;color:#94a3b8}.sc25IconProgressBarTrack{height:8px;background:#1e293be6;border-radius:999px;overflow:hidden}.sc25IconProgressBarFill{height:100%;background:linear-gradient(90deg,#fbbf24,#f59e0b);border-radius:999px;transition:width .9s var(--ease);box-shadow:0 0 8px #fbbf2459}.sc25IconProgressMeta{display:flex;align-items:center;justify-content:space-between;margin-top:4px;font-variant-numeric:tabular-nums}.sc25IconProgressCount{font-size:11px;color:#cbd5e1}.sc25IconProgressDelta{font-size:12px;font-weight:800;color:#6ee7b7}.sc25Demo{padding:20px;border-radius:24px;background:linear-gradient(135deg,#3b82f638,#06b6d41a);border:1px solid rgba(34,211,238,.3);display:flex;flex-direction:column;gap:12px}.sc25DemoTitle{font-size:17px;font-weight:700;color:#a5f3fc;line-height:1.3}.sc25DemoBody{margin:0;font-size:13.5px;line-height:1.5;color:#cbd5e1}.sc25DemoFsrs{padding:12px 14px;border-radius:14px;background:#0f172a66;border:1px solid rgba(34,211,238,.18);color:#d6e2f0;font-size:13px}.sc25DemoSave{width:100%;padding:14px 0;border:none;border-radius:16px;background:linear-gradient(90deg,#22d3ee,#3b82f6);color:#020617;font-size:15px;font-weight:700;cursor:pointer;transition:filter .18s var(--ease),transform .12s var(--ease);box-shadow:0 6px 18px #22d3ee40}.sc25DemoSave:hover{filter:brightness(1.06)}.sc25DemoSave:active{transform:scale(.99)}.sc25DemoLater{width:100%;padding:14px 0;border:none;border-radius:16px;background:#1e293be6;color:#cbd5e1;font-size:14px;font-weight:500;cursor:pointer;transition:background .18s var(--ease),transform .12s var(--ease)}.sc25DemoLater:hover{background:#334155f2}.sc25DemoLater:active{transform:scale(.99)}.sc25Done{width:100%;padding:14px 0!important;border-radius:16px!important;font-size:15px!important;font-weight:700!important;margin-top:4px}.sc25Card .sc25Coach{margin:0!important;padding:14px 16px!important;border-radius:18px!important;background:#1e293ba6!important;border:1px solid color-mix(in oklch,var(--accent) 35%,transparent)!important}.sc25Card .sc25Coach p{color:#cbd5e1}html:not([data-mode=dark]) .sc25Card{background:var(--card2)!important;border:1px solid var(--border)!important;color:var(--text);box-shadow:0 1px #fff6 inset,0 12px 32px #141e411a,0 2px 6px #141e410d}html:not([data-mode=dark]) .sc25Title{color:var(--text)!important;-webkit-text-fill-color:var(--text)!important}html:not([data-mode=dark]) .sc25Sub{color:var(--muted)!important}html:not([data-mode=dark]) .sc25Hero{background:#10b9811a;border:1px solid rgba(16,185,129,.28)}html:not([data-mode=dark]) .sc25Hero .sessionStreakLabel{color:#059669}html:not([data-mode=dark]) .sc25Hero .sessionStreakNum{color:#047857;text-shadow:0 0 6px rgba(16,185,129,.25)}html:not([data-mode=dark]) .sc25Hero .sessionStreakPlus{background:#10b9812e;border-color:#10b98166;color:#047857}html:not([data-mode=dark]) .sc25HeroRing{border-color:#1e3c822e;background:#ffffff8c}html:not([data-mode=dark]) .sc25HeroRingNum{color:var(--text)}html:not([data-mode=dark]) .sc25Stat-slate{background:#ffffffb3;border-color:#1e3c821f}html:not([data-mode=dark]) .sc25Stat-rose{background:#f43f5e14;border-color:#f43f5e38}html:not([data-mode=dark]) .sc25Stat-accent{background:#3b7aff14;border-color:#3b7aff38}html:not([data-mode=dark]) .sc25StatNum{color:var(--text)}html:not([data-mode=dark]) .sc25Stat-rose .sc25StatNum{color:#be123c}html:not([data-mode=dark]) .sc25Stat-accent .sc25StatNum{color:var(--accent)}html:not([data-mode=dark]) .sc25StatNum-muted{color:var(--muted)!important}html:not([data-mode=dark]) .sc25StatLbl{color:var(--muted)}html:not([data-mode=dark]) .sc25Progress{background:#3b7aff0f;border:1px solid rgba(59,122,255,.2)}html:not([data-mode=dark]) .sc25ProgressTitle{color:var(--accent)}html:not([data-mode=dark]) .sc25ProgressSub{color:var(--muted)}html:not([data-mode=dark]) .sc25ProgressCount{color:var(--text)}html:not([data-mode=dark]) .sc25ProgressDelta{color:#059669}html:not([data-mode=dark]) .sc25ProgressBarTrack{background:#1e3c821a}html:not([data-mode=dark]) .sc25ProgressSubhead{color:var(--muted)}html:not([data-mode=dark]) .sc25IconProgress{background:#f59e0b14;border-color:#f59e0b40}html:not([data-mode=dark]) .sc25IconProgressTitle{color:#b45309}html:not([data-mode=dark]) .sc25IconProgressSub,html:not([data-mode=dark]) .sc25IconProgressRemaining,html:not([data-mode=dark]) .sc25IconProgressCount{color:var(--muted)}html:not([data-mode=dark]) .sc25IconProgressName{color:var(--text)}html:not([data-mode=dark]) .sc25IconProgressTierUp{color:#b45309}html:not([data-mode=dark]) .sc25IconProgressBarTrack{background:#1e3c821a}html:not([data-mode=dark]) .sc25IconProgressDelta{color:#059669}html:not([data-mode=dark]) .sc25Demo{background:linear-gradient(135deg,#3b7aff1a,#3b7aff0a);border-color:#3b7aff40}html:not([data-mode=dark]) .sc25DemoTitle{color:var(--text)}html:not([data-mode=dark]) .sc25DemoBody{color:var(--muted)}html:not([data-mode=dark]) .sc25DemoFsrs{background:var(--card2);border-color:var(--border);color:var(--text)}html:not([data-mode=dark]) .sc25DemoLater{background:var(--card2);border:1px solid var(--border);color:var(--text)}html:not([data-mode=dark]) .sc25DemoLater:hover{background:#ffffffd9}html:not([data-mode=dark]) .sc25Card .sc25Coach{background:var(--card2)!important}html:not([data-mode=dark]) .sc25Card .sc25Coach p{color:var(--text)}html:not([data-mode=dark]) .sc25PeakEnd{background:linear-gradient(135deg,#7b6cff1a,#3b7aff0f);border-color:#7b6cff40}html:not([data-mode=dark]) .sessionDeltaBarTrack{background:#3b7aff14!important;border:1px solid rgba(59,122,255,.22)!important;box-shadow:inset 0 1px 2px #141e410f!important}html:not([data-mode=dark]) .sessionDeltaBarTrack span{color:var(--text)!important;text-shadow:none!important}html:not([data-mode=dark]) .sessionDeltaBarTrack span span:last-child{color:var(--muted)!important}@media (max-width: 600px){html:not([data-mode=dark]) .sc25Done{box-shadow:0 10px 24px #141e4129,0 0 0 1px #3b7aff38!important}html:not([data-mode=dark]) .sc25Demo{box-shadow:0 10px 24px #141e4129!important}}@media (max-width: 600px){.sc25Root{padding:8px}.sc25Card{margin:8px auto;padding:14px!important;border-radius:22px!important;gap:10px}.sc25Card:has(.sc25Done){padding-bottom:92px!important}.sc25Card:has(.sc25Demo){padding-bottom:220px!important}.sc25Title{font-size:20px!important;margin:0 0 2px!important}.sc25Sub{font-size:12px!important}.sc25Hero{padding:12px 14px!important;gap:10px!important;border-radius:16px!important}.sc25HeroRing{width:64px!important;height:64px!important;flex:0 0 64px!important}.sc25HeroRingNum{font-size:15px!important}.sc25Hero .sessionStreakLabel{font-size:10px!important;letter-spacing:.14em!important}.sc25Hero .sessionStreakNum{font-size:22px!important}.sc25Hero .sessionStreakFlame{font-size:18px!important}.sc25Hero .sessionStreakPlus{font-size:10px!important;padding:1px 6px!important}.sc25StatGrid{gap:8px!important}.sc25Stat{padding:10px 8px!important;border-radius:14px!important}.sc25StatNum{font-size:22px!important}.sc25StatNum-muted{font-size:16px!important}.sc25StatLbl{font-size:10px!important;margin-top:2px!important}.sc25Progress{padding:12px 14px!important;border-radius:18px!important;gap:10px!important}.sc25ProgressTitle{font-size:13px!important}.sc25ProgressSub{font-size:11px!important}.sc25ProgressCount{font-size:15px!important}.sc25ProgressDelta{font-size:12px!important;margin-top:1px!important}.sc25ProgressBarTrack{height:10px!important}.sc25Done{position:fixed!important;left:50%!important;transform:translate(-50%)!important;bottom:calc(var(--app-bottom-chrome-h, 60px) + env(safe-area-inset-bottom,0px) + 8px)!important;width:calc(100% - 24px)!important;max-width:516px!important;margin:0!important;padding:12px 0!important;font-size:14px!important;z-index:30!important;box-shadow:0 10px 30px #02061799,0 0 0 1px #22d3ee40!important}.sc25Demo{position:fixed!important;left:50%!important;transform:translate(-50%)!important;bottom:calc(var(--app-bottom-chrome-h, 60px) + env(safe-area-inset-bottom,0px) + 8px)!important;width:calc(100% - 24px)!important;max-width:516px!important;margin:0!important;padding:12px 14px!important;gap:8px!important;border-radius:18px!important;z-index:30!important;box-shadow:0 10px 30px #02061799!important}.sc25DemoTitle{font-size:14px!important;line-height:1.25!important}.sc25DemoBody{font-size:11.5px!important;line-height:1.35!important}.sc25DemoSave,.sc25DemoLater{padding:10px 0!important;font-size:13px!important;border-radius:12px!important}}.featuredMasterSection{border-top:1px solid var(--border);padding-top:16px;margin-top:16px}.featuredMasterLabel{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:8px}@media (max-width: 720px){.trainerNavLayout{flex-direction:column;align-items:center}}.trainerRepRow.selected{background:#f3b94c1a;border-color:#f3b94c61;box-shadow:0 0 0 1px #f3b94c38}.trainerInlineDrillEval{display:none}@media (max-width: 1000px){.trainerInlineDrillEval{display:inline}}.trainerModeChip{display:inline-flex;align-items:center;margin-left:10px;padding:3px 10px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border:1px solid;border-radius:999px;white-space:nowrap;line-height:1.4}@media (max-width: 1000px){.trainerModeChip{margin-left:6px;padding:3px 8px;font-size:10px}}.trainerSessionLayout{display:grid;grid-template-columns:var(--board-col, 520px) minmax(280px,360px);gap:20px;align-items:start;max-width:100%}.trainerSessionLayout .boardTopRow .trainerTopTitle,.trainerSessionLayout .boardTopRow .trainerModeChip-drill{display:none}@media (max-width: 1000px){.trainerSessionLayout{grid-template-columns:1fr;row-gap:0;column-gap:8px;--trainer-bottom-panel-h: 0px}.trainerSessionLayout .trainerSidePanel{margin-top:6px}.trainerActionButtons .btn{padding:5px 11px;font-size:11.5px;font-weight:600;min-height:28px;border-radius:8px;letter-spacing:.02em;border-color:var(--border2, var(--border));color:var(--muted);background:#ffffff0a}.trainerActionButtons .btn:hover{color:var(--text);border-color:var(--accent);background:#f3b94c14}.trainerActionButtons .btn:active{background:#f3b94c24}.trainerSessionLayout .boardCard,.trainerSessionLayout .boardCard:hover{max-width:100%;overflow:hidden;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;transform:none!important}.trainerSessionLayout .boardCard svg{max-width:min(100%,max(200px,calc(100dvh - var(--app-top-chrome-h, 96px) - var(--app-bottom-chrome-h, 60px) - 90px - var(--trainer-bottom-panel-h, 0px))));max-height:max(200px,calc(100dvh - var(--app-top-chrome-h, 96px) - var(--app-bottom-chrome-h, 60px) - 90px - var(--trainer-bottom-panel-h, 0px)));margin:0 auto;display:block}@media (min-width: 601px){.trainerSessionLayout .boardCard svg{max-width:min(100%,max(240px,calc(100dvh - var(--app-top-chrome-h, 96px) - var(--app-bottom-chrome-h, 0px) - 120px - var(--trainer-bottom-panel-h, 0px))));max-height:max(240px,calc(100dvh - var(--app-top-chrome-h, 96px) - var(--app-bottom-chrome-h, 0px) - 120px - var(--trainer-bottom-panel-h, 0px)))}}.trainerSessionLayout .boardTopRow{flex-wrap:nowrap;gap:4px 6px;min-height:0;margin-bottom:2px;justify-content:space-between}.trainerSessionLayout .boardTopRow>.boardTitle,.trainerSessionLayout .boardTopRow>div:not(.boardTitle){display:contents!important}.trainerSessionLayout .boardTopRow .trainerModeChip-theory{background:transparent!important;border:none!important;padding:0!important;margin-left:0!important;letter-spacing:.03em}.trainerSessionLayout .boardTopRow:has(.trainerModeChip-theory),.trainerSessionLayout .boardTopRow:has(>div:last-child>span),.trainerSessionLayout .boardTopRow:has(button){min-height:24px;margin-bottom:4px}.trainerSessionLayout .boardTopRow .kicker{color:#ec4899!important;opacity:1!important;font-weight:700!important}.trainerSessionLayout .boardTopRow{min-height:0!important;margin-bottom:0!important}.trainerSessionLayout:has(.trainerHideTopEval) .boardTopRow{min-height:0!important;margin-bottom:0!important}.trainerSessionLayout:has(.trainerHideTopEval) .boardTopRow .trainerBoardTopEval{display:none}.trainerPlayToMateCard{padding:8px 12px!important}.trainerPlayToMateCard .trainerPlayToMateSection{font-size:10px!important;margin:0 0 4px!important}.trainerPlayToMateCard .trainerPlayToMateComment{margin:0 0 6px!important;padding:6px 10px!important}.trainerPlayToMateCard .trainerPlayToMateComment p{font-size:12px!important;line-height:1.4!important}.trainerPlayToMateCard .trainerPlayToMateGoal{font-size:12.5px!important}.trainerPlayToMateCard .trainerPlayToMateProgress{font-size:11.5px!important;margin:2px 0 0!important}.trainerPlayToMateCard .trainerPlayToMateHintBtn{margin-top:6px!important;padding:8px 14px!important;font-size:12px!important;min-height:44px!important}.trainer-hotkey-hint,.trainer-card-hint{display:none}.trainerSessionLayout .boardCard{padding:0 6px 2px;border-top:none;border-top-left-radius:0;border-top-right-radius:0}.trainerSessionLayout .boardTopRow .muted{color:var(--accent)!important;opacity:1!important;font-weight:600!important}.trainerSessionLayout .trainerProgressRow{margin-top:6px}.trainerSidePanel{gap:4px}.trainerSidePanel .card-pad{padding:6px 10px}.trainerNewCard{padding:8px 12px!important}.trainerNewCard .card-title{margin-bottom:0}.trainerNewCard-theory{display:none!important}.trainerNewCard-drill,.trainerSessionLayout .trainerFeedback{order:-1;margin:0!important;padding:8px 12px 0!important;border-radius:var(--r-md) var(--r-md) 0 0;border:1px solid var(--border);border-bottom:none;background:var(--card2);max-height:42dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:0 2px 12px #00000014}.trainerNewCard-drill .card-title h2{font-size:13.5px!important;line-height:1.4!important;font-weight:600!important}.trainerNewCard-drill .card-title>div{font-size:11.5px!important}.trainerNewCard-drill .card-title>div .kicker{font-size:10.5px!important}.trainerNewCard-drill .card-title .kicker,.trainerNewCard-drill .trainerNewCardBadgeRow .kicker,.trainerMissedCtxPreBoard .kicker{color:#ec4899!important;opacity:1!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important}.trainerNewCard-drill .trainer-desktop-comment{margin:6px 0 0!important;padding:6px 10px!important}.trainerNewCard-drill .trainer-desktop-comment p{font-size:10.5px!important;line-height:1.4!important}.trainerNewCard-drill.trainerNewCard--hero .card-title h2{font-size:10.5px!important;line-height:1.35!important}.trainerNewCard-drill .card-title{gap:3px!important;margin-bottom:0!important}.trainerNewCard-drill:not(.trainerNewCard--hero){display:flex!important;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:4px}.trainerNewCard-drill:not(.trainerNewCard--hero) .card-title{flex:1 1 auto;order:2;min-width:0;margin:0!important}.trainerNewCard-drill:not(.trainerNewCard--hero) .trainerNewCardBadgeRow{order:1;margin-top:0!important}.trainerNewCard-drill:not(.trainerNewCard--hero) .trainerNewCardPuzzleRow{flex:1 1 100%;order:3;margin-top:2px!important}.trainerNewCard-drill:not(.trainerNewCard--hero) .trainer-desktop-comment{flex:1 1 100%;order:4}.trainerNewCard-drill.trainerNewCard--hero .trainerNewCardPuzzleRow{margin-top:6px!important}.trainerSessionLayout .trainerFeedback.correct{border-left:3px solid var(--good)}.trainerSessionLayout .trainerFeedback.incorrect{border-left:3px solid var(--yellow)}.trainerPreBoardSlot>.trainerFeedback.incorrect .trainerFeedback-move{font-size:17px!important;font-weight:800!important}.trainerPreBoardSlot>.trainerFeedback.incorrect .wrongMoveAnalysis p{font-size:12px!important}.trainerPreBoardSlot>.trainerFeedback.incorrect{padding:4px 12px!important;border-radius:var(--r-md)!important;border:1px solid var(--border)!important}.trainerSessionLayout .trainerSessionBreakdown{display:none!important}}@media (min-width: 1001px){.trainerSessionLayout{--trainer-bottom-panel-h: 0px}.trainerSessionLayout .boardCard svg{max-width:min(100%,max(280px,calc(100dvh - var(--app-top-chrome-h, 96px) - 110px - var(--trainer-bottom-panel-h, 0px))));max-height:max(280px,calc(100dvh - var(--app-top-chrome-h, 96px) - 110px - var(--trainer-bottom-panel-h, 0px)));transition:max-width .24s var(--ease),max-height .24s var(--ease);margin:0 auto;display:block}.trainerSessionLayout .boardCard>.trainerQuestionCard{animation:trainerQuestionCardIn .22s var(--ease) both}}@keyframes trainerQuestionCardIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1000px){.trainerQuestionCard{max-height:42dvh!important}.trainerQuestionOptions{gap:6px}.trainerQuestionOptBtn{padding:8px 14px;font-size:14px;gap:10px}.trainerQuestionOptLetter{width:22px;height:22px;font-size:12px}}@media (max-width: 1000px) and (max-height: 720px){.trainerQuestionCard,.trainerNewCard-drill{max-height:35dvh!important}}@media (max-width: 1000px){.trainerQuestionQuizCard{padding:10px 14px!important;max-width:92%!important;border-radius:var(--r-md)!important}.trainerQuestionCard{margin:0!important;padding:10px 14px!important;max-width:100%!important;box-shadow:none!important}.trainerQuestionQuizCard .trainerQuestionPrompt,.trainerQuestionCard .trainerQuestionPrompt{font-size:12px!important;line-height:1.3!important;margin-bottom:6px!important}.trainerQuestionQuizCard button.btn,.trainerQuestionCard button.btn{font-size:12px!important;padding:6px 14px!important;min-width:0!important}.trainerQuestionQuizCard .btn-primary.trainerContinueCta,.trainerQuestionCard .btn-primary.trainerContinueCta{font-size:10.5px!important;padding:4px 10px!important;margin-top:6px!important}.trainerQuestionQuizCard .trainerQuestionResult,.trainerQuestionCard .trainerQuestionResult{font-size:13px!important;margin-bottom:2px!important}.trainerQuestionQuizCard .trainerQuestionExplanation,.trainerQuestionCard .trainerQuestionExplanation{font-size:12.5px!important;margin-top:2px!important;line-height:1.35!important}}[data-mode=dark] .trainerQuestionQuizOverlay{background:#0f172a8c!important;backdrop-filter:blur(14px) saturate(1.2)!important;-webkit-backdrop-filter:blur(14px) saturate(1.2)!important}[data-mode=dark] .trainerQuestionQuizCard,[data-mode=dark] .trainerQuestionCard{background:#1e2946eb!important;border-color:#f3b94c59!important;box-shadow:0 10px 36px #020617a6,0 0 0 1px #f3b94c1f inset!important}@media (min-width: 601px) and (max-width: 1000px){.trainerQuestionCard,.trainerNewCard-drill,.trainerSessionLayout .trainerFeedback,.trainerAnnotationCard{max-width:min(640px,92%);margin-left:auto!important;margin-right:auto!important}}.trainerPreBoardSlot{display:flex;flex-direction:column;gap:6px;margin:0 0 6px;grid-column:1 / -1}.trainerPreBoardSlot:empty{display:none}@media (max-width: 1000px){.trainerPreBoardSlot{min-height:var(--trainer-preboard-min-h, 0px);margin:0;transition:min-height 225ms var(--ease)}.trainerPreBoardSlot:empty{display:flex}}.trainerMissedCtxPreBoard{padding:8px 12px!important}.trainerProgressRow{display:flex;align-items:center;gap:12px;margin-top:12px}.trainerProgressText{font-size:13px;font-weight:800;color:var(--muted);white-space:nowrap}.trainerProgressRow .progressBar{height:10px;border-radius:999px;width:auto}.trainerProgressRow .progressFill{background:linear-gradient(90deg,var(--accent),var(--good));border-radius:999px;transition:width .4s var(--ease);box-shadow:0 0 8px #34d97a33}.streakBar{display:flex;align-items:center;justify-content:center;gap:5px;padding:0;margin-top:0;line-height:1;font-size:10.5px;font-weight:700;border-radius:var(--r-sm);transition:all .3s var(--ease);animation:streakPulse 2s ease-in-out infinite}.streakBar.tier0{color:#f0a040;background:#f0a04014}.streakBar.tier1{color:#f08030;background:#f080301a}.streakBar.tier2{color:#f06020;background:#f060201f;box-shadow:0 0 8px #f0602026}.streakBar.tier3{color:#e84020;background:#e8402024;box-shadow:0 0 12px #e8402033}.streakBar.tier4{color:#e02010;background:#e0201029;box-shadow:0 0 16px #e0201040;animation-duration:1.2s}.streakBar.tier5{color:#ff3010;background:#ff30102e;box-shadow:0 0 24px #ff30104d;animation-duration:1s}.streakBar.tier6{color:#ff2800;background:#ff280033;box-shadow:0 0 32px #ff280059;animation-duration:.8s}.streakBar.tier7{color:#ff1000;background:#ff100038;box-shadow:0 0 40px #ff100066;animation-duration:.7s}.streakFire{font-size:12px;line-height:1}.streakCount{letter-spacing:.03em}.streakFlash{font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:10px;animation:streakFlashIn .4s var(--ease)}.streakBar.milestone{animation:streakMilestone .5s var(--ease)}.trainerGoalGradientCue{position:absolute;top:14px;left:50%;transform:translate(-50%);z-index:11;padding:7px 16px;background:color-mix(in oklch,var(--accent) 92%,transparent);color:#fff;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.02em;box-shadow:0 4px 16px color-mix(in oklch,var(--accent) 35%,transparent);pointer-events:none;animation:goalGradientFade 2.2s var(--ease) forwards}@keyframes goalGradientFade{0%{opacity:0;transform:translate(-50%,-8px)}12%{opacity:1;transform:translate(-50%)}82%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-4px)}}.trainerBounceBackCue{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:11;padding:12px 22px;background:color-mix(in oklch,var(--accent2) 94%,transparent);color:#fff;border-radius:var(--r-md);font-size:14px;font-weight:600;letter-spacing:.01em;text-align:center;max-width:78%;line-height:1.35;pointer-events:none;box-shadow:0 8px 32px #0000004d;animation:bounceBackFade 2.8s var(--ease) forwards}@keyframes bounceBackFade{0%{opacity:0;transform:translate(-50%,-42%)}10%{opacity:1;transform:translate(-50%,-50%)}85%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-52%)}}@keyframes tacticTransitionPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}30%{transform:translate(-50%,-50%) scale(1)}78%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(.96)}}.boardCard-transitioning:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:transparent;z-index:5;opacity:0;animation:boardEdgeGlow 1.2s var(--ease) forwards}@keyframes boardEdgeGlow{0%{opacity:0}25%{opacity:1}65%{opacity:1}to{opacity:0}}.modeChipMorphWrap{display:inline-flex;animation:modeChipMorphIn .38s var(--ease) both;will-change:transform,opacity}@keyframes modeChipMorphIn{0%{opacity:0;transform:scale(.92) translateY(-2px)}55%{opacity:1;transform:scale(1.06) translateY(0)}to{opacity:1;transform:scale(1) translateY(0)}}@media (prefers-reduced-motion: reduce){.boardCard-transitioning:before,.modeChipMorphWrap{animation:none}}.trainerCuriosityCue{display:inline-flex;align-self:center;align-items:center;gap:8px;max-width:88%;margin:6px auto 8px;padding:7px 12px 7px 10px;border-radius:999px;background:#0f172ac7;color:#f1f5f9;font-size:12px;line-height:1.3;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(148,163,184,.22);box-shadow:0 4px 16px #00000040;animation:trainerCuriosityIn .4s var(--ease-out)}.trainerCuriosityIcon{font-size:14px;line-height:1;flex-shrink:0;filter:drop-shadow(0 0 6px color-mix(in oklch,var(--accent2) 50%,transparent))}.trainerCuriosityText{display:flex;flex-direction:column;gap:1px;min-width:0}.trainerCuriosityFact{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trainerCuriositySub{font-size:11px;color:#f1f5f9b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes trainerCuriosityIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}[data-mode=dark] .trainerCuriosityCue{background:#f3b94c1a;border-color:#f3b94c4d;color:var(--text)}[data-mode=dark] .trainerCuriositySub{color:var(--muted)}@media (max-width: 1000px){.trainerCuriosityCue{position:static;transform:none;margin:8px auto 4px;max-width:100%;font-size:11px;padding:6px 10px 6px 8px;animation:trainerCuriosityInMobile .4s var(--ease-out)}.trainerCuriosityFact,.trainerCuriositySub{white-space:normal;overflow:visible;text-overflow:unset}}@keyframes trainerCuriosityInMobile{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.trainerMilestoneCue{position:absolute;top:8px;left:50%;transform:translate(-50%);z-index:12;display:flex;align-items:center;gap:10px;max-width:92%;padding:10px 16px 10px 14px;border-radius:14px;color:#fff;font-size:13px;line-height:1.25;pointer-events:none;text-align:left;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform-origin:top center}.trainerMilestoneIcon{font-size:22px;line-height:1;flex-shrink:0}.trainerMilestoneText{display:flex;flex-direction:column;gap:2px;min-width:0}.trainerMilestoneTitle{font-weight:800;font-size:14px;letter-spacing:.3px}.trainerMilestoneSub{font-size:11px;opacity:.88}@keyframes trainerMilestoneSolidGlow{0%{box-shadow:0 8px 28px color-mix(in oklch,var(--accent) 45%,transparent),0 0 color-mix(in oklch,var(--accent) 55%,transparent)}60%{box-shadow:0 8px 28px color-mix(in oklch,var(--accent) 45%,transparent),0 0 0 22px color-mix(in oklch,var(--accent) 0%,transparent)}to{box-shadow:0 8px 28px color-mix(in oklch,var(--accent) 45%,transparent),0 0 color-mix(in oklch,var(--accent) 0%,transparent)}}.trainerMilestoneCue-strong .trainerMilestoneIcon{filter:drop-shadow(0 0 10px rgba(255,220,130,.85))}@keyframes trainerMilestoneStrongPulse{0%{transform:translate(-50%) scale(1);box-shadow:0 10px 32px #f59e0b8c,0 0 #f59e0b8c}35%{transform:translate(-50%) scale(1.07);box-shadow:0 14px 36px #f59e0b8c,0 0 0 28px #f59e0b00}to{transform:translate(-50%) scale(1);box-shadow:0 10px 32px #f59e0b8c,0 0 #f59e0b00}}.trainerMilestoneCue-deep .trainerMilestoneIcon{font-size:26px;filter:drop-shadow(0 0 14px rgba(255,200,255,.95));animation:trainerMilestoneCrownSpin 2.4s ease-in-out .2s}.trainerMilestoneCue-deep .trainerMilestoneTitle{font-size:15px;text-shadow:0 0 18px rgba(255,255,255,.4)}@keyframes trainerMilestoneDeepBurst{0%{transform:translate(-50%) scale(1);box-shadow:0 16px 48px #a855f7a6,0 0 #ec4899b3}25%{transform:translate(-50%) scale(1.12);box-shadow:0 18px 52px #a855f7a6,0 0 0 18px #ec489966}55%{transform:translate(-50%) scale(1.04);box-shadow:0 18px 52px #a855f7a6,0 0 0 36px #ec489900}to{transform:translate(-50%) scale(1);box-shadow:0 16px 48px #a855f7a6,0 0 #ec489900}}@keyframes trainerMilestoneCrownSpin{0%{transform:rotate(-12deg) scale(1)}35%{transform:rotate(8deg) scale(1.18)}70%{transform:rotate(-3deg) scale(1.05)}to{transform:rotate(0) scale(1)}}@keyframes trainerMilestoneIn{0%{opacity:0;transform:translate(-50%) translateY(-12px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes trainerMilestoneOut{0%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-6px) scale(.96)}}.sessionMilestonesSection{margin:16px 0 18px;display:flex;flex-direction:column;gap:10px}.sessionMilestonesHead{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.sessionMilestonesTitle{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em}.sessionMilestonesSub{font-size:12px;color:var(--muted)}.sessionMilestoneTileGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:10px}.sessionMilestoneTile{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--card2);border:2px solid transparent;border-radius:var(--r-md);padding:8px 8px 6px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:transform .16s var(--ease),box-shadow .16s var(--ease),border-color .16s var(--ease)}.sessionMilestoneTile:hover{transform:translateY(-2px)}.sessionMilestoneTile:active{transform:translateY(0) scale(.98)}.sessionMilestoneTileBoard{border-radius:6px;overflow:hidden;box-shadow:0 1px 4px #0000001a;line-height:0}.sessionMilestoneTileLabel{font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.sessionMilestoneTile-solid .sessionMilestoneTileLabel{color:var(--accent)}.sessionMilestoneTile-strong .sessionMilestoneTileLabel{color:#c97f06}.sessionMilestoneTile-deep .sessionMilestoneTileLabel{color:#a855f7}.sessionMilestoneModal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#080e208c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;animation:sessionMilestoneFadeIn .18s var(--ease-out)}@keyframes sessionMilestoneFadeIn{0%{opacity:0}to{opacity:1}}.sessionMilestoneModalCard{background:var(--card2);border-radius:var(--r-lg);padding:18px 18px 16px;border-width:3px;border-style:solid;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:min(420px,100%);box-shadow:0 24px 60px #0000004d;animation:sessionMilestoneScaleIn .22s var(--ease-out)}@keyframes sessionMilestoneScaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.sessionMilestoneModalHead{text-align:center;display:flex;flex-direction:column;gap:2px}.sessionMilestoneModalTitle{font-size:18px;font-weight:800;color:var(--text);letter-spacing:-.01em}.sessionMilestoneModalSub{font-size:13px;color:var(--muted)}.sessionMilestoneModalBoard{border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px #141e4173,0 0 0 3px #141e411a,0 8px 24px #141e4140;line-height:0}[data-mode=dark] .sessionMilestoneModalBoard{box-shadow:0 0 0 1px #0000008c,0 0 0 3px #ffffff24,0 8px 28px #0000008c}.sessionMilestoneModalMeta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 10px;font-size:13px;color:var(--muted)}.sessionMilestoneModalRep{font-weight:600;color:var(--text)}.sessionMilestoneModalMove{font-family:var(--mono, ui-monospace, "SF Mono", Menlo, Consolas, monospace);font-weight:700;color:var(--accent);background:color-mix(in oklch,var(--accent) 10%,transparent);padding:2px 8px;border-radius:999px}.sessionMilestoneModalClose{align-self:stretch;margin-top:4px}@media (max-width: 480px){.sessionMilestoneModalCard{padding:14px 14px 12px;gap:10px}.sessionMilestoneModalTitle{font-size:17px}.sessionMilestoneModalSub{font-size:12px}}@keyframes streakPulse{0%,to{opacity:1}50%{opacity:.85}}@keyframes deltaBadgePulse{0%{transform:translateY(0) scale(1);box-shadow:0 0 #34d97a8c}50%{transform:translateY(0) scale(1.15);box-shadow:0 0 0 10px #34d97a00}to{transform:translateY(0) scale(1);box-shadow:0 0 #34d97a00}}@keyframes streakDigitPulse{0%{transform:scale(1);filter:brightness(1)}35%{transform:scale(1.22);filter:brightness(1.5) drop-shadow(0 0 10px currentColor)}to{transform:scale(1);filter:brightness(1)}}.sessionDeltaShimmer{position:absolute;top:0;bottom:0;left:-40%;width:40%;background:linear-gradient(90deg,#fff0,#fff9,#fff0);animation:sessionDeltaShimmerSweep 1.4s var(--ease-out) 1.1s 1 forwards;pointer-events:none}@keyframes sessionDeltaShimmerSweep{0%{transform:translate(0);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translate(350%);opacity:0}}@keyframes streakFlashIn{0%{opacity:0;transform:scale(.8) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes streakMilestone{0%{transform:scale(1);filter:brightness(1)}20%{transform:scale(1.08);filter:brightness(1.15)}40%{transform:scale(1.04);filter:brightness(1.1)}60%{transform:scale(1.06);filter:brightness(1.05)}to{transform:scale(1);filter:brightness(1)}}.trainerSidePanel{display:grid;gap:12px}.trainerFeedback{border-left:4px solid;animation:trainerFeedbackIn .25s var(--ease)}@keyframes trainerFeedbackIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.trainerFeedback.correct{border-left-color:var(--good);background:#2cff7a14}.trainerFeedback.incorrect{border-left-color:var(--yellow);background:#f0c06012}.trainerFeedback.incorrect.exploring{border-left-color:var(--accent);background:color-mix(in oklch,var(--accent) 8%,transparent)}.wrongMoveAnalysis{border-top:1px solid rgba(50,35,15,.07);padding-top:8px;margin-top:8px}.trainerNewCard{border-left:4px solid var(--accent);background:#2f6bff14;animation:trainerFeedbackIn .25s var(--ease)}.trainerNewCard .card-title h2{color:var(--text)}.trainerNewCard.trainerNewCard--empty{padding:0!important;margin:0!important;border:0!important;border-left:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;min-height:0!important;max-height:0!important;height:0!important;overflow:hidden!important;transition:none!important}.trainerNewMoveText strong{font-size:20px;color:#27ae60;display:inline-block}.toggle-switch{position:relative;display:inline-block;width:48px;height:26px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#32230f26;transition:.2s;border-radius:26px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:#fff;transition:.2s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(22px)}.toggle-switch.toggle-sm{width:34px;height:20px}.toggle-switch.toggle-sm .toggle-slider{border-radius:20px}.toggle-switch.toggle-sm .toggle-slider:before{height:14px;width:14px;left:3px;bottom:3px}.toggle-switch.toggle-sm input:checked+.toggle-slider:before{transform:translate(14px)}[data-mode=dark] .toggle-slider{background-color:#ffffff24}.failNavRow{display:flex;flex-direction:column;gap:0;padding:6px 0 0}.failNavPrimary{display:flex;align-items:center;gap:4px;width:100%}.failNavSep{width:1px;height:18px;background:var(--border);margin:0 2px;flex-shrink:0}.failNavSecondary{display:flex;align-items:center;gap:6px;width:100%;padding:4px 0 2px;font-size:12px;color:var(--muted)}.failNavToggle{display:none!important}.mobileReviewTabs{display:none}.failNavRow .btn-icon,.failNavPrimary .btn-icon{width:32px;min-width:32px;padding:6px 0}.failNavPosJump{font-size:17px;opacity:.55}.failNavPosJump:hover:not(:disabled){opacity:1}.reviewProgressBar{width:100%;height:18px;background:#3c281414;border-radius:9px;margin:6px 0 4px;position:relative;overflow:hidden}.reviewProgressFill{height:100%;background:linear-gradient(90deg,var(--accent),var(--good));border-radius:9px;transition:width .4s var(--ease);box-shadow:0 0 6px #34d97a26;min-width:2px;position:absolute;top:0;left:0}.reviewProgressText{position:relative;z-index:1;width:100%;text-align:center;font-size:11px;font-weight:600;color:var(--text);line-height:18px;display:block}.reviewSessionStats{font-size:12px;color:var(--muted);text-align:center;padding:2px 0 4px}.review-setup-pill .pill-count{font-size:11px;font-weight:700;background:#1e3c8214;color:var(--muted);border-radius:99px;padding:1px 7px;min-width:20px;text-align:center;transition:all .2s var(--ease)}.review-setup-pill.active .pill-count{background:color-mix(in oklch,var(--accent) 15%,transparent);color:var(--accent)}.review-setup-pill.active{box-shadow:0 2px 8px color-mix(in oklch,var(--accent) 20%,transparent)}.review-toggle input{display:none}.review-toggle input:checked+.review-toggle-track{background:var(--accent)}.review-toggle input:checked+.review-toggle-track:after{transform:translate(16px)}.review-advanced-toggle .chevron{font-size:10px;transition:transform .2s var(--ease)}.review-advanced-toggle .chevron.open{transform:rotate(90deg)}.review-filter-bar{border-bottom:1px solid var(--border);margin:-16px -20px 8px;padding:10px 20px}.review-filter-bar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.review-filter-bar-cats{display:flex;gap:6px;flex-wrap:wrap;flex:1;min-width:0}.review-filter-tab{background:none;border:1px solid transparent;border-bottom:2.5px solid transparent;border-radius:var(--r-sm) var(--r-sm) 0 0;padding:6px 12px;font-size:13px;font-weight:550;color:var(--text);opacity:.55;cursor:pointer;white-space:nowrap;transition:opacity .15s var(--ease),background .15s var(--ease),border-color .15s var(--ease)}.review-filter-tab:hover{opacity:.85;background:#00000008}.review-filter-tab.active{opacity:1;font-weight:650;border-bottom-color:var(--accent)}.review-filter-tab[data-cat=mistakes].active{border-bottom-color:#de4e4b}.review-filter-tab[data-cat=goodmoves].active{border-bottom-color:#4ca563}.review-filter-select{font-size:12px!important;padding:4px 8px!important;border-radius:var(--r-sm)!important;min-width:0!important;width:auto!important;max-width:140px}.review-info-popover{position:fixed;top:70px;right:16px;z-index:9000;width:280px;white-space:normal;font-size:12px;font-weight:400;line-height:1.5;color:var(--text);padding:14px 16px;background:var(--card2);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:0 8px 28px #00000026}.review-info-popover ul,.review-info-popover p{font-size:11px}.review-info-close{position:absolute;top:6px;right:8px;background:none;border:none;font-size:16px;color:var(--muted);cursor:pointer;padding:0 4px;line-height:1}.review-filter-seg-btn.active{background:color-mix(in oklch,var(--accent) 12%,transparent);color:var(--accent);font-weight:650}.review-filter-pill.active{background:color-mix(in oklch,var(--accent) 12%,transparent);color:var(--accent);border-color:var(--accent)}.review-loading-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:64px;padding:12px 0;gap:6px}.review-load-bar-track{width:220px;height:6px;border-radius:3px;background:var(--border);overflow:hidden}.review-load-bar-fill{height:100%;border-radius:3px;background:var(--accent);transition:width .5s var(--ease)}.review-load-bar-fill.done{transition:width .2s var(--ease)}.review-context-bar{padding:8px 12px;border-radius:var(--r-sm);background:var(--card);border:1px solid var(--border);cursor:pointer;transition:background .15s var(--ease)}.review-context-bar:hover{background:var(--card2)}.review-context-bar-summary{display:flex;align-items:center;gap:8px;font-size:12px;min-height:22px;flex-wrap:wrap}.review-context-badge{flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:700;border-radius:8px;letter-spacing:.3px;text-transform:uppercase}.review-context-badge-theory{background:color-mix(in oklch,var(--accent) 12%,transparent);color:var(--accent)}.review-context-badge-mistake{background:#ff6b6b1f;color:var(--bad)}.review-context-badge-tactic{background:#f0c06026;color:var(--yellow)}.review-context-badge-endgame{background:#34d97a1f;color:var(--good)}.review-context-badge-games{background:color-mix(in oklch,var(--accent) 8%,transparent);color:var(--accent)}.review-context-opponent{font-weight:600;white-space:nowrap}.review-context-opening{color:var(--muted);word-break:break-word}.review-context-result{width:8px;height:8px;border-radius:50%;flex-shrink:0}.review-context-chevron{font-size:9px;color:var(--muted);margin-left:auto;flex-shrink:0}.review-context-details{margin-top:10px;padding-top:8px;border-top:1px solid var(--border);font-size:13px}.review-context-details .btn{font-size:12px}.reviewFocusBtn.active{background:var(--accent);color:#fff}.reviewFocusHidden{display:none!important}.boardSplit:has(.reviewFocusHidden){grid-template-columns:1fr!important}.reviewYouPlayed{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 8px;margin-bottom:6px;background:#5082dc14;border-radius:var(--r-sm);border-left:3px solid rgba(80,130,220,.5)}.reviewYouPlayedMove{color:#5082dcf2;font-weight:700;font-size:14px}.reviewYouPlayedCorrect{color:var(--good);font-size:12px;font-weight:600}.reviewYouPlayedBest{font-size:13px;color:var(--muted)}.reviewWrongFlash,.reviewCorrectFlash{position:absolute;top:10px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 11px;border-radius:999px;font-size:13.5px;font-weight:600;letter-spacing:.01em;color:#fff;white-space:nowrap;z-index:10;pointer-events:none;box-shadow:0 4px 14px #141e3c2e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.reviewCorrectFlash{background:#2eaa5af0;animation:flashToast 1.4s cubic-bezier(.2,.7,.2,1) forwards}.reviewWrongFlash .flashIcon,.reviewCorrectFlash .flashIcon{width:16px;height:16px;stroke:#fff;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}@keyframes flashToast{0%{opacity:0;transform:translate(-50%,-8px)}12%{opacity:1;transform:translate(-50%)}75%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-4px)}}@keyframes correctFlashAnim{0%{background:#28b45a26}30%{background:#28b45a0f}to{background:transparent}}@keyframes correctFlashPop{0%{opacity:1;transform:scale(.92)}10%{opacity:1;transform:scale(1)}60%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1) translateY(-8px)}}@keyframes flashIconPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes trainerFlashCorrect{0%{background:#28b45a1f}25%{background:#28b45a0f}to{background:transparent;opacity:0}}@keyframes trainerFlashWrong{0%{background:#dc323226}25%{background:#dc32320f}to{background:transparent;opacity:0}}.engineCandRow{display:flex;align-items:center;gap:6px;font-size:13px;position:relative}.engineCandEval{font-weight:700;font-family:monospace;min-width:42px;font-size:12px}.engineCandMove{font-weight:400;color:var(--muted);min-width:36px}.engineCandMove.engineCandBest{font-weight:700;color:var(--text)}.engineCandLabel{font-size:10px;margin-left:2px}.engineCandLabelBest{color:#00c85099}.engineCandBar{flex:1;height:4px;background:#3c28140f;border-radius:2px;overflow:hidden;min-width:30px}.engineCandBarFill{height:100%;border-radius:2px;transition:width .2s var(--ease)}.engineCandPlayed{margin-top:4px;padding-top:6px;border-top:1px solid rgba(50,35,15,.1)}.stockfish-panel-label{font-size:11px;font-weight:600;color:var(--muted);margin-left:4px}.failCounter{display:flex;flex:1;flex-direction:column;align-items:center;gap:1px;font-size:13px;font-weight:600;color:var(--text);min-width:0;text-align:center;overflow:hidden}.failGameInfo{font-weight:500;font-size:11px;color:#141e4194;white-space:nowrap}.failGameInfo strong{font-weight:600;color:#141e41bf}.failTypeBadge{display:inline-block;margin-left:6px;padding:1px 7px;font-size:10px;font-weight:600;border-radius:8px;letter-spacing:.3px;vertical-align:middle}.failTypeBadge-tactic{background:color-mix(in oklch,var(--accent) 15%,transparent);color:var(--accent)}.failTypeBadge-mistake{background:#f0c06026;color:var(--yellow)}.failTypeBadge-perfect{background:#34d97a26;color:var(--good)}.newGamesBanner{display:flex;align-items:center;justify-content:center;padding:6px 12px;margin-bottom:8px;font-size:13px;font-weight:600;border-radius:var(--r-sm);background:color-mix(in oklch,var(--accent) 10%,transparent);color:var(--accent);border:1px solid color-mix(in oklch,var(--accent) 15%,transparent)}.review-scan-banner{display:flex;align-items:center;justify-content:center;gap:8px;padding:5px 12px;margin-bottom:6px;font-size:12px;color:var(--muted);background:var(--bg1);border-radius:var(--r-sm);border:1px solid var(--border)}.review-scan-banner-close{margin-left:auto;background:none;border:none;font-size:16px;color:var(--muted);cursor:pointer;padding:0 4px;line-height:1}.reviewGameChip.active{border-color:var(--accent);background:color-mix(in oklch,var(--accent) 10%,transparent);box-shadow:0 0 0 1px var(--accent)}.reviewGameChip.dimmed{opacity:.4}.btn-key-active{color:var(--accent);background:color-mix(in oklch,var(--accent) 12%,transparent);border-color:color-mix(in oklch,var(--accent) 30%,transparent)}.btn-study-active,.btn-start-active{color:var(--good);background:#34d97a1f;border-color:#34d97a4d}.masterFilterRow{display:flex;gap:8px;align-items:center;margin-top:4px}.masterFilterInput{width:140px;font-size:12px;padding:3px 8px}.masterFilterLabel{display:flex;align-items:center;gap:4px;font-size:12px;color:#141e4185}.masterFilterDropdown{position:absolute;top:100%;left:0;right:0;min-width:180px;background:var(--card2);border:1px solid var(--border);border-radius:var(--r-sm);max-height:180px;overflow-y:auto;z-index:50;margin-top:2px;box-shadow:0 4px 12px #00000014}.masterFilterDropdownItem{padding:6px 10px;font-size:12px;cursor:pointer;color:var(--text)}.masterFilterDropdownItem:hover{background:color-mix(in oklch,var(--accent) 8%,transparent)}.topGamesPanel{overflow-y:auto;max-height:260px;padding:2px 0}.topGamesSearchInput{width:100%;font-size:12px;padding:4px 8px;box-sizing:border-box}.topGamesSection{margin-bottom:2px}.topGamesSectionHeader{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);padding:6px 10px 3px}.topGamesItem{padding:5px 10px;cursor:pointer;border-bottom:1px solid var(--border);transition:background .15s var(--ease)}.topGamesItem:last-child{border-bottom:none}.topGamesItem:hover{background:color-mix(in oklch,var(--accent) 6%,transparent)}.topGamesItem--notable .topGamesItemNames{color:var(--accent)}.topGamesNotableDot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);margin-right:4px;vertical-align:middle}.topGamesItemNames{font-size:12px;font-weight:600;color:var(--text)}.topGamesItemMeta{font-size:11px;color:var(--muted);margin-top:1px}.topGamesShowMore{padding:6px 10px;font-size:11px;color:var(--accent);cursor:pointer;text-align:center}.topGamesShowMore:hover{background:color-mix(in oklch,var(--accent) 6%,transparent)}.topGamesActiveGame{display:flex;align-items:center;gap:8px;margin-top:4px;padding:4px 0;font-size:11px;color:var(--accent)}.topGamesActiveGameInfo{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.btn-icon{padding:6px 10px;font-size:14px;min-width:32px;display:flex;align-items:center;justify-content:center}.stockfish-panel{background:#32230f14;border:1px solid rgba(50,35,15,.08);border-radius:8px;padding:6px 10px;margin-bottom:6px;font-size:13px}.stockfish-panel-header{display:flex;align-items:center;gap:8px;min-height:24px}.stockfish-panel-toggle{display:flex;align-items:center;gap:4px;cursor:pointer;-webkit-user-select:none;user-select:none}.stockfish-panel-toggle input[type=checkbox]{display:none}.stockfish-panel-icon{font-size:18px;opacity:.5;transition:opacity .15s}.stockfish-panel-toggle input:checked+.stockfish-panel-icon{opacity:1;color:var(--accent, #7fc87f)}.stockfish-panel-score{font-weight:700;font-size:15px;min-width:48px;text-align:right;font-variant-numeric:tabular-nums}.stockfish-panel-evalbar{flex:1;height:6px;background:#32230f26;border-radius:3px;overflow:hidden;min-width:40px}.stockfish-panel-evalbar-white{height:100%;background:#e8e8e8;transition:width .3s ease;border-radius:3px}.stockfish-panel-depth{font-size:11px;opacity:.6;min-width:24px;text-align:right}.stockfish-panel-lines{margin-top:4px;display:flex;flex-direction:column;gap:2px;min-height:60px}.stockfish-pv-line{display:flex;align-items:baseline;gap:8px;font-size:12px;line-height:1.5}.stockfish-pv-score{font-weight:600;min-width:48px;text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0}.stockfish-pv-moves{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stockfish-pv-clickable{cursor:pointer;font-weight:600;color:var(--accent);border-radius:3px;padding:0 2px}.stockfish-pv-clickable:hover{background:color-mix(in oklch,var(--accent) 10%,transparent)}.database-panel{background:#32230f14;border:1px solid rgba(50,35,15,.08);border-radius:8px;padding:6px 10px;margin-bottom:6px;font-size:12px}.database-panel-header{display:flex;align-items:center;gap:8px;min-height:24px}.database-panel-total{font-size:12px}.database-panel-table{margin-top:4px;display:flex;flex-direction:column;gap:3px;min-height:105px}.database-panel-row{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.4}.database-panel-move{font-weight:600;min-width:36px;flex-shrink:0}.database-panel-games{min-width:40px;text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.database-panel-bar{min-width:80px;max-width:80px;height:14px;font-size:8px}.database-panel-score{min-width:28px;text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.moveList{background:#32230f0f;border:1px solid rgba(50,35,15,.07);border-radius:10px;padding:10px;overflow-y:auto}.moveList::-webkit-scrollbar-track{background:transparent}.moveList::-webkit-scrollbar-thumb{background:#32230f1f;border-radius:3px}.moveListGrid{display:grid;grid-template-columns:32px 1fr 1fr;gap:3px 6px;font-size:13px}.moveListNum{color:var(--muted2);text-align:right;padding-right:4px;font-size:12px;-webkit-user-select:none;user-select:none}.moveListCell{padding:3px 6px;border-radius:4px;cursor:pointer;transition:background .1s;-webkit-user-select:none;user-select:none}.moveListCell:hover{background:#32230f14}.moveListCell.active{background:var(--accent);color:#000;font-weight:600}.moveListCell.deviation{background:#ff6b6b40;color:var(--bad);font-weight:600}.moveListCell.deviation:after{content:"?"}.moveListCell.critical{background:color-mix(in oklch,var(--accent) 8%,transparent);font-weight:600}.moveListCell.critical:before{content:"★";font-size:8px;margin-right:2px;opacity:.5}.moveListCell.critical.active{background:var(--accent)}.moveListCell.card-marked{border-bottom:2px solid var(--accent)}.moveListCell.card-marked.active{border-bottom-color:#fff}.moveListCell.study-marked{background:#34d97a14;font-weight:600}.moveListCell.study-marked:before{content:"+";font-size:8px;margin-right:2px;opacity:.5;color:var(--good)}.moveListCell.study-marked.active{background:var(--accent)}.moveListEmpty{color:var(--muted2);font-size:12px;text-align:center;padding:16px}.movesCard{background:#32230f0f;border:1px solid rgba(50,35,15,.07);border-radius:12px;padding:8px;display:flex;flex-direction:column}.movesCard .moveList{background:transparent;border:none;padding:0;height:240px;min-height:240px;max-height:240px}.movesCard .moveListCell{padding:3px 8px;background:none;border:none;font-size:13px}.movesCard .moveListCell:hover{background:#32230f14;border:none}.movesCard .moveListGrid{gap:2px 6px}.movesCard .moveListNum{line-height:inherit;font-size:13px}.movesBottomNav{display:flex;align-items:center;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(50,35,15,.07)}.movesBottomNav .btn-icon{width:36px;height:36px;padding:0;font-size:16px;border-radius:10px;background:#32230f0f;border:1px solid rgba(50,35,15,.08);transition:all .15s ease;display:flex;align-items:center;justify-content:center}.movesBottomNav .btn-icon:hover:not(:disabled){background:#32230f1f;border-color:#32230f2e;transform:translateY(-1px)}.movesBottomNav .btn-icon:active:not(:disabled){transform:translateY(0)}.movesBottomNav .btn-icon:disabled{opacity:.35}.reviewAnnotationBar{padding:6px 8px 8px;display:flex;flex-direction:column;gap:5px;border-top:1px solid var(--border)}.reviewNagRow{display:flex;gap:3px}.reviewNagBtn{font-size:13px!important;font-weight:700!important;padding:2px 8px!important;min-width:30px;font-family:inherit}.reviewNagBtn.active{background:var(--accent)!important;color:#fff!important}.reviewAnnotationComment{font-size:12px;width:100%;resize:vertical;min-height:40px}.reviewArrowRow{display:flex;align-items:center;gap:3px}.reviewArrowBtn{padding:3px 6px!important;min-width:28px;color:var(--arrow-color, var(--muted))!important;border:1.5px solid transparent!important}.reviewArrowBtn.active{border-color:var(--arrow-color, var(--accent))!important;background:#0000000f!important}.moveList{background:#32230f14;border:1px solid rgba(50,35,15,.07);border-radius:12px;padding:12px;overflow-y:auto}.moveListGrid{display:grid;grid-template-columns:30px 1fr 1fr;gap:4px 8px;font-size:14px;font-weight:500}.moveListNum{color:var(--muted2);text-align:right;padding-right:6px;font-size:12px;font-weight:600;opacity:.7;-webkit-user-select:none;user-select:none;line-height:32px}.moveListCell{padding:6px 10px;border-radius:8px;cursor:pointer;transition:all .12s ease;-webkit-user-select:none;user-select:none;font-weight:600;letter-spacing:.01em;background:#32230f0a;border:1px solid transparent}.moveListCell:hover{background:#32230f0f;border-color:#32230f0f}.moveListCell.active{background:linear-gradient(135deg,#2f6bff66,#6b5cff4d);border-color:#5a8cff80;color:#fff;font-weight:700;box-shadow:0 2px 8px #2f6bff33}.moveListCell.theory{border-bottom:2px solid var(--good)}.moveListCell.theory-black{border-bottom:2px solid #b47aff}.moveListCell.user-game{border-bottom:2px solid var(--accent)}.moveListCell.deviation{background:#dc26261a;border-color:#dc262633;color:var(--bad);font-weight:700}.moveListCell.critical{background:color-mix(in oklch,var(--accent) 8%,transparent);border-color:color-mix(in oklch,var(--accent) 15%,transparent);font-weight:600}.moveListCell.critical.active{background:linear-gradient(135deg,#2f6bff66,#6b5cff4d);border-color:#5a8cff80}.moveListCell.study-marked{background:#34d97a14;border-color:#34d97a26;font-weight:600}.moveListCell.study-marked.active{background:linear-gradient(135deg,#2f6bff66,#6b5cff4d);border-color:#5a8cff80}.moveListCell.start-marker{border-left:3px solid var(--good)}.moveListEmpty{color:var(--muted2);font-size:13px;text-align:center;padding:24px 16px;font-style:italic}.mgv-container{display:flex;gap:20px;padding:12px;align-items:flex-start}.mgv-board-col{flex:0 0 auto;display:flex;flex-direction:column;gap:8px}.mgv-side-col{flex:1 1 300px;min-width:260px;display:flex;flex-direction:column;gap:8px;max-height:700px;overflow-y:auto;scrollbar-width:thin}.mgv-edit-panel{padding:10px 12px;background:var(--card2);border-radius:var(--r-sm);border:1px solid var(--border)}.mgv-edit-panel textarea,.mgv-edit-panel input{box-sizing:border-box}@media (max-width: 800px){.mgv-container{flex-wrap:wrap}.mgv-side-col{max-height:400px}}.mgv-header{display:flex;align-items:center;gap:10px;font-size:13px;flex-wrap:wrap}.mgv-header .player{font-weight:600}.mgv-header .vs{color:var(--muted)}.mgv-header .meta{color:var(--muted);font-size:12px}.mgv-nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.mgv-nav button{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:var(--r-sm);color:var(--text);padding:4px 10px;cursor:pointer;font-size:13px;transition:background .15s var(--ease)}.mgv-nav button:hover{background:#ffffff1a}.mgv-nav button:disabled{opacity:.35;cursor:default}.mgv-nav .sep{width:8px}.mgv-critical-toggle{font-size:13px;cursor:pointer;padding:4px 8px;border-radius:var(--r-sm);border:1px solid rgba(255,255,255,.08);background:#ffffff0d;transition:background .15s var(--ease)}.mgv-critical-toggle:hover{background:color-mix(in oklch,var(--accent) 12%,transparent)}.mgv-critical-toggle.is-critical{background:color-mix(in oklch,var(--accent) 15%,transparent);border-color:color-mix(in oklch,var(--accent) 30%,transparent)}.mgv-side-filter{display:inline-flex;border-radius:var(--r-sm);overflow:hidden;border:1px solid rgba(255,255,255,.08)}.mgv-side-filter button{font-size:12px;padding:3px 8px;border:none;background:#ffffff0a;color:var(--muted);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}.mgv-side-filter button+button{border-left:1px solid rgba(255,255,255,.06)}.mgv-side-filter button:hover{background:#ffffff14}.mgv-side-filter button.active{background:color-mix(in oklch,var(--accent) 15%,transparent);color:var(--accent);font-weight:600}.boardSplitRight .card{padding:16px!important;background:linear-gradient(180deg,#32230f12,#32230f0a);border:1px solid rgba(50,35,15,.08);border-left:3px solid transparent;border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.boardSplitRight .card:first-child{border-left-color:var(--accent)}.boardSplitRight .card>div:first-child{font-size:15px;font-weight:800;letter-spacing:-.01em}.boardSplitRight .card .small{font-size:13px;font-weight:600;line-height:1.5}.movesCard{background:#32230f0f;border:1px solid rgba(50,35,15,.07);border-radius:14px;padding:14px}.panelStack{display:flex;flex-direction:column;gap:12px}.panelStackTight{gap:6px;overflow:hidden;height:100%}@media (max-width: 1100px){.panelStackTight{overflow:visible;height:auto}}.panelStackTight>.card:not(.movesCard){min-height:48px;box-sizing:border-box}.panelStackTight .movesCard{margin-top:auto}.moveList::-webkit-scrollbar{width:6px}.moveList::-webkit-scrollbar-track{background:#32230f08;border-radius:3px}.moveList::-webkit-scrollbar-thumb{background:#32230f26;border-radius:3px}.moveList::-webkit-scrollbar-thumb:hover{background:#32230f38}.openingTable{width:100%;border-collapse:collapse;font-size:14px;font-weight:500;margin-bottom:2px}.openingTable td{padding:3px 8px;border-bottom:1px solid rgba(50,35,15,.05)}.openingTable-num{color:#50463273;width:28px;text-align:center;font-size:12px;-webkit-user-select:none;user-select:none}.openingTable-move{cursor:pointer;color:#282319e6;border-radius:3px;transition:background .1s;width:50%}.openingTable-move:hover{background:#32230f12}.openingTable-move.varMove-active{background:#3692e78c;color:#fff;font-weight:700}.figPiece{display:inline-block;width:1em;text-align:center;margin-left:-3.5px}.moveListInline{display:inline;line-height:1.55;font-size:15px;padding:4px 6px;word-wrap:break-word;overflow-wrap:break-word}.varMoveNum{color:#3c3c378c;font-size:inherit;font-weight:400;margin-right:0;-webkit-user-select:none;user-select:none;white-space:nowrap}.varMove{cursor:pointer;padding:1px 5px 1px 6px;margin:0 1px;border-radius:2px;color:#282319e6;font-weight:400;transition:background .1s;-webkit-user-select:none;user-select:none;white-space:nowrap}.varMove:hover{background:#32230f14}.varMove-active{background:#3692e7d9;color:#fff;font-weight:700;border-radius:2px}.varMove-active:hover{background:#3692e7f2}.varMove-theory,.openingTable td.varMove-theory{border-bottom:2px solid var(--good)}.varMove-theory-black,.openingTable td.varMove-theory-black{border-bottom:2px solid #b47aff}.varMove-user-game,.openingTable td.varMove-user-game{border-bottom:2px solid var(--accent)}.varMove-critical,.openingTable td.varMove-critical,.varMove-critical.varMove-active,.openingTable td.varMove-critical.varMove-active{border-bottom:2px solid #f5b731}.openingTable td.varMove-critical{background:color-mix(in oklch,var(--accent) 8%,transparent)}.varMove-start,.openingTable td.varMove-start{border-left:3px solid var(--good);padding-left:2px}.varKeyMove{color:#f5b731;font-size:9px;margin-left:1px;vertical-align:super}.varBracket{color:inherit;font-size:inherit;margin:0 1px;-webkit-user-select:none;user-select:none}.varInline{display:inline;font-style:italic;color:#3c3728b3;font-size:.85em}.varInline .varMoveNum{font-style:italic;color:#50463280}.varInline .varMove-side{font-style:italic;color:#3c3728b3}.varLine{display:block;position:relative;margin:1px 0 1px 6px;padding-left:10px;border-left:2px solid rgba(50,35,15,.1)}.varLine:before{content:"";position:absolute;left:0;top:10px;width:7px;height:0;border-top:2px solid rgba(50,35,15,.1)}.varLine-last{border-left-color:transparent}.varLine-last:after{content:"";position:absolute;left:-1px;top:0;width:0;height:10px;border-left:2px solid rgba(50,35,15,.1)}.varLine .varLine{font-size:.97em}.varLine .varLine .varLine{opacity:.9}.varLine-content{display:inline}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.boardSplitRight .card{animation:fadeIn .2s ease-out}.movesBottomNav>span[style*="width: 1px"]{width:1px!important;height:24px!important;background:#32230f0f!important;margin:0 8px!important;border-radius:1px}.repStatusCard,.card:has(.syncStatus){background:linear-gradient(135deg,#2f6bff14,#6b5cff0d);border:1px solid rgba(47,107,255,.2);border-radius:14px}.btn-primary{background:var(--accent);border:none;box-shadow:0 1px 2px #140f080a,0 4px 12px -4px color-mix(in oklch,var(--accent) 40%,transparent);transition:all .15s ease}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px color-mix(in oklch,var(--accent) 30%,transparent);filter:brightness(1.06)}.btn-primary:active:not(:disabled){transform:translateY(0)}.pill:hover:not(.active){color:var(--text)}.nav-more-dropdown button{padding:8px 14px;border-radius:var(--r-sm);font-size:13px;font-weight:600;color:var(--fg);background:transparent;border:none;cursor:pointer;text-align:left;transition:background .12s ease}.nav-more-dropdown button:hover{background:#32230f14}.nav-more-dropdown button.active{background:color-mix(in oklch,var(--accent) 15%,transparent);color:var(--accent)}.nav .nav-secondary{display:none}.nav .btn:has(.nav-secondary){display:none}.tab-accent-green .nav .pill.active,.tab-accent-green .nav .btn.pill.active,.tab-accent-green .nav .btn.pill.active:hover{background:none;border:none;border-bottom:2.5px solid #27ae60;color:var(--text);box-shadow:none}.tab-accent-green .nav .pill:hover:not(.active){background:none;color:var(--text)}.tab-accent-green .btn-primary{background:linear-gradient(135deg,#1a5c3ae6,#0e3c26cc);border:1px solid rgba(90,180,120,.4);color:#ffc25cf2;text-shadow:0 1px 0 rgba(90,60,0,.65),0 0 10px rgba(255,194,92,.2);box-shadow:0 6px 20px #1a5c3a40}.tab-accent-green .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1e6942f2,#12462cd9);border-color:#5ab4788c;box-shadow:0 10px 30px #1a5c3a59}.tab-accent-green .btn.active,.tab-accent-green .btn.active:hover{background:linear-gradient(135deg,#1a5c3a8c,#0e3c2673);border-color:#5ab47880;color:#ffc25cf2;box-shadow:0 0 8px #27ae6040}.tab-accent-green .shared-view-active,.tab-accent-green .shared-view-active:hover{background:linear-gradient(135deg,#1a5c3ae6,#0e3c26cc);color:#ffc25cf2}.tab-accent-green .drill-view-btn-active{background:linear-gradient(135deg,#1a5c3ae6,#0e3c26cc);border-color:#5ab47866;color:#ffc25cf2}.tab-accent-green .categorySelectorPill-active{background:linear-gradient(135deg,#1a5c3ae6,#0e3c26cc);border-color:#5ab47866;color:#ffc25cf2;box-shadow:0 2px 8px #27ae6040}.tab-accent-green .categorySelectorPill-active:hover:not(:disabled){background:linear-gradient(135deg,#1e6942f2,#12462cd9);border-color:#5ab4788c}.tab-accent-green .trainerStartBtn.btn-primary{background:linear-gradient(180deg,#1a5c3ab3,#0a281a8c);border:1px solid rgba(90,180,120,.35);color:#ffc25cf2;text-shadow:0 1px 0 rgba(90,60,0,.65),0 0 10px rgba(255,194,92,.2);box-shadow:0 0 0 1px #ffc25c1f inset,0 14px 40px #1a5c3a2e}.tab-accent-green .trainerStartBtn.btn-primary:hover{background:linear-gradient(180deg,#1e6942cc,#0e3220a6);border-color:#5ab47880}.tab-accent-green .trainerNewCard{border-left:4px solid rgba(90,180,120,.5);background:linear-gradient(90deg,rgba(26,92,58,.12),transparent 50%),linear-gradient(180deg,var(--card2),var(--card))}.tab-accent-green .trainerNewCard .card-title h2{color:#ffc25cf2}.tab-accent-green .trainerMovesCard{border-left:3px solid rgba(90,180,120,.5);background:linear-gradient(90deg,rgba(26,92,58,.08),transparent 40%),linear-gradient(180deg,var(--card2),var(--card))}.tab-accent-green .trainerMovesCard .card-title h2{color:#ffc25cf2}.tab-accent-green .trainerNewMoveText strong{color:#5ab478e6}.card{transition:border-color .2s var(--ease),box-shadow .2s var(--ease),transform .2s var(--ease)}.card:hover{border-color:#ffffffb3;box-shadow:0 4px 16px #14285014,0 12px 32px #1428500f;transform:translateY(-1px)}.btn:focus-visible,.pill:focus-visible,.input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.container>.card{animation:pageEnter .25s var(--ease-out) both}.empty-state{text-align:center;padding:48px 24px}.empty-state-icon{font-size:36px;margin-bottom:12px;opacity:.5}.empty-state-title{font-size:16px;font-weight:700;margin-bottom:6px}.empty-state-desc{font-size:13px;color:var(--muted);line-height:1.6;max-width:320px;margin:0 auto 20px}.input{padding:12px 14px;border-radius:10px;font-size:14px;transition:all .15s ease}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2f6bff26}@keyframes spin{to{transform:rotate(360deg)}}.progressBar{height:6px;border-radius:999px;background:#32230f14;overflow:hidden}.progressFill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:999px;transition:width .3s ease}.muted{color:var(--muted);font-weight:500}.container{animation:fadeIn .25s ease-out}.watchControlRow{display:flex;align-items:center;gap:8px;padding:8px 0}.watchProgress{font-size:13px;font-weight:700;color:var(--muted);min-width:80px;text-align:center}.watchSpeedSelect{width:auto;min-width:90px;padding:6px 10px;font-size:12px;margin-left:auto}.watchNoticeCard{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 15%,transparent),color-mix(in srgb,var(--accent2) 10%,transparent));border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.watchNoticeCard.watchEndOfLine{background:linear-gradient(135deg,color-mix(in srgb,var(--good) 20%,transparent),color-mix(in srgb,var(--good) 13%,transparent));border-color:color-mix(in srgb,var(--good) 40%,transparent)}.watchNoticeCard.watchChapterStart{background:linear-gradient(135deg,color-mix(in srgb,var(--yellow) 15%,transparent),color-mix(in srgb,var(--yellow) 10%,transparent));border-color:color-mix(in srgb,var(--yellow) 40%,transparent)}.watchNotice{font-size:15px;font-weight:800;color:var(--text);text-align:center;white-space:pre-wrap}.watchNag{color:var(--accent);font-weight:900;font-size:18px}.watchNagBadge{display:inline-block;font-size:24px;font-weight:900;padding:4px 12px;background:linear-gradient(135deg,#2f6bff33,#6b5cff26);border-radius:8px;color:var(--text)}.watchCommentCard{background:#32230f0a;border-left:3px solid rgba(120,120,120,.4)}.watchComment{font-size:14px;line-height:1.5;color:var(--text);white-space:pre-wrap;max-height:80px;overflow-y:auto}.watchBranchLabel{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:14px;font-weight:800;border-radius:50%;background:var(--accent);color:var(--bg);margin-right:8px}.watchBoardOverlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:100}.watchBoardOverlayText{padding:16px 32px;background:linear-gradient(135deg,#3c6450eb,#2d5541eb);border:3px solid rgba(220,180,80,.8);border-radius:12px;font-size:clamp(24px,4vw,42px);font-weight:800;color:#f0c040;text-shadow:2px 2px 4px rgba(0,0,0,.5);text-align:center;white-space:pre-wrap;max-width:90%;box-shadow:0 8px 32px #0006}.analysis-player-selector{display:flex;align-items:center;gap:6px;margin-bottom:12px;flex-wrap:wrap}.analysis-player-pill-wrap{display:inline-flex;align-items:center;gap:0}.analysis-player-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--muted);padding:5px 12px;font-size:12px;font-weight:600;cursor:pointer;border-radius:var(--r-sm);transition:background .15s ease,color .15s ease;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.analysis-player-pill:hover:not(.active){background:color-mix(in oklch,var(--accent) 5%,transparent);color:var(--text)}.analysis-player-pill.active{background:color-mix(in oklch,var(--accent) 10%,transparent);color:var(--accent);font-weight:700}.analysis-player-pill-wrap.active .analysis-player-pill{border-radius:var(--r-sm) 0 0 var(--r-sm)}.analysis-player-pill.add{color:var(--muted);font-weight:600}.analysis-player-pill.add:hover{color:var(--accent)}.analysis-player-badge{font-size:9px;font-weight:800;padding:1px 4px;border-radius:4px;line-height:1}.analysis-player-badge.chesscom{background:#7fa650;color:#fff}.analysis-player-badge.lichess{background:#b0b0b0;color:#222}.analysis-player-actions{display:inline-flex;align-items:stretch}.analysis-player-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-left:1px solid rgba(50,35,15,.12);background:color-mix(in oklch,var(--accent) 14%,transparent);color:var(--accent);padding:5px 7px;font-size:13px;cursor:pointer;transition:color .15s ease,background .15s ease;line-height:1}.analysis-player-action:hover{background:color-mix(in oklch,var(--accent) 22%,transparent);color:var(--accent)}.analysis-player-action:last-child{border-radius:0 16px 16px 0}.analysis-player-add-form{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.analysis-player-add-form input{padding:5px 10px;font-size:12px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);width:140px}.analysis-player-add-form select{padding:5px 8px;font-size:12px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer}.analysis-player-error{color:var(--danger);font-size:12px}.stats-tabs{display:flex;gap:0;margin-bottom:16px;flex-wrap:wrap}.analysis-tab-btn{background:none;border:none;border-bottom:2.5px solid transparent;border-radius:0;padding:7px 12px;font-size:13.5px;font-weight:550;color:var(--text);opacity:.55;cursor:pointer;white-space:nowrap;transition:opacity .15s var(--ease)}.analysis-tab-btn:hover{opacity:.8}.analysis-tab-btn.active{opacity:1;font-weight:650;border-bottom-color:var(--accent)}.stats-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:20px}.stats-summary-card{padding:16px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm)}.stats-summary-value{font-size:32px;font-weight:800;line-height:1.2}.stats-summary-label{font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:4px}.stats-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;min-width:0}.stats-opening-list{display:flex;flex-direction:column;gap:6px;max-height:420px;overflow-y:auto;min-width:0}.stats-opening-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--r-sm);background:#32230f08;min-width:0}.stats-opening-name{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.stats-opening-count{font-size:12px;color:var(--muted);white-space:nowrap}.wdl-bar{display:flex;height:16px;border-radius:3px;overflow:hidden;min-width:80px}.wdl-bar .win{background:var(--green)}.wdl-bar .draw{background:var(--yellow)}.wdl-bar .loss{background:var(--red)}.stats-pct-row{display:flex;gap:8px;font-size:11px;margin-top:2px}.win-pct{color:var(--green)}.draw-pct{color:var(--yellow)}.loss-pct{color:var(--red)}.stats-game-row{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:13px;border-bottom:1px solid var(--border)}.stats-game-row:last-child{border-bottom:none}.stats-result-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.stats-filter-row{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.stats-filter-row select,.stats-filter-row input{padding:6px 10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);font-size:13px}.stats-opponent-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--r-sm);background:#32230f08}.stats-opponent-name{font-weight:600;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-opponent-source{font-size:10px;padding:1px 5px;border-radius:3px;background:#32230f14;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.stats-behavior-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.stats-behavior-card{padding:20px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm)}.heatmap-scroll{--hm-cell: 12px;--hm-gap: 2px}@media (min-width: 1100px){.heatmap-scroll{--hm-cell: 18px;--hm-gap: 3px}}.stats-heatmap-legend{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--muted);margin-top:10px;flex-wrap:wrap}.stats-heatmap-legend .swatch{width:12px;height:12px;border-radius:2px;display:inline-block}.stats-rating-chart{overflow-x:auto;margin-bottom:16px}.stats-rating-chart svg{display:block}.stats-averages-table{width:100%;border-collapse:collapse;font-size:13px}.stats-averages-table th,.stats-averages-table td{padding:8px 12px;text-align:center;border-bottom:1px solid var(--border)}.stats-averages-table th{color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.stats-two-col>.card{min-width:0;overflow:hidden}@media (max-width: 850px){.stats-two-col,.stats-behavior-grid{grid-template-columns:1fr}.stats-summary-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}}.explorer-v2{display:grid;grid-template-columns:minmax(0,min(calc(100dvh - 260px),580px)) minmax(0,560px);gap:16px;align-items:start;justify-content:center}.explorer-v2-board{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}.explorer-v2-sidebar{display:flex;flex-direction:column;gap:12px;min-width:0}.explorer-v2-filters{background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);padding:8px 14px;display:flex;flex-wrap:wrap;gap:8px 14px;align-items:flex-end}.explorer-v2-filter-group{display:flex;flex-direction:column;gap:2px}.explorer-v2-filter-group>label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}.explorer-v2-filter-group .filter-btns{display:flex;flex-wrap:wrap;gap:4px}.explorer-v2-filter-group .filter-btns .btn{padding:3px 8px;font-size:11px;border-radius:6px;font-weight:600;border:none;background:none;color:var(--muted);box-shadow:none;transition:color .15s var(--ease),background .15s var(--ease)}.explorer-v2-filter-group .filter-btns .btn:hover:not(.btn-primary){background:color-mix(in oklch,var(--accent) 5%,transparent);color:var(--text);transform:none}.explorer-v2-filter-group .filter-btns .btn.btn-primary{background:color-mix(in oklch,var(--accent) 10%,transparent);color:var(--accent);font-weight:700;box-shadow:none;border:none}.explorer-v2-filter-group select{font-size:11px;padding:4px 6px;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;transition:border-color .15s ease}.explorer-v2-filter-group select:hover{border-color:#32230f2e}.explorer-v2-filter-group--players{flex-basis:100%}.explorer-moves-panel{min-width:0;background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:0;overflow:hidden}.explorer-moves-panel>.explorer-position-label{padding:8px 16px 6px;border-bottom:1px solid var(--border)}.explorer-position-label{font-size:11px;color:var(--muted2);font-weight:500}.explorer-position-label .depth-badge{display:inline-block;background:#2f6bff26;color:var(--primary);padding:1px 7px;border-radius:10px;font-size:10px;font-weight:700;margin-right:6px;letter-spacing:.3px}.explorer-position-label .your-turn{color:var(--good);font-weight:600}.explorer-position-label .opp-turn{color:var(--muted)}.explorer-move-table{width:100%;border-collapse:collapse;font-size:13px;border-radius:var(--r-md);overflow:hidden}.explorer-move-table thead th{text-align:left;padding:8px 10px 7px;font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;background:#ffffff04}.explorer-move-table thead th.right{text-align:right}.explorer-move-table thead th.center{text-align:center}.explorer-move-table tbody tr{cursor:pointer;border-bottom:1px solid rgba(50,35,15,.05);transition:background .1s ease}.explorer-move-table tbody tr:hover{background:#2f6bff0f}.explorer-move-table td{padding:7px 10px;vertical-align:middle}.explorer-move-table td.move-san{font-weight:700;font-size:14px;white-space:nowrap;color:var(--text)}.explorer-move-table td.move-san.move-color-theory{border-bottom:2px solid #27ae60}.explorer-move-table td.move-san.move-color-played{border-bottom:2px solid #5b9bd5}.explorer-move-table td.right{text-align:right}.explorer-move-table td.center{text-align:center}.explorer-move-table td.games-count{font-variant-numeric:tabular-nums;font-size:12px;color:var(--muted)}.explorer-move-table td.win-rate{font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.explorer-result-bar{display:flex;height:18px;border-radius:4px;overflow:hidden;background:#32230f0d;min-width:120px;position:relative;font-size:9px;font-weight:700}.explorer-result-bar>span{display:flex;align-items:center;justify-content:center;min-width:0;overflow:hidden;white-space:nowrap;line-height:1;transition:width .2s ease}.explorer-result-bar .seg-win{background:#27ae60;color:#fff}.explorer-result-bar .seg-draw{background:#636e72;color:#dfe6e9}.explorer-result-bar .seg-loss{background:#d63031;color:#fff}.explorer-result-bar .seg-white{background:#dfe6e9;color:#2d3436}.explorer-result-bar .seg-gray{background:#636e72;color:#dfe6e9}.explorer-result-bar .seg-black{background:#2d3436;color:#b2bec3}.explorer-board-controls{display:flex;gap:6px;align-items:center;width:100%;max-width:560px}.explorer-ctrl-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--card);color:var(--text);width:36px;height:36px;border-radius:var(--r-sm);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s var(--ease),border-color .12s var(--ease)}.explorer-ctrl-btn:hover:not(:disabled){background:color-mix(in oklch,var(--accent) 10%,transparent);border-color:var(--accent);color:var(--accent)}.explorer-ctrl-btn:disabled{opacity:.35;cursor:default}.explorer-ctrl-counter{font-size:12px;font-weight:600;color:var(--muted);min-width:50px;text-align:center}.explorer-breadcrumb{width:100%;font-size:12px;color:var(--muted);background:var(--card);border:1px solid var(--border);border-radius:var(--r-sm);padding:6px 10px;max-width:560px;display:flex;flex-wrap:wrap;gap:3px;min-height:28px;align-items:center}.explorer-breadcrumb .breadcrumb-empty{color:var(--muted2);font-style:italic;font-size:11px}.explorer-breadcrumb .breadcrumb-move{cursor:pointer;padding:2px 6px;border-radius:6px;font-weight:600;font-size:12px;transition:background .12s ease,color .12s ease;background:color-mix(in oklch,var(--accent) 6%,transparent)}.explorer-breadcrumb .breadcrumb-move:hover{background:color-mix(in oklch,var(--accent) 16%,transparent);color:var(--accent)}.explorer-coverage-bar{padding:6px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px;font-size:11px;font-weight:500}.explorer-coverage-bar .cov-text{white-space:nowrap;flex-shrink:0}.explorer-coverage-bar .cov-track{flex:1;height:4px;background:#32230f14;border-radius:2px;overflow:hidden}.explorer-coverage-bar .cov-fill{height:100%;border-radius:2px;transition:width .3s ease}.explorer-coverage-bar.cov-good{color:var(--good)}.explorer-coverage-bar.cov-good .cov-fill{background:var(--good)}.explorer-coverage-bar.cov-warn{color:var(--yellow)}.explorer-coverage-bar.cov-warn .cov-fill{background:var(--yellow)}.explorer-coverage-bar.cov-bad{color:var(--bad)}.explorer-coverage-bar.cov-bad .cov-fill{background:var(--bad)}.explorer-gap-badge{font-size:10px;margin-right:3px;vertical-align:middle;color:var(--bad);opacity:.7}.pop-pct{font-size:11px;color:var(--muted2)}.explorer-best-gap{border-left:3px solid var(--yellow)}.best-gap-tag{display:inline-block;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--yellow);background:#f0c0601f;padding:1px 5px;border-radius:4px;margin-left:6px;vertical-align:middle}.explorer-add-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1px solid color-mix(in oklch,var(--accent) 30%,transparent);background:color-mix(in oklch,var(--accent) 8%,transparent);color:var(--accent);border-radius:4px;font-size:13px;font-weight:700;cursor:pointer;margin-left:6px;padding:0;line-height:1;vertical-align:middle;transition:background .12s ease,border-color .12s ease}.explorer-add-btn:hover{background:color-mix(in oklch,var(--accent) 18%,transparent);border-color:var(--accent)}.explorer-rep-select{font-size:10px;padding:2px 6px;border:1px solid var(--border);border-radius:4px;background:var(--bg1);color:var(--text);margin-left:8px;cursor:pointer}.explorer-add-line-row{display:flex;align-items:center;gap:8px;margin-top:8px}.explorer-add-result{font-size:11px;font-weight:500}.explorer-add-result.ok{color:var(--good)}.explorer-add-result.err{color:var(--bad)}.explorer-add-result .btn-link{background:none;border:none;color:var(--accent);cursor:pointer;font-size:11px;text-decoration:underline;padding:0;margin-left:4px}.find-lines-panel{margin-top:8px}.find-lines-controls{display:flex;align-items:flex-end;gap:10px;margin-top:8px;flex-wrap:wrap}.find-lines-controls label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--muted);font-weight:500}.find-lines-controls input,.find-lines-controls select{padding:4px 6px;font-size:12px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm)}.find-lines-results{margin-top:10px;padding:10px 12px;background:#32230f0a;border:1px solid var(--border);border-radius:var(--r-sm)}.find-lines-nav{display:flex;align-items:center;gap:10px;margin-bottom:8px}.find-lines-counter{font-size:12px;font-weight:600;color:var(--muted);min-width:60px;text-align:center}.find-lines-info{display:flex;flex-direction:column;gap:4px}.find-lines-moves{font-size:13px;font-weight:500;line-height:1.6;color:var(--text)}.find-lines-move{white-space:nowrap}.find-lines-stats{display:flex;gap:12px;font-size:12px;align-items:center}.find-lines-winrate{font-weight:700;font-size:14px}.find-lines-wdl{color:var(--muted)}.find-lines-games{color:var(--muted2)}.explorer-summary{padding:12px 14px;background:var(--surface);border-radius:10px;border:1px solid var(--border)}.explorer-summary .summary-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:6px;font-weight:700}.explorer-summary .summary-value{font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}.explorer-summary .summary-value .summary-unit{font-size:12px;font-weight:500;color:var(--muted);margin-left:4px}.explorer-summary-stats{display:flex;gap:8px;margin-top:8px}.explorer-summary-stat{flex:1;text-align:center;padding:4px 0;border-radius:6px;font-size:11px;font-weight:700}.explorer-summary-stat.wins{background:#27ae601f;color:#27ae60}.explorer-summary-stat.draws{background:#636e7226;color:#b2bec3}.explorer-summary-stat.losses{background:#d630311f;color:#d63031}.explorer-source-pills{display:flex;flex-wrap:wrap;gap:4px}.explorer-src-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--muted);padding:5px 10px;font-size:12px;font-weight:600;border-radius:var(--r-sm);cursor:pointer;transition:color .15s var(--ease),background .15s var(--ease)}.explorer-src-pill.active{background:color-mix(in oklch,var(--accent) 10%,transparent);color:var(--accent);font-weight:700}.explorer-src-pill:hover:not(.active){background:color-mix(in oklch,var(--accent) 5%,transparent);color:var(--text)}.explorer-opening-name{font-size:13px;margin:0;padding:8px 16px;background:#2f6bff0d;border-bottom:1px solid var(--border)}.explorer-opening-name .eco{font-weight:700;color:var(--primary);margin-right:6px}.explorer-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 24px;text-align:center;gap:8px}.explorer-empty-state .empty-icon{font-size:28px;opacity:.4;margin-bottom:4px}.explorer-empty-state .empty-text{font-size:13px;color:var(--muted);font-weight:500}.explorer-empty-state .empty-hint{font-size:11px;color:var(--muted2);max-width:220px;line-height:1.5}.explorer-top-game{padding:7px 16px;border-radius:0;font-size:12px;transition:background .1s ease;border-bottom:1px solid rgba(50,35,15,.04)}.explorer-top-game.clickable{cursor:pointer}.explorer-top-game.clickable:hover{background:#2f6bff0f}.explorer-top-game.clickable.active{background:color-mix(in oklch,var(--accent) 10%,transparent);border-left:2px solid var(--accent)}.explorer-top-game:last-child{border-bottom:none}.explorer-game-event-tag{font-size:10px}.explorer-game-loading{font-size:11px;color:var(--accent);margin-left:4px}.explorer-notable-games{border-top:1px solid var(--border)}.explorer-notable-games h4{margin:0;padding:10px 16px 6px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:700}.explorer-game-viewer{width:100%;max-width:560px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden}.explorer-game-header{padding:8px 12px;font-size:12px;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:4px;align-items:center}.explorer-game-white{font-weight:700}.explorer-game-vs{color:var(--muted);font-size:11px}.explorer-game-black{font-weight:700}.explorer-game-event{font-size:10px;color:var(--muted2);margin-left:auto}.explorer-game-moves{padding:8px 12px;display:flex;flex-wrap:wrap;gap:2px;max-height:160px;overflow-y:auto;font-size:12px;line-height:1.6}.explorer-game-move{cursor:pointer;padding:1px 4px;border-radius:4px;transition:background .1s ease}.explorer-game-move:hover{background:color-mix(in oklch,var(--accent) 12%,transparent)}.explorer-game-move.active{background:color-mix(in oklch,var(--accent) 18%,transparent);color:var(--accent);font-weight:700}.explorer-player-search-wrap{position:relative;display:flex;align-items:center}.explorer-player-search-input{width:100%;padding:6px 28px 6px 10px;font-size:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);box-sizing:border-box;transition:border-color .15s ease}.explorer-player-search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in oklch,var(--accent) 12%,transparent)}.explorer-player-clear{position:absolute;right:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--muted);font-size:12px;cursor:pointer;padding:2px;line-height:1}.explorer-player-clear:hover{color:var(--bad)}.explorer-opponent-wrapper{position:relative}.explorer-opponent-input{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);box-sizing:border-box;transition:border-color .15s ease}.explorer-opponent-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #2f6bff1f}.explorer-opponent-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--card);border:1px solid var(--border);border-radius:8px;margin-top:4px;z-index:50;max-height:200px;overflow-y:auto;box-shadow:0 8px 24px #0006}.explorer-opponent-dropdown-item{padding:8px 12px;font-size:13px;cursor:pointer;transition:background .08s ease}.explorer-opponent-dropdown-item:hover{background:#2f6bff14}.explorer-opponent-selected{display:flex;align-items:center;gap:6px;padding:5px 10px;background:#2f6bff14;border:1px solid rgba(47,107,255,.2);border-radius:8px;font-size:13px;font-weight:600}.explorer-opponent-clear{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);font-size:16px;cursor:pointer;padding:0 2px;line-height:1;margin-left:auto;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:background .1s ease,color .1s ease}.explorer-opponent-clear:hover{color:var(--bad);background:#ff6b6b1a}.opp-chips{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.opp-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:12px;background:#2f6bff14;border:1px solid rgba(47,107,255,.25);border-radius:12px;color:var(--fg)}.opp-chip-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;padding:0 2px;line-height:1;border-radius:50%;transition:color .1s ease}.opp-chip-remove:hover{color:var(--bad)}.opp-chip--masters{border-color:#f0c06033;background:#f0c0600f}.opp-chip-badge{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--yellow);margin-right:3px}.opp-add-tabs{display:flex;gap:4px;margin-bottom:6px}.opp-add-tabs .btn{font-size:10px;padding:3px 8px}.opp-add-row{display:flex;gap:4px;margin-top:4px}.opp-add-row .explorer-opponent-input{flex:1;min-width:0}.opp-add-row .btn{padding:5px 10px;font-size:11px;white-space:nowrap}.opp-player-breakdown{margin-top:8px;display:flex;flex-direction:column;gap:2px}.opp-player-breakdown-row{display:flex;justify-content:space-between;font-size:11px;padding:2px 0}.opp-player-name{color:var(--fg);font-weight:500}.opp-player-count{color:var(--muted);font-variant-numeric:tabular-nums}.explorer-theory-badge{font-size:10px;margin-right:3px;vertical-align:middle;opacity:.8}.explorer-played-badge{font-size:10px;margin-right:3px;vertical-align:middle;opacity:.7}.explorer-theory-section{padding:10px 16px 14px;border-top:1px solid var(--border)}.explorer-theory-section h4{margin:0 0 8px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:700;display:flex;align-items:center;gap:5px}.explorer-theory-section h4:before{content:"";display:inline-block;width:3px;height:10px;background:#27ae60;border-radius:2px}.explorer-theory-moves{display:flex;flex-wrap:wrap;gap:6px}.explorer-theory-move{padding:5px 10px;background:#27ae601a;border:1px solid rgba(39,174,96,.2);border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease}.explorer-theory-move:hover{background:#27ae6033;border-color:#27ae6059}.explorer-theory-move.not-played{background:#ffa50014;border-color:#ffa50033;opacity:.85}.explorer-theory-move .not-played-label{font-weight:400;font-size:10px;color:var(--muted2);margin-left:2px}@media (max-width: 900px){.explorer-v2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.explorer-v2-board>div:first-child{width:min(100%,calc(100dvh - 300px))!important}}.rec-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.rec-header h2{margin:0;font-size:18px}.rec-toolbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:12px;padding:10px 12px;background:var(--card);border-radius:var(--r-sm);border:1px solid var(--border)}.rec-toolbar-item{display:flex;align-items:center;gap:8px}.rec-opening-name{font-size:13px;color:var(--muted);margin-bottom:10px;padding-left:2px}.rec-layout{display:grid;grid-template-columns:1fr 420px;gap:20px;align-items:start}.rec-moves-panel{min-width:0}.rec-line-display{margin-top:8px;padding:8px 10px;background:var(--card);border-radius:var(--r-sm);border:1px solid var(--border);font-size:13px;font-family:monospace;color:var(--muted);word-break:break-word}.rec-save-row{display:flex;gap:8px;margin-top:10px;align-items:center}@media (max-width: 900px){.rec-layout{grid-template-columns:1fr}.rec-layout .explorer-board-col{order:-1}}.gap-score-badge{display:inline-block;padding:2px 7px;border-radius:8px;font-size:12px;font-weight:600;color:#fff;min-width:28px;text-align:center}.gap-details{margin-top:10px;padding:10px 12px;background:var(--card);border-radius:var(--r-sm);border:1px solid var(--border)}.rec-mode-toggle{display:flex;gap:4px;margin-bottom:14px}.gen-panel{padding:4px 0}.gen-controls{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.gen-loading{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px;background:var(--card);border-radius:var(--r-sm);border:1px solid var(--border)}.gen-result{margin-top:16px;padding:14px;background:var(--card);border-radius:var(--r-sm);border:1px solid var(--border)}.gen-result-header{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.gen-scores{margin-bottom:14px}.gen-scores-title{font-size:12px;margin-bottom:6px}.gen-scores-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px}.gen-score-item{display:flex;align-items:center;gap:6px;font-size:13px}.gen-score-rating{min-width:32px;color:var(--muted);font-size:12px}.gen-score-bar-bg{flex:1;height:8px;background:var(--card2);border-radius:4px;overflow:hidden}.gen-score-bar-fill{height:100%;background:var(--accent);border-radius:4px;transition:width .3s ease}.gen-score-val{min-width:28px;text-align:right;font-weight:600;font-size:13px}.gen-save-area{display:flex;gap:8px;align-items:center}.repColorHeader{display:flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:4px 2px 6px}.repColorHeader-label{color:var(--text);opacity:.55}.repColorHeader-spacer{flex:1}.repColorHeader-rate{font-weight:600;text-transform:none;letter-spacing:0;font-size:11px;padding:1px 7px;border-radius:5px;background:#34d97a1a}.repColorHeader-devBtn{text-transform:none;letter-spacing:0;font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:5px;color:var(--yellow);background:#f0c0601a;border:1px solid transparent;cursor:pointer;transition:background .15s var(--ease)}.repColorHeader-devBtn:hover{background:#f0c0602e}.repRow-wrap{position:relative}.repRow-wrap .repQuickBar-hover{opacity:0;max-height:0;overflow:hidden;padding:0 6px;transition:opacity .15s ease,max-height .15s ease,padding .15s ease}.repRow-wrap:hover .repQuickBar-hover,.repRow-wrap.rep-menu-active .repQuickBar-hover{opacity:1;max-height:80px;overflow:visible;padding:3px 6px}.extend-dialog{padding:10px 12px;margin:4px 0 8px;background:var(--card2);border-radius:var(--r-sm);border:1px solid var(--border)}.extend-dialog-title{font-size:13px;font-weight:600;margin-bottom:8px}.extend-dialog-subtitle{font-size:11px;color:#141e4185;margin-bottom:10px}.repColumns{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}@media (max-width: 900px){.repColumns{grid-template-columns:1fr;gap:10px}}.repColumn{min-width:0}.repSection{margin-top:18px;padding-top:14px;border-top:1px solid rgba(30,60,130,.08)}.repMasteryLegend{display:flex;align-items:center;gap:5px;font-size:10px;color:#141e4161;padding:4px 0 12px;flex-wrap:wrap}.repLegDot{width:8px;height:8px;border-radius:2px;display:inline-block;margin-left:8px}.repLegDot:first-child{margin-left:0}.repLegInfo{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:1px solid rgba(20,30,65,.2);font-size:9px;font-style:italic;color:#141e416b;cursor:pointer;flex-shrink:0}.repLegTip-wrap{position:relative;display:inline-flex;align-items:center}.repLegTip-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:100;display:flex;align-items:center;gap:5px;font-size:10px;font-weight:500;text-transform:none;letter-spacing:normal;color:#141e419e;white-space:nowrap;padding:8px 14px;background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.6);border-radius:var(--r-sm);box-shadow:0 6px 24px #32230f1f}.repLegTip-popover .repLegDot:first-child{margin-left:0}.recentMisses{margin-bottom:12px}.recentMisses-header{display:flex;align-items:center;gap:6px;margin-bottom:6px}.recentMisses-title{font-size:12px;font-weight:600;color:#141e4194;text-transform:uppercase;letter-spacing:.5px}.recentMisses-count{font-size:10px;background:#dc323226;color:#dc6464e6;padding:1px 6px;border-radius:999px;font-weight:600}.recentMisses-scroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}.recentMisses-scroll::-webkit-scrollbar{height:4px}.recentMisses-scroll::-webkit-scrollbar-thumb{background:#32230f26;border-radius:2px}.recentMiss-card{flex:0 0 auto;width:140px;cursor:pointer;border-radius:6px;background:#32230f0a;border:1px solid rgba(50,35,15,.07);padding:6px;transition:background .15s,border-color .15s}.recentMiss-card:hover{background:#32230f12;border-color:#32230f1f}.recentMiss-info{display:flex;flex-direction:column;gap:2px;margin-top:4px}.recentMiss-opp{font-size:11px;font-weight:600;color:#141e41d1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recentMiss-detail{font-size:10px;color:#141e4185;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recentMiss-played{color:#dc5050e6;font-weight:600}.recentMiss-expected{color:#50c864e6;font-weight:600}.recentMiss-meta{display:flex;gap:6px;font-size:10px;color:#141e4161}.recentMiss-win{color:#50c864cc}.recentMiss-loss{color:#dc5050cc}.recentMiss-draw{color:#c8c864cc}.recentMiss-eval{display:flex;align-items:center;gap:3px;font-size:11px;font-weight:600;font-family:monospace;color:#141e41b8}.recentMiss-evalArrow{color:#141e414d;font-size:10px}.recentMiss-evalDrop{color:#dc643ce6}.recentMiss-engine{border-color:#e696001f}.recentMiss-engine .recentMiss-played{color:#3264dce6}.recentMisses-pills{display:flex;gap:3px;margin-left:auto}.recentMisses-pill{padding:1px 7px;font-size:10px;font-weight:600;border-radius:999px;border:1px solid rgba(50,35,15,.1);background:transparent;color:#141e416b;cursor:pointer;transition:all .15s}.recentMisses-pill:hover{border-color:#32230f24;color:#141e419e}.recentMisses-pill.active{background:#e6960026;border-color:#e696004d;color:#e6b43ce6}.recentMisses-expand{padding:1px 6px;font-size:12px;line-height:1;border-radius:999px;border:1px solid rgba(50,35,15,.1);background:transparent;color:#141e4161;cursor:pointer;transition:all .15s}.recentMisses-expand:hover{border-color:#32230f2e;color:#141e41b8;background:#32230f0f}.recentMiss-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#32230f33;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto;padding-top:env(safe-area-inset-top,0px)}.recentMiss-overlay-close{position:absolute;top:calc(16px + env(safe-area-inset-top,0px));right:20px;width:36px;height:36px;border-radius:50%;border:1px solid rgba(50,35,15,.15);background:#32230f12;color:#141e41b8;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;z-index:10000}.recentMiss-overlay-close:hover{background:#32230f1f;color:var(--text)}.recentMiss-overlay-title{position:absolute;top:20px;left:50%;transform:translate(-50%);font-size:13px;font-weight:600;color:#141e4185;text-transform:uppercase;letter-spacing:.5px;z-index:10000;pointer-events:none}.recentMiss-carousel{display:flex;gap:20px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;width:100%;align-items:flex-start;padding:60px 40px 24px;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(50,35,15,.15) transparent;flex-wrap:wrap;justify-content:center}.recentMiss-carousel::-webkit-scrollbar{height:6px}.recentMiss-carousel::-webkit-scrollbar-thumb{background:#32230f26;border-radius:3px}.recentMiss-carousel::-webkit-scrollbar-track{background:transparent}.recentMiss-carousel-card{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;cursor:pointer;padding:8px;border-radius:8px;background:#32230f0d;border:1px solid rgba(50,35,15,.08);transition:background .15s,border-color .15s,transform .15s}.recentMiss-carousel-card:hover{background:#32230f14;border-color:#32230f1f;transform:translateY(-2px)}.recentMiss-carousel-info{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:6px;max-width:280px}.recentMiss-carousel-opp{font-size:13px;font-weight:600;color:#141e41d9}.recentMiss-carousel-detail{font-size:12px;color:#141e419e}.recentMiss-carousel-detail .recentMiss-played,.recentMiss-carousel-detail .recentMiss-expected{font-size:12px}.recentMiss-carousel-eval{display:flex;align-items:center;gap:5px;font-size:14px;font-weight:600;font-family:monospace;color:#141e41b8}.recentMiss-carousel-meta{display:flex;gap:8px;font-size:12px;color:#141e416b;margin-top:2px}.repQuickBar{display:flex;align-items:center;justify-content:flex-end;padding:3px 6px;gap:6px;flex-wrap:wrap}.rep-overflow-wrap{position:relative}.rep-overflow-btn{background:transparent;border:1px solid transparent;color:#141e417a;font-size:16px;font-weight:700;letter-spacing:2px;padding:2px 8px;border-radius:var(--r-sm);cursor:pointer;line-height:1;transition:background .15s var(--ease),color .15s var(--ease)}.rep-overflow-btn:hover{background:#32230f14;color:#141e41d1}.rep-overflow-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:120;min-width:140px;background:#fffffff2;backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border:1px solid rgba(50,35,15,.1);border-radius:var(--r-md);box-shadow:0 8px 32px #32230f24;padding:4px;display:flex;flex-direction:column}.rep-overflow-menu button{padding:7px 12px;border-radius:var(--r-sm);font-size:13px;font-weight:500;color:var(--fg);background:transparent;border:none;cursor:pointer;text-align:left;white-space:nowrap;transition:background .12s var(--ease)}.rep-overflow-menu button:hover{background:#32230f14}.rep-overflow-danger{color:var(--bad)!important}.rep-overflow-sep{height:1px;background:var(--border);margin:4px 0}.w2-timeline{position:relative;height:14px;border-radius:7px;background:#32230f14;cursor:pointer;transition:height .15s ease;overflow:visible;margin:12px 0 4px;-webkit-user-select:none;user-select:none}.w2-timeline:hover{height:18px}.w2-timeline-chapters{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:7px;overflow:hidden}.w2-timeline-chapter{position:absolute;top:0;bottom:0;opacity:.55;transition:opacity .15s}.w2-timeline:hover .w2-timeline-chapter{opacity:.75}.w2-timeline-progress{position:absolute;top:0;left:0;bottom:0;background:#ffffff59;border-radius:7px 0 0 7px;pointer-events:none}.w2-timeline-playhead{position:absolute;top:50%;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #32230f1f;transform:translate(-50%,-50%);pointer-events:none;z-index:2;transition:width .1s,height .1s}.w2-timeline:hover .w2-timeline-playhead{width:18px;height:18px}.w2-timeline-divider{position:absolute;top:0;bottom:0;width:2px;background:#32230f26;pointer-events:none;z-index:1}.w2-timeline-tooltip{position:absolute;bottom:calc(100% + 8px);transform:translate(-50%);background:#32230fcc;color:#fff;font-size:12px;font-weight:600;padding:3px 8px;border-radius:4px;white-space:nowrap;pointer-events:none;z-index:10}.w2-info{padding:14px;border-radius:8px;background:var(--card);border:1px solid var(--border)}.w2-info-chapter{font-size:18px;font-weight:700;margin-bottom:6px}.w2-info-time{font-size:13px;color:#141e4194;margin-bottom:2px}.w2-info-next{font-size:13px;color:#141e417a}.w2-chapter-list{max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.w2-chapter-row{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;cursor:pointer;transition:background .12s;font-size:13px}.w2-chapter-row:hover{background:#32230f12}.w2-chapter-row.active{background:#32230f1a;border-left:3px solid var(--accent);padding-left:7px}.w2-chapter-row.done{opacity:.55}.w2-chapter-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.w2-chapter-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.w2-chapter-dur{font-size:11px;color:#141e416b;flex-shrink:0}.w2-controls{display:flex;align-items:center;gap:8px;margin-top:4px}.w2-controls .w2-time{font-size:13px;color:#141e419e;min-width:100px;font-variant-numeric:tabular-nums}.move-limit-bar{display:flex;align-items:center;gap:10px;padding:8px 14px;margin-bottom:10px;border-radius:8px;background:#32230f0a;border:1px solid rgba(50,35,15,.07)}.move-limit-text{font-size:12px;color:#141e4180;white-space:nowrap;min-width:100px}.move-limit-track{flex:1;height:6px;border-radius:3px;background:#32230f14;overflow:hidden}.move-limit-fill{height:100%;border-radius:3px;background:#4a90d9;transition:width .3s ease}.move-limit-warn .move-limit-fill{background:#e6a23c}.move-limit-warn .move-limit-text{color:#e6a23ccc}.move-limit-full .move-limit-fill{background:#e74c3c}.move-limit-full .move-limit-text{color:#e74c3ce6}.move-limit-upgrade{font-size:12px;color:#4a90d9;cursor:pointer;white-space:nowrap;font-weight:600}.move-limit-upgrade:hover{text-decoration:underline}.prep-gate{max-width:480px;margin:60px auto;text-align:center;padding:40px 30px;background:#32230f0a;border:1px solid rgba(50,35,15,.08);border-radius:12px}.prep-gate-icon{font-size:48px;margin-bottom:16px}.prep-gate-title{font-size:20px;font-weight:700;color:var(--text);margin:0 0 10px}.prep-gate-desc{font-size:13px;color:#141e4180;margin:0 0 20px;line-height:1.5}.prep-gate-btn{padding:10px 28px;font-size:14px;font-weight:600}.analysis-player-pill.locked,.analysis-player-pill.locked:hover,.w2-setup{display:flex;flex-direction:column;gap:16px;max-width:480px;margin:0 auto;padding:40px 20px}.w2-setup-title{font-size:22px;font-weight:700;text-align:center}.w2-setup-row{display:flex;align-items:center;gap:12px}.w2-setup-label{font-size:13px;font-weight:600;min-width:80px;color:var(--muted)}.tm-page{max-width:900px}.tm-header h1{font-size:20px;margin-bottom:2px}.tm-header .muted{font-size:13px}.tm-players{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid var(--border)}.tm-player-chip{display:flex;align-items:center;gap:4px}.tm-player-chip .tm-remove{opacity:0;padding:4px 8px;font-size:11px;transition:opacity .15s}.tm-player-chip:hover .tm-remove{opacity:1}.tm-add-player{display:flex;gap:4px;margin-left:8px}.tm-add-player input{width:160px;padding:6px 10px;font-size:13px}.tm-filters{display:flex;gap:12px;margin-bottom:12px;flex-wrap:wrap;align-items:center}.tm-filters .input.tm-opening{width:180px}.tm-filters .input.tm-color{width:100px}.tm-filters .tm-min-moves{display:flex;align-items:center;gap:6px}.tm-filters .tm-min-moves input{width:60px}.tm-section-title{margin-bottom:4px}.tm-section-desc{font-size:12px;margin-bottom:12px}.tm-empty-state{padding:36px 20px;text-align:center;color:var(--muted)}.tm-empty-state .tm-empty-icon{font-size:32px;margin-bottom:8px;opacity:.5}.tm-empty-state .tm-empty-text{font-size:14px;margin-bottom:4px}.tm-empty-state .tm-empty-hint{font-size:12px;color:var(--muted2)}.tm-stats-bar{margin-bottom:8px;color:var(--muted)}.tm-sort-bar{display:flex;gap:8px;margin-bottom:8px}.tm-sort-bar .muted{font-size:12px;align-self:center}.tm-sort-bar .btn{font-size:12px;padding:2px 10px}.tm-game-list{max-height:300px;overflow-y:auto}.tm-game-row{padding:10px 14px;cursor:pointer;display:flex;align-items:center;gap:8px;margin-bottom:4px;transition:background .12s}.tm-game-row:hover{background:#32230f14}.tm-match-badge{padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;min-width:30px;text-align:center;color:#000}.tm-match-badge-white{background:var(--good)}.tm-match-badge-black{background:#b47aff}.tm-game-date{flex:0 0 80px;font-size:12px;color:var(--muted)}.tm-game-players{flex:1;font-weight:500}.tm-game-result{font-weight:600}.tm-game-opening{flex:0 0 180px;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tm-error{background:#ff6b6b1a;border:1px solid var(--bad);margin-bottom:16px;padding:12px}.tm-error span{color:var(--bad)}.theory-depth-tab{max-width:900px}.theory-launch-layout{display:flex;gap:28px;align-items:flex-start}.theory-launch-left{flex:0 0 auto}.theory-launch-right{flex:1;min-width:240px;padding-top:4px}.theory-launch-scope{padding:8px 12px;background:#32230f0a;border-radius:6px;line-height:1.4}.theory-launch-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.theory-filter-group{display:flex;flex-direction:column;gap:3px}.theory-filter-group>label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted)}.theory-filter-group .input{font-size:12px;padding:5px 8px}.theory-book-moves{margin-top:12px}.theory-book-btns{display:flex;gap:6px;flex-wrap:wrap}.theory-book-btn{padding:6px 14px;font-size:15px;font-weight:700;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--card2);cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease),transform .1s var(--ease)}.theory-book-btn:hover{background:color-mix(in oklch,var(--accent) 10%,transparent);border-color:var(--accent);color:var(--accent)}.theory-book-btn:active{transform:scale(.96)}.theory-stats-bar{font-size:13px;margin-bottom:12px}.theory-warning-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.theory-warning-card{max-width:400px;padding:24px}.drill-page{max-width:1100px}.drill-page:has(.etv-main-split){max-width:1100px}.drill-page:has(.mgv-container){max-width:1200px}.drill-action-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.drill-action-bar .btn{padding:6px 14px;font-size:13px;font-weight:700;white-space:nowrap}.drill-collection-list{display:flex;flex-direction:column;gap:4px}.drill-collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.drill-collection-card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:14px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:10px;transition:border-color .15s,transform .15s var(--ease),box-shadow .15s var(--ease);position:relative}.drill-collection-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #32230f14}.drill-collection-card:hover{border-color:var(--text)}.drill-collection-card-name{font-weight:600;font-size:14px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.drill-collection-card-expanded{grid-column:1 / -1;flex-direction:column;align-items:stretch;max-width:100%}.drill-collection-card-expanded>div:first-child{display:flex;justify-content:center}.grid-card-detail{border-top:1px solid var(--border);padding-top:8px;margin-top:4px;text-align:left;width:100%}.grid-card-board-section{display:flex;gap:12px;margin:8px 0;align-items:flex-start}.grid-card-board-wrap{flex-shrink:0}.grid-card-pos-thumbnails{display:flex;flex-wrap:wrap;gap:4px;max-height:360px;overflow-y:auto;align-content:flex-start}.grid-card-thumb{cursor:pointer;border:2px solid transparent;border-radius:4px;transition:border-color .15s}.grid-card-thumb:hover{border-color:var(--accent)}.grid-card-thumb-active{border-color:var(--accent);box-shadow:0 0 6px rgba(var(--accent-rgb, 100, 180, 255),.4)}.drill-collection-card .drill-position-delete{position:absolute;top:4px;right:4px;opacity:0}.drill-collection-card:hover .drill-position-delete{opacity:1}.drill-view-toggle{display:flex;gap:2px;margin-left:8px}.drill-view-btn{padding:4px 7px;font-size:14px;border:1px solid var(--border);background:var(--bg);color:var(--muted);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;line-height:1}.drill-view-btn:hover{border-color:var(--text)}.drill-view-btn-active{background:var(--accent, #5b9bd5);border-color:var(--accent, #5b9bd5);color:#fff}.drill-collection-row{background:var(--card);border:1px solid var(--border);border-radius:6px;overflow:hidden}.drill-collection-header{display:flex;align-items:center;gap:12px;padding:16px 20px;transition:background .15s,border-left .15s;border-left:3px solid transparent}.drill-collection-header:hover{background:#32230f0a;border-left-color:var(--accent)}.drill-collection-header .drill-coll-delete{opacity:0;transition:opacity .15s}.drill-collection-header:hover .drill-coll-delete{opacity:1}.drill-collection-name{font-weight:600;font-size:15px}.drill-category-badge{font-size:12px;padding:3px 10px;border-radius:10px;background:#6496ff26;color:var(--accent);white-space:nowrap}.mate-badge{font-size:10px;font-weight:700;letter-spacing:.5px;padding:2px 8px;border-radius:8px;background:color-mix(in oklch,var(--accent2) 15%,transparent);color:var(--accent2);white-space:nowrap}.drill-positions-list{border-top:1px solid var(--border);padding:14px 20px 18px}.drill-position-grid{display:flex;flex-wrap:wrap;gap:0;padding:4px 0}.drill-position-card{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:0;cursor:pointer;position:relative;transition:background .15s;width:100%;border-bottom:1px solid var(--border)}.drill-position-card:last-child{border-bottom:none}.drill-position-card:hover{background:#32230f0f}.drill-position-card.drag-over{border-top:2px solid var(--accent)}.drill-position-card.drill-position-selected{background:#2f6bff26}.drill-position-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.drill-position-move{font-weight:600;font-size:15px}.drill-position-turn{font-size:13px;color:var(--muted)}.drill-position-delete{font-size:11px;padding:1px 6px;opacity:0;transition:opacity .15s;flex-shrink:0}.drill-position-card:hover .drill-position-delete{opacity:1}.pos-viewer{display:flex;gap:24px;flex-wrap:wrap;padding:20px;margin-bottom:8px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md)}.pos-viewer-board-col{flex:0 0 auto;display:flex;flex-direction:column;gap:8px}.pos-viewer-nav{display:flex;gap:6px;justify-content:center}.pos-viewer-nav .btn{font-size:15px;padding:7px 16px}.pos-viewer-side{flex:1;min-width:220px;display:flex;flex-direction:column;gap:10px}.pos-viewer-header{font-weight:600;font-size:16px;padding-bottom:6px;border-bottom:1px solid var(--border)}.pos-viewer-moves{flex:1 1 auto;padding:12px;min-height:60px;max-height:420px;overflow:auto;background:var(--bg1);border:1px solid var(--border);border-radius:var(--r-sm)}.drag-over{outline:2px solid var(--accent);outline-offset:-2px;background:#3b82f614}.select-mode-checkbox{position:absolute;top:4px;left:4px;z-index:2;accent-color:var(--accent)}.pos-card-selected{outline:2px solid var(--accent);outline-offset:-2px}.merge-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#32230f2e;display:flex;align-items:center;justify-content:center;z-index:100}.merge-modal{background:var(--bg1);border:1px solid var(--border2);border-radius:10px;padding:20px;max-width:420px;width:90%;max-height:60vh;overflow-y:auto;box-shadow:0 12px 48px #32230f2e,0 0 0 1px #32230f12}.merge-modal h3{margin:0 0 12px}.post-modal-wide{max-width:560px;max-height:75vh}.post-modal-tree{max-height:45vh;overflow-y:auto;border:1px solid var(--border2);border-radius:6px;padding:8px;background:var(--bg0)}.post-modal-group{margin-bottom:6px}.post-modal-group-header{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#32230f12;border-radius:6px;margin-bottom:4px}.post-modal-folder{margin-bottom:2px}.post-modal-folder-header{display:flex;align-items:center;gap:6px;padding:6px 4px;border-radius:6px;cursor:pointer;transition:background .1s}.post-modal-folder-header:hover{background:#32230f0f}.post-modal-folder-mosaic{display:grid;grid-template-columns:28px 28px;gap:1px;border-radius:3px;overflow:hidden;flex-shrink:0}.post-modal-folder-name{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-modal-folder-children{padding-left:8px}.post-modal-coll-row{margin-left:4px}.post-modal-coll-header{display:flex;align-items:center;gap:6px;padding:5px 4px;border-bottom:1px solid rgba(50,35,15,.07)}.post-modal-expand-btn{cursor:pointer;font-size:10px;width:16px;text-align:center;color:var(--muted)}.post-modal-coll-name{cursor:pointer;font-size:13px;flex:1}.post-modal-coll-name:hover{color:var(--accent)}.post-modal-sel-badge{font-size:10px;background:var(--accent);color:#fff;padding:1px 6px;border-radius:8px}.post-modal-positions{padding:6px 6px 6px 22px}.post-modal-pos-grid{display:flex;flex-wrap:wrap;gap:4px}.post-modal-pos-thumb{cursor:pointer;position:relative;border:2px solid transparent;border-radius:4px;transition:border-color .15s}.post-modal-pos-thumb:hover,.post-modal-pos-selected{border-color:var(--accent)}.merge-coll-item{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border)}.merge-coll-item label{flex:1;cursor:pointer}.split-bar{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg2);border-radius:6px;margin-bottom:8px}.drill-comments{margin-top:8px;border-top:1px solid var(--border);padding-top:8px}.drill-comment{display:flex;gap:8px;padding:6px 0;border-bottom:1px solid var(--bg2)}.drill-comment-reply{margin-left:28px;padding-left:12px;border-left:2px solid var(--border)}.drill-comment-votes-col{display:flex;flex-direction:column;align-items:center;min-width:28px;padding-top:2px}.drill-comment-score{font-size:11px;font-weight:600;min-width:16px;text-align:center}.drill-comment-content{flex:1;min-width:0}.drill-comment-header{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.drill-comment-body{margin:4px 0;font-size:13px;line-height:1.4}.drill-comment-actions{display:flex;align-items:center;gap:8px;font-size:11px}.drill-comment-input{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:4px;background:var(--bg2);color:var(--fg);font-size:13px;resize:vertical;min-height:32px}.drill-comment-vote{cursor:pointer;-webkit-user-select:none;user-select:none;font-size:10px}.drill-comment-vote:hover,.drill-comment-vote-active{color:var(--accent)}.comment-tier-dot{font-size:10px;line-height:1}.comment-op-badge{background:var(--accent);color:#fff;font-size:9px;font-weight:700;text-transform:uppercase;padding:1px 5px;border-radius:3px;letter-spacing:.03em}.user-link{cursor:pointer;font-weight:600;color:var(--fg);transition:color .12s}.user-link:hover{color:var(--accent);text-decoration:underline}.user-profile-modal{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:20px;width:450px;max-width:95vw;max-height:70vh;overflow-y:auto;position:relative}.user-profile-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}.user-profile-mastery{margin-bottom:12px}.user-profile-mastery-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.user-profile-progress-bar{flex:1;height:6px;background:var(--bg2);border-radius:3px;overflow:hidden}.user-profile-progress-fill{height:100%;border-radius:3px;transition:width .3s}.user-profile-achievements{margin-bottom:12px}.user-profile-achievement-badge{background:var(--bg2);border:1px solid var(--border);border-radius:6px;padding:3px 8px;font-size:11px;font-weight:500}.user-profile-content{margin-top:12px}.user-profile-content-item{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--bg2);font-size:13px}.modal-close-btn{position:absolute;top:10px;right:14px;background:none;border:none;color:var(--muted);font-size:22px;cursor:pointer;line-height:1}.modal-close-btn:hover{color:var(--fg)}.drill-post-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:18px;margin-bottom:10px}.drill-post-author-row{display:flex;align-items:center;gap:8px;font-size:12px;margin-bottom:6px}.drill-post-title{font-size:16px;font-weight:600;margin-bottom:4px}.drill-post-desc{font-size:13px;color:var(--muted);margin-bottom:8px}.drill-post-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:8px;width:fit-content}.drill-post-actions{display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap}.drill-post-expanded{padding:10px;background:var(--bg2);border-radius:6px;margin-top:8px}.drill-post-coll-item{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border)}.my-coll-filter{padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--bg2);color:var(--fg);font-size:13px;width:220px}.load-more-btn{display:block;margin:12px auto;padding:6px 20px}.shared-type-toggle{display:flex;gap:0;border:1px solid var(--border);border-radius:6px;overflow:hidden}.shared-type-btn{padding:4px 12px;font-size:12px;background:none;border:none;cursor:pointer;color:var(--muted)}.shared-type-btn-active{background:var(--accent);color:#fff}.material-bar{display:flex;align-items:center;flex-wrap:nowrap;height:20px;max-height:20px;gap:1px;padding:0 2px;min-height:20px;overflow:hidden}.material-bar .material-piece{width:16px;height:16px;opacity:.85}.material-bar .material-diff{font-size:12px;font-weight:700;color:var(--muted);margin-left:4px}.drill-mini-board{border:2px solid transparent;transition:border-color .15s}.drill-add-form,.drill-import-form{display:flex;flex-direction:column;gap:6px;padding:6px 0}.drill-import-color-row{display:flex;align-items:center;gap:6px}.lb-wrap{max-width:960px}.lb-header{display:flex;align-items:baseline;gap:12px;margin-bottom:14px}.lb-grid{display:grid;grid-template-columns:420px 1fr;gap:18px;align-items:start}.lb-left{display:flex;flex-direction:column;gap:8px}.lb-right{display:flex;flex-direction:column;gap:10px;min-width:0}.lb-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lb-control-group{display:flex;align-items:center;gap:4px}.lb-label{font-size:12px;color:var(--muted);margin-right:2px}.lb-fen-row{display:flex;gap:6px;align-items:center}.lb-tree-card{max-height:420px;overflow-y:auto;min-height:120px}.lb-info{display:flex;flex-direction:column;gap:2px}.lb-actions{display:flex;gap:8px}.setup-palette-btn{border-radius:var(--r-sm)!important;background:var(--card);border:1.5px solid var(--border)!important}.setup-palette-btn.active{border-color:var(--accent)!important;background:color-mix(in oklch,var(--accent) 12%,transparent)}@media (max-width: 900px){.lb-grid{grid-template-columns:1fr}}.etv-wrap{margin-top:4px;max-width:none}.etv-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 0;margin-bottom:8px;border-bottom:1px solid var(--border)}.etv-filter-label{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.etv-container{display:flex;flex-direction:column;gap:10px}.etv-category{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--card);box-shadow:0 0 12px #32230f0f}.etv-cat-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;transition:background .15s;border-left:4px solid var(--cat-color)}.etv-cat-header:hover{background:#32230f0a}.etv-cat-left{display:flex;align-items:center;gap:12px}.etv-cat-letter{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;font-size:18px;font-weight:800;color:#fff;letter-spacing:1px;box-shadow:0 2px 8px #32230f14}.etv-cat-name{font-size:16px;font-weight:700;color:var(--fg)}.etv-cat-right{display:flex;align-items:center;gap:10px}.etv-cat-chevron{font-size:14px;color:var(--muted)}.etv-cat-body{padding:4px 12px 12px;display:flex;flex-direction:column;gap:4px}.etv-train-btn{font-size:12px;padding:4px 12px;border-radius:6px;background:#a855f726;color:#c084fc;border:1px solid rgba(168,85,247,.3);font-weight:600}.etv-train-btn:hover{background:#a855f740}.etv-train-btn-sm{font-size:11px;padding:2px 10px;border-radius:5px;background:#a855f71f;color:#c084fc;border:1px solid rgba(168,85,247,.25);font-weight:600}.etv-train-btn-sm:hover{background:#a855f738}.etv-train-inline{font-size:10px;padding:1px 8px;margin-left:auto;border-radius:4px;background:#a855f71a;color:#c084fc;border:1px solid rgba(168,85,247,.2);opacity:0;transition:opacity .15s}.etv-leaf-row:hover .etv-train-inline{opacity:1}.etv-group{border-radius:8px;overflow:hidden;border:1px solid rgba(50,35,15,.07);background:#ffffff04;transition:background .15s}.etv-group:hover{background:#32230f0a}.etv-group-header{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer}.etv-group-bar{flex-shrink:0;width:3px;height:32px;border-radius:2px;opacity:.8}.etv-group-info{flex:1;min-width:0}.etv-group-top{display:flex;align-items:baseline;gap:6px}.etv-group-eco{font-family:monospace;font-size:11px;font-weight:700;opacity:.7}.etv-group-name{font-size:14px;font-weight:600;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.etv-group-badges{display:flex;gap:6px;margin-top:2px}.etv-badge{font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px}.etv-badge-rep{background:#10b98126;color:#34d399}.etv-badge-drill{background:#a855f726;color:#c084fc}.etv-badge-count{background:#32230f12;color:var(--muted)}.etv-group-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.etv-chevron{font-size:12px;color:var(--muted)}.etv-group-children{padding:0 8px 6px 20px;display:flex;flex-direction:column;gap:1px}.etv-leaf{position:relative}.etv-leaf-row{display:flex;align-items:center;gap:6px;padding:3px 6px;border-radius:4px;cursor:pointer;transition:background .12s;min-height:26px}.etv-leaf-row:hover{background:#32230f0d}.etv-leaf-rep{background:#10b9810d}.etv-leaf-rep:hover{background:#10b9811a}.etv-leaf-drill{background:#a855f70d}.etv-leaf-drill:hover{background:#a855f71a}.etv-leaf-connector{flex-shrink:0;width:12px;height:1px;background:#32230f14;margin-right:2px}.etv-leaf-toggle{flex-shrink:0;width:14px;font-size:11px;color:var(--muted);text-align:center}.etv-leaf-dot{flex-shrink:0;width:7px;height:7px;border-radius:50%;margin:0 3px}.etv-leaf-eco{flex-shrink:0;font-family:monospace;font-size:10px;font-weight:700;padding:1px 4px;border-radius:3px;border:1px solid;letter-spacing:.5px;min-width:26px;text-align:center}.etv-leaf-name{color:var(--muted);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.etv-leaf-name-active{color:var(--fg)}.etv-tag{flex-shrink:0;font-size:9px;font-weight:700;letter-spacing:.5px;padding:1px 5px;border-radius:3px}.etv-tag-rep{background:#10b98133;color:#10b981}.etv-tag-drill{background:#a855f733;color:#a855f7}.etv-leaf-children{padding-left:16px}.etv-dimmed{opacity:.3}.etv-dimmed:hover{opacity:.5}.etv-main{display:flex;gap:0}.etv-main-split{gap:18px}.etv-main-split>.etv-container{flex:1;min-width:0;max-height:80vh;overflow-y:auto}.etv-panel{flex-shrink:0;width:380px;display:flex;flex-direction:column;gap:8px;position:sticky;top:12px;align-self:flex-start}.etv-panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.etv-panel-eco{font-family:monospace;font-size:13px;font-weight:700;color:var(--accent);margin-right:6px}.etv-panel-name{font-size:14px;font-weight:600;color:var(--fg)}.etv-panel-controls{display:flex;gap:6px}.etv-panel-movelist{display:flex;flex-wrap:wrap;gap:2px 4px;align-items:baseline;line-height:1.7;font-size:13px;padding:6px 8px;background:var(--card);border:1px solid var(--border);border-radius:6px;min-height:28px;max-height:80px;overflow-y:auto}.etv-panel-movenum{color:var(--muted);font-size:11px;margin-right:1px}.etv-panel-move{cursor:pointer;padding:1px 3px;border-radius:3px;font-weight:500;transition:background .1s}.etv-panel-move:hover{background:#32230f14}.etv-panel-move-current{background:var(--accent);color:#fff}.etv-panel-move-current:hover{background:var(--accent)}.etv-panel-move-base{color:var(--fg)}.etv-panel-move-extra{color:#10b981}.etv-panel-theory{padding:6px 0}.etv-panel-theory-label{font-size:12px;color:var(--muted);margin-bottom:6px}.etv-panel-theory-moves{display:flex;flex-wrap:wrap;gap:6px}.etv-panel-theory-btn{font-size:13px;padding:4px 10px;border-radius:5px;background:#32230f14;font-weight:500}.etv-panel-theory-btn:hover{background:#32230f24}@media (max-width: 900px){.etv-main-split{flex-direction:column}.etv-panel{width:100%;position:static}}.shared-view-toggle{display:inline-flex;border-radius:6px;overflow:hidden;border:1px solid rgba(50,35,15,.12)}.shared-view-btn{background:none;border:none;color:var(--muted);font-size:13px;padding:6px 14px;cursor:pointer;transition:background .15s,color .15s}.shared-view-btn:hover{background:#32230f12}.shared-view-active{background:var(--accent);color:#fff}.shared-view-active:hover{background:var(--accent)}@media (max-width: 700px){.shared-browse-layout{grid-template-columns:1fr}}.cat-node-row{display:flex;align-items:center;gap:4px;padding:6px 8px;border-radius:4px;cursor:pointer;font-size:14px;transition:background .12s}.cat-node-row:hover{background:#32230f12}.cat-node-selected{background:#64b4ff26;color:var(--accent)}.cat-node-selected:hover{background:#64b4ff33}.cat-toggle{font-size:9px;width:14px;text-align:center;cursor:pointer;color:var(--muted);flex-shrink:0}.cat-toggle-spacer{width:14px;flex-shrink:0}.cat-node-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shared-list-panel{min-width:0}.shared-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.shared-sort-toggle{display:inline-flex;border-radius:4px;overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid rgba(50,35,15,.06)}.shared-sort-btn{background:none;border:none;color:var(--muted);font-size:13px;padding:6px 12px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s,color .15s}.shared-sort-btn:hover{background:#32230f12}.shared-sort-active{background:#32230f0f;color:var(--text);font-weight:700;border-bottom:2.5px solid var(--accent)}.shared-collection-list{display:flex;flex-direction:column;gap:8px}.shared-card{display:flex;flex-direction:column;gap:6px}.shared-card-header{display:flex;align-items:center;gap:10px}.shared-card-name{font-weight:600;font-size:15px}.shared-card-desc{font-size:13px;color:var(--muted);margin:0}.shared-card-actions{display:flex;align-items:center;gap:10px;margin-top:4px}.shared-vote-group{display:inline-flex;align-items:center;gap:4px}.shared-vote-btn{background:none;border:1px solid rgba(50,35,15,.06);color:var(--muted);font-size:13px;padding:4px 8px;cursor:pointer;border-radius:3px;line-height:1;transition:background .12s,color .12s}.shared-vote-btn:hover{background:#32230f14}.shared-vote-active-up{background:#00b45033;color:var(--good);border-color:#00b45066}.shared-vote-active-down{background:#dc323233;color:var(--bad);border-color:#dc323266}.shared-vote-score{font-size:14px;font-weight:600;min-width:20px;text-align:center}.shared-score-pos{color:var(--good)}.shared-score-neg{color:var(--bad)}.browse-marketplace{display:flex;flex-direction:column;gap:24px}.browse-search-wrap{position:relative;max-width:480px;width:100%}.browse-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted2);pointer-events:none}.browse-search{width:100%;padding:10px 12px 10px 36px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--card);color:var(--text);font-size:14px;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.browse-search:focus{outline:none;border-color:color-mix(in oklch,var(--accent) 40%,transparent);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 8%,transparent)}.browse-top-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.browse-share-btn{padding:10px 18px;font-size:13px;font-weight:600;border:1.5px solid var(--accent);border-radius:var(--r-sm);background:transparent;color:var(--accent);cursor:pointer;white-space:nowrap;transition:background .15s var(--ease),color .15s var(--ease)}.browse-share-btn:hover{background:var(--accent);color:#fff}.browse-publish-form{display:flex;flex-direction:column;gap:8px;padding:14px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-sm)}.browse-publish-title{font-weight:600;font-size:14px}.browse-publish-select{padding:8px 10px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg1);color:var(--text);font-size:13px;max-width:360px}.browse-publish-desc{padding:8px 10px;border-radius:var(--r-sm);border:1px solid var(--border);background:var(--bg1);color:var(--text);font-size:13px;resize:vertical;max-width:480px}.browse-publish-desc:focus,.browse-publish-select:focus{outline:none;border-color:color-mix(in oklch,var(--accent) 40%,transparent);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 8%,transparent)}.browse-publish-actions{display:flex;gap:8px}.browse-section{display:flex;flex-direction:column;gap:10px}.browse-section-title{font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.02em}.browse-empty{font-size:13px;color:var(--muted2);padding:16px 0}.browse-official-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.browse-official-card{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease)}.browse-official-card:hover{border-color:color-mix(in oklch,var(--accent) 25%,transparent);background:var(--card2)}.browse-official-activated{border-left:3px solid var(--good)}.browse-official-info{flex:1;min-width:0}.browse-official-name{font-weight:600;font-size:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}.browse-official-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin-top:2px}.browse-color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;border:1.5px solid rgba(0,0,0,.15);flex-shrink:0}.browse-color-dot.white{background:#f0f0f0}.browse-color-dot.black{background:#333;border-color:#ffffff26}.browse-level-badge{color:var(--good);font-weight:600}.browse-activate-btn{flex-shrink:0;padding:5px 14px;font-size:12px;font-weight:600;border:1.5px solid var(--accent);border-radius:var(--r-sm);background:transparent;color:var(--accent);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}.browse-activate-btn:hover{background:var(--accent);color:#fff}.browse-activate-btn:disabled{opacity:.5;cursor:default}.browse-active-check{flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#34d97a1f;color:var(--good);font-size:14px;font-weight:700}.browse-community-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.browse-community-card{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease)}.browse-community-card:hover{border-color:color-mix(in oklch,var(--accent) 25%,transparent);background:var(--card2)}.browse-community-top{display:flex;gap:10px;align-items:center}.browse-community-info{flex:1;min-width:0}.browse-community-name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.browse-community-author{font-size:12px;color:var(--muted)}.browse-community-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin-top:2px}.browse-community-actions{display:flex;align-items:center;gap:8px;margin-top:auto}.browse-vote-group{display:flex;gap:2px}.browse-vote-btn{background:none;border:none;cursor:pointer;font-size:11px;padding:3px 6px;border-radius:4px;color:var(--muted);transition:color .12s,background .12s}.browse-vote-btn:hover{background:color-mix(in oklch,var(--accent) 8%,transparent)}.browse-vote-up{color:var(--good)}.browse-vote-down{color:var(--bad)}.browse-vote-pos{color:var(--good);font-weight:600}.browse-vote-neg{color:var(--bad);font-weight:600}.browse-clone-btn{padding:3px 12px;font-size:12px;font-weight:600;border:1.5px solid var(--accent);border-radius:var(--r-sm);background:transparent;color:var(--accent);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}.browse-clone-btn:hover{background:var(--accent);color:#fff}.browse-cloned-label{font-size:12px;color:var(--muted2)}.browse-load-more{align-self:center;padding:8px 20px;font-size:13px;font-weight:500;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--card);color:var(--text);cursor:pointer;transition:border-color .15s,background .15s}.browse-load-more:hover{background:var(--card2);border-color:color-mix(in oklch,var(--accent) 25%,transparent)}.browse-load-more:disabled{opacity:.5;cursor:default}.rep-card-tag{font-size:10px;padding:1px 6px;border-radius:3px;background:#32230f12;color:var(--muted)}.rep-bookmark-btn{background:none;border:none;cursor:pointer;font-size:16px;line-height:1;padding:2px;color:var(--muted);transition:color .12s}.rep-bookmark-btn:hover,.rep-bookmark-active{color:var(--yellow)}@media (max-width: 600px){.browse-official-grid,.browse-community-grid{grid-template-columns:1fr}.browse-search-wrap{max-width:100%}}.rep-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:900;display:flex;align-items:center;justify-content:center}.rep-detail-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;max-width:480px;width:90vw;max-height:80vh;overflow-y:auto;position:relative}.rep-detail-close{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--muted);font-size:20px;cursor:pointer;line-height:1;padding:4px}.rep-detail-close:hover{color:var(--text)}.rep-detail-header{display:flex;gap:16px;margin-bottom:14px}.rep-detail-name{font-weight:700;font-size:18px;margin-bottom:4px}.rep-detail-author{font-size:13px;color:var(--muted);margin-bottom:6px}.rep-detail-desc{font-size:13px;color:var(--muted);margin-bottom:10px;line-height:1.5}.rep-detail-tags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.rep-detail-stats{display:flex;gap:16px;font-size:13px;color:var(--muted);margin-bottom:14px}.rep-detail-actions{display:flex;gap:8px;align-items:center}.cat-my-tree{border:1px solid rgba(50,35,15,.08);border-radius:6px;padding:8px}.cat-my-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid rgba(50,35,15,.07)}.cat-node-my{position:relative}.cat-node-my .cat-node-actions{display:none;margin-left:auto;gap:2px}.cat-node-my:hover .cat-node-actions{display:inline-flex}.cat-action-btn{background:none;border:1px solid rgba(50,35,15,.06);color:var(--muted);font-size:11px;padding:0 5px;cursor:pointer;border-radius:3px;line-height:18px;transition:background .12s}.cat-action-btn:hover{background:#32230f14;color:var(--text)}.cat-action-del:hover{background:#dc323233;color:var(--bad)}.cat-add-form{display:flex;gap:4px;padding:4px 0;align-items:center}.cat-add-input{font-size:12px!important;padding:2px 6px!important;flex:1;min-width:100px;max-width:200px}.cat-rename-form{flex:1}.cat-rename-input{font-size:12px!important;padding:1px 4px!important;width:100%}.drill-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:16px}.drill-folder-card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:16px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:10px;position:relative;transition:border-color .15s,transform .15s var(--ease),box-shadow .15s var(--ease)}.drill-folder-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 24px #32230f14}.drill-folder-card-name{font-weight:600;font-size:14px;text-align:center;word-break:break-word}.drill-folder-card-actions{position:absolute;top:4px;right:4px;display:none;gap:2px}.drill-folder-card:hover .drill-folder-card-actions{display:inline-flex}.drill-folder-mosaic-empty{background:var(--bg2);width:160px;height:160px;border-radius:4px}.drill-folder-progress{display:flex;width:100%;height:6px;border-radius:3px;overflow:hidden;background:#32230f0f}.drill-folder-progress-seg{height:100%}.drill-folder-breadcrumb{display:flex;align-items:center;gap:4px;padding:6px 0;font-size:13px;margin-bottom:8px}.drill-folder-breadcrumb-item{cursor:pointer;padding:2px 6px;border-radius:4px;color:var(--muted)}.drill-folder-breadcrumb-item:hover{background:#32230f14;color:var(--text)}.drill-folder-breadcrumb-current{font-weight:600;color:var(--accent)}.drill-folder-breadcrumb-current:hover{color:var(--accent)}.drill-folder-breadcrumb-sep{color:var(--muted);opacity:.5}.hamburger-btn{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid rgba(50,35,15,.12);border-radius:8px;color:var(--text);font-size:22px;width:40px;height:40px;cursor:pointer;place-items:center;margin-left:auto;flex-shrink:0;line-height:1}.hamburger-btn:hover{background:#32230f14}.mobile-bottom-nav,.mobile-more-overlay,.mobile-more-sheet{display:none}@media (max-width: 1000px){.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--chrome-bottomnav-bg, #faf6ec);border-top:1px solid var(--chrome-bottomnav-bd, rgba(80, 60, 40, .12));min-height:56px;padding:0 0 env(safe-area-inset-bottom,0px)}.mobile-bottom-nav button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 0 7px;background:none;border:none;color:var(--chrome-bottomnav-fg, #8a7d62);cursor:pointer;transition:color .15s var(--ease),transform .08s var(--ease);position:relative}.mobile-bottom-nav button:active{transform:scale(.93)}.mobile-bottom-nav button.active{color:var(--chrome-bottomnav-active, #d63a2f)}.mobile-bottom-icon{line-height:0;display:inline-flex;padding:4px 13px;border-radius:99px;transition:background .15s var(--ease)}.mobile-bottom-icon svg,.mobile-bottom-bell .topbar-theme-toggle svg{width:23px;height:23px;display:block}.mobile-bottom-nav button.active .mobile-bottom-icon{background:color-mix(in srgb,currentColor 15%,transparent)}.mobile-bottom-label{font-size:10px;font-weight:500;line-height:1}.mobile-bottom-nav button.active .mobile-bottom-label{font-weight:600}.mobile-bottom-bell{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--chrome-bottomnav-fg, #8a7d62)}.mobile-bottom-bell .topbar-theme-toggle{background:none;border:none;color:inherit;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer}.mobile-more-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:29;background:#0000004d}.mobile-more-sheet{position:fixed;bottom:calc(56px + env(safe-area-inset-bottom,0px));left:8px;right:8px;z-index:31;background:var(--card2, rgba(255,255,255,.75));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:var(--r-lg);padding:8px;display:flex;flex-direction:column;gap:2px;box-shadow:0 -8px 32px #0000001f}.mobile-more-sheet button{display:block;width:100%;padding:12px 16px;text-align:left;background:none;border:none;border-radius:var(--r-sm);color:var(--text);font-size:15px;font-weight:600;cursor:pointer;transition:background .12s var(--ease)}.mobile-more-sheet button:hover{background:color-mix(in oklch,var(--accent) 8%,transparent)}.mobile-more-sheet button.active{color:var(--accent);background:color-mix(in oklch,var(--accent) 10%,transparent)}}@media (max-width: 850px){.mobile-profile-btn{display:grid;place-items:center}.hamburger-btn{display:grid}.topbar-inner.nav-open{flex-wrap:wrap}.topbar-inner.nav-open .nav{display:flex;flex-direction:column;width:100%;order:10;margin-left:0;gap:4px}.topbar-inner.nav-open .nav .btn{width:100%;text-align:center;padding:12px;font-size:15px}.topbar-inner.nav-open .nav-user-actions{display:flex;width:100%;order:11;justify-content:center;padding-top:8px;border-top:1px solid rgba(50,35,15,.08)}.topbar-inner.nav-open .nav .btn:has(.nav-secondary){display:block}.topbar-inner.nav-open .nav .nav-secondary{display:inline}.topbar-inner.nav-open .nav .nav-more-wrap{display:none}.container{padding:16px 14px calc(68px + env(safe-area-inset-bottom,0px))}.hamburger-btn,.mobile-profile-btn{display:none!important}.topbar-inner .nav,.topbar-inner .nav-user-actions{display:none}.explorer-v2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.explorer-v2-board>div:first-child{width:min(100%,calc(100dvh - 280px))!important}.explorer-v2-board svg{max-width:100%;height:auto}}[data-mode=dark] .mobile-bottom-nav{background:var(--chrome-bottomnav-bg-dark, #25211b);border-top-color:var(--chrome-bottomnav-bd-dark, rgba(255, 255, 255, .08))}[data-mode=dark] .mobile-bottom-nav button,[data-mode=dark] .mobile-bottom-bell{color:var(--chrome-bottomnav-fg-dark, #7a7159)}[data-mode=dark] .mobile-bottom-nav button.active{color:var(--chrome-bottomnav-active-dark, #ea5a4d)}[data-mode=dark] .mobile-more-sheet{background:#181b24f7;border-color:#ffffff14;box-shadow:0 -8px 32px #0006}[data-mode=dark] .mobile-more-overlay{background:#00000080}.compact-engine-header{display:none}.reviewAnalysisPanelsWrapper{display:contents}@media (max-width: 480px){.container{padding:12px 10px calc(68px + env(safe-area-inset-bottom,0px))}.topbar-inner{padding:10px 12px}.brand-mark{width:36px;height:36px;border-radius:10px}.topbar-lang-dropdown .lang-dropdown-btn{padding:6px 8px;gap:4px}.topbar-lang-dropdown .lang-dropdown-btn>span:first-of-type{display:none}.topbar-lang-dropdown,.topbar-theme-toggle{display:none}.home-daily-train{flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px}.home-daily-train-right{justify-content:space-between}.repMeta{font-size:12px;line-height:1.5}.repTierInline{display:block;margin-top:2px}.explorer-v2{grid-template-columns:1fr}.explorer-v2-board{order:-1}.explorer-v2-board>div:first-child{width:min(100%,30vh)!important;margin:0 auto}.explorer-v2-filters,.explorer-breadcrumb,.find-lines-panel{display:none}.explorer-board-controls{gap:2px;margin-top:-4px}.explorer-board-controls button{width:28px;height:28px;font-size:14px}.explorer-result-bar{min-width:55px}.explorer-move-table td,.explorer-move-table thead th{padding:5px 4px}.boardSplit,.boardSplit.boardSplitTight{grid-template-columns:1fr!important;gap:0!important}.theoryContainer .boardSplit,.theoryContainer .boardSplit.boardSplitTight{display:flex!important;flex-direction:column!important}.theoryContainer .boardSplitLeft{margin:0 -10px}.boardSplitLeft svg{width:100%!important;max-width:100%!important}.boardSplitRight,.boardSplitTight .boardSplitRight{min-width:0;max-width:100%}.theoryContainer .material-bar{display:none!important}.trainerUnderBoard{margin-top:-6px!important;gap:0!important;padding:0 6px!important}.failNavRow{padding:2px 0!important}.failNavPrimary{flex-wrap:wrap;gap:2px 4px;justify-content:center}.failNavSecondary{display:none}.failNavRow.extras-open .failNavSecondary{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;font-size:11px}.failCounter{flex-direction:row!important;gap:4px!important;font-size:11px;line-height:1.2;overflow:hidden;flex:1;justify-content:center;text-align:center}.failGameInfo,.failNavSep,.failNavStudyBtn{display:none!important}.failNavRow.extras-open .failNavStudyBtn{display:flex!important}.failNavToggle{display:flex!important;font-size:14px!important;padding:3px 6px!important}.failNavRow .btn,.failNavRow button,.failNavPrimary .btn,.failNavPrimary button{font-size:11px!important;padding:3px 8px!important;min-width:0!important}.reviewLastGame,.reviewFocusBtn{display:none!important}.movesBottomNav{margin-top:2px!important;padding-top:2px!important;gap:4px!important}.movesBottomNav .btn-icon{width:28px!important;height:28px!important;min-width:28px!important;font-size:13px!important}.compact-engine-header{display:block;margin-bottom:0;padding:0 10px;background:var(--bg1);min-height:66px}.compact-eval-bar{display:flex;align-items:center;gap:6px;padding:3px 0 2px}.compact-eval-score{font-weight:700;font-size:14px;min-width:44px;font-variant-numeric:tabular-nums;color:var(--text)}.compact-eval-track{flex:1;height:12px;background:var(--text, #333);border-radius:2px;overflow:hidden}.compact-eval-white{height:100%;background:var(--bg1, #f0f0f0);transition:width .3s ease}.compact-pv-line{display:flex;align-items:baseline;gap:6px;padding:2px 0;font-size:12px;line-height:1.3;border-top:1px solid var(--border)}.compact-pv-score{font-weight:700;min-width:44px;font-variant-numeric:tabular-nums;color:var(--text)}.compact-pv-moves{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.theoryContainer{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.shell:has(.theoryContainer){height:100dvh;display:flex;flex-direction:column;overflow:hidden}.theoryContainer>.boardCard{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:8px 10px!important}.theoryContainer .boardSplit{flex:1;min-height:0}.theoryContainer .boardSplitLeft{flex-shrink:1;min-height:0;display:flex;flex-direction:column;justify-content:flex-start;margin:0 -10px}.theoryContainer .boardSplitLeft .chessBoardWrap{width:100%!important;max-width:100%!important;margin:0 auto}.theoryContainer .boardSplitLeft .chessBoardWrap>svg{width:100%!important;max-width:100%!important;height:auto!important}.theoryContainer .boardCard>.card-pad{padding:8px 10px!important}.theoryContainer .trainerUnderBoard{gap:2px!important}.theoryContainer .drill-head{display:flex;margin-bottom:6px!important;gap:4px 8px;flex-wrap:wrap;align-items:center}.theoryContainer .drill-head .left{flex:1 1 auto;min-width:0}.theoryContainer .drill-head .drill-title{font-size:13px!important;line-height:1.25!important;margin:0!important;font-weight:600}.theoryContainer .drill-head .drill-meta{font-size:11px;color:var(--muted);line-height:1.2;margin-top:1px}.theoryContainer .drill-head .mode-pill{font-size:10px;padding:2px 8px}.theoryContainer .drill-head-right{font-size:10px;flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.theoryContainer .drill-head-right .drill-counter,.theoryContainer .drill-head-right .match-count{font-size:10px;line-height:1.2}.theoryContainer .boardSplitLeft .chessBoardWrap>svg{width:100%!important;height:auto!important}.theoryContainer .boardSplitRight{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.theoryContainer .boardSplitRight>.panelStack{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobileReviewTabs{display:flex!important;gap:0;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg1)}.mobileReviewTab{flex:1;padding:6px 0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:none;border:none;border-bottom:2px solid transparent;color:var(--muted);cursor:pointer;transition:color .15s,border-color .15s}.mobileReviewTab.active{color:var(--accent);border-bottom-color:var(--accent)}.panelStack[data-mobile-tab=info] .reviewInfoCard{display:block!important;font-size:12px;padding:8px!important}.panelStack[data-mobile-tab=info] .reviewExtraPanel,.panelStack[data-mobile-tab=info] .coach-card{display:block!important}.panelStack[data-mobile-tab=info] .comment-collapsed{display:flex!important}.panelStack[data-mobile-tab=info] .reviewSaveSection{display:block!important;padding:0!important}.panelStack[data-mobile-tab=info] .reviewSaveSection .btn{font-size:11px!important}.panelStack[data-mobile-tab=info] .masterFilterRow{display:flex!important;flex-wrap:wrap;font-size:12px}.panelStack[data-mobile-tab=info] .reviewAnalysisPanelsWrapper,.panelStack[data-mobile-tab=info] .movesCard,.panelStack[data-mobile-tab=info] .reviewAnnotatePanel{display:none!important}.panelStack[data-mobile-tab=moves] .movesCard{display:flex!important;flex-direction:column!important;max-height:none!important;overflow-y:visible!important;flex:1 1 auto!important}.panelStack[data-mobile-tab=moves] .reviewInfoCard,.panelStack[data-mobile-tab=moves] .reviewExtraPanel,.panelStack[data-mobile-tab=moves] .coach-card,.panelStack[data-mobile-tab=moves] .comment-collapsed,.panelStack[data-mobile-tab=moves] .reviewSaveSection,.panelStack[data-mobile-tab=moves] .masterFilterRow,.panelStack[data-mobile-tab=moves] .reviewAnalysisPanelsWrapper,.panelStack[data-mobile-tab=moves] .reviewAnnotatePanel{display:none!important}.panelStack[data-mobile-tab=annotate] .reviewAnnotatePanel{display:block!important;background:var(--card);border-radius:var(--r-md);padding:4px}.panelStack[data-mobile-tab=annotate] .reviewAnnotatePanel .reviewAnnotationBar{border-top:none}.panelStack[data-mobile-tab=annotate] .reviewSaveSection{display:block!important;padding:0!important}.panelStack[data-mobile-tab=annotate] .reviewSaveSection .btn{font-size:11px!important}.panelStack[data-mobile-tab=annotate] .reviewInfoCard,.panelStack[data-mobile-tab=annotate] .reviewExtraPanel,.panelStack[data-mobile-tab=annotate] .coach-card,.panelStack[data-mobile-tab=annotate] .comment-collapsed,.panelStack[data-mobile-tab=annotate] .masterFilterRow,.panelStack[data-mobile-tab=annotate] .reviewAnalysisPanelsWrapper,.panelStack[data-mobile-tab=annotate] .movesCard{display:none!important}.panelStack[data-mobile-tab=engine] .reviewAnalysisPanelsWrapper{display:contents!important}.panelStack[data-mobile-tab=engine] .reviewInfoCard,.panelStack[data-mobile-tab=engine] .reviewExtraPanel,.panelStack[data-mobile-tab=engine] .coach-card,.panelStack[data-mobile-tab=engine] .comment-collapsed,.panelStack[data-mobile-tab=engine] .reviewSaveSection,.panelStack[data-mobile-tab=engine] .masterFilterRow,.panelStack[data-mobile-tab=engine] .movesCard,.panelStack[data-mobile-tab=engine] .reviewAnnotatePanel{display:none!important}.panelStackTight{gap:2px!important}.panelStackTight>.card:not(.movesCard){min-height:0!important}.trainerTopRow{gap:4px;margin-bottom:0;min-height:0}.trainerTopRow:not(:has(.trainerLoadingIndicator)){display:none}.trainerTopLeft .categoryDropdown{font-size:12px;padding:3px 6px;max-width:160px}.trainerTopRight{font-size:10px}.trainerTopRight .trainerLoadingIndicator{font-size:10px;gap:3px}.boardSplitRight .card{padding:10px!important}.drill-page{max-width:100%}.drill-collection-header{flex-wrap:wrap;padding:10px 12px!important;gap:6px!important}.drill-collection-name{font-size:13px!important;flex:1 1 50%;min-width:0}.drill-collection-header>span:last-child{flex-basis:100%;justify-content:flex-start;margin-left:0!important;gap:4px!important}.drill-collection-header>span:last-child .btn{font-size:11px!important;padding:3px 8px!important}.drill-collection-header .drill-coll-delete{opacity:1}.pos-viewer{padding:8px!important;gap:6px!important;flex-direction:column!important}.pos-viewer-board-col{width:min(65vw,280px);margin:0 auto}.pos-viewer-board-col svg{max-width:100%;height:auto}.pos-viewer-nav .btn{font-size:13px;padding:5px 10px}.pos-viewer-side{min-width:0!important}.pos-viewer-header{font-size:14px!important;padding-bottom:4px!important}.pos-viewer-moves{max-height:140px!important;padding:8px!important}.trainerSessionLayout{grid-template-columns:1fr!important;gap:6px}.trainerSessionLayout .boardCard svg{margin:0 auto;display:block}.trainerSetupGrid,.shared-browse-layout,.lb-grid{grid-template-columns:1fr}.etv-main-split{flex-direction:column}.etv-panel{width:100%;position:static}.boardWithOverlay{width:100%!important;height:auto!important;aspect-ratio:1}.masterFilterRow{flex-wrap:wrap}.masterFilterLabel{white-space:nowrap}.repHeader-actions{gap:4px}.card-pad{padding:12px}.repRow{padding:10px 12px}.repRow-top{flex-wrap:wrap;gap:4px 8px;justify-content:flex-start}.repName{font-size:13.5px;flex:1 1 100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repRow-right{flex-shrink:1;min-width:0;flex-wrap:wrap;gap:4px;margin-left:auto}.repDueBadge{font-size:10.5px;padding:1px 6px}.repDevBadge{font-size:10px;padding:1px 6px}.repColorHeader{margin-top:8px;padding:8px 4px 6px}.recentMiss-card{width:120px}.categorySelectorPills{flex-wrap:wrap}.stats-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}.stats-tabs::-webkit-scrollbar{display:none}.stats-tabs .analysis-tab-btn{white-space:nowrap;flex-shrink:0;font-size:12px!important;padding:5px 9px!important}.stats-tabs .btn{flex-shrink:0;font-size:11px!important;padding:4px 10px!important}.explorer-move-table td{padding:6px;font-size:12px}.explorer-move-table td.move-san{font-size:13px}.explorer-move-table td.games-count,.explorer-move-table td.win-rate{font-size:11px}.explorer-move-table thead th{padding:6px;font-size:9px}.explorer-result-bar{min-width:70px;height:16px;font-size:8px}.explorer-v2-filters{padding:6px 10px;gap:6px 10px;font-size:12px}.explorer-v2-filter-group label{font-size:10px}.stats-opening-name{white-space:normal;word-break:break-word;font-size:12px;line-height:1.3;flex:1 1 40%;min-width:100px}.stats-opening-row{gap:6px;padding:6px}.stats-opening-row .wdl-bar{min-width:50px!important;width:70px!important;flex-shrink:1}.stats-opening-row>div[style*=minWidth]{min-width:70px!important;font-size:11px}.stats-pct-row{font-size:10px;gap:4px}.stats-opening-count{font-size:11px}.stats-summary-value{font-size:24px}.stats-summary-label{font-size:10px}.stats-game-row{gap:6px;font-size:12px}.explorer-fen-bar{word-break:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.explorer-breadcrumb{max-width:100%;font-size:11px}.repHeader-top{gap:8px}.repHeader-title{font-size:17px}.game-filters{gap:6px}.game-filters .input{flex:1 1 100%;width:100%}.settings-section select{width:100%!important;min-width:0!important}.moveList{max-height:140px!important;font-size:12px!important}.moveList td{padding:1px 6px!important}.modal-content{max-width:calc(100vw - 20px)!important}.review-filter-bar{padding:3px 10px!important;margin:-8px -10px 2px!important;border-bottom:none!important}.review-filter-bar-row{flex-wrap:nowrap!important;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:4px!important}.review-filter-bar-row::-webkit-scrollbar{display:none}.review-filter-bar-cats{flex-wrap:nowrap!important;flex-shrink:0;gap:2px!important}.review-filter-tab{font-size:10px!important;padding:2px 6px!important;font-weight:600!important;letter-spacing:.3px;text-transform:uppercase;flex-shrink:0;border-bottom-width:2px!important;border-radius:0!important}.review-filter-bar:not(.review-filter-bar--open) .review-filter-select{display:none!important}.review-filter-bar--open .review-filter-select{font-size:11px!important;padding:3px 6px!important;max-width:120px!important}.review-filter-toggle{flex-shrink:0!important;width:22px!important;min-width:22px!important;padding:2px 0!important;font-size:11px!important}.review-filter-bar-expanded{flex-direction:column!important;align-items:stretch!important;gap:8px!important;padding-top:8px!important;margin-top:6px!important}.review-filter-section{width:100%}.review-filter-seg-btn{font-size:11px!important;padding:3px 8px!important}.reviewProgressBar{height:20px!important;border-radius:10px!important;margin:4px 0 2px!important}.reviewProgressText{font-size:12px!important;line-height:20px!important;font-weight:700!important}.reviewProgressFill{border-radius:10px!important}.failCounter{display:none!important}.failNavPrimary{justify-content:center!important;gap:3px!important}.review-context-bar:not(.expanded) .review-context-details{display:none!important}.review-context-bar-summary{font-size:11px!important}.review-context-bar{padding:6px 8px!important}.mobileReviewTab{padding:5px 0!important;font-size:10px!important;letter-spacing:.3px!important}.movesCard .moveList{height:auto!important;min-height:0!important;max-height:72px!important}.newGamesBanner{padding:4px 10px!important;font-size:11px!important;margin-bottom:4px!important}.theoryContainer>.card.boardCard{padding:6px!important}}.icon-tier-stone img,img.icon-tier-stone{filter:saturate(0) brightness(.6) contrast(1.15)}.icon-tier-bronze img,img.icon-tier-bronze{filter:sepia(1) saturate(2.5) brightness(.72) hue-rotate(-5deg) contrast(1.1)}.icon-tier-silver img,img.icon-tier-silver{filter:saturate(0) brightness(1.5) contrast(1.25) drop-shadow(0 0 2px rgba(180,210,255,.35))}.icon-tier-gold img,img.icon-tier-gold{filter:sepia(1) saturate(6) brightness(1.05) hue-rotate(5deg) contrast(1.05)}.icon-tier-goldglow img,img.icon-tier-goldglow{filter:sepia(1) saturate(6) brightness(1.15) hue-rotate(5deg) contrast(1.05) drop-shadow(0 0 6px rgba(255,200,0,.85)) drop-shadow(0 0 14px rgba(255,170,0,.5))}.icon-tier-darkglow img,img.icon-tier-darkglow{filter:invert(.88) sepia(.4) hue-rotate(230deg) saturate(3) brightness(.75) drop-shadow(0 0 5px rgba(168,85,247,.95)) drop-shadow(0 0 12px rgba(139,0,255,.6))}.icon-tier-diamond img,img.icon-tier-diamond{filter:saturate(.2) brightness(1.6) contrast(1.2) drop-shadow(0 0 5px rgba(180,220,255,.9)) drop-shadow(0 0 12px rgba(120,180,255,.6)) drop-shadow(0 0 20px rgba(200,230,255,.3))}.icon-tier-cosmic img,img.icon-tier-cosmic{filter:sepia(.3) hue-rotate(280deg) saturate(4) brightness(.85) contrast(1.1) drop-shadow(0 0 6px rgba(255,100,200,.9)) drop-shadow(0 0 14px rgba(180,60,255,.65)) drop-shadow(0 0 24px rgba(120,0,200,.35))}.icon-picker-item.icon-tier-stone{background:#8c96a514}.icon-picker-item.icon-tier-bronze{background:#b4783c1a}.icon-picker-item.icon-tier-silver{background:#bed2f014}.icon-picker-item.icon-tier-gold{background:#ffc83214}.icon-picker-item.icon-tier-goldglow{background:#ffc8321a;box-shadow:inset 0 0 12px #ffc8000f}.icon-picker-item.icon-tier-darkglow{background:#783cc81f;box-shadow:inset 0 0 12px #8b00ff14}.icon-picker-item.icon-tier-diamond{background:#8cc8ff1a;box-shadow:inset 0 0 14px #78b4ff0f}.icon-picker-item.icon-tier-cosmic{background:#c850ff1a;box-shadow:inset 0 0 14px #b43cff14}.icon-picker-item{position:relative;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:2px solid transparent;border-radius:8px;background:#32230f0d;cursor:pointer;transition:border-color .15s,background .15s;padding:0}.icon-picker-item:hover:not(:disabled){border-color:#32230f24;background:#32230f14}.icon-picker-selected{border-color:var(--accent, #5b9bd5);background:#2f6bff1f}.icon-picker-locked{opacity:.3;cursor:not-allowed}.icon-lock-badge{position:absolute;bottom:-2px;right:-2px;font-size:10px;line-height:1}.achievements-list{display:flex;flex-direction:column;gap:4px}.achievement-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;border-left:3px solid transparent;transition:background .15s}.achievement-unlocked{border-left-color:var(--good, #2cff7a);background:#2cff7a0a}.achievement-locked{opacity:.45}.achievement-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.achievement-trophy{font-size:18px;color:#f5b731}.profile-tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid var(--border);padding-bottom:0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.profile-tabs::-webkit-scrollbar{display:none}.profile-tab{padding:10px 18px;font-size:13px;font-weight:700;border:none;background:transparent;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;margin-bottom:-1px;white-space:nowrap;flex-shrink:0}.profile-tab:hover{color:var(--text)}.profile-tab-active{color:var(--accent);border-bottom-color:var(--accent, #5b9bd5);border-bottom-width:3px}.profile-tab-content{padding-top:4px}.profile-hero{display:flex;align-items:center;gap:16px;margin-bottom:20px}.profile-hero-icon{width:64px;height:64px}.profile-hero-icon-placeholder{width:64px;height:64px;border-radius:50%;background:#32230f12;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;color:var(--muted)}.profile-hero-name{font-size:22px;font-weight:900}.profile-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.profile-stat-card{padding:14px 12px;text-align:center;background:#32230f0a;border:1px solid var(--border);border-radius:10px}.profile-stat-value{font-size:26px;font-weight:900;line-height:1.2}.profile-stat-label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.achievement-toast-container{position:fixed;bottom:24px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.achievement-toast{pointer-events:auto;display:flex;align-items:center;gap:12px;background:#14161ef2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,215,0,.25);border-radius:var(--r-md);padding:14px 18px;min-width:280px;max-width:380px;box-shadow:0 8px 32px #00000080,0 0 20px #ffd70014;cursor:pointer;animation:achievement-slide-in .4s var(--ease) forwards}.achievement-toast-icon{font-size:28px;color:gold;flex-shrink:0;filter:drop-shadow(0 0 6px rgba(255,215,0,.4))}.achievement-toast-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:gold;margin-bottom:2px}.achievement-toast-name{font-size:14px;font-weight:700;color:#fff}.achievement-toast-desc{font-size:12px;color:#ffffff8c;margin-top:1px}.icon-unlock-toast{border-color:#a855f74d;box-shadow:0 8px 32px #00000080,0 0 20px #a855f71a}.icon-unlock-toast .achievement-toast-title{color:#c88cfff2}.error-toast{border-color:#ff6b6b73;box-shadow:0 8px 32px #00000080,0 0 20px #ff6b6b1f}.error-toast .achievement-toast-icon{filter:drop-shadow(0 0 6px rgba(255,107,107,.4))}.achievement-toast-piece{width:32px;height:32px;flex-shrink:0}@keyframes achievement-slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@media (max-width: 600px){.achievement-toast-container{bottom:72px;right:12px;left:12px}.achievement-toast{min-width:0;max-width:none}}.piece-prog-list{display:flex;flex-direction:column;gap:12px;padding-bottom:24px}@keyframes whats-next-slide-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.whats-next-items{grid-template-columns:1fr}.whats-next-inner{padding:14px 16px}}.piece-prog-card{padding:14px 16px;background:#32230f0a;border:1px solid var(--border);border-radius:12px}.piece-prog-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px}.piece-prog-title{display:flex;align-items:baseline;gap:8px}.piece-prog-bar{flex:1;height:5px;background:#32230f14;border-radius:3px;overflow:hidden;max-width:180px}.piece-prog-bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:3px;transition:width .3s ease}.piece-prog-tiers{display:flex;gap:6px}.icon-picker-current{border-color:#32230f26}.icon-selected-badge{position:absolute;top:-4px;right:-4px;font-size:12px;background:var(--accent, #5b9bd5);color:#fff;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:900;line-height:1}.subscription-cards{display:flex;gap:16px;flex-wrap:wrap}.subscription-card{position:relative;flex:1;min-width:180px;max-width:280px;padding:20px 16px;background:#ffffff8c;border:2px solid var(--border, rgba(50, 35, 15, .07));border-radius:12px;cursor:pointer;text-align:center;transition:border-color .15s,background .15s}.subscription-card:hover{border-color:#32230f26;background:#32230f0a}.subscription-card-active{border-color:var(--accent, #5b9bd5);background:#2f6bff0f}.subscription-card-current{box-shadow:inset 0 0 0 1px #2cff7a40}.sub-card-tier{font-size:18px;font-weight:900;margin-bottom:4px}.sub-card-price{font-size:28px;font-weight:900;margin-bottom:8px}.sub-card-price .muted{font-size:14px;font-weight:600}.sub-card-current-label{position:absolute;top:8px;right:8px;font-size:10px;font-weight:800;text-transform:uppercase;color:var(--good, #2cff7a);background:#2cff7a1a;padding:2px 8px;border-radius:4px}.sub-tier-badge{display:inline-block;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:800;text-transform:uppercase}.sub-tier-badge.sub-tier-standard{background:#8cc8ff26;color:#a0d2fff2}.sub-tier-badge.sub-tier-pro{background:#c850ff26;color:#e678fff2}.shared-author-icon{width:16px;height:16px;vertical-align:text-bottom;margin-right:3px}.block-user-btn{background:none;border:none;cursor:pointer;color:var(--muted);font-size:14px;padding:0 2px;margin-left:4px;vertical-align:text-bottom;line-height:1;opacity:.5;transition:opacity .15s,color .15s}.block-user-btn:hover{opacity:1;color:var(--danger, #e74c3c)}.landing-shell{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}.landing-nav{position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#c8d7eeb8;border-bottom:1px solid rgba(50,35,15,.07)}.landing-nav-inner{max-width:1100px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:8px}.landing-hero{max-width:1100px;margin:0 auto;padding:80px 24px 40px;text-align:center}.landing-hero-title{margin:0 0 20px;font-size:52px;font-weight:950;letter-spacing:-1px;line-height:1.2;padding-bottom:4px;background:linear-gradient(135deg,#1a2240 40%,color-mix(in oklch,var(--accent) 100%,transparent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero-sub{max-width:620px;margin:0 auto 32px;font-size:17px;line-height:1.7;color:#141e41cc}.verify-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:#f0c0601f;color:#8a6a1a;border-bottom:1px solid rgba(240,192,96,.25);font-size:13px;font-weight:500}.verify-banner-actions{display:flex;gap:8px}.verify-banner-btn{background:none;border:none;color:var(--accent);font-size:13px;font-weight:600;cursor:pointer;padding:2px 6px;border-radius:6px}.verify-banner-btn:hover{background:color-mix(in oklch,var(--accent) 8%,transparent)}.maintenance-banner{justify-content:center;text-align:center;background:#f0a03c29;border-bottom-color:#f0a03c66;color:#8a5a12;font-weight:600}[data-mode=dark] .maintenance-banner{background:#f0a03c2e;color:#f0c060;border-bottom-color:#f0a03c59}.demo-banner{padding:4px 12px;font-size:11.5px;font-weight:500;gap:8px}.demo-banner .verify-banner-btn{padding:2px 10px;font-size:11.5px;border-radius:5px;min-height:22px;line-height:1.2}@media (max-width: 1000px){.demo-banner{padding:3px 10px;font-size:11px;gap:6px}.demo-banner .verify-banner-btn{padding:1px 8px;font-size:11px;min-height:20px}}.btn-lg{padding:14px 36px;font-size:16px;font-weight:700;border-radius:14px}.landing-pricing-features .landing-free-item{font-size:13px}.landing-pricing-toggle button{flex:1;background:none;border:none;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;color:var(--muted);transition:all .15s var(--ease)}.landing-pricing-toggle button.active{background:var(--accent);color:#fff;box-shadow:0 1px 3px color-mix(in oklch,var(--accent) 25%,transparent)}.landing-dark{--accent: oklch(.82 .14 80);--accent-2: oklch(.86 .12 80);--landing-bg0: #020617;--landing-bg1: #0b1226;--landing-text: #e8ecf8;--landing-muted: rgba(226, 232, 240, .72);--landing-muted-2: rgba(148, 163, 184, .82);--landing-card: rgba(255, 255, 255, .05);--landing-card-2: rgba(255, 255, 255, .08);--landing-border: rgba(255, 255, 255, .1);--landing-border-2: rgba(255, 255, 255, .15);background:var(--landing-bg0);color:var(--landing-text);position:relative;isolation:isolate}.landing-dark:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 20% 0%,oklch(.82 .14 80 / .18),transparent 38%),radial-gradient(circle at 90% 8%,rgba(167,139,250,.14),transparent 32%),radial-gradient(circle at 80% 100%,oklch(.82 .14 80 / .1),transparent 40%)}.landing-dark .landing-nav{background:#0206178c;border-bottom:1px solid var(--landing-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.landing-dark .landing-nav-inner{max-width:1280px;padding:16px 28px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.landing-dark .landing-hero{max-width:1440px;padding:48px 28px 80px;text-align:left}.landing-dark .landing-hero-title{font-size:64px;line-height:1.05;font-weight:800;letter-spacing:-.02em;color:var(--landing-text);background:none;-webkit-text-fill-color:initial;-webkit-background-clip:initial;background-clip:initial;margin:0 0 24px;text-align:left}.landing-dark .landing-hero-sub{font-size:18px;line-height:1.65;color:var(--landing-muted);margin:0 0 32px;max-width:520px;text-align:left}.landing-dark .landing-hero-sub em{color:#60a5fa;font-style:normal;font-weight:700}.landing-dark .landing-hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:40px}.landing-dark .landing-hero-actions .btn{align-self:stretch;max-width:340px;justify-content:center}@media (max-width: 1024px){.landing-dark .landing-hero-title{font-size:48px}.landing-dark .landing-nav-inner{grid-template-columns:auto 1fr}}@media (max-width: 640px){.landing-dark .landing-hero{padding:32px 20px 64px}.landing-dark .landing-hero-title{font-size:36px}.landing-dark .landing-hero-sub{font-size:16px}}.landing-features .landing-features-grid{grid-template-columns:repeat(3,1fr)}.landing-features .landing-feature-card{border-radius:22px;transition:transform .18s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease)}.landing-features .landing-feature-card:hover{transform:translateY(-3px);border-color:color-mix(in oklch,var(--accent) 28%,transparent);box-shadow:0 14px 36px color-mix(in oklch,var(--accent) 10%,transparent)}@media (max-width: 820px){.landing-features .landing-features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.landing-features .landing-features-grid{grid-template-columns:1fr}}.landing-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#14285073;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center}.landing-login-card{position:relative;width:400px;max-width:92vw;animation:landingFadeIn .15s ease;background:#faf8f4f7!important;box-shadow:0 24px 80px #32230f33,0 0 0 1px #00000014!important;padding:32px!important}.social-login-btn{width:100%;margin-bottom:8px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:600;padding:11px 16px;border-radius:10px;border:1.5px solid rgba(0,0,0,.15);background:#00000006;color:var(--text);cursor:pointer;font-size:14px;transition:background .15s,border-color .15s,box-shadow .15s}.social-login-btn:hover{background:#0000000d;border-color:#00000040;box-shadow:0 1px 3px #0000000f}.social-login-divider{display:flex;align-items:center;gap:12px;margin:16px 0}.social-login-divider:before,.social-login-divider:after{content:"";flex:1;height:1px;background:#0000001f}.landing-login-card .input{border:1.5px solid rgba(0,0,0,.15);background:#fff;box-shadow:inset 0 1px 2px #0000000a}.landing-login-card .input:focus{border-color:var(--accent);box-shadow:inset 0 1px 2px #0000000a,0 0 0 3px color-mix(in oklch,var(--accent) 12%,transparent)}.landing-login-card .input::placeholder{color:#00000059}.landing-login-card .btn-primary{opacity:1;background:linear-gradient(135deg,var(--accent),var(--accent2))!important;color:#fff!important;font-weight:700;border:none}.landing-login-card .btn-primary:disabled{opacity:.45}.lang-dropdown{position:relative;z-index:100}.lang-dropdown-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;height:38px;padding:0 10px;border-radius:var(--r-sm);border:var(--bd-w, 1.5px) solid var(--border);background:var(--chrome-btn-bg, rgba(255,255,255,.6));color:var(--text);cursor:pointer;font-weight:500;white-space:nowrap}.lang-dropdown-btn:hover{border-color:var(--accent)}.lang-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:0 8px 24px #0000001f;min-width:180px;max-height:320px;overflow-y:auto;padding:4px}.lang-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:none;font-size:13px;color:var(--text);cursor:pointer;border-radius:6px;text-align:left;font-weight:400}.lang-dropdown-item:hover{background:color-mix(in oklch,var(--accent) 8%,transparent)}.lang-dropdown-item.active{background:color-mix(in oklch,var(--accent) 12%,transparent);font-weight:600}@keyframes landingFadeIn{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 820px){.landing-hero-title{font-size:36px}.landing-features-grid{grid-template-columns:repeat(2,1fr)}.landing-steps{flex-direction:column;align-items:center}.landing-pricing-row{flex-direction:column;max-width:100%}.landing-showcase,.landing-showcase-reverse{flex-direction:column;gap:24px}.landing-showcase-img{width:100%;max-width:100%;flex-basis:auto}}@media (max-width: 520px){.landing-nav-inner{padding:12px 16px}.landing-nav-inner .brand-mark{width:36px;height:36px}.landing-hero{padding:48px 16px 24px}.landing-hero-title{font-size:28px}.landing-hero-sub{font-size:15px}.landing-features-grid{grid-template-columns:1fr}.landing-section{padding:40px 16px}.landing-section-title{font-size:26px}.landing-pricing-toggle button{padding:6px 8px;font-size:12px}.landing-step{max-width:100%}}.rpz{display:flex;flex-direction:column;gap:12px}.rpz-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 14px;background:var(--bg2);border-radius:8px}.rpz-toolbar select{font-size:13px;max-width:220px}.rpz-toolbar .rpz-rating-label{font-size:13px;color:var(--text2);display:flex;align-items:center;gap:4px}.rpz-toolbar .rpz-rating-input{width:72px;font-size:13px;color:var(--text)}.rpz-toolbar .rpz-devs-label{font-size:13px;display:flex;align-items:center;gap:5px;cursor:pointer}.rpz-toolbar .rpz-devs-label input[type=checkbox]{width:16px;height:16px;accent-color:#27ae60}.rpz-segmented{display:flex;align-items:center;gap:0;border:1px solid var(--border, #333);border-radius:8px;overflow:hidden;background:var(--bg2)}.rpz-segmented button{background:transparent;border:none;color:var(--text2);font-size:12px;font-weight:600;padding:6px 14px;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.rpz-segmented button:not(:last-child){border-right:1px solid var(--border, #333)}.rpz-segmented button:hover{background:#32230f0d}.rpz-segmented button.active{background:color-mix(in oklch,var(--accent) 14%,transparent);color:var(--accent);font-weight:700}.rpz-segmented .rpz-refresh{border-left:1px solid var(--border, #333);padding:6px 10px;font-size:14px}.rpz-stats{display:flex;border:1px solid var(--border, #333);border-radius:8px;overflow:hidden}.rpz-stats .rpz-stat{flex:1;text-align:center;padding:10px 8px;border-right:1px solid var(--border, #333)}.rpz-stats .rpz-stat:last-child{border-right:none}.rpz-stat-value{font-size:20px;font-weight:700;color:var(--fg);line-height:1.2}.rpz-stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text2);margin-top:2px}.rpz-filter-section{border:1px solid var(--border, #333);border-radius:8px;overflow:hidden}.rpz-filter-section summary{padding:8px 12px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text2);background:var(--bg2);-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:6px;list-style:none}.rpz-filter-section summary::-webkit-details-marker{display:none}.rpz-filter-section summary:before{content:"▶";font-size:9px;transition:transform .15s;display:inline-block}.rpz-filter-section[open] summary:before{transform:rotate(90deg)}.rpz-filter-section .rpz-filter-badge{font-size:11px;font-weight:700;background:color-mix(in oklch,var(--accent) 14%,transparent);color:var(--accent);border-radius:10px;padding:1px 7px;margin-left:auto}.rpz-filter-chips{display:flex;gap:6px;flex-wrap:wrap;padding:10px 12px}.rpz-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:20px;font-size:12px;font-weight:500;cursor:pointer;border:1px solid var(--border, #444);color:var(--text2);background:transparent;transition:all .15s;white-space:nowrap}.rpz-chip:hover{background:#32230f0f;border-color:var(--text-muted, #666)}.rpz-chip.active{background:color-mix(in oklch,var(--accent) 14%,transparent);color:var(--accent);border-color:color-mix(in oklch,var(--accent) 30%,transparent)}.rpz-chip.rpz-chip-green.active{background:#27ae60;border-color:#27ae60;color:#fff}.rpz-chip .rpz-chip-count{font-size:11px;opacity:.7}.rpz-save-bar{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:var(--bg2);border-radius:8px}.rpz-save-bar .rpz-save-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.rpz-save-bar .rpz-save-actions .btn{font-size:13px}.rpz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(146px,1fr));gap:8px;max-height:540px;overflow-y:auto;padding:2px}.rpz-card{position:relative;border-radius:8px;border:2px solid transparent;cursor:pointer;background:var(--bg2);overflow:hidden;transition:border-color .15s,transform .15s,box-shadow .15s}.rpz-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px #32230f1a;border-color:var(--text-muted, #555)}.rpz-card.active{border-color:var(--accent, #3b82f6);box-shadow:0 0 0 2px #3b82f640}.rpz-card.saved{background:#27ae6014}.rpz-card-board{position:relative;width:100%;aspect-ratio:1;overflow:hidden}.rpz-card-board .drill-mini-board{flex-shrink:unset;width:100%!important;height:100%!important}.rpz-card-board svg{display:block;width:100%;height:100%}.rpz-badge{position:absolute;font-weight:700;border-radius:4px;padding:2px 6px;font-size:11px;line-height:1;z-index:2;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.rpz-badge-rating{top:4px;right:4px;background:#32230fcc;color:#fff;font-size:12px;padding:3px 7px}.rpz-badge-proximity{bottom:4px;right:4px;background:#27ae60cc;color:#fff}.rpz-badge-pop{bottom:4px;left:4px;background:#32230fa6;color:#fff;font-size:10px}.rpz-badge-lines{bottom:22px;left:4px;background:#27ae60d9;color:#fff;font-size:10px}.rpz-badge-saved{top:24px;left:4px;background:color-mix(in oklch,var(--accent) 80%,transparent);color:#fff;font-size:10px;max-width:calc(100% - 8px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rpz-card-check{position:absolute;top:4px;left:4px;z-index:3;width:16px;height:16px;accent-color:#27ae60;opacity:0;transition:opacity .15s}.rpz-card:hover .rpz-card-check,.rpz-card.saved .rpz-card-check{opacity:1}.rpz-card-opening{font-size:11px;color:#27ae60;padding:4px 6px;border-top:1px solid var(--border, #333);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.rpz-pagination{display:flex;gap:8px;justify-content:center;align-items:center}.rpz-pagination .muted{font-size:12px;line-height:28px}.pzp-page{max-width:1200px;margin:0 auto;padding:0 16px 32px}.pzp-page .rpz-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));max-height:none;overflow-y:visible}.pzp-solve-wrap{max-width:1060px;margin:0 auto}.pzp-solve-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.pzp-solve-back{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text2);cursor:pointer}.pzp-solve-back:hover{color:var(--fg)}.pzp-solve-nav{display:flex;align-items:center;gap:10px}.pzp-solve{display:flex;gap:24px}.pzp-solve-board{flex:0 0 480px}.pzp-solve-info{flex:1 1 340px;min-width:280px}@media (max-width: 900px){.pzp-solve{flex-direction:column;gap:16px}.pzp-solve-board{flex:none;width:100%;max-width:480px}.pzp-solve-header{flex-direction:column;gap:8px;align-items:flex-start}}.mg-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 14px;transition:border-color .15s var(--ease)}.mg-card:hover{border-color:#1e3c822e}.mg-card-players{font-weight:600;font-size:14px}.mg-card-meta{font-size:12px;color:var(--muted);margin-top:2px}.mg-card-overlap{display:inline-block;font-size:11px;padding:2px 8px;border-radius:10px;background:color-mix(in oklch,var(--accent) 10%,transparent);color:var(--accent);font-weight:600}.mg-card-actions{display:flex;gap:6px;margin-top:8px}.mg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.master-match-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--yellow)}.master-match-badge a{color:var(--yellow);text-decoration:none}.master-match-badge a:hover{text-decoration:underline}.study-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.study-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);padding:16px;cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease)}.study-card:hover{border-color:#32230f24;background:var(--card2)}.study-card-name{font-size:15px;font-weight:600;margin-bottom:4px}.study-card-meta{font-size:12px;color:var(--muted)}.study-card-rep{border-left:3px solid var(--accent)}.study-color-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--r-sm);font-size:18px;flex-shrink:0}.study-page-editor{margin:0 auto;padding:0 0 0 16px;max-width:1920px}.study-topbar{display:flex;align-items:center;gap:10px;padding:4px;margin-bottom:0}.study-layout{display:grid;grid-template-columns:240px auto 1fr;gap:0;align-items:stretch;height:calc(100dvh - 120px);min-height:400px;overflow:hidden}@media (max-width: 1100px){.study-layout{grid-template-columns:160px auto 1fr}}@media (max-width: 900px){.study-layout{grid-template-columns:1fr}}.study-chapters-sidebar{background:var(--card);border:1px solid var(--border);border-radius:var(--r-md) 0 0 var(--r-md);padding:0;display:flex;flex-direction:column;min-height:0;overflow:hidden}.study-sidebar-header{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);padding:10px 12px 6px;flex-shrink:0}.study-chapters-list{flex:1;overflow-y:auto;padding:0 4px 4px}.study-ch{padding:6px 8px;border-radius:4px;cursor:pointer;font-size:12px;transition:background .1s var(--ease);display:flex;align-items:center;gap:4px;line-height:1.3;color:#141e41b8}.study-ch:hover{background:#32230f0f;color:#141e41e6}.study-ch-active{background:color-mix(in oklch,var(--accent) 15%,transparent);color:var(--accent);font-weight:600}.study-ch-active:hover{background:color-mix(in oklch,var(--accent) 20%,transparent)}.study-ch-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.study-ch-del{background:none;border:none;color:#32230f2e;cursor:pointer;font-size:15px;padding:0;line-height:1;flex-shrink:0;opacity:0;transition:opacity .1s}.study-ch:hover .study-ch-del{opacity:1}.study-ch-del:hover{color:var(--bad)}.study-board-col{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 4px 0 20px;min-width:0}.study-board-toolbar{display:flex;gap:2px;align-items:center;justify-content:center;padding:4px 0}.study-board-toolbar button{font-size:16px;padding:6px 14px;background:#32230f0d;border:1px solid rgba(50,35,15,.07);border-radius:4px;color:#141e419e;cursor:pointer;transition:all .1s var(--ease);line-height:1}.study-board-toolbar button:hover{background:#32230f14;color:#141e41e6}.study-right-panel{background:var(--card);border:1px solid var(--border);border-radius:0 var(--r-md) var(--r-md) 0;display:flex;flex-direction:column;min-width:0;overflow:hidden}.study-moves-section{flex:1;overflow-y:auto;min-height:0;border-top:1px solid var(--border);display:flex;flex-direction:column}.study-moves-section .moveList{flex:1;overflow-y:auto;min-height:0;border:none;border-radius:0;background:transparent}.movelist-fork{display:flex;flex-wrap:wrap;border-top:1px solid var(--border);position:sticky;bottom:0;background:var(--card, rgba(30,30,34,1));z-index:2;flex-shrink:0}.movelist-fork-move{flex:0 0 50%;padding:3px 14px;font-size:14px;color:var(--text);cursor:pointer;background:#3c28140f;transition:background .1s;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.movelist-fork-move:hover{background:#3c28141f}.movelist-fork-active{background:#3692e7d9;color:#fff;font-weight:600}.movelist-fork-active:hover{background:#3692e7f2}.movelist-ctx-menu{background:var(--bg1);border:1px solid var(--border);border-radius:var(--r-sm);box-shadow:0 4px 16px #0000002e;padding:4px 0;min-width:160px}.movelist-ctx-item{display:block;width:100%;text-align:left;padding:7px 14px;font-size:13px;font-weight:500;background:none;border:none;color:var(--text);cursor:pointer}.movelist-ctx-item:hover{background:color-mix(in oklch,var(--accent) 10%,transparent)}.study-comment-box{width:100%;min-height:40px;max-height:80px;resize:vertical;background:transparent;border:none;border-top:1px solid var(--border);color:inherit;font-family:inherit;font-size:13px;padding:8px 10px;transition:background .15s var(--ease)}.study-comment-box:focus{outline:none;background:color-mix(in oklch,var(--accent) 4%,transparent)}.study-nag-bar{display:flex;gap:2px;padding:4px 8px;border-top:1px solid var(--border)}.study-nag-btn{width:30px;height:26px;border-radius:5px;border:1px solid transparent;background:transparent;color:#141e4185;font-weight:700;font-size:13px;cursor:pointer;transition:all .1s var(--ease);display:flex;align-items:center;justify-content:center}.study-nag-btn:hover{background:#32230f12;color:#141e41d1}.study-nag-btn-active{color:var(--accent);background:color-mix(in oklch,var(--accent) 10%,transparent)}.study-explorer-section{border-top:1px solid var(--border)}.study-explorer-header{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:8px 10px;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:4px;transition:background .1s var(--ease)}.study-explorer-header:hover{background:#32230f0a}.study-explorer-body{padding:0 4px 6px;max-height:180px;overflow-y:auto}.study-explorer-row{cursor:pointer;transition:background .08s}.study-explorer-row:hover{background:#32230f0f}.contextMenu{position:fixed;z-index:9999;background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(60,40,20,.1);border-radius:var(--r-sm);padding:4px 0;min-width:180px;box-shadow:0 8px 24px #32230f1f;font-size:13px}.contextMenu-item{padding:6px 14px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .1s var(--ease)}.contextMenu-item:hover{background:#32230f12}.contextMenu-item[data-disabled=true]{opacity:.4;pointer-events:none}.contextMenu-sep{height:1px;background:var(--border);margin:4px 0}.contextMenu-nags{display:flex;gap:2px;padding:4px 14px}.contextMenu-nags .study-nag-btn{width:28px;height:24px;font-size:12px}.varNag{font-weight:700;margin-left:1px}.varComment{font-style:italic;color:var(--muted);font-size:.92em;margin:0 4px}.study-select-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#32230f26;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9000}.study-select-inner{background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(60,40,20,.1);border-radius:var(--r-lg);padding:20px;min-width:320px;max-width:460px;max-height:80vh;overflow-y:auto}.study-right-panel .stockfish-panel{border:none;border-radius:0;margin:0}[data-mode=dark] .topbar{background:#0c0e14d9;border-bottom-color:#ffffff0f}[data-mode=dark] .topbar:after{opacity:.3}[data-mode=dark] .card{background:#ffffff0a;border-color:#ffffff0f;box-shadow:0 2px 12px #0003}[data-mode=dark] .card:hover{border-color:color-mix(in oklch,var(--accent) 18%,transparent);box-shadow:0 4px 20px #0000004d}[data-mode=dark] .btn{border-color:#ffffff1a;background:#ffffff0f;color:var(--text)}[data-mode=dark] .btn:hover{border-color:#ffffff2e;background:#ffffff1a}[data-mode=dark] .btn.active,[data-mode=dark] .btn.active:hover{background:color-mix(in oklch,var(--accent) 15%,transparent);border-color:color-mix(in oklch,var(--accent) 45%,transparent)}[data-mode=dark] .input{border-color:#ffffff1a;background:#ffffff0f;color:var(--text)}[data-mode=dark] .input:focus{border-color:color-mix(in oklch,var(--accent) 50%,transparent);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 10%,transparent)}[data-mode=dark] .input::placeholder{color:#c8d2e640}[data-mode=dark] .modal-overlay{background:#0009}[data-mode=dark] .modal-content{background:#181b24;border-color:#ffffff14;box-shadow:0 24px 80px #0006}[data-mode=dark] .nodeBlock{border-color:#ffffff0f;background:#ffffff08}[data-mode=dark] .nodeBlock:hover{border-color:color-mix(in oklch,var(--accent) 20%,transparent);background:#ffffff0f}[data-mode=dark] .repRow{border-color:#ffffff0f;background:#ffffff08}[data-mode=dark] .repRow:hover{border-color:color-mix(in oklch,var(--accent) 20%,transparent);background:#ffffff0f}[data-mode=dark] .tacticCard{border-color:#ffffff0f;background:#ffffff08}[data-mode=dark] .stockfish-panel{border-color:#ffffff0f;background:#ffffff05}[data-mode=dark] .movesCard,[data-mode=dark] .moveList{background:#ffffff05;border-color:#ffffff0f}[data-mode=dark] .coachCard{border-color:#ffffff0f;background:#ffffff08}[data-mode=dark] .textarea{border-color:#ffffff1a;background:#ffffff0f}[data-mode=dark] .trainerRepRow{background:#ffffff05;border-color:#ffffff0f}[data-mode=dark] .trainerRepRow:hover{background:#ffffff0a}[data-mode=dark] .integration-row{background:#ffffff05;border-color:#ffffff0f}[data-mode=dark] .rep-overflow-menu{background:#181b24f7;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}[data-mode=dark] .rep-overflow-menu button:hover{background:#ffffff0f}[data-mode=dark] .nav-more-dropdown{background:#181b24f7;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}[data-mode=dark] .progressBar{background:#ffffff0f;border-color:#ffffff14}[data-mode=dark] .repProgBar{background:#ffffff0f}[data-mode=dark] .contextMenu{background:#181b24f7;border-color:#ffffff1a;box-shadow:0 8px 24px #0006}[data-mode=dark] .contextMenu-item:hover,[data-mode=dark] .contextMenu-sep{background:#ffffff0f}[data-mode=dark] .study-select-modal{background:#0006}[data-mode=dark] .study-select-inner{background:#181b24f7;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}[data-mode=dark] .study-select-item:hover{background:#ffffff0f}[data-mode=dark] .repLegTip-popover{background:#181b24f7;border-color:#ffffff1a;color:var(--muted);box-shadow:0 6px 24px #0000004d}[data-mode=dark] .pill{background:#ffffff0f;border-color:#ffffff1a}[data-mode=dark] .pill:hover:not(.active){background:#ffffff1a;border-color:#ffffff29}[data-mode=dark] .pill.active{background:color-mix(in oklch,var(--accent) 15%,transparent);border-color:color-mix(in oklch,var(--accent) 40%,transparent)}[data-mode=dark] .nav .pill{background:none;border:none;border-bottom:2.5px solid transparent}[data-mode=dark] .nav .pill:hover:not(.active){background:none;border:none;border-bottom:2.5px solid transparent}[data-mode=dark] .nav .pill.active{background:none;border:none;border-bottom:2.5px solid var(--accent)}[data-mode=dark] .reviewYouPlayed{background:color-mix(in oklch,var(--accent) 8%,transparent);border-left-color:color-mix(in oklch,var(--accent) 50%,transparent)}[data-mode=dark] .reviewProgressBar{background:#ffffff0f}[data-mode=dark] .reviewSinceFilter{background-color:#1a1d26;border-color:#ffffff1a;color:var(--text)}[data-mode=dark] .reviewFocusBtn{border-color:#ffffff1a;color:var(--muted)}[data-mode=dark] .reviewFocusBtn.active{background:color-mix(in oklch,var(--accent) 15%,transparent);border-color:color-mix(in oklch,var(--accent) 40%,transparent);color:var(--accent)}[data-mode=dark] .engineCandRow{border-bottom-color:#ffffff0a}[data-mode=dark] .engineCandBar{background:#ffffff0f}[data-mode=dark] .engineCandPlayed{border-top-color:#ffffff14}[data-mode=dark] .engineCandEval{color:#c8d2e6b3}[data-mode=dark] .failNavRow{border-color:#ffffff0f}[data-mode=dark] .failNavSecondary{border-top-color:#ffffff0f}[data-mode=dark] .movelist-fork-move{background:#ffffff0d}[data-mode=dark] .movelist-fork-move:hover{background:#ffffff1a}[data-mode=dark] .failCounter{color:var(--text)}[data-mode=dark] .stockfish-panel-label{color:var(--muted)}[data-mode=dark] select,[data-mode=dark] select.input,[data-mode=dark] .watchSpeedSelect{background-color:#1a1d26;border-color:#ffffff1a;color:var(--text)}[data-mode=dark] select option{background-color:#1a1d26;color:var(--text)}[data-mode=dark] .material-bar .material-piece{filter:invert(.85)}[data-mode=dark]{--eval-black: #1a1d26}[data-mode=dark] .moveListCell{background:#ffffff08;color:var(--text)}[data-mode=dark] .moveListCell:hover{background:#ffffff12;border-color:#ffffff12}[data-mode=dark] .moveListNum{color:var(--muted2)}[data-mode=dark] .movesCard{color:var(--text)}[data-mode=dark] .openingTable-num{color:var(--muted2)}[data-mode=dark] .openingTable-move{color:var(--text)}[data-mode=dark] .openingTable-move:hover{background:#ffffff12}[data-mode=dark] .openingTable td{border-bottom-color:#ffffff0d}[data-mode=dark] .openingTable td.varMove-critical,[data-mode=dark] .varMove-critical{border-bottom:2px solid #f5b731}[data-mode=dark] .openingTable td.varMove-theory{border-bottom-color:var(--good)}[data-mode=dark] .openingTable td.varMove-theory-black{border-bottom-color:#b47aff}[data-mode=dark] .openingTable td.varMove-user-game{border-bottom-color:var(--accent)}[data-mode=dark] .openingTable td.varMove-start{border-left-color:var(--good)}[data-mode=dark] .varMoveNum{color:#c8d2e68c}[data-mode=dark] .varMove{color:#dce1ebeb}[data-mode=dark] .varMove:hover{background:#ffffff1a}[data-mode=dark] .varInline{color:#c8d2e6a6}[data-mode=dark] .varInline .varMoveNum{color:#b4bed273}[data-mode=dark] .varInline .varMove-side{color:#c8d2e6a6}[data-mode=dark] .varLine{border-left-color:#ffffff26}[data-mode=dark] .varLine:before{border-top-color:#ffffff26}[data-mode=dark] .varLine-last:after{border-left-color:#ffffff26}[data-mode=dark] .btn.btn-key-active{color:var(--accent);background:color-mix(in oklch,var(--accent) 18%,transparent);border-color:color-mix(in oklch,var(--accent) 45%,transparent)}[data-mode=dark] .btn.btn-start-active,[data-mode=dark] .btn.btn-study-active{color:var(--good);background:#34d97a2e;border-color:#34d97a73}.home-light{--card: rgba(255, 255, 255, .48);--card2: rgba(255, 255, 255, .58);--border: rgba(255, 255, 255, .5);--border2: rgba(60, 40, 20, .12);--text: #1a2240;--muted: rgba(20, 30, 65, .65);--muted2: rgba(20, 30, 65, .48);--surface: rgba(255, 255, 255, .35);--shadow: 0 4px 20px rgba(50, 35, 15, .08);color:var(--text);position:relative;z-index:0}.home-light:before{display:none}.home-light .repRow{background:#ffffff73;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.55);box-shadow:0 1px 4px #32230f0d,inset 0 1px #ffffff80}.home-light .repRow:hover{background:#ffffff9e;border-color:#ffffffb3;box-shadow:0 4px 16px color-mix(in oklch,var(--accent) 10%,transparent),inset 0 1px #fff9}.home-light .repRow.selected{border-color:color-mix(in oklch,var(--accent) 45%,transparent);background:color-mix(in oklch,var(--accent) 8%,transparent)}.home-light .repMeta{color:#141e419e}.home-light .repGameStats{color:#141e4194}.home-light .repColorHeader{color:#141e41b8}.home-light .repMasteryLegend{color:#141e4194}.home-light .repLegInfo{border-color:#141e414d;color:#141e418c}.home-light .repHeader-sep{background:#3c28141f}.home-light .small.muted,.home-light .small{color:#141e41a6}.home-light .extend-dialog-subtitle{color:#141e419e}.home-light .repProgBar{background:#3c281414}.home-light .progressBar{background:#3c281414;border-color:#3c28141a}.home-light .repDueBadge{background:color-mix(in oklch,var(--accent) 12%,transparent)}.home-light .repDevBadge{background:#b453091f}.home-light .repBadge-accent{background:color-mix(in oklch,var(--accent) 12%,transparent)}.home-light .repBadge-yellow{background:#b478141f}.home-light .repBadge-ok{background:#34d97a1f}.home-light .btn{border:1px solid rgba(255,255,255,.55);background:#fff6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 1px 3px #32230f0f;color:var(--text)}.home-light .btn:hover{background:#fff9;border-color:#ffffffb3;box-shadow:0 2px 8px #32230f1a}.home-light .btn-primary,.home-light .btn-primary:hover{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff!important;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.home-light .shared-view-toggle{border-color:#ffffff80;background:#ffffff40}.home-light .shared-view-btn{color:#141e418c}.home-light .shared-view-btn:hover{background:#ffffff4d}.home-light .shared-view-active,.home-light .shared-view-active:hover{color:#fff}.home-light .repSection{border-top-color:#3c281414}.home-light .extend-dialog{background:#ffffff8c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-color:#ffffff80}.home-light .rep-overflow-btn{color:#141e4185}.home-light .rep-overflow-btn:hover{background:#ffffff4d;color:#141e41bf}.home-light .rep-overflow-menu{background:#ffffffe6;backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);border-color:#fff9;box-shadow:0 8px 32px #32230f24}.home-light .rep-overflow-menu button{color:var(--text)}.home-light .rep-overflow-menu button:hover{background:color-mix(in oklch,var(--accent) 6%,transparent)}.home-light .rep-overflow-sep{background:#3c281414}.home-light .move-limit-bar{background:#fff6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-color:#ffffff80}.home-light .move-limit-text{color:#141e4180}.home-light .move-limit-track{background:#3c28141a}.premade-rep-level-bar-inline{display:inline-block;width:48px;height:4px;background:#80808040;border-radius:2px;margin-left:6px;vertical-align:middle;overflow:hidden}.premade-rep-level-bar-fill-inline{display:block;height:100%;background:var(--accent);border-radius:2px;transition:width .3s var(--ease)}.home-light .recentMisses-title{color:#141e41ad}.home-light .recentMiss-card{background:#ffffff6b;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.5)}.home-light .recentMiss-card:hover{background:#fff9;border-color:#ffffffb3}.home-light .recentMiss-opp{color:#141e41d9}.home-light .recentMiss-detail{color:#141e419e}.home-light .recentMiss-meta{color:#141e4185}.home-light .recentMiss-eval{color:#141e41b8}.home-light .recentMiss-evalArrow{color:#141e416b}.home-light .recentMisses-scroll::-webkit-scrollbar-thumb{background:#3c28141f}.home-light .recentMisses-pill{border-color:#fff6;color:#141e4173}.home-light .recentMisses-pill:hover{border-color:#141e418c;color:#141e41a6;background:#ffffff40}.home-light .recentMisses-expand{border-color:#fff6;color:#141e4166}.home-light .recentMisses-expand:hover{border-color:#141e418c;color:#141e41b3;background:#ffffff40}.home-light .input{border:1px solid rgba(255,255,255,.5);background:#ffffff8c;color:var(--text);box-shadow:inset 0 1px 3px #32230f0d}.home-light .input:focus{border-color:color-mix(in oklch,var(--accent) 50%,transparent);box-shadow:inset 0 1px 3px #32230f0d,0 0 0 3px color-mix(in oklch,var(--accent) 12%,transparent)}.home-light .input::placeholder{color:#141e4159}.home-light input[type=number].input{color:var(--text)}.home-light .shared-rep-card{background:#ffffff6b;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.5)}.home-light .shared-rep-card:hover{background:#fff9;border-color:#ffffffb3}.home-light .rep-card-tag{background:#3c28140f;color:#141e4199}.home-light .rec-toolbar{background:#fff6;border-color:#ffffff80}.home-light .repRow-wrap:hover .repQuickBar-hover,.home-light .repRow-wrap.rep-menu-active .repQuickBar-hover{opacity:1}.home-light .card{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border:none;box-shadow:none}.home-light .card:hover{background:transparent;border:none;box-shadow:none}.home-light .browse-official-card,.home-light .browse-community-card{background:#ffffff6b;border-color:#ffffff80}.home-light .browse-official-card:hover,.home-light .browse-community-card:hover{background:#fff9;border-color:#ffffffb3}.home-light .rep-detail-card{background:#ffffffe0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-color:#fff9;box-shadow:0 16px 48px #32230f29}.home-light .repLegDot{box-shadow:0 0 0 1px #141e411a}[data-mode=dark] .home-light{--card: rgba(255, 255, 255, .04);--card2: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .08);--border2: rgba(255, 255, 255, .14);--text: #e2e4ea;--muted: rgba(200, 210, 230, .55);--muted2: rgba(200, 210, 230, .35);--surface: rgba(255, 255, 255, .04);--shadow: 0 4px 20px rgba(0, 0, 0, .25)}[data-mode=dark] .home-light .repRow{background:#ffffff08;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid rgba(255,255,255,.06);box-shadow:0 2px 12px #0003}[data-mode=dark] .home-light .repRow:hover{background:#ffffff0f;border-color:color-mix(in oklch,var(--accent) 20%,transparent);box-shadow:0 4px 20px #0000004d}[data-mode=dark] .home-light .repRow.selected{border-color:color-mix(in oklch,var(--accent) 45%,transparent);background:color-mix(in oklch,var(--accent) 8%,transparent)}[data-mode=dark] .home-light .repMeta,[data-mode=dark] .home-light .repGameStats,[data-mode=dark] .home-light .repMasteryLegend,[data-mode=dark] .home-light .repWinRate-n,[data-mode=dark] .home-light .extend-dialog-subtitle{color:var(--muted)}[data-mode=dark] .home-light .repColorHeader{color:var(--text)}[data-mode=dark] .home-light .repWinRate-item,[data-mode=dark] .home-light .repWinRate-bad .repWinRate-pct{color:var(--muted)}[data-mode=dark] .home-light .repLegInfo{border-color:#ffffff1a;color:var(--muted)}[data-mode=dark] .home-light .repHeader-sep{background:#ffffff0f}[data-mode=dark] .home-light .small.muted,[data-mode=dark] .home-light .small{color:var(--muted)}[data-mode=dark] .home-light .repProgBar{background:#ffffff0f}[data-mode=dark] .home-light .progressBar{background:#ffffff0f;border-color:#ffffff14}[data-mode=dark] .home-light .premade-rep-progress-bar,[data-mode=dark] .home-light .premade-level-bar{background:#ffffff0f}[data-mode=dark] .home-light .repDueBadge{background:color-mix(in oklch,var(--accent) 15%,transparent)}[data-mode=dark] .home-light .repDevBadge{background:#b453092e}[data-mode=dark] .home-light .repBadge-accent{background:color-mix(in oklch,var(--accent) 15%,transparent)}[data-mode=dark] .home-light .repBadge-yellow{background:#b478142e}[data-mode=dark] .home-light .repBadge-ok{background:#34d97a26}[data-mode=dark] .home-light .btn{border:1px solid rgba(255,255,255,.1);background:#ffffff0f;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;color:var(--text)}[data-mode=dark] .home-light .btn:hover{background:#ffffff1a;border-color:#ffffff2e}[data-mode=dark] .home-light .btn-primary,[data-mode=dark] .home-light .btn-primary:hover{background:var(--accent);color:#fff}[data-mode=dark] .home-light .repSection{border-top-color:#ffffff0f}[data-mode=dark] .home-light .rep-overflow-btn{color:var(--muted)}[data-mode=dark] .home-light .rep-overflow-btn:hover{background:#ffffff0f;color:var(--text)}[data-mode=dark] .home-light .rep-overflow-menu{background:#181b24f7;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}[data-mode=dark] .home-light .rep-overflow-menu button{color:var(--text)}[data-mode=dark] .home-light .rep-overflow-menu button:hover,[data-mode=dark] .home-light .rep-overflow-sep{background:#ffffff0f}[data-mode=dark] .home-light .move-limit-text{color:var(--muted)}[data-mode=dark] .home-light .move-limit-track{background:#ffffff0f}[data-mode=dark] .home-light .premade-rep-section-header{color:var(--muted)}[data-mode=dark] .home-light .premade-rep-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06);box-shadow:0 2px 12px #0003}[data-mode=dark] .home-light .premade-rep-card:hover{background:#ffffff0f;border-color:color-mix(in oklch,var(--accent) 20%,transparent)}[data-mode=dark] .home-light .premade-rep-desc{color:var(--muted)}[data-mode=dark] .home-light .premade-rep-actions{border-top-color:#ffffff0f}[data-mode=dark] .home-light .premade-level-unlocked{background:#ffffff0a}[data-mode=dark] .home-light .premade-level-next{border-color:color-mix(in oklch,var(--accent) 30%,transparent)}[data-mode=dark] .home-light .premade-level-count,[data-mode=dark] .home-light .premade-level-pct,[data-mode=dark] .home-light .premade-level-reason,[data-mode=dark] .home-light .recentMisses-title{color:var(--muted)}[data-mode=dark] .home-light .recentMiss-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06)}[data-mode=dark] .home-light .recentMiss-card:hover{background:#ffffff0f;border-color:color-mix(in oklch,var(--accent) 20%,transparent)}[data-mode=dark] .home-light .recentMiss-opp{color:var(--text)}[data-mode=dark] .home-light .recentMiss-detail,[data-mode=dark] .home-light .recentMiss-meta,[data-mode=dark] .home-light .recentMiss-eval{color:var(--muted)}[data-mode=dark] .home-light .recentMiss-evalArrow{color:var(--muted2)}[data-mode=dark] .home-light .recentMisses-scroll::-webkit-scrollbar-thumb{background:#ffffff1f}[data-mode=dark] .home-light .recentMisses-pill{background:#ffffff0f;border-color:#ffffff1a}[data-mode=dark] .home-light .recentMisses-pill:hover{background:#ffffff1a}[data-mode=dark] .home-light .recentMisses-expand{background:#ffffff0a;color:var(--muted)}[data-mode=dark] .home-light .recentMisses-expand:hover{background:#ffffff14}[data-mode=dark] .home-light .input{background:#ffffff0f;border-color:#ffffff1a;color:var(--text)}[data-mode=dark] .home-light .input:focus{border-color:color-mix(in oklch,var(--accent) 50%,transparent);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 10%,transparent)}[data-mode=dark] .home-light .input::placeholder{color:#c8d2e640}[data-mode=dark] .home-light .shared-rep-card{background:#ffffff08;border:1px solid rgba(255,255,255,.06)}[data-mode=dark] .home-light .shared-rep-card:hover{background:#ffffff0f;border-color:color-mix(in oklch,var(--accent) 20%,transparent)}[data-mode=dark] .home-light .rep-card-tag{background:#ffffff0f;border-color:#ffffff1a;color:var(--muted)}[data-mode=dark] .home-light .card{background:#ffffff0a;border-color:#ffffff0f;box-shadow:0 2px 12px #0003}[data-mode=dark] .home-light .card:hover{border-color:color-mix(in oklch,var(--accent) 18%,transparent);box-shadow:0 4px 20px #0000004d}[data-mode=dark] .home-light .browse-official-card,[data-mode=dark] .home-light .browse-community-card{background:#ffffff08;border-color:#ffffff0f}[data-mode=dark] .home-light .browse-official-card:hover,[data-mode=dark] .home-light .browse-community-card:hover{background:#ffffff0f;border-color:color-mix(in oklch,var(--accent) 20%,transparent)}[data-mode=dark] .home-light .rep-detail-card{background:#181b24;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#ffffff14;box-shadow:0 16px 48px #0006}[data-mode=dark] .home-light .repLegDot{box-shadow:0 0 0 1px #ffffff1a}[data-mode=dark] .home-light .premade-drill-btn{background:#ffffff0f;border-color:#ffffff1a;color:var(--text)}[data-mode=dark] .home-light .shared-view-toggle{background:#ffffff0a}[data-mode=dark] .home-light .shared-view-btn{color:var(--muted)}[data-mode=dark] .home-light .shared-view-btn:hover{background:#ffffff0f}[data-mode=dark] .home-light .shared-view-active,[data-mode=dark] .home-light .shared-view-active:hover{background:color-mix(in oklch,var(--accent) 15%,transparent);color:var(--accent)}[data-mode=dark] .home-light .extend-dialog{background:#181b24;border-color:#ffffff14;box-shadow:0 8px 32px #0006}[data-mode=dark] .home-light .rec-toolbar,[data-mode=dark] .home-light .move-limit-bar{background:#ffffff08;border-color:#ffffff0f}[data-mode=dark] .home-light input[type=number].input{color:var(--text)}.landing-dark .landing-nav{background:#0e1018c7;border-bottom-color:#ffffff0f}.landing-dark .landing-hero-title{background:linear-gradient(135deg,#e8ecf8 40%,#78a0ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.landing-dark .landing-hero-sub{color:#dce2f0bf}.landing-dark .landing-section-sub{color:#c8d2e6b3}.landing-dark .landing-pricing-card{background:#ffffff08;border-color:#ffffff14}.landing-dark .landing-pricing-featured{box-shadow:0 0 0 1px color-mix(in oklch,var(--accent) 55%,transparent),0 8px 24px #00000059}.landing-dark .landing-pricing-badge{background:color-mix(in oklch,var(--accent) 18%,transparent)}.landing-dark .landing-pricing-header{border-bottom-color:#ffffff14}.landing-dark .landing-pricing-toggle{background:#ffffff0a}.landing-dark .landing-footer{border-top-color:#ffffff0f}.landing-dark .landing-features .landing-feature-card{background:#ffffff08;border-color:#ffffff14}.landing-dark .landing-features .landing-feature-card:hover{background:#ffffff0d;border-color:#78a0ff52;box-shadow:0 14px 36px #00000059}.landing-dark .landing-showcase-img{border:none;box-shadow:0 18px 50px #00000073}.landing-dark .landing-feature-card{background:#ffffff08;border-color:#ffffff14}.landing-dark .landing-modal-overlay{background:#000000a6}.landing-dark .landing-login-card{background:#181b24fa!important;color:#e8ecf8;box-shadow:0 24px 80px #0000008c,0 0 0 1px #ffffff14!important}.landing-dark .social-login-btn{border-color:#ffffff24;background:#ffffff0a;color:#e8ecf8}.landing-dark .social-login-btn:hover{background:#ffffff14;border-color:#ffffff38;box-shadow:0 1px 3px #0000004d}.landing-dark .social-login-divider:before,.landing-dark .social-login-divider:after{background:#ffffff1a}.landing-dark .landing-login-card .input{border:1.5px solid rgba(255,255,255,.12);background:#ffffff0d;color:#e8ecf8;box-shadow:none}.landing-dark .landing-login-card .input:focus{border-color:color-mix(in oklch,var(--accent) 55%,transparent);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 15%,transparent)}.landing-dark .landing-login-card .input::placeholder{color:#c8d2e659}[data-mode=dark] .lang-dropdown-btn{background:#ffffff0d;border-color:#ffffff1f}[data-mode=dark] .lang-dropdown-btn:hover{border-color:color-mix(in oklch,var(--accent) 45%,transparent)}[data-mode=dark] .lang-dropdown-menu{background:#181b24fa;border-color:#ffffff1a;box-shadow:0 8px 24px #00000073}[data-mode=dark] .lang-dropdown-item:hover{background:#ffffff0f}[data-mode=dark] .lang-dropdown-item.active{background:color-mix(in oklch,var(--accent) 18%,transparent)}[data-mode=dark] .verify-banner{background:#f0c0601f;color:#f0c060;border-bottom-color:#f0c06038}[data-mode=dark] .verify-banner-btn:hover{background:color-mix(in oklch,var(--accent) 15%,transparent)}[data-mode=dark] .onboarding-wizard{background:#181b24fa;border-color:#ffffff14}[data-mode=dark] .wizard-discover-card{background:#ffffff08;border-color:#ffffff14}[data-mode=dark] .wizard-discover-card:hover{background:#ffffff0f;border-color:color-mix(in oklch,var(--accent) 25%,transparent)}[data-mode=dark] .wizard-plan-col{background:#ffffff05;border-color:#ffffff0f}[data-mode=dark] .wizard-plan-col-row{border-color:#ffffff0f}[data-mode=dark] .wizard-back-btn:hover{background:color-mix(in oklch,var(--accent) 12%,transparent)}.pagehelp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20000;pointer-events:none;cursor:pointer}.pagehelp-overlay>*{pointer-events:auto}.pagehelp-mask{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh}.pagehelp-dimmer{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073}.pagehelp-tooltip{position:fixed;width:320px;max-width:calc(100vw - 24px);background:#1c2438;border:1.5px solid color-mix(in oklch,var(--accent) 35%,transparent);border-radius:var(--r-md, 14px);padding:16px 18px;box-shadow:0 8px 40px #00000073,0 0 0 1px color-mix(in oklch,var(--accent) 12%,transparent),0 0 20px color-mix(in oklch,var(--accent) 8%,transparent);z-index:20001;animation:pagehelp-fade-in .2s var(--ease);cursor:default}.pagehelp-tooltip-text{font-size:14px;font-weight:500;color:#dce6f5f2;line-height:1.5;margin-bottom:2px}.pagehelp-tooltip-nav{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.pagehelp-step-counter{font-size:12px;color:#a0afc8d9;font-weight:600}.pagehelp-btn{border:1px solid rgba(255,255,255,.12);background:color-mix(in oklch,var(--accent) 10%,transparent);color:#dce6f5e6;font-size:12px;font-weight:600;padding:5px 14px;border-radius:var(--r-sm, 10px);cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease)}.pagehelp-btn:hover{background:color-mix(in oklch,var(--accent) 20%,transparent);border-color:color-mix(in oklch,var(--accent) 30%,transparent)}.pagehelp-btn-accent{background:color-mix(in oklch,var(--accent) 18%,transparent);color:#7aafff;border-color:color-mix(in oklch,var(--accent) 35%,transparent)}.pagehelp-btn-accent:hover{background:color-mix(in oklch,var(--accent) 28%,transparent);border-color:color-mix(in oklch,var(--accent) 50%,transparent)}.pagehelp-tooltip:before{content:"";position:absolute;width:0;height:0;border:7px solid transparent}.pagehelp-tooltip[data-arrow=up]:before{top:-13px;left:50%;transform:translate(-50%);border-bottom:7px solid color-mix(in oklch,var(--accent) 50%,transparent)}.pagehelp-tooltip[data-arrow=down]:before{bottom:-13px;left:50%;transform:translate(-50%);border-top:7px solid color-mix(in oklch,var(--accent) 50%,transparent)}.pagehelp-tooltip[data-arrow=left]:before{left:-13px;top:50%;transform:translateY(-50%);border-right:7px solid color-mix(in oklch,var(--accent) 50%,transparent)}.pagehelp-tooltip[data-arrow=right]:before{right:-13px;top:50%;transform:translateY(-50%);border-left:7px solid color-mix(in oklch,var(--accent) 50%,transparent)}@keyframes pagehelp-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.masterGuessPrompt{text-align:center;padding:20px;border-radius:var(--r-md);background:color-mix(in oklch,var(--accent) 6%,transparent);border:1px solid color-mix(in oklch,var(--accent) 12%,transparent)}.masterFeedback{text-align:center;padding:16px;border-radius:var(--r-md);font-weight:700;font-size:18px}.masterFeedback.correct{background:#34d97a14;border:1px solid rgba(52,217,122,.2);color:var(--good)}.masterFeedback.wrong{background:#ff6b6b14;border:1px solid rgba(255,107,107,.2);color:var(--bad)}.masterComplete{text-align:center;padding:24px 16px}.masterMoveList{font-size:13px;line-height:1.8;font-family:monospace}.masterMove.critical{background:color-mix(in oklch,var(--accent) 10%,transparent);font-weight:600}.game-review-board-wrapper{display:flex;gap:0}.game-review-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#0000004d;border-radius:var(--r-md);z-index:10;color:#fff;font-size:14px;font-weight:500}.game-review-nav{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 0}.game-review-ply{font-size:11px;min-width:52px;text-align:center;opacity:.6}.game-review-header{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-bottom:1px solid var(--border)}.game-review-header-top{display:flex;align-items:center;justify-content:space-between}.game-review-back{font-size:12px;padding:3px 10px;flex-shrink:0}.game-review-players-row{display:flex;align-items:center;gap:6px;min-width:0}.game-review-player{font-weight:600;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-review-vs{font-size:11px;opacity:.5;flex-shrink:0}.game-review-result{font-size:11px;font-weight:600;padding:1px 6px;border-radius:var(--r-sm)}.game-review-meta-row{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);flex-wrap:wrap}.game-review-meta-dot{opacity:.4}.game-review-accuracy-inline{display:flex;gap:12px;margin-top:4px}.game-review-acc-item{display:flex;align-items:center;gap:5px;flex:1}.game-review-acc-label{font-size:10px;font-weight:500;opacity:.6;width:30px;flex-shrink:0}.game-review-acc-track{flex:1;height:6px;background:var(--border);border-radius:3px;overflow:hidden}.game-review-acc-fill{height:100%;border-radius:3px;transition:width .4s var(--ease)}.game-review-acc-white{background:#b4b4b4cc}.game-review-acc-black{background:#3c3c3cb3}.game-review-acc-val{font-size:11px;font-weight:600;min-width:32px;text-align:right}.game-review-move-info{display:flex;align-items:center;gap:8px;padding:5px 12px;font-size:12px;border-left:3px solid var(--muted);background:var(--card);margin:0 12px;border-radius:0 var(--r-sm) var(--r-sm) 0}.game-review-move-info-move{font-weight:600}.game-review-move-info-label{font-weight:600;font-size:11px}.game-review-move-info-eval{font-size:11px;opacity:.7}.game-review-move-info-best{font-size:11px;opacity:.6;margin-left:auto}.game-review-eval-graph-wrapper{padding:4px 12px 8px}.eval-graph{border-radius:6px;overflow:hidden;border:1px solid var(--border)}.move-grade{font-size:10px;font-weight:700;margin-left:2px;vertical-align:super;line-height:1}.move-em-dot{display:inline-block;width:6px;height:6px;border-radius:50%;margin-left:2px;vertical-align:middle;flex-shrink:0}.move-em-inaccuracy{background:var(--yellow)}.move-em-mistake{background:#e89040}.move-em-blunder{background:var(--bad)}@media (max-width: 700px){.game-review-header{padding:6px 8px}.game-review-accuracy-inline{gap:8px}.game-review-move-info{margin:0 8px;font-size:11px;gap:5px}}.admin-page{padding:24px;max-width:var(--max-w)}.admin-nav{display:flex;align-items:center;gap:16px;margin-bottom:24px;flex-wrap:wrap}.admin-nav h1{font-size:1.3rem;font-weight:600;margin:0}.admin-nav-pills{display:flex;gap:6px}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:20px}.admin-stat-card{padding:16px;text-align:center}.admin-stat-value{font-size:1.5rem;font-weight:700;color:var(--text)}.admin-stat-label{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.admin-section{margin-bottom:24px}.admin-section h3{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:20px 0 10px}.admin-table{width:100%;border-collapse:collapse;font-size:.85rem}.admin-table th,.admin-table td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--border)}.admin-table th{font-weight:600;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.3px}.admin-table tbody tr:hover{background:color-mix(in oklch,var(--accent) 4%,transparent)}.admin-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.admin-sortable:hover{color:var(--accent)}.admin-clickable{cursor:pointer}.admin-clickable:hover{background:color-mix(in oklch,var(--accent) 6%,transparent)}.admin-nowrap{white-space:nowrap}.admin-badge{display:inline-block;padding:2px 8px;border-radius:var(--r-sm);background:color-mix(in oklch,var(--accent) 8%,transparent);color:var(--accent);font-size:.78rem;font-weight:500}.admin-detail-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-fen-cell code{font-size:.75rem;color:var(--muted)}.admin-reason{font-size:.75rem;color:var(--text);word-break:break-all}.admin-user-detail{margin-top:8px}.admin-detail-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.admin-detail-header h2{font-size:1.1rem;font-weight:600;margin:0}.admin-detail-tabs{display:flex;gap:6px;margin-bottom:16px}.admin-debug-header{display:flex;align-items:center;gap:12px;justify-content:space-between}.admin-debug-header h3{margin:0}.admin-reclass-result{padding:10px 14px;border-radius:var(--r-sm);margin:12px 0;font-size:.85rem}.admin-reclass-result.success{background:#34d97a1a;color:var(--good)}.admin-reclass-result.error{background:#ff6b6b1a;color:var(--bad)}.admin-loading,.admin-error{padding:32px;text-align:center;color:var(--muted)}@media (max-width: 700px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-users-table{font-size:.78rem}.admin-users-table th:nth-child(n+4),.admin-users-table td:nth-child(n+4){display:none}}.lp-header{margin-bottom:32px}.lp-difficulty-check input[type=checkbox]{accent-color:var(--accent)}.lp-phase-done .lp-phase-num{color:var(--good);background:#34d97a1a}.lp-item-skipped .lp-item-name{text-decoration:line-through;text-decoration-color:var(--muted2)}.lp-item-dot.done{border-color:var(--good);background:var(--good);color:#fff;font-size:.68rem;font-weight:700}.lp-item-dot.due{border-color:var(--accent);background:var(--accent);color:#fff;font-size:.68rem;font-weight:700}.lp-item-dot.locked{border-color:var(--border);font-size:.6rem}.lp-item-right .btn-sm{font-size:.75rem;padding:4px 12px;min-width:64px;text-align:center}.lp-item-right .btn-done{background:#34d97a1f;color:var(--good);border:none;cursor:default;pointer-events:none}.lp-item-right .btn-locked{background:var(--bg2);color:var(--muted2);border:1px solid var(--border);cursor:default}.lp-item:hover .lp-btn-skip{opacity:1}.lp-item-dot.skipped{width:28px;height:28px;border-radius:50%;border:2px dashed var(--muted2);background:transparent}.lp-header-row .lp-overall{flex:1;min-width:160px}.lp-phase-locked .lp-phase-icon{filter:grayscale(1)}.lp-phase-before .lp-phase-header{margin-bottom:0}.lp-picker-opt.active{border-color:var(--accent);background:color-mix(in oklch,var(--accent) 8%,transparent)}.lp-notation-section h4{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--accent);margin:0 0 6px}.lp-notation-section p{margin:0;color:var(--text)}.lp-notation-pairs span{color:var(--text)}.lp-notation-pairs strong{font-family:monospace;font-weight:700;color:var(--accent)}@keyframes lp-toast-in{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.lp-btn-done-toggle.active{background:#34d97a1a;color:var(--good);border-color:#34d97a4d}.lp-btn-expand:hover,.lp-btn-expand.active{color:var(--accent);border-color:var(--accent);background:color-mix(in oklch,var(--accent) 6%,transparent)}.lp-item>.lp-positions-wrap{flex-basis:100%;margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.lp-pos-section-title:hover .lp-section-toggle{opacity:1}.lp-pos-section-suspended .lp-pos-section-title{color:var(--muted);background:var(--bg0)}.lp-pos-section-suspended .lp-section-toggle,.lp-pos-card:hover .lp-pos-suspend-btn{opacity:1}.lp-pos-suspend-btn.suspended{opacity:1;background:var(--bad);width:auto;border-radius:var(--r-sm);font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:0 5px;height:16px;line-height:16px}.lp-viewer-toolbar .btn{min-width:36px}@media (max-width: 700px){.lp-viewer-body{flex-direction:column;overflow:auto}.lp-viewer-board-col{align-items:center}}@media (max-width: 600px){.lp-container{padding:20px 16px calc(64px + env(safe-area-inset-bottom,0px))}.lp-title{font-size:1.3rem}.lp-phase{padding:16px}.lp-phase-header{flex-wrap:wrap;gap:10px}.lp-phase-title{flex-wrap:wrap;font-size:.95rem}.lp-phase-icon{width:34px;height:34px;font-size:1.2rem}.lp-phase-rating{order:-1;margin-left:auto}.lp-timeline:before{display:none}.lp-item{padding:10px 12px}.lp-item-desc,.lp-picker-desc{display:none}.lp-picker-opt{padding:12px 14px}.lp-header-row{flex-direction:column;align-items:stretch;gap:8px}.lp-continue{padding:12px 14px;gap:12px}.lp-continue-name{font-size:.88rem;white-space:normal}.lp-continue-btn{padding:6px 14px;font-size:.8rem}.lp-btn-skip{opacity:1}.lp-btn-done-toggle{font-size:.68rem;padding:3px 8px}.lp-picker-grid{gap:6px}.lp-item{flex-wrap:wrap;gap:6px 10px}.lp-item-body{flex:1 1 50%}.lp-item-right{flex:0 0 auto;flex-wrap:wrap;gap:4px;margin-left:auto}.lp-item-right .btn-sm{font-size:.7rem;padding:4px 10px;min-width:0}.lp-btn-plan,.lp-in-plan{display:none}.lp-btn-expand{min-width:24px;padding:2px 4px}}.support-chat-fab.with-label{width:auto;border-radius:26px;padding:0 18px 0 14px}body:has(.landing-modal-overlay) .support-chat-fab{display:none}.support-chat-panel{position:fixed;bottom:24px;right:24px;z-index:9999;width:380px;max-height:520px;display:flex;flex-direction:column;background:var(--card2, rgba(255,255,255,.85));border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:0 12px 40px #0000001f,0 4px 16px #0000000f;overflow:hidden;animation:support-chat-slide-up .25s var(--ease-out)}@keyframes support-chat-slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.support-chat-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:linear-gradient(135deg,var(--accent),var(--accent2, var(--accent)));color:#fff}.support-chat-title{font-weight:600;font-size:.95rem}.support-chat-close{background:none;border:none;color:#fff;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;opacity:.8;transition:opacity .15s}.support-chat-close:hover{opacity:1}.support-chat-messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;min-height:200px;max-height:360px}.support-chat-bubble{max-width:85%;padding:10px 14px;border-radius:var(--r-md);font-size:.88rem;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.support-chat-bubble.assistant{align-self:flex-start;background:var(--bg1, #f0f2f5);color:var(--text)}.support-chat-bubble.user{align-self:flex-end;background:var(--accent);color:#fff}.support-chat-error{align-self:center;color:var(--bad, #ff6b6b);font-size:.82rem;padding:4px 8px}.support-chat-input{display:flex;gap:8px;padding:10px 14px;border-top:1px solid var(--border)}.support-chat-input .input{flex:1;font-size:.88rem;padding:8px 12px}.support-chat-send{padding:8px 16px;font-size:.85rem;white-space:nowrap}.support-chat-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);background:var(--card, rgba(255,255,255,.55));padding:0 8px}.support-chat-tab{flex:1;background:none;border:none;border-bottom:2px solid transparent;padding:10px 6px;font-size:.82rem;font-weight:600;color:var(--muted, rgba(20,30,65,.65));cursor:pointer;transition:color .15s,border-color .15s}.support-chat-tab:hover{color:var(--text)}.support-chat-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.support-chat-tab-body{display:flex;flex-direction:column;flex:1;min-height:0}.support-form{display:flex;flex-direction:column;gap:12px;padding:14px;overflow-y:auto;flex:1}.support-form-intro{margin:0;font-size:.85rem;color:var(--muted);line-height:1.45}.support-form-label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:600;color:var(--muted)}.support-form-label .input{font-size:.88rem;padding:8px 12px}.support-form-textarea{resize:vertical;font-family:inherit;line-height:1.4}.support-form-row{display:flex;gap:8px;flex-wrap:wrap}.support-form-success{background:#34d97a1f;color:var(--good, #2a9d5e);font-size:.85rem;padding:10px 12px;border-radius:var(--r-sm);line-height:1.4}.support-form-empty{padding:24px 14px;text-align:center;font-size:.85rem;color:var(--muted)}.support-feedback-list{display:flex;flex-direction:column;gap:10px;padding:14px;overflow-y:auto;flex:1}.support-feedback-new{align-self:flex-start;font-size:.85rem;padding:6px 14px}.support-thread-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.support-thread-row{width:100%;text-align:left;background:var(--card, rgba(255,255,255,.55));border:1px solid var(--border);border-radius:var(--r-sm);padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:background .15s,border-color .15s}.support-thread-row:hover{background:var(--card2, rgba(255,255,255,.75));border-color:color-mix(in oklch,var(--accent) 30%,transparent)}.support-thread-row-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.support-thread-row-meta{display:flex;gap:10px;font-size:.75rem;color:var(--muted)}.support-thread-type-pill{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;background:color-mix(in oklch,var(--accent) 10%,transparent);color:var(--accent)}.support-thread-type-pill.bug{background:#ff6b6b1f;color:var(--bad, #d04848)}.support-thread-subject{font-size:.9rem;font-weight:600;color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-thread-unread{font-size:.7rem;font-weight:700;background:var(--accent);color:#fff;padding:2px 8px;border-radius:999px}.support-thread-closed{font-style:italic;color:var(--muted2, var(--muted))}.support-thread-updated{margin-left:auto}.support-thread-view{display:flex;flex-direction:column;flex:1;min-height:0}.support-thread-view-head{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border);flex-wrap:wrap}.support-thread-view-title{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600;color:var(--text);flex:1;min-width:0}.support-thread-view-title>span:not(.support-thread-type-pill){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.support-thread-messages{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px;min-height:160px}.support-thread-msg{background:var(--bg1, #f0f2f5);border-radius:var(--r-md);padding:10px 12px;font-size:.85rem}.support-thread-msg.admin{background:color-mix(in oklch,var(--accent) 10%,transparent)}.support-thread-msg-meta{display:flex;justify-content:space-between;font-size:.72rem;color:var(--muted);margin-bottom:4px}.support-thread-msg-body{white-space:pre-wrap;line-height:1.5;color:var(--text)}.support-chat-input .support-form-textarea{flex:1;font-size:.88rem;padding:8px 12px}[data-mode=dark] .support-chat-tabs{background:#0f172a99}[data-mode=dark] .support-thread-row{background:#0f172a80}[data-mode=dark] .support-thread-row:hover{background:#0f172ab3}[data-mode=dark] .support-thread-msg{background:#0f172a99}[data-mode=dark] .support-thread-msg.admin{background:#f3b94c24}@media (max-width: 850px){.support-chat-fab{bottom:calc(60px + env(safe-area-inset-bottom,0px));right:12px}.support-chat-fab.with-label{padding:0 14px 0 10px}.support-chat-fab-label{font-size:.78rem}}@media (max-width: 600px){.support-chat-fab{width:40px;height:40px}.support-chat-fab.with-label{width:40px;border-radius:50%;padding:0}.support-chat-fab-label{display:none}.support-chat-fab svg{width:20px;height:20px}.support-chat-panel{bottom:0;right:0;left:0;width:100%;max-height:75vh;border-radius:var(--r-lg) var(--r-lg) 0 0}.support-chat-messages{max-height:none}}[data-mode=dark] .btn:hover{background:#f3b94c24;border-color:#f3b94c66;color:var(--text)}[data-mode=dark] .btn.active:hover{background:#f3b94c38;border-color:#f3b94c8c;color:var(--accent)}[data-mode=dark] .home-light .btn:hover{background:#f3b94c24;border-color:#f3b94c66;color:var(--text)}[data-mode=dark] .home-light .btn-primary:hover{background:linear-gradient(180deg,#fac871,#f3b94c);color:#021426}[data-mode=dark] .home-light .rep-overflow-btn:hover,[data-mode=dark] .rep-overflow-menu button:hover,[data-mode=dark] .home-light .rep-overflow-menu button:hover,[data-mode=dark] .contextMenu-item:hover,[data-mode=dark] .study-select-item:hover{background:#f3b94c1f;color:var(--text)}[data-mode=dark] .pill:hover:not(.active){background:#f3b94c1a;border-color:#f3b94c47;color:var(--text)}[data-mode=dark] .nav .pill:hover:not(.active){background:none;color:var(--text);opacity:.85}[data-mode=dark] .movelist-fork-move:hover{background:#f3b94c24;color:var(--text)}[data-mode=dark] .moveListCell:hover,[data-mode=dark] .openingTable-move:hover,[data-mode=dark] .lang-dropdown-btn:hover,[data-mode=dark] .lang-dropdown-item:hover{background:#f3b94c1f;color:var(--text)}[data-mode=dark] .verify-banner-btn:hover{background:#f3b94c29;border-color:#f3b94c73;color:var(--text)}[data-mode=dark] .social-login-btn:hover{background:#f3b94c1a;border-color:#f3b94c52;color:var(--text)}[data-mode=dark] .landing-modal-overlay{background:#060a16b8;backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%)}[data-mode=dark] .landing-login-card{background:radial-gradient(ellipse at 50% -10%,rgba(79,140,255,.22) 0%,transparent 55%),linear-gradient(180deg,#20263cfa,#121626fa)!important;color:#e8ecf8;border-radius:22px;padding:30px 26px 24px!important;position:relative;overflow:hidden;box-shadow:0 1px #ffffff14 inset,0 36px 90px #0009,0 0 60px #4f8cff2e,0 0 0 1px #ffffff14!important}[data-mode=dark] .landing-login-card:before{content:"";position:absolute;top:0;left:8%;right:8%;height:2px;background:linear-gradient(90deg,transparent 0%,rgba(79,140,255,0) 5%,#4f8cff 30%,#9c6bff 70%,rgba(156,107,255,0) 95%,transparent 100%);border-radius:0 0 2px 2px;box-shadow:0 0 20px #4f8cff8c;pointer-events:none}[data-mode=dark] .landing-login-card:after{content:"";position:absolute;bottom:-40%;right:-30%;width:80%;height:80%;background:radial-gradient(circle,rgba(156,107,255,.1) 0%,transparent 60%);pointer-events:none;z-index:0}[data-mode=dark] .landing-login-card>*{position:relative;z-index:1}[data-mode=dark] .landing-login-card h2{background:linear-gradient(135deg,#fff,#cfd8ff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.01em}[data-mode=dark] .landing-login-card .muted{color:#c8d2e6ad}[data-mode=dark] .social-login-btn{border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,#ffffff12,#ffffff08);color:#e8ecf8;border-radius:12px;padding:12px 16px;font-weight:600;transition:all .16s cubic-bezier(.4,0,.2,1);box-shadow:0 1px #ffffff0f inset,0 2px 8px #0003}[data-mode=dark] .social-login-btn:hover{background:linear-gradient(180deg,#ffffff1f,#ffffff0f);border-color:#ffffff42;transform:translateY(-1px);box-shadow:0 1px #ffffff1f inset,0 6px 18px #0000004d}[data-mode=dark] .social-login-btn:active{transform:scale(.98)}[data-mode=dark] .social-login-divider{margin:18px 0}[data-mode=dark] .social-login-divider:before,[data-mode=dark] .social-login-divider:after{background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.14) 50%,transparent 100%);height:1px}[data-mode=dark] .landing-login-card .input{border:1.5px solid rgba(255,255,255,.1);background:#0a0e1c8c;color:#e8ecf8;border-radius:12px;padding:13px 15px;font-size:14px;box-shadow:0 1px #ffffff0a inset,0 2px 6px #0000002e inset;transition:all .16s cubic-bezier(.4,0,.2,1)}[data-mode=dark] .landing-login-card .input:hover:not(:focus){border-color:#ffffff2e;background:#0e1424a6}[data-mode=dark] .landing-login-card .input:focus{border-color:#4f8cffb3;background:#0e1424b8;box-shadow:0 1px #ffffff0a inset,0 2px 6px #0000002e inset,0 0 0 4px #4f8cff2e,0 0 18px #4f8cff38;outline:none}[data-mode=dark] .landing-login-card .input::placeholder{color:#c8d2e673}[data-mode=dark] .landing-login-card .btn-ghost{color:#c8d2e6bf;background:transparent;border:1.5px solid rgba(255,255,255,.1);border-radius:12px;font-weight:600;transition:all .16s cubic-bezier(.4,0,.2,1)}[data-mode=dark] .landing-login-card .btn-ghost:hover{background:#ffffff0f;border-color:#fff3;color:#e8ecf8}[data-mode=dark] .landing-login-card .btn-primary{background:linear-gradient(180deg,#1e2d4eeb,#121c34f5)!important;color:#e7efff!important;font-weight:700;letter-spacing:.01em;border-radius:12px;padding:14px 20px;border:1px solid oklch(.82 .14 80 / .38)!important;position:relative;overflow:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px #ffffff14 inset,0 0 0 1px #f3b94c2e,0 6px 18px #0206178c,0 0 24px #f3b94c1a}[data-mode=dark] .landing-login-card .btn-primary:hover:not(:disabled){background:linear-gradient(180deg,#26375cf5,#182440)!important;border-color:#f3b94c8c!important;transform:translateY(-1px);box-shadow:0 1px #ffffff1f inset,0 0 0 1px #f3b94c52,0 8px 22px #02061799,0 0 32px #f3b94c2e}[data-mode=dark] .landing-login-card .btn-primary:active:not(:disabled){transform:scale(.98)}[data-mode=dark] .landing-login-card .btn-primary:disabled{background:linear-gradient(180deg,#121a2cb3,#0c1222cc)!important;color:#c8d7eb66!important;border-color:#f3b94c24!important;box-shadow:0 1px #ffffff0a inset;opacity:1;cursor:not-allowed}[data-mode=dark] .home-light .shared-view-btn:hover,[data-mode=dark] .home-light .recentMisses-pill:hover,[data-mode=dark] .home-light .recentMisses-expand:hover,[data-mode=dark] .wizard-back-btn:hover{background:#f3b94c1f;color:var(--text)}[data-mode=dark] .card:hover,[data-mode=dark] .nodeBlock:hover,[data-mode=dark] .repRow:hover,[data-mode=dark] .trainerRepRow:hover,[data-mode=dark] .home-light .repRow:hover,[data-mode=dark] .home-light .premade-rep-card:hover,[data-mode=dark] .home-light .recentMiss-card:hover,[data-mode=dark] .home-light .shared-rep-card:hover,[data-mode=dark] .home-light .card:hover,[data-mode=dark] .home-light .browse-official-card:hover,[data-mode=dark] .home-light .browse-community-card:hover,[data-mode=dark] .landing-features .landing-feature-card:hover,[data-mode=dark] .wizard-discover-card:hover{border-color:#f3b94c52;background:#f3b94c0f;color:var(--text)}[data-mode=dark] .onboarding-wizard{background:#0f172aeb;border:1px solid oklch(.82 .14 80 / .1);border-radius:var(--r-lg);box-shadow:0 8px 40px #02061773}[data-mode=dark] .wizard-card,[data-mode=dark] .wizard-choice-card,[data-mode=dark] .wizard-account-card,[data-mode=dark] .wizard-guidance-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.12)}[data-mode=dark] .wizard-card:hover,[data-mode=dark] .wizard-choice-card:hover,[data-mode=dark] .wizard-account-card:hover,[data-mode=dark] .wizard-guidance-card:hover{background:#f3b94c14;border-color:#f3b94c59}[data-mode=dark] .wizard-rating-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.12)}[data-mode=dark] .wizard-rating-card:hover{border-color:#f3b94c66}[data-mode=dark] .wizard-rating-card.active{background:#f3b94c24;border-color:#f3b94c8c;color:var(--accent)}[data-mode=dark] .wizard-phase-preview{background:linear-gradient(180deg,#f3b94c1f,#f3b94c0a);border:1px solid oklch(.82 .14 80 / .32);box-shadow:0 2px 10px #f3b94c1a}[data-mode=dark] .studyPlanCard{background:linear-gradient(180deg,#ffffff0d,#ffffff05);border-color:#ffffff17;box-shadow:0 8px 32px #02061759,inset 0 1px #ffffff0a}[data-mode=dark] .studyPlanCard{box-shadow:0 10px 40px #02061773,0 0 0 1px #f3b94c0d,inset 0 1px #ffffff0d}[data-mode=dark] .studyPlanCol{background:#ffffff06;border-color:#ffffff14}[data-mode=dark] .studyPlanCol:hover{border-color:#f3b94c3d;background:#ffffff09}[data-mode=dark] .studyPlanColHead{background:#ffffff08;border-bottom-color:#ffffff14}[data-mode=dark] .studyPlanRow,[data-mode=dark] .studyPlanSubRow{border-bottom-color:#ffffff0d}[data-mode=dark] .studyPlanSubRow{background:#00000026}[data-mode=dark] .studyPlanRow:hover,[data-mode=dark] .studyPlanSubRow:hover{background:#f3b94c14}[data-mode=dark] .studyPlanRowActive{background:#f3b94c24;color:var(--accent)}[data-mode=dark] .studyPlanRowActive:hover,[data-mode=dark] .studyPlanSubRow.studyPlanRowActive:hover{background:#f3b94c38}[data-mode=dark] .studyPlanColCount{background:#f3b94c29;color:var(--accent)}[data-mode=dark] .studyPlanBarBg{background:#ffffff0f}[data-mode=dark] .studyPlanBarFill{background:linear-gradient(90deg,var(--accent),var(--accent2));box-shadow:0 0 16px #f3b94c59}[data-mode=dark] .studyPlanMilestone{background:#ffffff0a;border-color:#ffffff14}[data-mode=dark] .studyPlanEncourage{background:#f3b94c14;border-color:#f3b94c38}[data-mode=dark] .studyPlanProjection{background:#f3b94c0d;border-color:#f3b94c29}[data-mode=dark] .studyPlanClose:hover,[data-mode=dark] .studyPlanEdit:hover{background:#f3b94c1a;color:var(--accent)}[data-mode=dark] .studyPlanRepTag{background:#f3b94c14;color:var(--text)}[data-mode=dark] .studyPlanRepTagFocused{background:#f3b94c2e;box-shadow:0 0 0 1.5px var(--accent)}[data-mode=dark] .studyPlanModeBtn.active{background:#f3b94c1f;color:var(--accent)}[data-mode=dark] .studyPlanModeBtn:hover:not(.active){background:#f3b94c0f}[data-mode=dark] .studyPlanDiffPill.active{background:#f3b94c24;border-color:var(--accent);color:var(--accent)}[data-mode=dark] .studyPlanCollGroupHeader:hover,[data-mode=dark] .studyPlanCollRow:hover,[data-mode=dark] .studyPlanRepRow:hover,[data-mode=dark] .studyPlanAddDrillLink:hover,[data-mode=dark] .studyPlanAddColl:hover,[data-mode=dark] .studyPlanColLink:hover{background:#f3b94c14}[data-mode=dark] .studyPlanDailyBarFill{background:var(--accent);box-shadow:0 0 8px #f3b94c59}[data-mode=dark] .studyPlanSlider::-webkit-slider-thumb{background:var(--accent);border-color:var(--bg1);box-shadow:0 0 12px #f3b94c73}[data-mode=dark] .studyPlanSlider::-moz-range-thumb{background:var(--accent);border-color:var(--bg1);box-shadow:0 0 12px #f3b94c73}[data-mode=dark] .trainerSetupCard{background:#ffffff08;border-color:#ffffff14}[data-mode=dark] .trainerMiniStat,[data-mode=dark] .trainerStat{background:#ffffff0a;border-color:#ffffff14}[data-mode=dark] .trainerRepRow{background:#ffffff08;border-color:#ffffff14}[data-mode=dark] .trainerRepRow.selected{background:#f3b94c1a;border-color:#f3b94c6b;box-shadow:0 0 0 1px #f3b94c42}[data-mode=dark] .trainerMovesCard{background:#f3b94c0d;border-left-color:var(--accent)}[data-mode=dark] .trainerStartBtn.btn-primary:hover{box-shadow:0 4px 18px #f3b94c61}[data-mode=dark] .trainerHeaderGroup .pill.active{background:#f3b94c1f;border-color:#f3b94c4d;color:var(--accent);box-shadow:0 1px 2px #02061733}[data-mode=dark] .trainerTodayBadge,[data-mode=dark] .reviewedTodayBadge{background:#4ade8017;border-color:#4ade8042}[data-mode=dark] .studyPlanOnTrack{background:#4ade8024;color:var(--good)}[data-mode=dark] .studyPlanComplete{background:#4ade8038;color:var(--good);border-color:#4ade8073}[data-mode=dark] .studyPlanBehind{background:#f8717124;color:var(--bad)}[data-mode=dark] .studyPlanNeutral{background:#ffffff0f;color:var(--muted)}.zoomable-board-wrap{position:relative;line-height:0}.zoomable-board-expand-btn{position:absolute;top:2px;right:2px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#1419289e;color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:6px;cursor:pointer;opacity:0;transition:opacity .12s var(--ease),transform .12s var(--ease),background .12s var(--ease);z-index:2}.zoomable-board-wrap:hover .zoomable-board-expand-btn,.zoomable-board-wrap:focus-within .zoomable-board-expand-btn{opacity:1}.zoomable-board-expand-btn:hover{background:#141928d9;transform:scale(1.06)}.zoomable-board-expand-btn:active{transform:scale(.96)}@media (hover: none){.zoomable-board-expand-btn{opacity:.82}}.fullscreen-board-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#080a14e0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;animation:fullscreen-board-fade .14s var(--ease-out)}@keyframes fullscreen-board-fade{0%{opacity:0}to{opacity:1}}.fullscreen-board-inner{line-height:0;border-radius:10px;overflow:hidden;box-shadow:0 20px 80px #00000080,0 0 0 1px #ffffff0f}.fullscreen-board-close{position:fixed;top:18px;right:18px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:#141928bf;color:#fff;font-size:18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .12s var(--ease),transform .12s var(--ease)}.fullscreen-board-close:hover{background:#141928f2;transform:scale(1.06)}.fullscreen-board-close:active{transform:scale(.94)}@keyframes streak-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes streak-pop{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}.focus-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#141e416b;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .18s var(--ease)}.focus-modal{background:#fff;border-radius:var(--r-lg, 18px);padding:24px;max-width:420px;width:100%;box-shadow:0 16px 48px #0003;animation:scaleIn .22s var(--ease-out)}.focus-modal-title{margin:0 0 6px;font-size:19px;font-weight:700;color:var(--text)}.focus-modal-btn{display:block;width:100%;text-align:left;background:var(--card2, rgba(255,255,255,.75));border:1px solid var(--border);border-radius:var(--r-md, 14px);padding:14px 16px;margin-top:10px;cursor:pointer;transition:transform .1s var(--ease),background .15s var(--ease)}.focus-modal-btn:hover{background:color-mix(in oklch,var(--accent) 8%,transparent)}.focus-modal-btn:active{transform:scale(.98)}.focus-modal-btn-primary{background:color-mix(in oklch,var(--accent) 12%,transparent);border-color:color-mix(in oklch,var(--accent) 25%,transparent)}.focus-modal-btn-primary:hover{background:color-mix(in oklch,var(--accent) 18%,transparent)}.focus-modal-btn-label{font-weight:600;color:var(--text);margin-bottom:2px}[data-mode=dark] .focus-modal{background:#0b1226;border:1px solid rgba(255,255,255,.1);box-shadow:0 16px 48px #0000008c}[data-mode=dark] .focus-modal-btn{background:#ffffff0d;border-color:#ffffff1f}[data-mode=dark] .focus-modal-btn:hover{background:#f3b94c1f}[data-mode=dark] .focus-modal-btn-primary{background:#f3b94c2e;border-color:#f3b94c59}[data-mode=dark] .focus-modal-btn-primary:hover{background:#f3b94c47}.focus-modal-phase{font-size:12px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px}.focus-modal-row{display:flex;align-items:stretch;gap:8px;margin-top:10px}.focus-modal-btn-flex{flex:1;margin-top:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.focus-modal-btn-meta{font-size:12px;color:var(--muted);font-weight:500;white-space:nowrap}.focus-modal-skip-link{background:transparent;border:none;cursor:pointer;color:var(--muted);font-size:12px;font-family:inherit;padding:4px 8px;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;transition:color .15s var(--ease);align-self:center}.focus-modal-skip-link:hover{color:var(--text)}.focus-modal-section-label{margin:18px 0 4px;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.focus-modal-skipped{margin-top:16px;border-top:1px solid var(--border);padding-top:12px}.focus-modal-skipped>summary{cursor:pointer;font-size:12px;color:var(--muted);list-style:none;-webkit-user-select:none;user-select:none}.focus-modal-skipped>summary::-webkit-details-marker{display:none}.focus-modal-skipped>summary:before{content:"▸ ";display:inline-block;transition:transform .15s var(--ease)}.focus-modal-skipped[open]>summary:before{transform:rotate(90deg)}.focus-modal-row-skipped{align-items:center;padding:6px 4px;margin-top:4px}.focus-modal-skipped-name{flex:1;font-size:13px;color:var(--muted);text-decoration:line-through;text-decoration-color:#141e4140}[data-mode=dark] .focus-modal-skipped-name{text-decoration-color:#ffffff2e}[data-mode=dark] .focus-modal-skipped{border-top-color:#ffffff1a}.focus-banner-wrap{grid-column:1 / -1;display:grid;grid-template-columns:var(--board-col, 520px) minmax(280px,360px);gap:20px;margin-bottom:8px}.focus-banner-wrap>.focus-banner{grid-column:1;justify-self:center}.focus-banner{display:flex;width:fit-content;align-items:center;gap:8px;padding:6px 14px;background:color-mix(in oklch,var(--accent) 10%,transparent);border:1px solid color-mix(in oklch,var(--accent) 18%,transparent);border-radius:999px;font-size:13px;max-width:100%}@media (max-width: 1000px){.focus-banner-wrap{grid-template-columns:1fr}}.focus-banner-label{color:var(--muted);font-weight:500}.focus-banner-name{color:var(--accent);font-weight:700}[data-mode=dark] .focus-banner{background:#f3b94c2e;border-color:#f3b94c73;box-shadow:0 0 18px #f3b94c2e}[data-mode=dark] .focus-banner-label{color:#e2e8f0d9}.review-filter-tab[data-cat=theory].active{border-bottom-color:#0074c8;border-bottom-color:oklch(.55 .16 250)}.review-filter-tab[data-cat=mistakes].active{border-bottom-color:var(--bad)}.review-filter-tab[data-cat=tactics].active{border-bottom-color:#8771de}.review-filter-tab[data-cat=endgames].active{border-bottom-color:#008474;border-bottom-color:oklch(.55 .13 180)}.review-filter-tab[data-cat=goodmoves].active{border-bottom-color:var(--good)}.review-filter-tab[data-cat=games].active{border-bottom-color:var(--accent)}[data-mode=dark] .review-filter-tab[data-cat=theory].active{border-bottom-color:#7cbdff;border-bottom-color:oklch(.78 .13 250)}[data-mode=dark] .review-filter-tab[data-cat=tactics].active{border-bottom-color:#b6aaff;border-bottom-color:oklch(.78 .13 290)}[data-mode=dark] .review-filter-tab[data-cat=endgames].active{border-bottom-color:#5cc3b0}.failNavRow .failCounter{flex:0 1 auto;flex-direction:row;font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.5px;color:var(--muted);padding:5px 12px;background:color-mix(in oklch,var(--card) 70%,transparent);border:1px solid var(--border);border-radius:var(--r-sm);align-self:center;white-space:nowrap;max-width:280px;overflow:hidden;text-overflow:ellipsis}.failNavRow .failCounter .failGameInfo{font-family:var(--font-mono);font-size:11px;letter-spacing:.4px;color:var(--muted2);margin-left:4px}.failTypeBadge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 9px;font-size:10px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;border-radius:999px;border:1px solid currentColor;background:transparent;vertical-align:middle}.failTypeBadge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0}.failTypeBadge-mistake{color:var(--bad)}.failTypeBadge-tactic{color:#8771de}.failTypeBadge-perfect{color:var(--good)}[data-mode=dark] .failTypeBadge-theory{color:#7cbdff;color:oklch(.78 .13 250)}[data-mode=dark] .failTypeBadge-tactic{color:#b6aaff;color:oklch(.78 .13 290)}[data-mode=dark] .failTypeBadge-endgame{color:#5cc3b0}.review-context-badge{border:1px solid currentColor;background:transparent;padding:2px 9px;font-weight:600;letter-spacing:.8px}.review-context-badge-theory{color:#0074c8;color:oklch(.55 .16 250);background:transparent}.review-context-badge-mistake{color:var(--bad);background:transparent}.review-context-badge-tactic{color:#8771de;background:transparent}.review-context-badge-endgame{color:#008474;color:oklch(.55 .13 180);background:transparent}.review-context-badge-games{color:var(--accent);background:transparent}[data-mode=dark] .review-context-badge-theory{color:#7cbdff;color:oklch(.78 .13 250)}[data-mode=dark] .review-context-badge-tactic{color:#b6aaff;color:oklch(.78 .13 290)}[data-mode=dark] .review-context-badge-endgame{color:#5cc3b0}.review-context-details .review-coach-text,.review-context-details>p:first-child:not([class]){font-family:var(--font-serif);font-size:17px;line-height:1.5;color:var(--text);margin:0 0 10px;text-wrap:pretty}.review-context-opening{font-family:var(--font-serif);font-style:italic;font-size:13px;letter-spacing:.1px}.engineCandRow{border-radius:var(--r-sm);transition:background .12s var(--ease)}.engineCandRow:hover{background:color-mix(in oklch,var(--card2) 60%,transparent)}.engineCandLabelBest{font-family:var(--font-mono);font-size:9px;letter-spacing:.6px;text-transform:uppercase;color:var(--good);background:color-mix(in oklch,var(--good) 12%,transparent);padding:2px 6px;border-radius:3px;margin-left:6px;font-weight:600}.engineCandRow.engineCandPlayed{background:color-mix(in oklch,var(--bad) 8%,transparent);border-left:2px solid color-mix(in oklch,var(--bad) 50%,transparent);padding-left:6px}.reviewYouPlayed{background:color-mix(in oklch,var(--good) 10%,transparent);border-left:3px solid color-mix(in oklch,var(--good) 55%,transparent)}.reviewYouPlayedMove{font-family:var(--font-mono);font-weight:700;font-size:14px;color:var(--text)}.reviewYouPlayedCorrect{font-family:var(--font-mono);letter-spacing:.3px;color:var(--good)}.reviewYouPlayedBest{font-family:var(--font-mono);letter-spacing:.3px}@media (max-width: 880px){.failNavRow .failCounter{padding:4px 9px;font-size:11px;max-width:200px}}.theoryContainer{font-family:var(--font-sans, "Inter Tight", system-ui, sans-serif)}.theoryContainer .review-filter-bar{margin:0 -20px 12px;padding:8px 20px 10px;background:transparent;border-bottom:1px solid var(--border)}.theoryContainer .review-filter-bar-cats{gap:4px}.theoryContainer .review-filter-tab{font-size:13px;font-weight:500;padding:8px 14px;border-radius:var(--r-md) var(--r-md) 0 0;opacity:.7}.theoryContainer .review-filter-tab.active{background:var(--card);border:1px solid var(--border);border-bottom:2.5px solid var(--accent);margin-bottom:-1px;font-weight:600;opacity:1}.theoryContainer .boardCard{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm, 0 1px 2px rgba(20,15,8,.04))}.theoryContainer .failNavRow{padding:12px 0 0}.theoryContainer .failNavPrimary{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);flex-wrap:wrap}.theoryContainer .failNavPrimary .btn-icon{width:36px;height:36px;min-width:36px;padding:0;display:grid;place-items:center;background:transparent;border:1px solid var(--border);border-radius:var(--r-sm);color:var(--muted);font-size:15px;font-weight:500;transition:background .12s var(--ease),color .12s var(--ease),border-color .12s var(--ease)}.theoryContainer .failNavPrimary .btn-icon:hover:not(:disabled){background:var(--bg1);color:var(--text);border-color:var(--border2)}.theoryContainer .failNavPrimary .btn-icon:disabled{opacity:.35}.theoryContainer .failNavSep{width:1px;height:22px;background:var(--border);margin:0 4px}.theoryContainer .failNavPrimary .btn:not(.btn-icon):not(.btn-primary){padding:9px 14px;background:transparent;border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text);font-size:13px;font-weight:600;transition:background .12s var(--ease),border-color .12s var(--ease)}.theoryContainer .failNavPrimary .btn:not(.btn-icon):not(.btn-primary):hover:not(:disabled){background:var(--bg1);border-color:var(--border2)}.theoryContainer .failNavPrimary .btnSkip{border-color:var(--border)}.theoryContainer .failNavPrimary .btnDoneActive,.theoryContainer .failNavPrimary .btn-reveal-on{background:var(--accent-bg, oklch(.58 .16 30 / .1));border-color:var(--accent);color:var(--accent)}.theoryContainer .failCounter{font-family:var(--font-mono, "JetBrains Mono", ui-monospace, monospace);font-size:12px;color:var(--muted);padding:8px 12px;background:var(--card2);border:1px solid var(--border);border-radius:var(--r-sm);white-space:nowrap;display:inline-flex;align-items:center;gap:10px}.theoryContainer .failTypeBadge{font-size:10px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;padding:3px 8px;border-radius:var(--r-pill, 999px);border:1px solid currentColor;background:transparent;font-family:var(--font-sans, "Inter Tight", system-ui, sans-serif)}.theoryContainer .failTypeBadge-theory{color:#0074c8;color:oklch(.55 .16 250)}.theoryContainer .failTypeBadge-mistake{color:#de4e4b}.theoryContainer .failTypeBadge-tactic{color:#8771de}.theoryContainer .failTypeBadge-endgame,.theoryContainer .failTypeBadge-endgames{color:#008474;color:oklch(.55 .13 180)}.theoryContainer .failTypeBadge-goodmove,.theoryContainer .failTypeBadge-goodmoves{color:#298646}.theoryContainer .failTypeBadge-game,.theoryContainer .failTypeBadge-perfect{color:var(--accent)}.theoryContainer .reviewProgressBar{height:18px;background:var(--bg1);border-radius:var(--r-pill, 999px);border:1px solid var(--border);overflow:hidden;margin:10px 0 0}.theoryContainer .reviewProgressFill{background:var(--accent);box-shadow:none;opacity:.85;border-radius:var(--r-pill, 999px)}.theoryContainer .reviewAnnotationBar{padding:12px 14px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);border-top:1px solid var(--border);margin-top:8px;gap:8px}.theoryContainer .reviewNagRow{gap:6px}.theoryContainer .reviewNagBtn{width:30px;height:28px;min-width:30px;padding:0!important;border:1px solid var(--border)!important;border-radius:var(--r-sm);background:transparent!important;font:600 12px/1 var(--font-mono, "JetBrains Mono", monospace)!important;color:var(--muted)!important;transition:border-color .12s var(--ease),color .12s var(--ease)}.theoryContainer .reviewNagBtn:hover:not(.active){color:var(--text)!important;border-color:var(--border2)!important}.theoryContainer .reviewNagBtn.active{background:var(--accent)!important;color:var(--accent-fg, #fff)!important;border-color:var(--accent)!important}.theoryContainer .reviewArrowRow{gap:6px;padding-left:6px;border-left:1px solid var(--border)}.theoryContainer .reviewArrowBtn{width:22px!important;height:22px!important;min-width:22px!important;padding:0!important;border-radius:50%!important;background:var(--arrow-color, var(--muted))!important;border:2px solid transparent!important;color:transparent!important}.theoryContainer .reviewArrowBtn svg{display:none}.theoryContainer .reviewArrowBtn.active{border-color:var(--text)!important;background:var(--arrow-color, var(--accent))!important}.theoryContainer .panelStack .card,.theoryContainer .boardSplitRight .card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg)}.theoryContainer .masterFilterRow{background:var(--card2);border:1px solid var(--border);border-radius:var(--r-md);margin-top:10px}.cookie-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:grid;place-items:center;padding:20px;background:#080c188c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:cookieBackdropFade .2s ease-out}@keyframes cookieBackdropFade{0%{opacity:0}to{opacity:1}}.cookie-modal-card{width:100%;max-width:520px;background:var(--bg1, #ffffff);color:var(--text, #1a2240);border:1px solid var(--border, rgba(30, 60, 130, .1));border-radius:18px;padding:32px 32px 24px;box-shadow:0 24px 72px #080c184d,0 4px 16px #080c182e;animation:cookieCardEnter .28s cubic-bezier(.16,1,.3,1)}@keyframes cookieCardEnter{0%{transform:translateY(12px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.cookie-modal-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#e8a33a1f;color:#c98a2a;margin-bottom:14px}.cookie-modal-title{font:600 22px/1.2 Newsreader,Georgia,serif;margin:0 0 8px;color:var(--text, #1a2240);letter-spacing:-.01em}.cookie-modal-body{font:400 14.5px/1.55 system-ui,sans-serif;color:var(--muted, rgba(20, 30, 65, .78));margin:0 0 16px}.cookie-modal-list{margin:0 0 22px;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.cookie-modal-list li{position:relative;padding-left:22px;font:400 13.5px/1.45 system-ui,sans-serif;color:var(--muted, rgba(20, 30, 65, .78))}.cookie-modal-list li:before{content:"✓";position:absolute;left:0;top:1px;color:#2f9c63;font-weight:700}.cookie-modal-list strong{color:var(--text, #1a2240);font-weight:600}.cookie-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px;flex-wrap:wrap}.cookie-modal-link{font:500 13px/1 system-ui,sans-serif;color:var(--accent, #3b7aff);text-decoration:none}.cookie-modal-link:hover{text-decoration:underline}.cookie-modal-cta{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:12px 22px;border-radius:10px;background:var(--accent, #3b7aff);color:#fff;font:600 14px/1 system-ui,sans-serif;letter-spacing:.01em;cursor:pointer;transition:transform .1s ease,background .15s ease,box-shadow .15s ease;box-shadow:0 1px #ffffff14 inset,0 4px 14px #3b7aff4d}.cookie-modal-cta:hover{background:var(--accent-hover, #2e6cf0);box-shadow:0 1px #ffffff14 inset,0 6px 18px #3b7aff61}.cookie-modal-cta:active{transform:scale(.98)}.cookie-modal-cta:focus-visible{outline:2px solid rgba(59,122,255,.55);outline-offset:2px}@media (max-width: 540px){.cookie-modal-card{padding:24px 22px 20px;border-radius:14px}.cookie-modal-icon{width:52px;height:52px;margin-bottom:10px}.cookie-modal-title{font-size:20px}.cookie-modal-body{font-size:13.5px;margin-bottom:14px}.cookie-modal-list li{font-size:12.5px}.cookie-modal-cta{width:100%;padding:12px 16px}.cookie-modal-actions{flex-direction:column-reverse;align-items:stretch;gap:14px}.cookie-modal-link{text-align:center}}[data-mode=dark] .cookie-modal-card{background:#18161d;color:#f0e9d9;border-color:#e8a33a2e}[data-mode=dark] .cookie-modal-title{color:#fbf7ee}[data-mode=dark] .cookie-modal-body,[data-mode=dark] .cookie-modal-list li{color:#f0e9d9b8}[data-mode=dark] .cookie-modal-list strong{color:#f0e9d9}[data-mode=dark] .cookie-modal-icon{background:#e8a33a29;color:#e8a33a}[data-theme=brutal]{--bg0: #f2f1ec;--bg1: #e9e7df;--bg2: #e3e1d7;--card: #ffffff;--card2: #f6f5f0;--border: #0d0d0c;--border2: #0d0d0c;--text: #0d0d0c;--muted: #5c5c54;--muted2: #8a8a7e;--accent: #e64a18;--accent2: #c6f600;--primary: #e64a18;--good: #2f7d32;--bad: #e64a18;--warn: #c98a00;--green: #2f7d32;--red: #e64a18;--yellow: #c98a00;--missed-theory: #0d8f80;--missed-theory-soft: rgba(13, 143, 128, .12);--surface: rgba(255, 255, 255, .72);--m-1: #c79a2e;--m-2: #9bb01c;--m-3: #2f9e54;--m-4: #3b7aff;--r-lg: 3px;--r-md: 2px;--r-sm: 0px;--r-scale: 0;--bd-w: 2px;--elev-1: none;--elev-2: 3px 3px 0 0 var(--border);--elev-3: 6px 6px 0 0 var(--border);--shadow: 4px 4px 0 0 #0d0d0c;--font-serif: "Archivo", "Inter Tight", system-ui, sans-serif;--font-sans: "Inter Tight", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--card-bd: 2px solid var(--border);--card-r: 2px;--card-sh: 4px 4px 0 0 var(--border);--font-display: "Archivo", "Inter Tight", system-ui, sans-serif;--disp-style: normal;--disp-weight: 800;--label-tt: uppercase;--cta-bg: var(--accent2);--cta-fg: #0d0d0c;--cta-bd: 2px solid var(--border);--cta-r: 0px;--cta-sh: 4px 4px 0 0 var(--border);--cta-tt: uppercase;--cta-ff: var(--font-mono);--cta-fw: 800;--emph-bg: var(--text);--emph-fg: var(--accent2);--emph-pad: 0 8px;--home-maxw: 1440px;--home-pad: 24px 28px 40px;--home-top-cols: 1fr 380px;--home-top-gap: 22px;--home-hero-pad: 30px 32px;--home-greet: 46px;--home-rightcol-gap: 22px;--home-plans-cols: 1.5fr 1fr 1fr;--home-plans-gap: 22px;--home-topics-cols: repeat(4, 1fr);--home-topics-gap: 18px;--pill-r: 0px;--pill-bd: 2px solid var(--border);--src-theory: var(--accent2);--src-puzzles: #ff5a1f;--src-masters: var(--text);--src-yours: #7c9eff;--src-endgames: #ffffff;--dot-r: 0px;--dot-bd: 2px solid var(--border);--mastery-bar-h: 22px;--mastery-bar-r: 0px;--mastery-bar-bd: 2px solid var(--border);--mastery-fam: repeating-linear-gradient(45deg, var(--card), var(--card) 5px, var(--bg1) 5px, var(--bg1) 10px);--mastery-sol: #cfe35a;--mastery-str: var(--accent2);--mastery-deep: var(--text);--mastery-seg-bd: 2px solid var(--border);--mastery-sw-size: 10px;--mastery-sw-r: 0px;--mastery-sw-bd: 1.5px solid var(--border);--mastery-legend-gap: 14px;--mastery-ml-align: center;--mastery-legend-fg: var(--text);--mastery-count-ff: var(--font-mono);--mastery-count-size: 10px;--src-endgames-bar: repeating-linear-gradient(45deg, #fff, #fff 4px, #ddd 4px, #ddd 8px);--mixbar-h: 18px;--mixbar-r: 0px;--mixbar-bd: 2px solid var(--border);--mixseg-divider: 2px solid var(--border);--overline-display: inline-block;--overline-bg: var(--accent2);--overline-bd: 2px solid var(--border);--overline-pad: 4px 10px;--overline-fg: var(--text);--streak-num-color: var(--text);--daybox-row-gap: 7px;--daybox-aspect: 1;--daybox-pad: 0;--daybox-r: 0px;--daybox-fs: 13px;--daybox-fw: 700;--daybox-on-bg: #ff5a1f;--daybox-off-bg: var(--card);--daybox-bd: 2px solid var(--border);--daybox-off-fg: #9a9a8f;--streak-foot-ff: var(--font-mono);--streak-foot-tt: uppercase;--streak-foot-ls: .04em;--mastery-card-bg: var(--card);--mastery-card-pad: 22px 24px;--plan-card-pad: 24px;--plan-active-bg: var(--card);--plan-active-bd: var(--border);--bul-sz: 9px;--bul-r: 0px;--bul-bd: 2px solid var(--border);--bul-inactive: var(--accent2);--plan-name-size: 19px;--plan-name-fw: 800;--tag-active-fg: var(--text);--tag-active-bg: var(--accent2);--tag-coach-fg: #ffffff;--tag-coach-bg: var(--accent);--plan-openings-ff: var(--font-mono);--plan-openings-bd: 3px solid var(--accent2);--plan-openings-pl: 12px;--plan-openings-col: var(--text);--plan-stats-bd: 2px solid var(--border);--plan-stats-pt: 18px;--plan-btn-pad: 10px 16px;--ghost-bg: var(--card);--ghost-fg: var(--text);--ghost-bd: 2px solid var(--border);--ghost-ff: var(--font-mono);--ghost-tt: uppercase;--ghost-fw: 700;--edit-fg: var(--text);--edit-bd: 2px solid var(--border);--edit-td: none;--edit-pad: 8px 14px;--plan-empty-bd: 2px solid var(--border);--plan-empty-bg: repeating-linear-gradient(135deg, var(--card), var(--card) 12px, var(--card2) 12px, var(--card2) 24px);--plan-empty-sh: var(--card-sh);--plan-empty-align: flex-start;--plan-empty-title-sz: 18px;--plusbox-sz: 46px;--plusbox-r: 0px;--plusbox-bd: 2px solid var(--border);--plusbox-bg: var(--accent2);--plusbox-sh: 3px 3px 0 0 var(--border);--plusbox-fg: var(--text);--plusbox-fs: 26px;--sectitle-size: 24px;--sectitle-fw: 900;--sectitle-ls: -.02em;--sectile-display: inline-block;--sectile-w: 14px;--sectile-h: 24px;--sectile-bg: var(--accent2);--sectile-bd: 2px solid var(--border);--sectile-mr: 12px;--home-count-ff: var(--font-mono);--home-count-tt: uppercase;--home-count-ls: .04em;--home-count-fw: 600;--createbtn-bg: var(--card);--createbtn-fg: var(--text);--createbtn-bd: 2px solid var(--border);--createbtn-r: 0px;--createbtn-sh: 3px 3px 0 0 var(--border);--createbtn-ff: var(--font-mono);--createbtn-tt: uppercase;--createbtn-fw: 700;--topic-sq-sz: 8px;--topic-sq-r: 0px;--topic-sq-bd: 1.5px solid var(--border);--topic-sq-w: var(--card);--topic-sq-b: var(--text);--topic-name-fs: 18px;--topic-name-fw: 800;--showall-justify: flex-start;--showall-bd: none;--showall-bb: 3px solid var(--accent2);--showall-r: 0px;--showall-pad: 0 0 2px;--showall-fg: var(--text);--showall-fw: 700;--showall-tt: uppercase}[data-theme=brutal][data-mode=dark]{--bg0: #17171a;--bg1: #1f1f22;--bg2: #232327;--card: #26262a;--card2: #2c2c30;--border: #3a3a3d;--border2: #55555a;--text: #e9e7df;--muted: #9a9a90;--muted2: #6f6f68;--emph-bg: var(--card);--accent: #ff6a33;--accent2: #c6f600;--primary: #ff6a33;--good: #4fb15f;--bad: #ff6a33;--warn: #e8b53a;--green: #4fb15f;--red: #ff6a33;--yellow: #e8b53a;--missed-theory: #2fb3a0;--missed-theory-soft: rgba(47, 179, 160, .16);--surface: rgba(38, 38, 42, .72);--m-1: #c79a2e;--m-2: #9bb01c;--m-3: #4fb15f;--m-4: #6f8de0;--shadow: 4px 4px 0 0 rgba(0, 0, 0, .55);--card-sh: 4px 4px 0 0 rgba(0, 0, 0, .5);--cta-bg: #a7cf12;--cta-sh: 4px 4px 0 0 rgba(0, 0, 0, .5)}[data-theme=brutal] body{background:var(--bg0)!important;color:var(--text);font-family:var(--font-serif)}[data-theme=brutal] h1,[data-theme=brutal] h2,[data-theme=brutal] h3,[data-theme=brutal] .hero-title,[data-theme=brutal] .cb-practise-h1,[data-theme=brutal] .cb-page-head h1,[data-theme=brutal] [class*=hero-title],[data-theme=brutal] [class*=page-title]{font-family:var(--font-serif)!important;font-style:normal!important;font-weight:800;letter-spacing:-.01em}[data-theme=brutal] h1,[data-theme=brutal] h2,[data-theme=brutal] h3,[data-theme=brutal] .hero-title{color:var(--text)}[data-theme=brutal] .card{background:var(--card);border:2px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow);-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=brutal] .card:hover{border-color:var(--border);box-shadow:2px 2px 0 0 var(--border)}[data-theme=brutal] .btn,[data-theme=brutal] button.btn{background:var(--card);border:2px solid var(--border);border-radius:var(--r-sm);box-shadow:var(--shadow-xs, 2px 2px 0 0 var(--border));font-family:var(--font-mono);font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--text)}[data-theme=brutal] .btn:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 0 var(--border)}[data-theme=brutal] .btn:active{transform:translate(2px,2px);box-shadow:none}[data-theme=brutal] .btn-primary,[data-theme=brutal] button.btn-primary{background:var(--accent2);color:#0d0d0c;border:2px solid var(--border);box-shadow:var(--shadow)}[data-theme=brutal][data-mode=dark] .btn-primary{background:#a7cf12;color:#141413}[data-theme=brutal] input,[data-theme=brutal] textarea,[data-theme=brutal] select{border:2px solid var(--border);border-radius:var(--r-sm);background:var(--card);color:var(--text);font-family:var(--font-mono)}[data-theme=brutal] .topbar,[data-theme=brutal] .site-header{background:var(--bg0)!important;border-bottom:2px solid var(--border);backdrop-filter:none!important;-webkit-backdrop-filter:none!important}[data-theme=brutal] .topbar:after,[data-theme=brutal] .site-header:after{display:none}[data-theme=brutal] .pill,[data-theme=brutal] .nav-link{border-radius:var(--r-sm);font-family:var(--font-mono);letter-spacing:.02em}[data-theme=brutal] .pill.active{background:var(--accent2);color:#0d0d0c;border-color:var(--border)}[data-theme=brutal][data-mode=dark] .pill.active{background:#26262a;color:var(--accent2)}[data-theme=brutal] .card,[data-theme=brutal] .card2,[data-theme=brutal] .badge,[data-theme=brutal] .chip{border-radius:var(--r-md)}[data-theme=brutal] a{color:var(--accent)}[data-theme=brutal] .kicker,[data-theme=brutal] .overline{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase}[data-theme=brutal] .tag,[data-theme=brutal] .chip,[data-theme=brutal] .badge{border-radius:var(--r-sm)}[data-theme=brutal][data-mode=dark]{scrollbar-color:#3a3a3d transparent}[data-theme=brutal][data-mode=dark] ::-webkit-scrollbar-thumb{background:#3a3a3d}[data-theme=brutal] .lang-dropdown-btn,[data-theme=brutal] .shared-view-toggle,[data-theme=brutal] .btn-sm,[data-theme=brutal] .card-pad,[data-theme=brutal] .card-pad-lg{background:var(--card)!important}[data-theme=brutal] .cb-btn-ghost{background:transparent;color:var(--text)}[data-theme=brutal] .lang-dropdown-menu,[data-theme=brutal] .dropdown-menu,[data-theme=brutal] .menu-pop{background:var(--card);border:2px solid var(--border)}[data-theme=brutal]{--chrome-bottomnav-fg: var(--muted);--chrome-bottomnav-active: var(--accent);--chrome-bottomnav-fg-dark: var(--muted);--chrome-bottomnav-active-dark: var(--accent2);--chrome-bottomnav-bg-dark: var(--bg1);--chrome-bottomnav-bd-dark: var(--border);--chrome-header-bg: color-mix(in srgb, var(--bg0) 92%, transparent);--chrome-header-bg-dark: color-mix(in srgb, var(--bg0) 92%, transparent)}[data-theme=brutal] .mobile-bottom-nav{background:var(--bg0)!important;border-top:2px solid var(--border);backdrop-filter:none!important;-webkit-backdrop-filter:none!important}[data-theme=brutal] .mobile-bottom-nav button.active{background:var(--accent2);color:#0d0d0c}[data-theme=brutal] .mobile-bottom-nav button.active .mobile-bottom-icon{background:none}[data-theme=brutal] .mobile-bottom-nav button.active .mobile-bottom-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;font-weight:700}[data-theme=brutal] .review-mobile-root{background:var(--bg0)}[data-theme=brutal] .review-mobile-root .panel,[data-theme=brutal] .review-mobile-root .board-wrap,[data-theme=brutal] .review-mobile-root .cat-row-wrap,[data-theme=brutal] .review-mobile-root .tab-strip-wrap,[data-theme=brutal] .review-mobile-root .slider-row,[data-theme=brutal] .review-mobile-root .cat{background:var(--card)!important;border-color:var(--border);color:var(--text)}[data-theme=brutal] .review-mobile-root .goal-banner{background:var(--card2)!important;color:var(--text)}[data-theme=brutal] .review-mobile-root .cat.active{background:var(--accent2)!important;color:#0d0d0c}[data-theme=brutal][data-mode=dark] .review-mobile-root .cat.active{background:#26262a!important;color:var(--accent2)}[data-theme=brutal] .review-mobile-root .answer-btn{background:var(--accent)!important;color:#fff;border-color:var(--border)}[data-theme=brutal] .dca-root{--dca-paper:#f2f1ec;--dca-paper-deep:#e9e7df;--dca-surface:#ffffff;--dca-surface-2:#f6f5f0;--dca-ink:#0d0d0c;--dca-ink-soft:#5c5c54;--dca-muted:#5c5c54;--dca-muted-2:#8a8a7e;--dca-rule:#0d0d0c;--dca-rule-soft:#c9c6bd;--dca-accent:#e64a18;--dca-good:#2f7d32;--dca-good-deep:#1f5a22;--dca-good-soft:#d8e2c6;--dca-gold-soft:#f2e2b8}[data-theme=brutal][data-mode=dark] .dca-root{--dca-paper:#17171a;--dca-paper-deep:#1f1f22;--dca-surface:#26262a;--dca-surface-2:#2c2c30;--dca-ink:#e9e7df;--dca-ink-soft:#c9c7be;--dca-muted:#9a9a90;--dca-muted-2:#6f6f68;--dca-rule:#3a3a3d;--dca-rule-soft:#2c2c30;--dca-accent:#ff6a33;--dca-good:#4fb15f;--dca-good-deep:#3a8a45;--dca-good-soft:#2c3a28;--dca-gold-soft:#3a3320}[data-theme=brutal] .ssd--dark{--ssd-on-accent: #fff}[data-theme=brutal] .ssd{--ssd-serif: "Archivo", "Inter", system-ui, sans-serif}[data-theme=brutal] .ssd__rail-prompt{font-weight:800;letter-spacing:-.02em}[data-theme=brutal] .ssd__rail-prompt-em{font-style:normal;background:var(--accent2);color:#0d0d0c;padding:0 4px}[data-theme=brutal] .ss button,[data-theme=brutal] .ss__action,[data-theme=brutal] .ss__continuation-pill{border-radius:0}[data-theme=brutal] .ss__prompt{font-family:Archivo,Inter,system-ui,sans-serif;font-weight:800;letter-spacing:-.015em}[data-theme=brutal] .ss__prompt em{font-style:normal;background:var(--accent2);color:#0d0d0c;padding:0 3px;-webkit-box-decoration-break:clone;box-decoration-break:clone}[data-theme=brutal] .ss__action{border:2px solid var(--text);font-weight:700}[data-theme=brutal] .ss__action.is-primary{background:var(--cat-active);color:var(--cat-on, #fff);text-transform:uppercase;letter-spacing:.04em}[data-theme=brutal] .ss__bottom{border-top:3px solid var(--text)}[data-theme=brutal] .ss__badge,[data-theme=brutal] .ss--bold .ss__badge{border-radius:0;background:var(--bg0);border:2px solid var(--text);border-left:8px solid var(--cat-active);color:var(--text);font-family:var(--font-mono);font-weight:700}[data-theme=brutal] .ssd__rail-badge{border-radius:0;background:var(--bg0);border:2px solid var(--text);border-left:8px solid var(--ssd-cat-active);color:var(--text);font-family:var(--font-mono)}[data-theme=brutal] .ss__context,[data-theme=brutal] .ss--bold .ss__context{background:var(--paper);border-bottom:3px solid var(--border)}[data-theme=brutal] .ss__context:before,[data-theme=brutal] .ss--bold .ss__context:before{height:8px;border-radius:0}[data-theme=brutal] .lp-btn{border-radius:0}[data-theme=brutal] .lp-btn-primary{background:var(--accent2);color:#0d0d0c;border:2px solid #0d0d0c;box-shadow:4px 4px #0d0d0c;font-weight:800;text-transform:uppercase;letter-spacing:.03em}[data-theme=brutal] .lp-btn-primary:hover{transform:translate(-1px,-1px);box-shadow:5px 5px #0d0d0c}[data-theme=brutal] .lp-btn-text{color:var(--text);font-weight:700;text-decoration:underline;text-underline-offset:3px}[data-theme=brutal] .lp-hero-google-btn{border-radius:0;border:2px solid var(--text);font-weight:700}[data-theme=brutal] .lp-theme-toggle{border-radius:0}[data-theme=brutal] .lp-headline em{font-style:normal;background:var(--accent2);color:#0d0d0c;padding:0 8px}[data-theme=brutal] .lp-section-title em{font-style:normal;background:var(--accent2);color:#0d0d0c;padding:0 6px}[data-theme=brutal] .lpbg-pill{border-radius:0;border:2px solid var(--text);box-shadow:none}[data-theme=brutal] .lpbg-pill-dot{border-radius:0}[data-theme=brutal] .lp-final-cta-inner{background:var(--accent2);border:2px solid #0d0d0c;border-radius:0;padding:clamp(28px,5vw,56px) clamp(20px,5vw,48px)}[data-theme=brutal] .lp-final-cta h2,[data-theme=brutal] .lp-final-cta p,[data-theme=brutal] .lp-final-cta .lp-final-cta-eyebrow{color:#0d0d0c}[data-theme=brutal] .lp-final-cta .lp-eyebrow:before{background:#0d0d0c}[data-theme=brutal] .lp-final-cta h2 em{background:#0d0d0c;color:var(--accent2)}[data-theme=brutal] .lp-final-cta .lp-btn-primary{background:#0d0d0c;color:var(--accent2);border:2px solid #0d0d0c;box-shadow:none}[data-theme=brutal] .site-header{border-bottom:3px solid var(--border)}[data-theme=brutal] .brand-wordmark{align-items:center;font-family:var(--font-serif);font-weight:900;font-size:25px;letter-spacing:-.03em}[data-theme=brutal] .brand-wordmark .wm-dawn{background:var(--text);color:var(--bg0);padding:2px 8px 4px}[data-theme=brutal] .brand-wordmark .wm-chess{background:var(--accent2);color:#0d0d0c;padding:2px 8px 4px}[data-theme=brutal] .site-header .nav-link,[data-theme=brutal] .site-header .nav-trigger{font-family:var(--font-mono);font-weight:600;font-size:12px;letter-spacing:.04em;text-transform:uppercase}[data-theme=brutal] .site-header .nav-link:hover,[data-theme=brutal] .site-header .nav-trigger:hover,[data-theme=brutal] .site-header .topbar-theme-toggle,[data-theme=brutal] .site-header .lang-dropdown-btn{border-color:var(--text)}[data-theme=brutal] .site-header .topbar-theme-toggle:hover{background:var(--accent2);color:#0d0d0c}[data-theme=brutal] .site-header .lang-dropdown-btn{font-family:var(--font-mono);font-weight:600;font-size:12px}[data-theme=brutal] .site-header .avatar-wrap{border-color:var(--text)}[data-theme=brutal] .site-header .avatar{width:34px;height:34px;background:var(--accent2);border-radius:0;font-family:var(--font-mono);font-weight:800;color:#0d0d0c}[data-theme=slate]{--bg0: #eef2f7;--bg1: #e3e9f1;--bg2: #d8e0ea;--card: #ffffff;--card2: #f7f9fc;--border: #d3dbe6;--border2: #b9c4d4;--text: #0f172a;--muted: #475569;--muted2: #94a3b8;--accent: #4f46e5;--accent2: #6366f1;--primary: #4f46e5;--good: #059669;--bad: #e11d48;--warn: #d97706;--green: #059669;--red: #e11d48;--yellow: #d97706;--missed-theory: #0891b2;--missed-theory-soft: rgba(8, 145, 178, .12);--surface: rgba(255, 255, 255, .72);--m-1: #c79a2e;--m-2: #9bb01c;--m-3: #059669;--m-4: #4f46e5;--r-lg: 16px;--r-md: 12px;--r-sm: 8px;--r-scale: 1;--bd-w: 1px;--shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 6px 18px -8px rgba(15, 23, 42, .12);--card-bd: 1px solid var(--border);--card-r: 12px;--card-sh: 0 1px 3px rgba(15, 23, 42, .05), 0 8px 24px -12px rgba(15, 23, 42, .12);--font-display: "Inter", system-ui, sans-serif;--disp-style: normal;--disp-weight: 700;--label-tt: uppercase;--cta-bg: var(--accent);--cta-fg: #ffffff;--cta-bd: none;--cta-r: 10px;--cta-sh: 0 4px 14px -4px rgba(79, 70, 229, .45);--cta-tt: none;--cta-ff: "Inter", system-ui, sans-serif;--cta-fw: 600;--font-serif: "Inter", system-ui, sans-serif;--font-sans: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--overline-display: inline-block;--overline-bg: color-mix(in srgb, var(--accent) 12%, var(--card));--overline-fg: var(--accent);--overline-bd: 1px solid color-mix(in srgb, var(--accent) 30%, var(--card));--overline-pad: 3px 10px;--overline-r: 999px;--src-theory: #6366f1;--src-puzzles: #f59e0b;--src-masters: #64748b;--src-yours: #0891b2;--src-endgames: #cbd5e1;--mastery-bar-h: 12px;--mastery-bar-r: 999px;--mastery-str: var(--accent);--daybox-aspect: 1;--daybox-r: 8px;--daybox-on-bg: var(--accent);--daybox-bd: 1px solid var(--border);--streak-num-color: var(--accent);--sectile-display: inline-block;--sectile-w: 6px;--sectile-h: 20px;--sectile-bg: var(--accent);--sectile-mr: 10px;--sectitle-fw: 700;--tag-active-bg: color-mix(in srgb, var(--accent) 15%, var(--card));--tag-active-fg: var(--accent);--plan-openings-bd: 3px solid var(--accent);--plan-openings-pl: 12px;--plan-openings-col: var(--muted);--plan-name-fw: 700;--topic-name-fw: 700;--plusbox-bg: color-mix(in srgb, var(--accent) 12%, var(--card));--plusbox-fg: var(--accent);--plusbox-r: 12px;--plusbox-bd: 1px solid color-mix(in srgb, var(--accent) 30%, var(--card))}[data-theme=slate][data-mode=dark]{--bg0: #0b1220;--bg1: #121a2b;--bg2: #1a2436;--card: #18212f;--card2: #1e293b;--border: #2c3a4f;--border2: #3b4d66;--text: #e8edf5;--muted: #9fb0c5;--muted2: #647389;--accent: #818cf8;--accent2: #a5b4fc;--primary: #818cf8;--good: #34d399;--bad: #fb7185;--warn: #fbbf24;--green: #34d399;--red: #fb7185;--yellow: #fbbf24;--missed-theory: #22d3ee;--missed-theory-soft: rgba(34, 211, 238, .16);--surface: rgba(24, 33, 47, .72);--shadow: 0 2px 8px rgba(0, 0, 0, .4), 0 12px 32px -12px rgba(0, 0, 0, .5);--card-sh: 0 2px 8px rgba(0, 0, 0, .4), 0 12px 32px -12px rgba(0, 0, 0, .5);--cta-sh: 0 4px 14px -4px rgba(129, 140, 248, .5)}[data-theme=swiss]{--bg0: #ffffff;--bg1: #f4f5f7;--bg2: #edeff2;--card: #ffffff;--card2: #fafbfc;--border: #e3e5ea;--border2: #c8ccd3;--text: #0b0d12;--muted: #565d68;--muted2: #8d939e;--accent: #0533f3;--accent2: #0226b8;--primary: var(--accent);--surface: rgba(255, 255, 255, .85);--good: #00a36a;--bad: #e02d1b;--warn: #ff8a00;--green: var(--good);--red: var(--bad);--yellow: var(--warn);--missed-theory: #0e7f8f;--missed-theory-soft: rgba(14, 127, 143, .1);--m-1: #ff8a00;--m-2: #0533f3;--m-3: #00a36a;--m-4: #0b0d12;--r-lg: 2px;--r-md: 2px;--r-sm: 2px;--shadow: none;--elev-1: none;--elev-2: 0 16px 40px rgba(10, 12, 16, .14);--elev-3: 0 24px 64px rgba(10, 12, 16, .18);--card-bd: 1px solid #14171d;--card-r: 2px;--card-sh: none;--font-serif: "Inter Tight", "Inter", system-ui, sans-serif;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;--font-display: "Inter Tight", "Inter", system-ui, sans-serif;--disp-style: normal;--disp-weight: 700;--label-tt: uppercase;--cta-bg: var(--accent);--cta-fg: #ffffff;--cta-bd: 1px solid var(--accent2);--cta-r: 0px;--cta-sh: none;--cta-tt: uppercase;--cta-ff: "Inter Tight", "Inter", system-ui, sans-serif;--cta-fw: 700;--emph-bg: var(--accent);--emph-fg: #ffffff;--emph-pad: 0 8px;--home-maxw: 1440px;--home-pad: 22px 28px 60px;--home-top-cols: 1fr 380px;--home-top-gap: 20px;--home-hero-pad: 28px 30px 26px;--home-greet: 36px;--home-rightcol-gap: 20px;--home-plans-cols: 1.5fr 1fr 1fr;--home-plans-gap: 18px;--home-topics-cols: repeat(4, 1fr);--home-topics-gap: 16px;--overline-bg: transparent;--overline-bd: none;--overline-pad: 0;--overline-fg: var(--accent);--mixbar-h: 10px;--mixbar-r: 0px;--mixbar-bd: 1px solid #14171d;--mixseg-divider: 1px solid #ffffff;--src-theory: var(--accent);--src-puzzles: #ff8a00;--src-masters: #0b0d12;--src-yours: #00a36a;--src-endgames: #8d939e;--src-endgames-bar: #8d939e;--dot-r: 0%;--dot-bd: 1px solid #14171d;--pill-r: 0px;--pill-bd: 1px solid #14171d;--streak-num-color: var(--accent);--daybox-row-gap: 6px;--daybox-aspect: 1;--daybox-pad: 0;--daybox-r: 0px;--daybox-fw: 700;--daybox-on-bg: var(--accent);--daybox-off-bg: #ffffff;--daybox-bd: 1px solid #14171d;--daybox-off-fg: var(--muted2);--mastery-card-bg: var(--card);--mastery-bar-h: 12px;--mastery-bar-r: 0px;--mastery-fam: #d9dee8;--mastery-sol: #9db8ff;--mastery-str: #4d6bff;--mastery-deep: #0533f3;--mastery-sw-size: 9px;--mastery-sw-r: 0px;--mastery-legend-gap: 8px 14px;--mastery-ml-align: center;--mastery-legend-fg: var(--muted);--mastery-count-ff: var(--font-display);--mastery-count-size: 12px;--plan-active-bg: var(--card);--plan-active-bd: #14171d;--bul-sz: 7px;--bul-r: 0;--bul-bd: none;--bul-inactive: var(--muted);--plan-name-size: 15.5px;--plan-name-fw: 700;--tag-active-fg: #ffffff;--tag-active-bg: var(--accent);--tag-coach-fg: #ffffff;--tag-coach-bg: var(--good);--plan-openings-col: var(--muted);--plan-stats-bd: 1px solid var(--border);--plan-stats-pt: 14px;--plan-btn-pad: 8px 13px;--ghost-bg: #ffffff;--ghost-fg: var(--text);--ghost-bd: 1px solid #14171d;--ghost-fw: 600;--edit-fg: var(--text);--edit-bd: 1px solid #14171d;--edit-td: none;--edit-pad: 8px 13px;--plan-empty-bd: 1px dashed var(--border2);--plan-empty-bg: var(--card2);--plan-empty-sh: none;--plan-empty-title-sz: 15px;--plusbox-sz: 46px;--plusbox-r: 0px;--plusbox-bd: 1px solid var(--accent);--plusbox-bg: #ffffff;--plusbox-fg: var(--accent);--sectitle-size: 18px;--sectitle-fw: 700;--sectitle-ls: -.01em;--sectile-display: inline-block;--home-count-fw: 600;--createbtn-bg: transparent;--createbtn-fg: var(--accent);--createbtn-bd: 1px solid var(--accent);--createbtn-fw: 700;--topic-sq-sz: 9px;--topic-sq-r: 0;--topic-sq-bd: 1px solid #14171d;--topic-sq-w: #ffffff;--topic-sq-b: #0b0d12;--topic-name-fs: 15px;--topic-name-fw: 700;--showall-justify: flex-start;--showall-bd: 1px solid var(--accent);--showall-pad: 6px 12px;--showall-fg: var(--accent);--showall-fw: 700;--chrome-card-bg: var(--card);--chrome-card-bd: #14171d;--chrome-card-bd-hover: var(--accent);--chrome-card-sh-hover: none;--chrome-blur: 0px;--chrome-btn-bg: #ffffff;--chrome-btn-bd: #14171d;--chrome-btn-bg-hover: var(--bg1);--chrome-btn-bd-hover: var(--accent);--chrome-btn-sh: none;--chrome-input-bg: #ffffff;--chrome-input-bd: #14171d;--chrome-placeholder: var(--muted2);--chrome-row-hover: rgba(5, 51, 243, .05);--chrome-header-bg: #ffffff;--chrome-header-bg-dark: #ffffff;--chrome-bottomnav-bg: #ffffff;--chrome-bottomnav-bd: #14171d;--chrome-bottomnav-fg: var(--muted);--chrome-bottomnav-active: var(--accent);--chrome-bottomnav-bg-dark: var(--card);--chrome-bottomnav-bd-dark: var(--border2);--chrome-bottomnav-fg-dark: var(--muted);--chrome-bottomnav-active-dark: var(--accent)}[data-theme=swiss] .ssd--dark{--ssd-on-accent: #fff}[data-theme=swiss][data-mode=dark]{--bg0: #0c0e12;--bg1: #14161b;--bg2: #1a1d23;--card: #101218;--card2: #15171d;--border: #262a32;--border2: #343943;--text: #f1f3f7;--muted: #9aa1ad;--muted2: #6a7280;--accent: #4d6bff;--accent2: #7a90ff;--surface: rgba(12, 14, 18, .85);--good: #21c98c;--bad: #ff6a59;--warn: #ffb44d;--missed-theory: #2bbccb;--missed-theory-soft: rgba(43, 188, 203, .14);--m-1: #ffb44d;--m-2: #4d6bff;--m-3: #21c98c;--m-4: #f1f3f7;--elev-2: 0 16px 40px rgba(0, 0, 0, .55);--elev-3: 0 24px 64px rgba(0, 0, 0, .6);--card-bd: 1px solid #707a8c;--cta-bd: 1px solid var(--accent2);--mixbar-bd: 1px solid #707a8c;--mixseg-divider: 1px solid #0c0e12;--dot-bd: 1px solid #707a8c;--pill-bd: 1px solid #707a8c;--daybox-bd: 1px solid #707a8c;--daybox-off-bg: transparent;--plan-active-bd: #707a8c;--ghost-bg: transparent;--ghost-bd: 1px solid #707a8c;--edit-bd: 1px solid #707a8c;--plusbox-bg: transparent;--topic-sq-bd: 1px solid #707a8c;--topic-sq-w: #d9dee8;--topic-sq-b: #05060a;--src-masters: #f1f3f7;--mastery-fam: #2c313b;--mastery-sol: #5d7dff;--mastery-str: #8fa4ff;--mastery-deep: #c4cfff;--chrome-card-bd: #707a8c;--chrome-btn-bg: transparent;--chrome-btn-bd: #707a8c;--chrome-btn-bg-hover: var(--bg2);--chrome-input-bg: var(--card);--chrome-input-bd: #707a8c;--chrome-header-bg: var(--bg0);--chrome-header-bg-dark: var(--bg0);--chrome-bottomnav-bg: var(--card);--chrome-bottomnav-bd: #707a8c}[data-theme=swiss] .site-header{border-bottom:2px solid var(--text)}[data-theme=swiss] .site-header .nav-link,[data-theme=swiss] .site-header .nav-trigger{font-family:Inter Tight,Inter,system-ui,sans-serif;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;border-radius:0}[data-theme=swiss] .nav-link.active{background:var(--accent);color:#fff;border-color:var(--accent)}[data-theme=swiss] .site-header .nav-link:hover{border-color:var(--text)}[data-theme=swiss] .site-header .topbar-theme-toggle,[data-theme=swiss] .site-header .lang-dropdown-btn{border-color:var(--text);border-radius:0}[data-theme=swiss] .site-header .topbar-theme-toggle:hover{background:var(--accent);color:#fff}[data-theme=swiss] .mobile-bottom-label{text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:600}[data-theme=swiss] .mobile-bottom-nav button.active .mobile-bottom-icon{background:none}[data-theme=swiss] .mobile-bottom-nav button.active:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--chrome-bottomnav-active, var(--accent))}[data-theme=swiss] .ssd{--ssd-serif: "Inter Tight", "Inter", system-ui, sans-serif}[data-theme=swiss] .ssd__rail-prompt{font-weight:700;letter-spacing:-.015em}[data-theme=swiss] .ssd__rail-prompt-em{font-style:normal;color:var(--accent)}[data-theme=swiss] .ssd button,[data-theme=swiss] .ss button,[data-theme=swiss] .ss__action,[data-theme=swiss] .ss__continuation-pill{border-radius:2px}[data-theme=swiss] .ss{--shadow-card: none;--shadow-sheet: 0 16px 40px rgba(10, 12, 16, .14)}[data-theme=swiss] .ss__prompt{font-weight:700;letter-spacing:-.01em}[data-theme=swiss] .ss__prompt em{font-style:normal;color:var(--accent)}[data-theme=swiss] .ss__action.is-primary{text-transform:uppercase;letter-spacing:.06em;font-weight:700}[data-theme=swiss] .ss__bottom{border-top:2px solid var(--text)}[data-theme=swiss] .ss__badge,[data-theme=swiss] .ss--bold .ss__badge{border-radius:0;background:transparent;border:1px solid currentColor;color:var(--cat-active);font-weight:700}[data-theme=swiss] .ssd__rail-badge{border-radius:0;background:transparent;border:1px solid currentColor;color:var(--ssd-cat-active)}[data-theme=swiss] .ss__context,[data-theme=swiss] .ss--bold .ss__context{background:var(--card);border-bottom:1px solid var(--text)}[data-theme=swiss] .ss__context:before,[data-theme=swiss] .ss--bold .ss__context:before{height:4px;border-radius:0}[data-theme=swiss] .lp-btn{border-radius:0}[data-theme=swiss] .lp-btn-primary{background:var(--accent);color:#fff;border:1px solid var(--accent2);box-shadow:none;font-weight:700;text-transform:uppercase;letter-spacing:.05em}[data-theme=swiss] .lp-btn-primary:hover{transform:none;box-shadow:none;background:var(--accent2)}[data-theme=swiss] .lp-btn-text{color:var(--text);font-weight:600;text-decoration:underline;text-underline-offset:3px}[data-theme=swiss] .lp-hero-google-btn{border-radius:0;border:1px solid #14171d}[data-theme=swiss] .lp-headline em,[data-theme=swiss] .lp-section-title em{font-style:normal;color:var(--accent)}[data-theme=swiss] .lpbg-pill{border-radius:0;border:1px solid #14171d;box-shadow:none}[data-theme=swiss] .lpbg-pill-dot{border-radius:0}[data-theme=swiss] .brand-wordmark{align-items:center;gap:5px;font-family:Inter Tight,Inter,system-ui,sans-serif;font-weight:800;font-size:24px;letter-spacing:-.03em;line-height:1}[data-theme=swiss] .brand-wordmark:before{display:none}[data-theme=swiss] .brand-wordmark .wm-dawn{color:var(--text)}[data-theme=swiss] .brand-wordmark .wm-chess{color:#fff;background:var(--accent);padding:2px 7px 3px}
