:root{--bg:#14161a;--surface:#1c1f26;--surface-2:#242832;--line:#2f343f;--fg:#e8eaed;--fg-dim:#9aa3b2;--accent:#7fb069;--accent-dim:#4a6b3d;--bad:#d9534f;--warn:#e0a458;--radius:10px;--cat-tactics:#6ba3d6;--cat-game:#d69a5c;--cat-endgame:#a98cd9;--cat-thinking:#d9c05c;--cat-playalong:#c96a8a;--cat-knowledge:#c2b48c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;overscroll-behavior:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;font:16px/1.45 ui-sans-serif,-apple-system,SF Pro Text,system-ui,sans-serif}.app{max-width:560px;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));flex-direction:column;min-height:100%;margin:0 auto;display:flex;position:relative}.screen{flex-direction:column;flex:1;gap:20px;display:flex}[hidden]{display:none!important}.home-head{justify-content:space-between;align-items:center;display:flex}.home-head h1{letter-spacing:-.01em;margin:0;font-size:19px;font-weight:600}.icon-btn{color:var(--fg-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:19px}.icon-btn:hover{background:var(--surface-2);color:var(--fg)}.streak-block{text-align:center;padding:24px 0 8px}.streak-block.small{padding:8px 0}.streak-num{color:var(--accent);font-variant-numeric:tabular-nums;font-size:68px;font-weight:200;line-height:1}.streak-block.small .streak-num{font-size:42px}.streak-label{color:var(--fg-dim);margin-top:6px;font-size:14px}.streak-best{color:var(--fg-dim);opacity:.7;margin-top:10px;font-size:12px}.done-pill{background:var(--accent-dim);color:var(--fg);text-transform:uppercase;letter-spacing:.06em;border-radius:99px;margin-left:8px;padding:2px 8px;font-size:11px;display:inline-block}.goal-block{text-align:center;padding:24px 0 8px}.goal-num{color:var(--accent);font-variant-numeric:tabular-nums;font-size:52px;font-weight:200;line-height:1}.goal-block.small .goal-num{font-size:34px}.goal-of{color:var(--fg-dim);font-size:18px}.goal-bar{background:var(--surface-2);border-radius:99px;max-width:260px;height:5px;margin:12px auto 0;overflow:hidden}.goal-fill{background:var(--accent);border-radius:99px;height:100%;transition:width .24s;display:block}.goal-label{color:var(--fg-dim);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:8px;font-size:14px;display:flex}.goal-streak{background:var(--surface-2);text-transform:uppercase;letter-spacing:.06em;border-radius:99px;padding:2px 8px;font-size:11px}.goal-covered{color:var(--accent)}.goal-ext{border:1px solid var(--surface-2);color:var(--fg-dim);background:0 0}.ext-block{background:var(--surface);border-radius:12px;margin:14px 0 4px;padding:12px 14px}.ext-head{align-items:baseline;gap:.4rem;display:flex}.ext-count{color:var(--accent);font-size:26px;font-weight:700}.ext-word{color:var(--fg-dim);font-size:13px}.ext-bar{background:var(--surface-2);border-radius:99px;height:6px;margin:10px 0 8px;overflow:hidden}.ext-fill{background:var(--accent);border-radius:99px;height:100%;transition:width .24s}.ext-note{margin:0;font-size:13px}.ext-rule{color:var(--fg-dim);margin:6px 0 0;font-size:12px}.ext-used{color:var(--accent);margin:8px 0 0;font-size:12.5px}.log-day-time{margin-left:.4rem}.log-day-time.met{color:var(--accent);font-weight:600}.unit-field{align-items:center;gap:.35rem;display:inline-flex}.unit-field .unit{color:var(--fg-dim);font-size:12.5px}.call{flex-direction:column;align-items:center;gap:8px;display:flex}.call-q{color:var(--fg);align-items:center;gap:8px;font-size:14px;display:flex}.call-clock{color:var(--fg-dim);font-variant-numeric:tabular-nums;background:var(--surface-2);border-radius:99px;padding:1px 7px;font-size:12px}.call-clock.low{color:var(--bad)}.call-opts{gap:8px;display:flex}.call-opts button{min-width:92px}.app-fixed{height:100%;min-height:0;overflow:hidden}.app-fixed .screen,.thinking{min-height:0}.thinking .board{width:min(100%,52vh)}.thinking.phase-assess .board{width:min(100%,34vh)}.thinking .board{flex:none}.thinking .think-body{flex:1;min-height:0;padding-top:2px;overflow-y:auto}.thinking .game-foot{flex:none}.thinking .game-foot .primary{width:100%}.think-step{color:var(--fg-dim);text-align:center;min-height:2.4em;margin:0 0 6px;font-size:13px}.think-q{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.05em;margin:10px 0 5px;font-size:12px;display:block}.chip-row{flex-wrap:wrap;gap:6px;display:flex}.chip-row.scale{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.chip{background:var(--surface);border:1px solid var(--line);color:var(--fg);cursor:pointer;white-space:nowrap;border-radius:99px;padding:6px 12px;font-family:inherit;font-size:13px}.chip.on{background:var(--accent);border-color:var(--accent);color:#10120f;font-weight:600}.think-text{box-sizing:border-box;resize:vertical;background:var(--surface);border:1px solid var(--line);width:100%;color:var(--fg);border-radius:var(--radius);padding:8px;font-family:inherit;font-size:14px}.move-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.move-chip{background:var(--surface);border:1px solid var(--line);border-radius:99px;align-items:center;gap:4px;padding:2px 4px 2px 10px;font-size:14px;display:inline-flex}.move-chip.best{border-color:var(--accent)}.move-chip.empty{color:var(--fg-dim);border-style:dashed;padding:6px 12px;font-size:12.5px}.move-chip-name{color:var(--fg);font:inherit;cursor:pointer;background:0 0;border:none;padding:4px 0}.move-chip.best .move-chip-name{color:var(--accent);font-weight:600}.move-chip-tag{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-size:10px}.move-chip-x{color:var(--fg-dim);cursor:pointer;background:0 0;border:none;padding:0 6px;font-size:15px;line-height:1}.think-hint{color:var(--fg-dim);width:100%;font-size:12px}.thinking-score{gap:10px;min-height:0}.thinking-score .score-scroll{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex;overflow-y:auto}.puzzle-head.score-head{padding-right:calc(var(--quit-w) - 16px + 6px);flex:none}.score-head .drill-label{margin-left:10px;margin-right:auto}.score-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-dim);font-size:11px}.score-sum{color:var(--fg-dim);flex:none;justify-content:space-between;gap:10px;font-size:13px;display:flex}.score-sum b{color:var(--fg);font-weight:600}.thinking-score .game-foot{flex-direction:column;flex:none;gap:8px;display:flex}.thinking-score .game-foot .primary,.thinking-score .game-foot .secondary{width:100%}.score-sec{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex:none;padding:9px 11px}.score-sec h4{letter-spacing:.07em;text-transform:uppercase;color:var(--fg-dim);margin:0 0 4px;font-size:11px;font-weight:600}.score-parts{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.score-parts li{grid-template-columns:1fr auto;align-items:baseline;gap:2px 10px;padding:4px 0;display:grid}.score-parts li+li{border-top:1px dashed var(--line)}.score-part-label{font-size:14px}.score-part-word{text-align:right;letter-spacing:.01em;font-size:12px;font-weight:600}.score-part-word.spot-on{color:var(--accent)}.score-part-word.close{color:color-mix(in srgb, var(--accent) 60%, var(--fg-dim))}.score-part-word.partly{color:var(--warn)}.score-part-word.missed{color:var(--bad)}.score-part-detail{color:var(--fg-dim);grid-column:1/-1;font-size:12.5px;line-height:1.4}.score-part-detail b{color:var(--fg);font-weight:600}.evalwrap{padding-top:2px;display:block}.evalbar{background:linear-gradient(90deg, var(--surface-2) 0 50%, var(--fg-dim) 50% 100%);border-radius:99px;height:10px;margin:8px 4px 6px;display:block;position:relative}.evalbar .tick{border-radius:2px;width:3px;height:18px;position:absolute;top:-4px;transform:translate(-50%)}.evalkey{color:var(--fg-dim);gap:12px;font-size:12px;display:flex}.evalkey i{vertical-align:middle;border-radius:2px;width:8px;height:8px;margin-right:5px;display:inline-block}.evalbar .you,.evalkey .you{background:var(--warn)}.evalbar .then,.evalkey .then{background:var(--fg)}.evalbar .eng,.evalkey .eng{background:var(--accent)}.cands{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.cand{border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb, var(--surface) 60%, var(--bg));padding:7px 10px}.cand.chosen{border-color:var(--accent)}.cand-top{grid-template-columns:auto 1fr auto;align-items:baseline;gap:10px;font-size:14.5px;display:grid}.cand-top .cand-san{font-weight:600}.cand-tag{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.cand-mark{font-variant-numeric:tabular-nums;text-align:right;font-size:12.5px}.cand-mark.ok{color:var(--accent)}.cand-mark.mid,.cand-mark.warn{color:var(--warn)}.cand-mark.bad{color:var(--bad)}.cand-line{border-left:2px solid var(--line);color:var(--fg-dim);gap:3px;margin-top:6px;padding-left:10px;font-size:13px;display:grid}.cand-line .row{align-items:baseline;gap:8px;display:flex}.cand-line .who{text-transform:uppercase;letter-spacing:.05em;flex:none;width:84px;font-size:10.5px}.cand-line .cand-san{color:var(--fg);font-weight:500}.cand-line .cand-mark{margin-left:auto}.app:has(>.thinking-review){height:100%;min-height:0;overflow:hidden}.app:has(>.thinking-review) .screen{min-height:0}.thinking-review .thinking-score{flex:1;min-height:0}.think-lines ul{flex-direction:column;gap:8px;margin:6px 0 0;padding:0;list-style:none;display:flex}.think-lines li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:8px 10px}.think-lines li.chosen{border-color:var(--accent)}.think-line{grid-template-columns:1fr auto;align-items:baseline;gap:2px 8px;font-size:14px;display:grid}.think-line.sub{color:var(--fg-dim);padding-left:12px;font-size:13px}.think-line-lead{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.05em;grid-column:1/-1;font-size:11.5px}.think-line.sub .think-line-lead{font-size:10.5px}.think-line-san{font-weight:500}.think-line-eval{font-variant-numeric:tabular-nums;text-align:right}.think-line-best{color:var(--fg-dim);font-variant-numeric:tabular-nums;grid-column:1/-1;font-size:12px}.segment-view .seg-game{min-height:2.4em}.seg-compare{flex-direction:column;gap:2px;width:100%;max-width:320px;margin:0 auto;font-size:14px;display:flex}.seg-row{grid-template-columns:4.2em 1fr auto;align-items:baseline;gap:8px;display:grid}.seg-who{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.seg-move{font-weight:500}.seg-cp{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:13px}.seg-row.you .seg-move{color:var(--fg)}.seg-row.game .seg-move{color:var(--accent)}.seg-verdict{color:var(--fg-dim);grid-column:1/-1;font-size:13px}.seg-verdict.good,.seg-compare.matched .seg-row.you .seg-cp{color:var(--accent)}.segment-score .verdict{text-align:center;margin:0}.seg-move-row{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.seg-move-row:disabled{cursor:default}.seg-move-row:not(:disabled):active{opacity:.7}.segment-score .score-scroll>.note:first-child{padding-right:calc(var(--quit-w) - 16px + 6px)}.review-curated{color:var(--fg-dim);text-align:center;margin:6px 0 0;font-size:13px}.review-curated strong{color:var(--fg)}.stat-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-align:center;padding:12px 8px}.stat-val{font-variant-numeric:tabular-nums;font-size:22px;font-weight:500;display:block}.prov{color:var(--fg-dim);vertical-align:super;font-size:13px}.stat-key{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.05em;margin-top:3px;font-size:11px;display:block}.settings{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.settings label{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.settings input[type=number]{background:var(--surface-2);border:1px solid var(--line);width:96px;color:var(--fg);font:inherit;font-variant-numeric:tabular-nums;text-align:right;border-radius:6px;padding:7px 9px}.note{color:var(--fg-dim);margin:10px 0 0;font-size:12.5px}.build{color:var(--fg-dim);opacity:.6;margin:8px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.build.credits{margin-top:2px}.duration-picker{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.duration{background:var(--surface);border:1px solid var(--line);color:var(--fg);border-radius:var(--radius);cursor:pointer;flex-direction:column;align-items:center;gap:1px;padding:14px 4px;transition:border-color .12s,background .12s;display:flex}.duration:hover{background:var(--surface-2)}.duration.sel{border-color:var(--accent);background:var(--surface-2)}.dur-num{font-variant-numeric:tabular-nums;font-size:20px;font-weight:500}.dur-unit{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.06em;font-size:10px}.primary{background:var(--accent);color:#10130f;border-radius:var(--radius);font:inherit;cursor:pointer;border:none;margin-top:auto;padding:15px;font-weight:600}.primary:disabled{opacity:.55;cursor:default}.primary:not(:disabled):hover{filter:brightness(1.08)}.footnote{text-align:center;color:var(--fg-dim);margin:0;font-size:12.5px}.error{color:var(--bad);text-align:center;margin:0;font-size:13.5px}.error.log-error{z-index:20;left:16px;right:16px;bottom:max(16px, env(safe-area-inset-bottom,0px));background:var(--surface-2);border:1px solid var(--bad);border-radius:var(--radius);padding:10px 12px;position:fixed}.settings-screen{gap:14px;min-height:0}.settings-sections{flex-direction:column;flex:1;gap:6px;min-height:0;padding-bottom:8px;display:flex;overflow-y:auto}.settings-sections>.cfg-grp-label{margin-top:14px}.settings-sections>.cfg-grp-label:first-child{margin-top:0}.settings{flex-direction:column;gap:10px;display:flex}.settings .note{margin:0}.ext-line{justify-content:space-between;align-items:baseline;font-size:14px;display:flex}.ext-line strong{font-size:18px}.ext-bar{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.ext-fill{background:var(--accent);border-radius:3px;height:100%;display:block}.fact{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.fact-val{font-variant-numeric:tabular-nums;color:var(--fg)}.fact-val.dim{color:var(--fg-dim)}.areas{flex-direction:column;gap:9px;margin:2px 0 4px;display:flex}.area-row{grid-template-columns:1fr auto auto;grid-template-areas:"name num delta""bar bar bar";align-items:center;gap:3px 8px;display:grid}.area-name{grid-area:name;align-items:center;gap:6px;min-width:0;font-size:12.5px;display:flex}.area-bar{background:var(--surface-2);border-radius:3px;grid-area:bar;height:6px;overflow:hidden}.area-fill{border-radius:3px;height:100%;display:block}.area-num{font-variant-numeric:tabular-nums;text-align:right;grid-area:num;font-size:12.5px}.area-num em{color:var(--fg-dim);font-size:11px;font-style:normal}.area-delta{color:var(--fg-dim);text-align:right;font-variant-numeric:tabular-nums;grid-area:delta;min-width:44px;font-size:11px}.area-delta.up{color:var(--accent)}.area-delta.down{color:var(--warn)}.menu-wrap{position:relative}.menu{z-index:20;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;min-width:190px;padding:5px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 28px #00000073}.menu button{color:var(--fg);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:7px;padding:11px 12px;font-size:14.5px}.menu button:hover{background:var(--surface)}.menu button.on{color:var(--accent)}.menu-section{border-top:1px solid var(--line);flex-direction:column;margin-top:5px;padding-top:5px;display:flex}.menu-section-label{text-transform:uppercase;letter-spacing:.09em;color:var(--fg-dim);padding:4px 12px 2px;font-size:10px}.menu-section button{color:var(--fg-dim);padding:8px 12px;font-size:13px}.menu-section button:hover{color:var(--fg)}.menu-scrim{z-index:10;cursor:default;background:0 0;border:none;padding:0;position:fixed;inset:0}.goalpick{justify-content:center}.goalpick-body{flex-direction:column;flex:1;justify-content:safe center;gap:12px;min-height:0;padding:8px 0;display:flex;overflow-y:auto}.goalpick-head{letter-spacing:-.02em;text-align:center;text-wrap:balance;margin:0;font-size:24px;font-weight:600}.goalpick-sub{text-align:center;max-width:30ch;color:var(--fg-dim);margin:0 auto;font-size:14px;line-height:1.5}.goalpick-grid{flex-direction:column;gap:6px;margin-top:6px;display:flex}.goalpick-opt{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--fg);font:inherit;cursor:pointer;align-items:center;gap:14px;padding:10px 14px;display:flex}.goalpick-opt:hover{border-color:var(--fg-dim)}.goalpick-opt.on{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, var(--surface))}.goalpick-min{letter-spacing:-.02em;font-variant-numeric:tabular-nums;flex:none;width:64px;font-size:22px;font-weight:600}.goalpick-min em{color:var(--fg-dim);margin-left:3px;font-size:12px;font-style:normal}.goalpick-opt.on .goalpick-min{color:var(--accent)}.goalpick-says{color:var(--fg-dim);font-size:13px;line-height:1.35}.goalpick-opt.on .goalpick-says{color:var(--fg)}.gate{justify-content:center}.gate-body{text-align:center;flex-direction:column;gap:14px;display:flex}.gate-body h1{letter-spacing:-.02em;margin:0;font-size:26px;font-weight:600}.gate-line{color:var(--fg-dim);margin:0 0 10px;font-size:14.5px;line-height:1.5}.gate-btn{margin-top:0}.gate-note{text-align:left;line-height:1.5}.gate-note.dim{opacity:.65;font-size:11.5px}.gate-privacy{color:var(--fg)}.gate-diag{color:var(--fg-dim);opacity:.7;font-size:11px}.gate-diag.warn{color:var(--warn);opacity:1}.privacy-screen a{color:var(--accent)}.puzzle{flex-direction:column;flex:1;gap:10px;display:flex}.puzzle-head{padding-right:calc(var(--quit-w) - 16px);justify-content:space-between;align-items:baseline;display:flex}.puzzle-meta{align-items:baseline;gap:10px;display:flex}.drill-label{font-size:14.5px;font-weight:500}.counter{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:12.5px}.puzzle-rating{font-variant-numeric:tabular-nums;letter-spacing:.03em;color:var(--fg-dim);border:1px solid var(--line);border-radius:3px;padding:1px 5px;font-size:12px}.clock{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:25px;font-weight:300}.clock.urgent{color:var(--warn)}.clock-bar{background:var(--line);border-radius:2px;height:3px;overflow:hidden}.clock-fill{background:var(--accent);height:100%;transition:width .1s linear}.clock-fill.urgent{background:var(--warn)}.clock-fill.goal{transition:width .35s ease-out}.board-wrap{justify-content:center;align-items:flex-start;display:flex}.board .sq{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.board .sq.last-move{background:#9bc70069}.board .sq.selected{background:#14551e80}.board .sq.check{background:radial-gradient(red 0%,#e70000 25%,#a9000000 89%,#9e000000 100%)}.board .sq.move-dest:before{content:"";pointer-events:none;position:absolute;inset:0}.board .sq.move-dest.quiet:before{background:radial-gradient(#14551e80 19%,#0000 20%)}.board .sq.move-dest.capture:before{background:radial-gradient(#0000 0% 79%,#1455004d 80%)}.board .sq [data-piece]{z-index:2;position:relative}.board .sq svg{display:block}.board{aspect-ratio:1;border-radius:4px;width:min(100%,62vh);overflow:hidden}.puzzle-foot{text-align:center;min-height:26px}.hint{color:var(--fg-dim);font-size:14px}.hint-sub{color:var(--fg-dim);opacity:.85;margin-top:2px;font-size:12.5px;font-style:normal;display:block}.verdict{font-size:15px;font-weight:600}.verdict.good{color:var(--accent)}.verdict.bad{color:var(--bad)}.verdict.mixed{color:var(--fg)}.verdict-detail{color:var(--fg-dim);margin:-6px 0 0;font-size:13.5px;line-height:1.45}.verdict em{color:var(--fg-dim);font-style:normal;font-weight:400}:root{--quit-w:44px}.quit{top:max(10px, env(safe-area-inset-top,0px));right:max(10px, env(safe-area-inset-right,0px));z-index:5;text-align:center;width:34px;color:var(--fg-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 0;font-size:17px;position:absolute}.quit:hover{background:var(--surface-2);color:var(--fg)}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.shake{animation:.28s shake}.promo-overlay{z-index:10;background:#0a0c0fbf;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.promo-choices{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);gap:8px;padding:12px;display:flex}.promo-piece{background:var(--surface-2);border:1px solid var(--line);width:58px;height:58px;color:var(--fg);cursor:pointer;border-radius:8px;font-size:34px;line-height:1}.promo-piece:hover{border-color:var(--accent)}.app:has(>.screen.analysis)>.quit{display:none}.pg-side{border:1px solid #7d838d;border-radius:2px;width:11px;height:11px;margin-right:7px;display:inline-block}.pg-convert,.pg-ending{color:var(--accent);border:1px solid var(--accent);white-space:nowrap;border-radius:999px;padding:0 7px;font-size:11px}.pg-side.white{background:#ececec}.pg-side.black{background:#0b0c0e}.confirm-overlay{z-index:20;background:#0a0c0fbf;justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;inset:0}.confirm-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:10px;max-width:340px;padding:18px;display:flex}.confirm-card h2{margin:0;font-size:17px;font-weight:600}.confirm-card p{color:var(--fg-dim);margin:0;font-size:14px;line-height:1.45}.confirm-actions{flex-direction:column;gap:8px;margin-top:4px;display:flex}.confirm-actions button{width:100%}.celebrate{text-align:center;align-items:center}.celebrate-body{flex-direction:column;flex:1;justify-content:safe center;align-items:center;gap:8px;width:100%;min-height:0;padding:6px 0;display:flex;overflow:hidden auto}.celebrate-eyebrow{letter-spacing:.13em;text-transform:uppercase;color:color-mix(in srgb, var(--mat,var(--fg-dim)) 70%, white);margin:0;font-size:11.5px;font-weight:600}.celebrate-sub{color:var(--fg-dim);margin:0;font-size:14px}.daybeat{cursor:pointer;justify-content:center}.daybeat-body{flex-direction:column;align-items:center;gap:6px;padding:24px 0;display:flex;position:relative}.daybeat-num{letter-spacing:-.04em;color:var(--fg);font-variant-numeric:tabular-nums;font-size:96px;font-weight:700;line-height:1;animation:.7s cubic-bezier(.2,1.3,.35,1) .1s both name-in;position:relative}.daybeat-num:before{content:"";z-index:-1;background:radial-gradient(circle, color-mix(in srgb, var(--mat) 34%, transparent) 0%, transparent 68%);border-radius:50%;position:absolute;inset:-48px -64px}.daybeat-num .roll{vertical-align:0}.daybeat-ring{z-index:-1;border:2px solid var(--mat);opacity:0;border-radius:50%;width:150px;height:150px;margin:auto;animation:1.1s ease-out 1.84s both halo-out;position:absolute;inset:0}.daybeat-spark{background:var(--mat);opacity:0;border-radius:50%;width:6px;height:6px;margin:auto;animation:1s ease-out 1.86s both spark-out;position:absolute;inset:0}.daybeat-spark.s0{--dx:0px;--dy:-110px;animation-delay:1.86s}.daybeat-spark.s1{--dx:64px;--dy:-90px;animation-delay:1.9s}.daybeat-spark.s2{--dx:112px;--dy:-34px;animation-delay:1.875s}.daybeat-spark.s3{--dx:110px;--dy:44px;animation-delay:1.92s}.daybeat-spark.s4{--dx:52px;--dy:100px;animation-delay:1.88s}.daybeat-spark.s5{--dx:-30px;--dy:108px;animation-delay:1.93s}.daybeat-spark.s6{--dx:-100px;--dy:60px;animation-delay:1.89s}.daybeat-spark.s7{--dx:-116px;--dy:-20px;animation-delay:1.91s}.daybeat-spark.s8{--dx:-70px;--dy:-92px;animation-delay:1.96s}.daybeat-spark.s9{--dx:30px;--dy:-140px;animation-delay:2.01s}.daybeat-spark.s10{--dx:140px;--dy:10px;animation-delay:1.99s}.daybeat-spark.s11{--dx:-140px;--dy:30px;animation-delay:2.03s}.daybeat-spark.s8,.daybeat-spark.s9,.daybeat-spark.s10,.daybeat-spark.s11{width:4px;height:4px;animation-duration:1.2s}.daybeat-label{color:var(--fg-dim);margin:0;font-size:16px;animation:.5s ease-out 1.5s both fade-up}.celebrate-sub strong{color:var(--fg);font-size:19px}.roll{vertical-align:-.13em;height:1em;display:inline-block;overflow:hidden}.roll-track{flex-direction:column;animation:1.4s cubic-bezier(.3,.7,.2,1) .42s both roll-up;display:flex;transform:translateY(-50%)}.roll-cell{height:1em;line-height:1}@keyframes roll-up{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.celebrate-quote{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-width:34ch;margin:6px 0 0;padding:11px 14px}.celebrate-quote p{margin:0;font-size:15px;font-style:italic;line-height:1.5}.celebrate-quote cite{color:var(--fg-dim);margin-top:9px;font-size:12.5px;font-style:normal;display:block}.celebrate-quote.fact{border-color:color-mix(in srgb, var(--mat) 40%, var(--line));background:color-mix(in srgb, var(--mat) 7%, var(--surface))}.celebrate-quote.fact p{font-size:14px;font-style:normal}.celebrate-quote.fact cite{color:var(--mat);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.celebrate .done-actions{width:100%}.fin-matte{background-image:linear-gradient(165deg, color-mix(in srgb, var(--mat) 62%, white) 0%, var(--mat) 46%, color-mix(in srgb, var(--mat) 76%, black) 100%)}.fin-wood{background-image:repeating-linear-gradient(96deg, #00000016 0 .055em, #ffffff0a .055em .13em), linear-gradient(165deg, color-mix(in srgb, var(--mat) 55%, white) 0%, var(--mat) 44%, color-mix(in srgb, var(--mat) 62%, black) 100%)}.fin-stone{background-image:linear-gradient(200deg, color-mix(in srgb, var(--mat) 40%, white) 0%, var(--mat) 26%, color-mix(in srgb, var(--mat) 30%, white) 44%, var(--mat) 58%, color-mix(in srgb, var(--mat) 68%, black) 100%)}.fin-metal{background-image:linear-gradient(158deg, color-mix(in srgb, var(--mat) 42%, white) 0%, color-mix(in srgb, var(--mat) 88%, black) 27%, color-mix(in srgb, var(--mat) 22%, white) 45%, var(--mat) 57%, color-mix(in srgb, var(--mat) 58%, black) 100%)}.fin-gem{background-image:radial-gradient(62% 58% at 36% 28%, color-mix(in srgb, var(--mat) 30%, white) 0%, var(--mat) 46%, color-mix(in srgb, var(--mat) 58%, black) 100%)}.mat-piece{color:#0000;filter:drop-shadow(0 .035em .03em #000000a6);-webkit-background-clip:text;background-clip:text;line-height:1;display:inline-block}.mat-piece.fin-stone{filter:drop-shadow(0 .045em .035em #000000b3)}.mat-piece.fin-gem{filter:drop-shadow(0 0 .14em color-mix(in srgb, var(--mat) 55%, transparent)) drop-shadow(0 .035em .03em #0009)}.mat-bloom{background:radial-gradient(circle, color-mix(in srgb, var(--mat) 26%, transparent) 0%, color-mix(in srgb, var(--mat) 9%, transparent) 40%, transparent 68%);pointer-events:none;border-radius:50%;width:220px;height:220px;animation:1.2s cubic-bezier(.2,.8,.3,1) 80ms both bloom-in;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.3)}.mat-bloom.quiet{background:radial-gradient(circle, color-mix(in srgb, var(--mat) 16%, transparent) 0%, color-mix(in srgb, var(--mat) 6%, transparent) 42%, transparent 68%);width:180px;height:180px;animation-delay:.16s}@keyframes bloom-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}60%{opacity:1}to{opacity:.9;transform:translate(-50%,-50%)scale(1)}}.upgrade{flex-direction:column;align-items:center;gap:6px;display:flex;position:relative}.upgrade-sky{pointer-events:none;position:absolute;inset:0}.upgrade-ray{transform-origin:50% 0;width:2px;height:150px;transform:rotate(calc(var(--i) * 60deg)) scaleY(0);background:linear-gradient(to bottom, color-mix(in srgb, var(--mat) 45%, transparent) 0%, transparent 70%);animation:ray-out 1.1s cubic-bezier(.2, .9, .3, 1) calc(.2s + var(--i) * 30ms) both;position:absolute;top:58px;left:50%}.upgrade-stage{place-items:center;width:240px;height:116px;display:grid;position:relative}.upgrade-old,.upgrade-new{place-items:center;line-height:1;display:grid;position:absolute;inset:0}.upgrade-old{color:var(--was);animation:1.1s cubic-bezier(.4,0,.7,1) both piece-retire}.upgrade-new{color:var(--mat);text-shadow:0 0 18px color-mix(in srgb, var(--mat) 55%, transparent);animation:.9s cubic-bezier(.2,1.5,.4,1) .62s both piece-arrive}.upgrade.first .upgrade-new{animation-delay:.12s}.upgrade-halo{border:2px solid var(--mat);border-radius:50%;width:108px;height:108px;margin:auto;animation:.9s ease-out .64s both halo-out;position:absolute;inset:0}@keyframes sheen{0%{background-position:100% 0}to{background-position:0 0}}.upgrade-spark{background:var(--mat);opacity:0;border-radius:50%;width:5px;height:5px;margin:auto;animation:.9s ease-out .7s both spark-out;position:absolute;inset:0}.upgrade-spark.s0{--dx:0px;--dy:-54px;animation-delay:.7s}.upgrade-spark.s1{--dx:38px;--dy:-38px;animation-delay:.745s}.upgrade-spark.s2{--dx:54px;--dy:0px;animation-delay:.715s}.upgrade-spark.s3{--dx:38px;--dy:38px;animation-delay:.76s}.upgrade-spark.s4{--dx:0px;--dy:54px;animation-delay:.72s}.upgrade-spark.s5{--dx:-38px;--dy:38px;animation-delay:.765s}.upgrade-spark.s6{--dx:-54px;--dy:0px;animation-delay:.73s}.upgrade-spark.s7{--dx:-38px;--dy:-38px;animation-delay:.75s}.upgrade-spark.s8{--dx:22px;--dy:-78px;animation-delay:.84s}.upgrade-spark.s9{--dx:74px;--dy:-30px;animation-delay:.89s}.upgrade-spark.s10{--dx:70px;--dy:40px;animation-delay:.86s}.upgrade-spark.s11{--dx:-18px;--dy:76px;animation-delay:.9s}.upgrade-spark.s12{--dx:-72px;--dy:34px;animation-delay:.85s}.upgrade-spark.s13{--dx:-66px;--dy:-44px;animation-delay:.88s}.upgrade-spark.s8,.upgrade-spark.s9,.upgrade-spark.s10,.upgrade-spark.s11,.upgrade-spark.s12,.upgrade-spark.s13{width:4px;height:4px;animation-duration:1.1s}.fanfare-spark.s0{--dx:0px;--dy:-104px;animation-delay:.9s}.fanfare-spark.s1{--dx:66px;--dy:-84px;animation-delay:.945s}.fanfare-spark.s2{--dx:104px;--dy:-26px;animation-delay:.915s}.fanfare-spark.s3{--dx:94px;--dy:48px;animation-delay:.96s}.fanfare-spark.s4{--dx:44px;--dy:96px;animation-delay:.92s}.fanfare-spark.s5{--dx:-26px;--dy:104px;animation-delay:.965s}.fanfare-spark.s6{--dx:-88px;--dy:58px;animation-delay:.93s}.fanfare-spark.s7{--dx:-106px;--dy:-18px;animation-delay:.95s}.fanfare-spark.s8{--dx:-62px;--dy:-86px;animation-delay:1.04s}.fanfare-spark.s9{--dx:34px;--dy:-136px;animation-delay:1.09s}.fanfare-spark.s10{--dx:140px;--dy:-58px;animation-delay:1.06s}.fanfare-spark.s11{--dx:132px;--dy:72px;animation-delay:1.1s}.fanfare-spark.s12{--dx:8px;--dy:146px;animation-delay:1.05s}.fanfare-spark.s13{--dx:-128px;--dy:84px;animation-delay:1.08s}.fanfare-spark.s14{--dx:-146px;--dy:-44px;animation-delay:1.12s}.fanfare-spark.s15{--dx:-34px;--dy:-148px;animation-delay:1.15s}.fanfare-spark.s16{--dx:118px;--dy:118px;animation-delay:1.135s}.fanfare-spark.s17{--dx:-112px;--dy:-118px;animation-delay:1.165s}.fanfare-spark.s9,.fanfare-spark.s10,.fanfare-spark.s11,.fanfare-spark.s12,.fanfare-spark.s13,.fanfare-spark.s14,.fanfare-spark.s15,.fanfare-spark.s16,.fanfare-spark.s17{width:4px;height:4px;animation-duration:1.5s}.upgrade-name{letter-spacing:-.01em;color:var(--mat);font-size:19px;font-weight:600;animation:.5s ease-out .9s both fade-up}.upgrade-said{max-width:32ch;color:var(--fg-dim);margin:0;font-size:13.5px;line-height:1.45;animation:.5s ease-out 1.02s both fade-up}@keyframes piece-retire{0%{opacity:1;transform:translate(0)rotate(0)scale(1)}35%{opacity:1;transform:translate(-62px)rotate(-8deg)scale(.96)}to{opacity:.12;transform:translate(-92px)rotate(-26deg)scale(.5)}}@keyframes piece-arrive{0%{opacity:0;transform:translateY(-26px)scale(.4)}60%{opacity:1;transform:translateY(0)scale(1.12)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes halo-out{0%{opacity:.85;transform:scale(.25)}to{opacity:0;transform:scale(1.6)}}@keyframes spark-out{0%{opacity:0;transform:translate(0)scale(.4)}20%{opacity:1}to{transform:translate(var(--dx), var(--dy)) scale(1);opacity:0}}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes hover-idle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.upgrade-new .mat-piece{animation:3.6s ease-in-out 1.9s infinite hover-idle}.standing .mat-piece{animation:3.6s ease-in-out 1.2s infinite hover-idle}.fanfare{text-align:center;justify-content:center;align-items:center;position:relative;overflow:hidden}.fanfare-sky{z-index:0;pointer-events:none;position:absolute;inset:0}.fanfare-bloom{background:radial-gradient(circle, color-mix(in srgb, var(--mat) 34%, transparent) 0%, color-mix(in srgb, var(--mat) 12%, transparent) 38%, transparent 68%);border-radius:50%;width:130vw;height:130vw;animation:1.5s cubic-bezier(.2,.8,.3,1) .12s both bloom;position:absolute;top:34%;left:50%;transform:translate(-50%,-50%)scale(.2)}@keyframes bloom{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}60%{opacity:1}to{opacity:.85;transform:translate(-50%,-50%)scale(1)}}.fanfare-ray{transform-origin:50% 0;width:2px;height:46vh;transform:rotate(calc(var(--i) * 30deg)) scaleY(0);background:linear-gradient(to bottom, color-mix(in srgb, var(--mat) 55%, transparent) 0%, transparent 70%);animation:ray-out 1.4s cubic-bezier(.2, .9, .3, 1) calc(.24s + var(--i) * 28ms) both;position:absolute;top:34%;left:50%}@keyframes ray-out{0%{transform:rotate(calc(var(--i) * 30deg)) scaleY(0);opacity:0}45%{opacity:.75}to{transform:rotate(calc(var(--i) * 30deg + 14deg)) scaleY(1);opacity:0}}.fanfare-body{z-index:1;flex-direction:column;flex:1;justify-content:safe center;align-items:center;gap:10px;width:100%;min-height:0;padding:8px 0;display:flex;position:relative;overflow-y:auto}.fanfare-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb, var(--mat) 78%, white);margin:0;font-size:11.5px;font-weight:600;animation:.5s ease-out .2s both fade-up}.fanfare-stage{place-items:center;width:100%;height:150px;display:grid;position:relative}.fanfare-old,.fanfare-new{place-items:center;display:grid;position:absolute;inset:0}.fanfare-old{animation:1.3s cubic-bezier(.4,0,.8,1) .2s both fanfare-retire}@keyframes fanfare-retire{0%{opacity:1;transform:translate(0)rotate(0)scale(1)}30%{opacity:.95;transform:translate(-52px,-6px)rotate(-12deg)scale(.95)}to{opacity:0;transform:translate(-96px,78px)rotate(-64deg)scale(.45)}}.fanfare-new{animation:1s cubic-bezier(.16,1.5,.4,1) .76s both fanfare-arrive}@keyframes fanfare-arrive{0%{opacity:0;transform:translateY(-70px)scale(.25)rotate(-8deg)}55%{opacity:1;transform:translateY(0)scale(1.18)rotate(2deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}.fanfare-new .mat-piece{background-size:260% 100%;animation:1.4s ease-out 1.25s both sheen,3.6s ease-in-out 2.7s infinite hover-idle}.fanfare-ring{border:2px solid var(--mat);border-radius:50%;width:128px;height:128px;margin:auto;animation:1s ease-out .82s both halo-out;position:absolute;inset:0}.fanfare-ring.two{border-width:1px;animation:1.4s ease-out .98s both halo-out}.fanfare-spark{background:var(--mat);opacity:0;border-radius:50%;width:6px;height:6px;margin:auto;animation:1.2s ease-out .9s both spark-out;position:absolute;inset:0}.fanfare-name{letter-spacing:-.02em;color:color-mix(in srgb, var(--mat) 82%, white);text-shadow:0 0 26px color-mix(in srgb, var(--mat) 55%, transparent);margin:0;font-size:34px;font-weight:700;animation:.7s cubic-bezier(.2,1.3,.35,1) 1.15s both name-in}@keyframes name-in{0%{opacity:0;letter-spacing:.06em;transform:scale(.8)}to{opacity:1;letter-spacing:-.02em;transform:scale(1)}}.fanfare-said{max-width:30ch;margin:0;font-size:15px;line-height:1.45;animation:.6s ease-out 1.4s both fade-up}.fanfare-fact{border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--mat) 40%, var(--line));background:color-mix(in srgb, var(--mat) 8%, var(--surface));max-width:34ch;margin:6px 0 0;padding:12px 14px;animation:.6s ease-out 1.65s both fade-up}.fanfare-fact p{margin:0;font-size:14px;line-height:1.5}.fanfare-fact-label{letter-spacing:.1em;text-transform:uppercase;color:color-mix(in srgb, var(--mat) 78%, white);font-size:11px;font-weight:600;margin:0 0 7px!important}.fanfare .done-actions{z-index:1;width:100%;animation:.5s ease-out 1.9s both fade-up;position:relative}.next-up{width:100%;max-width:34ch;animation:fade-up .52s ease-out var(--act) both;flex-direction:column;align-items:center;gap:4px;display:flex}.next-up-line{color:var(--fg);margin:0;font-size:13.5px;line-height:1.4}.standing{flex-direction:column;align-items:center;gap:4px;display:flex}.standing-glyph{color:var(--mat);font-size:76px;line-height:1}.standing-name{color:var(--fg);font-size:17px;font-weight:600}.celebrate-ladder{width:100%;max-width:34ch;margin:4px 0 0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ladder-pieces{grid-template-columns:repeat(6,1fr);gap:5px;max-width:292px;margin:0 auto;padding:0;list-style:none;display:grid}.ladder-piece{aspect-ratio:1;background:var(--surface-2);border:1px solid var(--line);color:var(--fg-dim);border-radius:5px;place-items:center;font-size:21px;line-height:1;display:grid}.ladder-piece.owned{background:color-mix(in srgb, var(--mat) 13%, transparent);border-color:color-mix(in srgb, var(--mat) 40%, transparent);color:var(--mat)}.ladder-piece.on{background:color-mix(in srgb, var(--mat) 26%, transparent);border-color:var(--mat);color:var(--mat);box-shadow:0 0 0 1px var(--mat), 0 0 14px -4px var(--mat);animation:.62s cubic-bezier(.2,1.4,.4,1) both rung-land}.ladder-piece.next{border-color:var(--mat);border-style:dashed}@keyframes rung-land{0%{transform:scale(.7)}55%{transform:scale(1.16)}to{transform:scale(1.06)}}.ladder-bar{background:var(--surface-2);border-radius:2px;height:3px;margin:9px 0 0;overflow:hidden}.ladder-fill{background:var(--mat);transform-origin:0;border-radius:2px;height:100%;animation:.7s ease-out .2s both bar-grow}@keyframes bar-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.ladder-sets{grid-template-columns:repeat(5,1fr);gap:4px;margin:9px 0 0;padding:0;list-style:none;display:grid}.ladder-set{isolation:isolate;text-align:center;letter-spacing:.02em;background-clip:padding-box;border:1px solid #0000;border-radius:6px;padding:8px 4px;font-size:11.5px;line-height:1.15;position:relative}.ladder-set:before{content:"";z-index:-1;border-radius:inherit;background:rgba(9, 11, 14, var(--scrim));position:absolute;inset:0}.ladder-set.locked{--scrim:.88;color:color-mix(in srgb, var(--mat) 45%, #7d838f)}.ladder-set.done{--scrim:.62;color:color-mix(in srgb, var(--mat) 88%, white);border-color:color-mix(in srgb, var(--mat) 45%, transparent)}.ladder-set.on{--scrim:.42;color:color-mix(in srgb, var(--mat) 92%, white);border-color:var(--mat);box-shadow:0 0 14px -3px var(--mat);font-weight:700}.pledge{flex-direction:column;gap:8px;width:100%;display:flex}.pledge-said{text-align:center;color:var(--accent);margin:0;font-size:13px;animation:.32s ease-out both fade-up}@media (prefers-reduced-motion:reduce){.upgrade-old,.upgrade-new,.upgrade-halo,.upgrade-spark,.upgrade-name,.upgrade-said,.ladder-piece.on,.ladder-fill,.next-up,.pledge-said,.roll-track,.daybeat-ring,.daybeat-spark,.mat-bloom,.upgrade-ray,.standing .mat-piece,.standing-name,.upgrade-new .mat-piece,.daybeat-num,.daybeat-label,.fanfare-bloom,.fanfare-ray,.fanfare-eyebrow,.fanfare-old,.fanfare-new,.fanfare-new .mat-piece,.fanfare-ring,.fanfare-spark,.fanfare-name,.fanfare-said,.fanfare-fact,.fanfare .done-actions{animation:none}.fanfare-old,.fanfare-ray{display:none}.fanfare-bloom{opacity:.7;transform:translate(-50%,-50%)scale(1)}.daybeat-ring,.daybeat-spark,.upgrade-ray{display:none}.mat-bloom{opacity:.7;transform:translate(-50%,-50%)scale(1)}.upgrade-old{opacity:.3;transform:translate(-56px)scale(.6)}}.celeb-stage{flex:1;min-height:0;padding-top:8px;display:flex}.celeb-stage>.screen{flex:1;min-height:0}.celeb-after{color:var(--fg-dim);align-items:flex-start;gap:8px;margin:2px 0 10px;font-size:12.5px;line-height:1.4;display:flex}.celeb-after input{flex:none;margin-top:2px}.celeb-any{gap:8px;margin:0 0 14px;display:flex}.celeb-any button{flex:none}.celeb-extras{gap:8px;margin:0 0 10px;display:flex}.celeb-extras button{flex:1 1 0}.celeb-input{width:92px}.celeb-row{align-items:center;gap:8px;margin-bottom:6px;display:flex}.celeb-label{letter-spacing:.02em;flex:none;width:68px;font-size:10.5px}.celeb-cells{flex:1;grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.celeb-cell{color:var(--mat);background:color-mix(in srgb, var(--mat) 12%, transparent);border:1px solid color-mix(in srgb, var(--mat) 38%, transparent);border-radius:5px;flex-direction:column;align-items:center;gap:1px;padding:5px 2px;font-size:16px;line-height:1;display:flex}.celeb-day{color:var(--fg-dim);font-size:9.5px}.style-row{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);margin-bottom:6px;padding:9px 11px}.style-row.shipped{border-color:var(--accent-dim)}.style-name{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-dim);font-size:10.5px;display:block}.style-said{margin:5px 0 0;font-size:14px;line-height:1.45}.style-note{color:var(--fg-dim);margin-top:5px;font-size:11px;display:block}.analysis-claim{color:var(--fg-dim);text-align:center;margin:0;font-size:11.5px;line-height:1.4}.done{text-align:center;align-items:center}.done-mark{color:var(--accent);margin-top:12px;font-size:44px;line-height:1}.done h2{margin:0;font-size:21px;font-weight:600}.done .stat-row,.done .drill-breakdown,.done .done-actions{width:100%}.drill-breakdown{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.drill-breakdown li{display:flex}.bd-row{background:var(--surface);color:inherit;border:1px solid var(--line);font:inherit;cursor:pointer;text-align:left;border-radius:8px;flex:1;justify-content:space-between;align-items:center;padding:11px 13px;font-size:14px;display:flex}.bd-label{color:var(--fg-dim)}.bd-score{font-variant-numeric:tabular-nums;font-weight:500}.bd-hint{margin-top:-6px}.goal-block.small{padding:2px 0}.goal-block.small .goal-bar{margin-top:8px}.goal-block.small .goal-label{margin-top:6px;font-size:13px}.secondary,.tertiary{border-radius:var(--radius);font:inherit;cursor:pointer;width:100%;padding:14px;font-weight:600}.secondary{background:var(--surface-2);color:var(--fg);border:1px solid var(--line)}.secondary:not(:disabled):hover{border-color:var(--accent)}.secondary:disabled{opacity:.55;cursor:default}.tertiary{color:var(--fg-dim);background:0 0;border:none;font-weight:500}.tertiary:hover{color:var(--fg)}.link-btn{color:var(--fg-dim);font:inherit;cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:13.5px}.link-btn:hover{color:var(--fg)}.done-actions{flex-direction:column;gap:8px;margin-top:auto;display:flex}.done-actions .primary{margin-top:0}.review{gap:12px}.review-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.review-head .counter{margin-left:6px}.review-verdict{text-align:center;color:var(--fg-dim);min-height:20px;font-size:14px}.bad-move{color:var(--bad);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600}.line-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.line-wrap.has-rows .line{height:108px}.line{scrollbar-width:thin;margin:0;padding:4px;list-style:none;overflow-y:auto}.line .row{grid-template-columns:34px 1fr 1fr;align-items:center;gap:2px;display:grid}.line .row:nth-child(2n){background:#ffffff06}.line .ply-no{color:var(--fg-dim);text-align:right;padding-right:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.line .half{display:flex}.line .half button{text-align:left;cursor:pointer;color:var(--fg);background:0 0;border:1px solid #0000;border-radius:5px;flex:1;padding:3px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13.5px}.line .half button:hover{background:var(--surface-2)}.line .ellipsis{color:var(--fg-dim);padding:3px 7px;font-size:13.5px}.line button.future{opacity:.4}.line button.now{background:var(--surface-2);border-color:var(--accent);color:var(--fg)}.line button.branched{font-style:italic}.line button.branched.now{font-style:normal}.line .start-row{display:block}.line .start-row button{text-align:left;cursor:pointer;color:var(--fg-dim);font:inherit;background:0 0;border:1px solid #0000;border-radius:5px;padding:1px 9px;font-size:11.5px}.line .start-row.now button{border-color:var(--accent);color:var(--fg)}.eval-graph{position:relative}.eval-graph svg{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;height:44px;display:block}.eg-mid{stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke}.eg-area{fill:var(--accent);opacity:.16}.eg-line{fill:none;stroke:var(--accent);stroke-width:1.5px;vector-effect:non-scaling-stroke}.eg-now{stroke:var(--fg-dim);stroke-width:1px;vector-effect:non-scaling-stroke}.eg-dot{fill:var(--fg)}.eg-note{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:10px;position:absolute;top:3px;right:7px}.review-controls{justify-content:center;gap:8px;display:flex}.step-btn{background:var(--surface);width:64px;height:40px;color:var(--fg);border:1px solid var(--line);cursor:pointer;border-radius:8px;font-size:22px;line-height:1}.step-btn:not(:disabled):hover{border-color:var(--accent)}.step-btn:disabled{opacity:.35;cursor:default}.review .primary{margin-top:auto}.app-inner{flex-direction:column;flex:1;display:flex}.analysis{gap:8px}.analysis-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.analysis-title{font-size:14.5px;font-weight:500}.eval-row{align-items:center;gap:10px;display:flex}.eval-toggle{background:var(--surface-2);border:1px solid var(--line);color:var(--fg-dim);font:inherit;cursor:pointer;border-radius:6px;flex:none;padding:4px 9px;font-size:11.5px}.eval-toggle.on{color:var(--fg);border-color:var(--accent)}.eval-bar{background:#2a2f36;border-radius:3px;flex:1;min-width:0;height:6px;overflow:hidden}.eval-fill{background:var(--fg);height:100%;transition:width .14s linear}.eval-score{font-variant-numeric:tabular-nums;text-align:right;flex:none;min-width:62px;font-size:13px;font-weight:600}.eval-score.thinking{color:var(--fg-dim);font-weight:500}.eval-depth{color:var(--fg-dim);margin-left:4px;font-size:10px;font-weight:400}.eval-terminal{text-align:right;color:var(--fg-dim);flex:1;font-size:12.5px}.ply-note{color:var(--fg-dim);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 10px;min-height:1.4em;font-size:13.5px;display:flex}.ply-note strong{color:var(--fg);font-weight:600}.ply-note-good,.ply-note-best{color:var(--accent)}.ply-note-game{color:var(--fg-dim)}.ply-note-cp{font-variant-numeric:tabular-nums}.analysis-hint{text-align:center;color:var(--fg-dim);min-height:0;margin:0;font-size:12.5px}.analysis-actions{flex-direction:column;gap:8px;margin-top:auto;display:flex}.step-btn.wide{width:auto;padding:0 18px;font-size:14px;font-weight:500}.link-out{text-align:center;padding:14px;line-height:1.2;text-decoration:none;display:block}.app:has(>.screen.analysis){height:100%;min-height:0;overflow:hidden}.app:has(>.screen.analysis) .screen{min-height:0}.analysis>*{flex-shrink:0}.analysis .line-wrap{flex:88px;min-height:56px}.analysis .review-controls{padding-bottom:2px}.analysis .eval-graph svg{height:76px}.analysis .analysis-say{flex-direction:column;justify-content:center;min-height:22px;display:flex}.analysis .line-wrap .line{height:100%}.branch-switch{justify-content:center;gap:6px;display:flex}.branch-switch button{font:inherit;background:var(--surface);color:var(--fg-dim);border:1px solid var(--line);cursor:pointer;border-radius:999px;padding:4px 12px;font-size:12.5px}.branch-switch button.on{border-color:var(--accent);color:var(--fg);background:var(--surface-2)}.review .board{width:min(100%,46vh)}.analysis .board{width:min(100%,31vh)}.promo-overlay{flex-direction:column;gap:12px}.promo-cancel{color:var(--fg-dim);font:inherit;cursor:pointer;background:0 0;border:none;padding:6px 14px;font-size:13.5px}.promo-cancel:hover{color:var(--fg)}.cfg{gap:0;height:100%}.cfg-head{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding-bottom:10px;display:grid}.cfg-head .link-btn{justify-self:start}.cfg-head .link-btn:last-child{justify-self:end}.cfg-title{white-space:nowrap;font-size:14.5px;font-weight:600}.link-btn.strong{color:var(--accent);font-weight:600}.link-btn:disabled{opacity:.4;cursor:default}.cfg-tabs{gap:6px;padding:12px 0;display:flex}.cfg-tabs button{background:var(--surface);border:1px solid var(--line);color:var(--fg-dim);font:inherit;cursor:pointer;border-radius:8px;flex:1;padding:9px;font-size:13.5px;font-weight:500}.cfg-tabs button.on{border-color:var(--accent);color:var(--fg);background:var(--surface-2)}.cfg-tabs .ct{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:12px}.cfg-body{flex-direction:column;flex:1;gap:8px;padding:4px 0 24px;display:flex;overflow-y:auto}.cfg-row{text-align:left;background:var(--surface);border:1px solid var(--line);cursor:pointer;font:inherit;color:var(--fg);border-radius:8px;flex-direction:column;gap:3px;padding:10px 12px;display:flex}.cfg-row:hover{border-color:var(--accent)}.cfg-row-top{align-items:baseline;gap:8px;display:flex}.cfg-row-top .cfg-row-name{flex:1;min-width:0}.cfg-row-name{font-size:13.5px;font-weight:600}.cfg-section{display:contents}.cfg-section-head{background:var(--surface);border:1px solid var(--line);width:100%;color:var(--fg);font:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:12px 14px;display:flex}.cfg-section-head[aria-expanded=true]{border-color:var(--accent)}.cfg-section-name{font-size:14px;font-weight:600}.cfg-section-count{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:11.5px}.cfg-section-caret{color:var(--fg-dim);margin-left:auto;font-size:15px}.cfg-section-head .cfg-chip{margin-left:auto}.cfg-section-head .cfg-chip+.cfg-section-caret{margin-left:8px}.cfg-section-blurb{color:var(--fg-dim);opacity:.8;margin:2px 0 6px 12px;font-size:11.5px}.cfg-row-wrap{align-items:center;gap:8px;display:flex}.cfg-row-wrap .cfg-row{flex:1;min-width:0}.cfg-row-wrap.off .cfg-row{opacity:.5}.cfg-toggle{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:99px;flex:none;width:42px;height:24px;padding:0;transition:background .14s,border-color .14s;position:relative}.cfg-toggle.on{background:var(--accent-dim);border-color:var(--accent)}.cfg-toggle-knob{background:var(--fg-dim);border-radius:99px;width:16px;height:16px;transition:transform .14s,background .14s;position:absolute;top:3px;left:3px}.cfg-toggle.on .cfg-toggle-knob{background:var(--accent);transform:translate(18px)}.cfg-section.open .cfg-row{margin-left:12px}.cfg-row-sub{color:var(--fg-dim);font-size:11.5px}.cfg-row-sub.over{color:var(--warn)}.cfg-row-sub.dim{opacity:.55}.cfg-chip{text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;border:1px solid var(--line);color:var(--fg-dim);cursor:pointer;background:0 0;border-radius:99px;padding:2px 7px;font-family:inherit;font-size:9.5px}.cfg-chip.prov{cursor:default}.cfg-chip.prov.edited{border-color:var(--warn);color:var(--warn)}.cfg-chip.prov.user{border-color:var(--accent);color:var(--accent)}.cfg-chip.soon{cursor:default;opacity:.75;font-style:italic}.cfg-grp-label{text-transform:uppercase;letter-spacing:.09em;color:var(--fg-dim);margin-top:14px;margin-bottom:2px;font-size:10px}.cfg-body>.cfg-grp-label:first-child{margin-top:4px}.cfg-field{background:var(--surface);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;font-size:13px;display:flex}.cfg-field-block{flex-direction:column;align-items:stretch;gap:8px}.cfg-input{background:var(--surface-2);border:1px solid var(--line);color:var(--fg);font:inherit;border-radius:6px;flex:1;min-width:0;max-width:200px;padding:6px 9px;font-size:13px}.cfg-input.num{text-align:right;font-variant-numeric:tabular-nums;max-width:84px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.cfg-num{align-items:center;gap:4px;display:flex}.cfg-prefix{color:var(--fg-dim);font-family:ui-monospace,monospace;font-size:13px}.cfg-toggle{border:1px solid var(--line);background:var(--surface-2);cursor:pointer;border-radius:99px;flex:none;width:42px;height:24px;padding:0;position:relative}.cfg-toggle .knob{background:var(--fg-dim);border-radius:50%;width:18px;height:18px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.cfg-toggle.on{border-color:var(--accent);background:var(--accent-dim)}.cfg-toggle.on .knob{background:var(--accent);transform:translate(18px)}.cfg-disclosure{color:var(--fg);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:0;font-size:13px;display:flex}.cfg-val{color:var(--fg-dim);font-size:12.5px}.cfg-chips{flex-wrap:wrap;gap:5px;display:flex}.cfg-chips.readonly .cfg-chip{cursor:default}.cfg-chip.on{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.cfg-theme-group{flex-direction:column;gap:5px;display:flex}.cfg-theme-group .cfg-grp-label{margin-top:6px}.cfg-hint{color:var(--fg-dim);margin:2px 2px 0;font-size:12px}.cfg-error{color:var(--bad);margin:2px 2px 0;font-size:12px}.cfg-live{border:1px solid var(--line);background:var(--surface);color:var(--fg-dim);border-radius:8px;flex-direction:column;gap:3px;margin-top:8px;padding:10px 12px;font-size:12px;display:flex}.cfg-live .big{color:var(--fg);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}.cfg-live.sustainable{border-color:var(--accent-dim)}.cfg-live.sustainable .big{color:var(--accent)}.cfg-live.thin,.cfg-live.warn{border-color:#5a4520}.cfg-live.thin .big,.cfg-live.warn .big{color:var(--warn)}.cfg-live.empty{border-color:#5a2b29}.cfg-live.empty .big{color:var(--bad)}.cfg-slot{background:var(--surface);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:7px;padding:9px 11px;display:flex}.cfg-slot.empty{border-color:#5a2b29}.cfg-slot-row{align-items:center;gap:6px;display:flex}.cfg-select{background:var(--surface-2);border:1px solid var(--line);color:var(--fg);font:inherit;border-radius:6px;flex:1;min-width:0;padding:6px 8px;font-size:12.5px}.cfg-select.wide{flex:1}.cfg-x{color:var(--fg-dim);cursor:pointer;background:0 0;border:none;flex:none;padding:4px 6px;font-size:13px}.cfg-x:hover{color:var(--bad)}.rep-line{line-height:1.5}.note.diag{margin-top:6px;font-size:11.5px}.note.diag.warn{color:var(--warn)}.cfg-relink{color:var(--fg-dim);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:6px 0 0;font-size:11.5px;text-decoration:underline}.cfg-relink:hover{color:var(--fg)}.cfg-note{color:var(--fg-dim);margin:0 0 8px;font-size:11.5px;line-height:1.45}.cfg-note.warn{color:var(--warn)}.cfg-missing{border-left:2px solid var(--accent);margin:0 0 4px;padding-left:10px}.cfg-slot-note{color:var(--fg-dim);font-size:11.5px}.cfg-slot-note.dim{opacity:.75}.cfg-timeline{flex-direction:column;gap:5px;display:flex}.cfg-tl-bar{background:var(--surface-2);border:1px solid var(--line);border-radius:6px;width:100%;height:22px;display:flex;position:relative;overflow:hidden}.cfg-tl-seg{color:#fff;background:var(--fg-dim);border-right:1px solid var(--bg);text-shadow:0 0 3px #0009;box-sizing:border-box;justify-content:center;align-items:center;min-width:0;font-size:10px;font-weight:600;display:flex}.cfg-tl-seg span{overflow:hidden}.cfg-tl-seg.bag{background:repeating-linear-gradient(135deg, var(--fg-dim) 0 5px, var(--surface-2) 5px 8px)}.cfg-tl-seg.rest{opacity:.6}.cfg-tl-seg.empty{color:var(--bad);text-shadow:none;background:#5a2b29}.cfg-tl-spare{flex:none}.cfg-tl-limit{background:var(--warn);width:2px;box-shadow:0 0 0 1px var(--bg);position:absolute;top:-1px;bottom:-1px}.cfg-timeline.over .cfg-tl-bar{border-color:#5a4520}.cfg-tl-sum{color:var(--fg-dim);font-size:11.5px}.cfg-timeline.over .cfg-tl-sum{color:var(--warn)}.cfg-slot{border-left:3px solid var(--line)}.cfg-slot-n{background:var(--surface-2);border:1px solid var(--line);width:20px;height:20px;color:var(--fg-dim);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.cfg-move{border:1px solid var(--line);color:var(--fg-dim);cursor:pointer;background:0 0;border-radius:5px;flex:none;padding:5px 6px;font-size:9px}.cfg-move:hover:not(:disabled){color:var(--fg);border-color:var(--fg-dim)}.cfg-move:disabled{opacity:.3;cursor:default}.cfg-time-row{flex-wrap:wrap;row-gap:6px}.cfg-seg{border:1px solid var(--line);border-radius:6px;flex:none;display:inline-flex;overflow:hidden}.cfg-seg button{background:var(--surface-2);color:var(--fg-dim);font:inherit;cursor:pointer;border:none;padding:6px 10px;font-size:12px}.cfg-seg button+button{border-left:1px solid var(--line)}.cfg-seg button.on{background:var(--accent-dim);color:var(--fg)}.cfg-stepper{align-items:center;gap:4px;display:inline-flex}.cfg-step{border:1px solid var(--line);background:var(--surface-2);width:28px;height:28px;color:var(--fg);font:inherit;cursor:pointer;border-radius:6px;flex:none;padding:0;font-size:15px;line-height:1}.cfg-step:hover{border-color:var(--fg-dim)}.cfg-time{text-align:center;background:var(--surface-2);border:1px solid var(--line);width:58px;color:var(--fg);font:inherit;font-variant-numeric:tabular-nums;border-radius:6px;padding:5px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.cfg-time:focus{border-color:var(--accent);outline:none}.cfg-time-what{color:var(--fg-dim);margin-left:2px;font-size:11.5px}.cfg-slot-sum{color:var(--fg-dim);font-size:12px}.cfg-slot-sum.warn{color:var(--bad)}.cfg-tweak{color:var(--fg-dim);padding-top:2px;font-size:12px}.cfg-adv{border-top:1px dashed var(--line);flex-direction:column;gap:8px;margin-top:14px;padding-top:10px;display:flex}.cfg-adv>.cfg-disclosure{color:var(--fg-dim);font-size:12.5px}.cfg-adv>.cfg-disclosure:hover{color:var(--fg)}.cfg-kind{color:var(--fg-dim);margin:-2px 2px 4px;font-size:12px;line-height:1.45}.cfg-tweak:hover{color:var(--fg)}.cfg-danger{color:var(--bad);font:inherit;cursor:pointer;background:0 0;border:1px solid #5a2b29;border-radius:8px;margin-top:4px;padding:11px;font-weight:500}.cfg-danger:hover{background:#241715}.signin{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.signin.out{flex-direction:column;align-items:stretch;gap:8px}.signin-who{flex-direction:column;gap:2px;min-width:0;display:flex}.signin-name{font-size:14px;font-weight:600}.signin-sub{color:var(--fg-dim);font-size:11.5px}.signin .note{margin:0}.sync-line{color:var(--fg-dim);margin:6px 2px 0;font-size:11.5px}.sync-line.stale{color:var(--warn)}.log{gap:14px}.log-empty{color:var(--fg-dim);text-align:center;padding:32px 16px;font-size:13.5px}.log-drill{align-items:center;gap:10px;padding:7px 2px;display:flex}.log-drill-name{text-overflow:ellipsis;white-space:nowrap;flex:40%;min-width:0;font-size:13px;overflow:hidden}.log-drill-bar{background:var(--surface-2);border-radius:3px;flex:40%;height:5px;overflow:hidden}.log-drill-fill{background:var(--accent);height:100%;display:block}.log-drill-num{color:var(--fg-dim);font-variant-numeric:tabular-nums;text-align:right;flex:none;min-width:46px;font-size:11.5px}.log-day{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--fg);font:inherit;cursor:pointer;margin-bottom:6px;padding:10px 12px;display:block}.log-day:hover{border-color:var(--accent-dim)}.log-day-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.log-day-date{font-size:13.5px;font-weight:500}.log-day-stats{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:12px}.log-day-stats .up{color:var(--accent)}.log-day-stats .down{color:var(--bad)}.cfg-window{margin-bottom:8px}.cfg-window-head{background:var(--surface);border:1px solid var(--line);width:100%;color:var(--fg);font:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:baseline;gap:10px;padding:12px 14px;display:flex}.cfg-window-head[aria-expanded=true]{border-color:var(--accent)}.cfg-window-num{font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.cfg-window-unit{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.cfg-window-types{flex:1;align-items:center;gap:5px;display:flex}.cfg-window-count{color:var(--fg-dim);margin-left:4px;font-size:11.5px}.cfg-window-caret{color:var(--fg-dim);font-size:15px}.cfg-window-body{flex-direction:column;gap:8px;padding:8px 0 4px 12px;display:flex}.cfg-add-type{border:1px dashed var(--line);color:var(--fg-dim);font:inherit;cursor:pointer;background:0 0;border-radius:10px;padding:11px;font-size:13px}.cfg-add-type:hover{border-color:var(--accent);color:var(--accent)}.log-day-cats{flex-wrap:wrap;gap:5px 10px;margin:4px 0 2px;display:flex}.log-day-cats .cat-chip{font-size:10.5px}.log-day-drills{color:var(--fg-dim);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11.5px;overflow:hidden}.settings-actions{flex-direction:column;align-items:stretch;gap:8px;margin-top:10px;display:flex}.settings-actions .secondary{width:100%;margin:0}@media (width>=600px) and (pointer:fine){.settings .secondary{padding:9px 14px;font-size:13.5px;font-weight:500}.settings .log-open,.settings .cfg-open{width:auto}.settings-actions{flex-direction:row}.settings-actions .secondary{flex:1;width:auto}.primary{padding:14px}.duration{padding:12px 4px}.dur-num{font-size:18px}}.chart-wrap{flex-direction:column;gap:8px;display:flex}.chart{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;height:auto;display:block}.chart-mid{stroke:var(--line);stroke-width:1px;stroke-dasharray:3 4}.chart-legend{color:var(--fg-dim);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:11.5px;display:flex}.chart-range{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.chart-key{align-items:center;gap:5px;display:inline-flex}.chart-key i{border-radius:1px;width:9px;height:2px;display:inline-block}.log-drill-fill.weak{background:var(--warn)}.week-bars{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);align-items:flex-end;gap:4px;height:88px;padding:8px 10px 0;display:flex}.week-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:4px;min-width:0;height:100%;display:flex}.week-fill{background:var(--accent);border-radius:2px 2px 0 0;width:100%;min-height:2px;display:block}.week-label{color:var(--fg-dim);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:9px}.retry-line{text-align:center;color:var(--fg-dim);font-variant-numeric:tabular-nums;margin:.35rem 0 0;font-size:.82rem}.game-task{text-align:center;color:var(--fg);min-height:1.25rem;margin:0 0 .5rem;font-size:.9rem}.game-foot{justify-content:center;align-items:center;min-height:2rem;margin-top:.5rem;display:flex}.game-foot .note{color:var(--fg-dim);font-size:.85rem}.game-view .clock.low{color:var(--warn)}.candidates{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:.3rem;margin:.3rem 0 0;padding:0 0 2px;list-style:none;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 26px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 26px),#0000)}.candidates::-webkit-scrollbar{display:none}.candidates li{background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:5px;flex:none;align-items:baseline;gap:.3rem;padding:.15rem .45rem;font-size:.8rem;display:flex}.candidates li:hover{background:var(--surface-2)}.cand-rank{display:none}.cand-san{font-weight:600}.cand-eval{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:.75rem}.candidates li.good{border-color:var(--accent)}.candidates li.good .cand-san{color:var(--accent)}.candidates li.thin{opacity:.5}.played-note{color:var(--fg-dim);text-align:center;margin:.3rem 0 0;font-size:.78rem}.played-note .bad-move{color:var(--bad)}.cat-chip{letter-spacing:.04em;text-transform:uppercase;color:var(--fg-dim);align-items:center;gap:.3rem;font-size:.72rem;display:inline-flex}.cat-dot{vertical-align:middle;border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.cfg-slot-overrides{border-top:1px dashed var(--line);margin-top:.4rem;padding-top:.4rem}.cfg-inline{color:var(--fg-dim);align-items:center;gap:.35rem;font-size:.78rem;display:flex}.cfg-inline input{width:4.2rem;font:inherit;color:var(--fg);background:var(--surface-2);border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:5px;padding:.2rem .35rem;font-size:.8rem}.cfg-linkish{font:inherit;font-size:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0 0 0 .4rem}.focus-line{flex-wrap:wrap;justify-content:center;gap:.6rem;margin:.5rem 0 0;display:flex}.cfg-row-name .cat-dot{vertical-align:middle;margin-right:.4rem}.focus-picker{border:1px solid var(--line);border-radius:var(--radius);margin:0 0 .8rem;padding:.3rem .5rem .5rem}.focus-picker legend{text-transform:uppercase;letter-spacing:.08em;color:var(--fg-dim);padding:0 .35rem;font-size:10px}.settings .focus-opt{cursor:pointer;border-radius:7px;justify-content:flex-start;align-items:center;gap:.5rem;padding:.4rem .2rem;font-size:.9rem;display:flex}.settings .focus-opt:hover{background:var(--surface-2)}.settings .focus-opt input{accent-color:var(--accent);flex:none;margin:0}.settings .focus-opt:not(.on){color:var(--fg-dim)}.cat-chip.spent{opacity:.45}.cat-tick{color:var(--accent);font-size:.7rem}.preview-head{grid-template-columns:1fr auto 1fr;align-items:center;gap:.5rem;margin-bottom:.2rem;display:grid}.preview-head h2{text-align:center;margin:0;font-size:1rem}.preview-count{text-align:right;color:var(--fg-dim);font-variant-numeric:tabular-nums}.preview-theme{justify-content:center;align-items:center;gap:7px;margin:0;font-size:.95rem;font-weight:600;display:flex}.preview-sub{text-align:center;color:var(--fg-dim);margin:.25rem 0 .8rem;font-size:.82rem}.legs{flex-direction:column;gap:.45rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.leg{background:var(--surface);border-left:3px solid;border-radius:0 8px 8px 0;padding:.55rem .7rem}.leg.done{opacity:.55}.leg.next{background:var(--surface-2)}.leg-top{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.leg-name{font-size:.95rem;font-weight:600}.leg-when{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:.8rem}.leg-sub{align-items:center;gap:.5rem;margin-top:.25rem;display:flex}.leg-count{color:var(--fg-dim);margin-left:auto;font-size:.75rem}.leg-review{border:1px solid var(--line);color:var(--fg-dim);cursor:pointer;background:0 0;border-radius:999px;padding:.15rem .6rem;font-family:inherit;font-size:.72rem}.preview-done{text-align:center;color:var(--fg-dim);font-size:.85rem}.linkish{color:var(--fg-dim);font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.ply-no{color:var(--fg-dim);font-variant-numeric:tabular-nums;margin-right:.2em;font-size:.75em}.past-games{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.past-game{background:var(--surface);cursor:pointer;border-left:3px solid;border-radius:0 8px 8px 0;padding:.5rem .7rem}.past-game:hover{background:var(--surface-2)}.pg-top{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.pg-name{font-size:.92rem;font-weight:600}.pg-verdict{text-transform:uppercase;letter-spacing:.04em;font-size:.72rem}.pg-verdict.good{color:var(--accent)}.pg-verdict.bad{color:var(--bad)}.pg-sub{color:var(--fg-dim);justify-content:space-between;margin-top:.2rem;font-size:.78rem;display:flex}.tab-n{opacity:.6;font-size:.8em}.opponent-bar{color:var(--fg-dim);justify-content:space-between;align-items:center;gap:.6rem;margin:0 0 .35rem;font-size:.8rem;display:flex}.opp-who{align-items:baseline;gap:.4rem;display:flex}.opp-name{color:var(--fg);font-weight:600}.opp-elo{font-variant-numeric:tabular-nums;border:1px solid var(--line);border-radius:4px;padding:.05rem .35rem}.opp-clock{font-variant-numeric:tabular-nums;align-items:center;gap:.35rem;display:flex}.opp-clock.ticking{color:var(--fg)}.opp-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite opp-pulse}@keyframes opp-pulse{0%,to{opacity:.25}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.opp-dot{animation:none}}.player-bar{color:var(--fg-dim);justify-content:space-between;align-items:center;gap:.6rem;margin:.4rem 0 0;font-size:.8rem;display:flex}.you-name{color:var(--fg);font-weight:600}.player-bar .clock{color:var(--fg-dim);align-items:center;gap:.35rem;font-size:1.15rem;font-weight:400;display:flex}.player-bar .clock.ticking{color:var(--fg)}.player-bar .clock.low{color:var(--warn)}.you-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite opp-pulse}@media (prefers-reduced-motion:reduce){.you-dot{animation:none}}.cfg-diff{border:1px solid var(--line);border-left:2px solid var(--accent);background:color-mix(in srgb, var(--line) 18%, transparent);border-radius:4px;margin:4px 0 2px;padding:10px 12px}.cfg-diff-head{color:var(--fg-dim);margin:0 0 6px;font-size:12.5px}.cfg-diff-list{margin:0;padding-left:16px}.cfg-diff-list li{font-variant-numeric:tabular-nums;font-size:13px;line-height:1.5}.mins-chart{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:10px;padding:10px 12px 8px}.mins-plot{align-items:flex-end;gap:2px;height:96px;display:flex;position:relative}.mins-col{cursor:pointer;background:0 0;border:0;flex:1;justify-content:center;align-items:flex-end;min-width:0;height:100%;padding:0;display:flex}.mins-col:disabled{cursor:default}.mins-bar{background:var(--accent);background-clip:padding-box;border-radius:3px 3px 0 0;width:100%;min-height:2px;display:block}.mins-col:disabled .mins-bar{background:var(--line)}.mins-col:hover:not(:disabled) .mins-bar,.mins-col.on .mins-bar{background:var(--fg)}.mins-goal{border-top:1px dashed var(--fg-dim);opacity:.75;pointer-events:none;position:absolute;left:0;right:0}.mins-goal-tag{color:var(--fg-dim);font-variant-numeric:tabular-nums;background:var(--surface);padding:0 3px;font-size:9.5px;position:absolute;top:-14px;right:0}.chart-hint{margin-top:-4px}.mins-axis{color:var(--fg-dim);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:5px;font-size:9.5px;display:flex}.log-sessions,.log-runs{margin:0;padding:0;list-style:none}.log-session,.log-run{border-left:3px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-bottom:6px;overflow:hidden}.log-session-btn,.log-run-btn{text-align:left;width:100%;color:var(--fg);font:inherit;cursor:pointer;background:0 0;border:0;padding:10px 12px;display:block}.log-run-btn:disabled{cursor:default;opacity:.75}.log-session-btn:hover,.log-run-btn:hover:not(:disabled){background:var(--surface-2)}.log-run-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.log-run-name{font-size:13.5px;font-weight:500}.log-run-score{color:var(--fg-dim);font-variant-numeric:tabular-nums;font-size:12px}.log-run-sub{color:var(--fg-dim);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:4px;font-size:11px;display:flex}.log-run-sub .cat-chip{font-size:10.5px}.log-session-drills{flex-basis:100%}.log-run-tag{border:1px solid var(--line);border-radius:3px;padding:0 4px;font-size:10px}.dh{margin-bottom:6px}.dh-head{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--fg);font:inherit;cursor:pointer;padding:10px 12px;display:block}.dh-head[aria-expanded=true]{border-color:var(--accent-dim);border-bottom-right-radius:0;border-bottom-left-radius:0}.dh-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.dh-name{font-size:13.5px;font-weight:500}.dh-caret{color:var(--fg-dim);font-size:14px}.dh-sub{color:var(--fg-dim);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:3px 10px;margin-top:4px;font-size:11px;display:flex}.dh-runs{border:1px solid var(--accent-dim);border-radius:0 0 var(--radius) var(--radius);border-top:0;margin:0;padding:0;list-style:none;overflow:hidden}.dh-run{border:0;border-top:1px solid var(--line);width:100%;color:var(--fg);font:inherit;text-align:left;cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;align-items:baseline;gap:10px;padding:8px 12px;font-size:12px;display:flex}.dh-runs li:first-child .dh-run{border-top:0}.dh-run:hover:not(:disabled){background:var(--surface-2)}.dh-run:disabled{cursor:default;opacity:.7}.dh-run-when{flex:1}.dh-run-score{color:var(--fg-dim)}.dh-run-time{color:var(--fg-dim);text-align:right;min-width:3.2em}.bag-head .bag-name{color:var(--fg);font-size:13.5px;font-weight:500}.bag-group{margin-bottom:10px}.bag-group-label{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-dim);align-items:center;gap:6px;margin:8px 0 4px;font-size:10.5px;display:flex}.bag-row{cursor:pointer;align-items:center;gap:8px;padding:5px 2px;font-size:13px;display:flex}.bag-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);flex:none}.bag-row-name{flex:1}.bag-row-warn{color:var(--warn);font-size:10.5px}.cfg-hint.warn{color:var(--warn)}.pg-list{margin:0;padding:0;list-style:none}.pg-row{border-left:3px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-bottom:6px;overflow:hidden}.pg-row.st-todo{border-left-color:var(--warn)}.pg-row.st-done{border-left-color:var(--accent)}.pg-open{color:var(--fg);padding:10px 12px;text-decoration:none;display:block}.pg-open:hover{background:var(--surface-2)}.pg-result{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.pg-result.win{color:var(--accent)}.pg-result.loss{color:var(--bad)}.pg-stage{font-variant-numeric:tabular-nums}.pg-stage.unparsed{color:var(--fg-dim);font-style:italic}.pg-stage.todo{color:var(--warn)}.pg-stage.done{color:var(--accent)}.pg-stage.partial{color:var(--fg-dim)}button.pg-open{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none}.gd-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:6px;padding:12px 13px;display:flex}.gd-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.gd-head{align-items:center;font-size:15px;font-weight:600;display:flex}.gd-when{color:var(--fg-dim);font-size:12px}.gd-opening{color:var(--fg);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-size:13px}.gd-opening.dim{color:var(--fg-dim);font-style:italic}.gd-stage{margin:0;font-size:12.5px}.gd-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.gd-pos{border-left:3px solid var(--line);border-radius:var(--radius);background:var(--surface);border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.gd-pos.ok{border-left-color:var(--accent)}.gd-pos.missed{border-left-color:var(--warn)}.gd-pos-btn{text-align:left;width:100%;color:var(--fg);font:inherit;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.gd-pos-btn:hover:not(:disabled){background:var(--surface-2)}.gd-pos-btn:disabled{cursor:default}.gd-loss{color:var(--bad);font-variant-numeric:tabular-nums;font-size:13px}.gd-phase{text-transform:capitalize}.gd-tried.ok{color:var(--accent)}.gd-tried.missed{color:var(--warn)}.gd-tried.new{color:var(--fg-dim)}.gd-lichess{text-align:center;margin-top:10px;display:block}.rescan{flex-direction:column;gap:8px;margin-top:18px;display:flex}.rescan .note{margin:0}.streak-screen .cfg-body{margin:0 -8px;padding:4px 8px 28px}.streak-hero{align-items:center;gap:14px;margin:4px 0 14px;display:flex}.streak-hero-piece{font-size:64px;line-height:1}.streak-hero-name{letter-spacing:-.01em;font-size:19px;font-weight:600}.streak-hero-days{color:var(--fg-dim);font-variant-numeric:tabular-nums;margin-top:2px;font-size:13.5px}.streak-best{opacity:.8}.streak-next{margin:0 0 4px}.streak-next-row{align-items:center;gap:8px;margin-bottom:8px;font-size:14px;display:flex}.streak-next-label{letter-spacing:.06em;text-transform:uppercase;color:var(--fg-dim);font-size:11px}.streak-next-name{flex:1;align-items:center;gap:6px;min-width:0;font-weight:600;display:inline-flex}.streak-next-glyph{line-height:1;display:inline-flex}.streak-next-when{color:var(--fg-dim);font-variant-numeric:tabular-nums;white-space:nowrap}.streak-next-bar{background:var(--surface-2);border-radius:2px;height:4px;overflow:hidden}.streak-next-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .42s cubic-bezier(.2,.7,.3,1)}.streak-pitch{color:var(--fg);margin:8px 0 18px;font-size:13.5px}.cabinet{flex-direction:column;gap:6px;display:flex}.cabinet-row{grid-template-columns:70px 1fr;align-items:center;gap:8px;display:grid}.cabinet-label{letter-spacing:.04em;text-align:right;color:var(--mat);text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.cabinet-label.locked{color:color-mix(in srgb, var(--mat) 32%, #0a0c0f)}.cabinet-cells{grid-template-columns:repeat(6,1fr);gap:5px;display:grid}.cabinet-cell{aspect-ratio:1;background:var(--surface-2);border:1px solid var(--line);color:var(--line);cursor:pointer;border-radius:6px;place-items:center;padding:0;font-size:24px;line-height:1;transition:transform .14s,box-shadow .14s,background .14s;display:grid}.cabinet-cell:hover{transform:translateY(-1px)}.cabinet-cell.ahead{color:color-mix(in srgb, var(--fg-dim) 42%, transparent)}.cabinet-cell.ahead.before{color:color-mix(in srgb, currentColor 80%, transparent)}.cabinet-cell.reached,.cabinet-cell.current{background:linear-gradient(157deg, color-mix(in srgb, currentColor 42%, var(--surface-2)) 0%, color-mix(in srgb, currentColor 22%, var(--surface-2)) 52%, color-mix(in srgb, currentColor 30%, var(--surface-2)) 100%);box-shadow:inset 0 1px 0 color-mix(in srgb, currentColor 45%, transparent);text-shadow:0 1px 1px #0000008c, 0 0 9px color-mix(in srgb, currentColor 55%, transparent)}.cabinet-cell.current{background:linear-gradient(157deg, color-mix(in srgb, currentColor 62%, var(--surface-2)) 0%, color-mix(in srgb, currentColor 34%, var(--surface-2)) 52%, color-mix(in srgb, currentColor 46%, var(--surface-2)) 100%);animation:2.4s ease-in-out infinite cabinet-pulse}.cabinet-cell.before{opacity:.75;border-style:dashed}.cabinet-cell.picked{transform:translateY(-2px)scale(1.04)}.cabinet-cell:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes cabinet-pulse{0%,to{box-shadow:inset 0 1px 0 color-mix(in srgb, currentColor 60%, transparent), 0 0 0 2px color-mix(in srgb, currentColor 55%, transparent)}50%{box-shadow:inset 0 1px 0 color-mix(in srgb, currentColor 60%, transparent), 0 0 0 5px color-mix(in srgb, currentColor 14%, transparent)}}@media (prefers-reduced-motion:reduce){.cabinet-cell{transition:none}.cabinet-cell.current{animation:none}.streak-next-fill,.streak-decade-fill{transition:none}}.streak-detail{z-index:2;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);border-left-width:3px;margin:16px 0 0;padding:12px 14px;position:sticky;bottom:0;box-shadow:0 -10px 18px -12px #000000d9}.streak-detail-head{align-items:baseline;gap:9px;display:flex}.streak-detail-glyph{font-size:26px;line-height:1}.streak-detail-name{font-size:15px;font-weight:600}.streak-detail-at{color:var(--fg-dim);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11.5px}.streak-detail-when{margin:7px 0 0;font-size:13.5px;line-height:1.45}.streak-decade{margin:20px 0 0}.streak-decade-bar{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.streak-decade-fill{background:linear-gradient(90deg,#7e8794,#8a4b34,#d5d2c8,#b87333,#c2c8d2,#d6a92f,#4fa87a,#c0334d,#9ad7ea,#71708a) 0 0/1000% 100%;border-radius:3px;height:100%;transition:width .6s cubic-bezier(.2,.7,.3,1)}.streak-decade-note{color:var(--fg-dim);margin:8px 0 0;font-size:12.5px;line-height:1.45}.saved{text-align:center;align-items:center}.saved-body{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;width:100%;min-height:0;padding:6px 0;display:flex;overflow:hidden auto}.saved-eyebrow{letter-spacing:.13em;text-transform:uppercase;color:color-mix(in srgb, var(--mat) 60%, var(--fg-dim));margin:0;font-size:11.5px;font-weight:600}.saved-body{position:relative}.saved-bloom{opacity:.55;top:38%}.saved-strip{align-items:center;gap:10px;margin:14px 0 6px;padding:0 6px;display:flex;position:relative}.saved-rail,.saved-rail-lit{border-radius:2px;height:2px;position:absolute;top:50%;left:6px;right:6px;transform:translateY(-50%)}.saved-rail{background:var(--surface-2)}.saved-rail-lit{background:var(--mat);width:0;box-shadow:0 0 10px var(--mat);animation:.9s cubic-bezier(.22,1,.36,1) 1s forwards saved-join;right:auto}@keyframes saved-join{to{width:calc(100% - 12px)}}.saved-day{justify-content:center;align-items:center;width:26px;height:26px;display:flex;position:relative}.saved-dot{background:var(--mat);opacity:0;width:9px;height:9px;animation:.26s ease-out forwards saved-pop;animation-delay:calc(60ms * var(--i));border-radius:99px}.saved-day.off .saved-dot{background:var(--surface-2);box-shadow:none}@keyframes saved-pop{to{opacity:1}}.saved-slot{border:2px dashed var(--mat);opacity:.5;border-radius:99px;animation:.3s ease-in 1s forwards saved-slot-out;position:absolute;inset:0}@keyframes saved-slot-out{to{opacity:0;transform:scale(1.25)}}.saved-drop{opacity:0;justify-content:center;align-items:center;animation:.62s cubic-bezier(.34,1.4,.5,1) .38s forwards saved-drop;display:flex;position:relative;transform:translateY(-46px)scale(.7)}@keyframes saved-drop{0%{opacity:0;transform:translateY(-46px)scale(.7)}60%{opacity:1}to{opacity:1;transform:translateY(0)scale(1)}}.saved-ring{border:2px solid var(--mat);opacity:0;border-radius:99px;animation:.7s ease-out .94s forwards saved-ring;position:absolute;inset:-6px}@keyframes saved-ring{0%{opacity:.85;transform:scale(.55)}to{opacity:0;transform:scale(1.7)}}.saved-head{opacity:0;margin:2px 0 0;font-size:25px;line-height:1.15;animation:.42s ease-out 1.25s forwards saved-in}.saved-what{max-width:22rem;color:var(--fg-dim);opacity:0;margin:0;font-size:14.5px;animation:.42s ease-out 1.45s forwards saved-in}.saved-run{color:var(--fg-dim);opacity:0;margin:6px 0 0;font-size:14px;animation:.42s ease-out 1.6s forwards saved-in}.saved-run strong{color:var(--fg);font-size:19px}.saved-bank{color:var(--fg-dim);opacity:0;margin:0;font-size:12.5px;animation:.42s ease-out 1.75s forwards saved-in}@keyframes saved-in{to{opacity:1}}@media (prefers-reduced-motion:reduce){.saved-dot,.saved-drop,.saved-head,.saved-what,.saved-run,.saved-bank{opacity:1;transform:none}.saved-rail-lit{width:calc(100% - 12px)}.saved-slot,.saved-ring{opacity:0}}.metric-tiles{grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0 6px;display:grid}.metric-tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px 11px}.metric-tile-label{letter-spacing:.07em;text-transform:uppercase;color:var(--fg-dim);font-size:10.5px}.metric-tile-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:3px;font-size:24px;font-weight:600;line-height:1.15}.metric-tile-sub{color:var(--fg-dim);margin-top:2px;font-size:11px}.metric-head{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-dim);margin:18px 0 8px;font-size:12px;font-weight:600}.metric-chart{border-bottom:1px solid var(--line);align-items:flex-end;gap:2px;height:64px;padding:0 1px;display:flex}.metric-bar{background:var(--accent);border-radius:2px 2px 0 0;flex:1;min-height:2px}.metric-bar.empty{background:var(--surface-2)}.metric-accounts{margin:0;padding:0;list-style:none}.metric-account{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:baseline;gap:10px;padding:9px 2px;font-size:14px;display:grid}.metric-account:last-child{border-bottom:none}.metric-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.metric-count{font-variant-numeric:tabular-nums;font-weight:600}.metric-count-unit{color:var(--fg-dim);font-size:11.5px;font-weight:400}.metric-when{color:var(--fg-dim);text-align:right;min-width:74px;font-size:11.5px}.metric-account.idle .metric-name,.metric-account.idle .metric-count{color:var(--fg-dim);font-weight:400}.rep-block{margin:14px 0 4px}.rep-head{align-items:center;gap:8px;margin:0 0 7px;display:flex}.rep-count{font-variant-numeric:tabular-nums;border:1px solid var(--line);color:var(--fg-dim);border-radius:999px;padding:1px 7px;font-size:11px}.rep-list{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.rep-item{background:var(--surface-2);border:1px solid var(--line);color:var(--fg);border-radius:999px;padding:3px 9px;font-size:12.5px}.rep-when{margin:8px 0 0}.danger-zone{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;margin-top:26px;padding-top:20px;display:flex}.danger-zone.confirming{border-radius:var(--radius);background:#1d1618;border:1px solid #5a2b29;margin-top:26px;padding:15px 15px 16px}.danger-head{color:var(--bad);margin:0 0 2px;font-size:14px;font-weight:600}.danger-zone .keeps-lichess,.prose .keeps-lichess{color:var(--fg);border-left:2px solid var(--accent);margin-top:12px;padding-left:10px;line-height:1.55}.keeps-lichess strong{color:var(--accent)}.danger-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.danger-actions .cfg-danger:disabled{opacity:.45;cursor:default;background:0 0}.danger-actions .tertiary{cursor:pointer;padding:11px 4px}.privacy-link{margin-top:22px}.privacy-link .link-btn{padding-left:0;text-decoration:underline}.prose{color:var(--fg-dim);font-size:13.5px;line-height:1.6}.prose h3{color:var(--fg);letter-spacing:.02em;margin:26px 0 8px;font-size:13px;font-weight:600}.prose p{margin:0 0 10px}.prose ul{margin:0;padding-left:18px}.prose li{margin-bottom:9px}.prose strong{color:var(--fg);font-weight:600}.prose .privacy-lead{color:var(--fg);margin-bottom:0;font-size:14px}.prose .privacy-lead+h3{margin-top:20px}input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text}.quiz-prompt{margin:6px 0 0;font-size:17px;line-height:1.4}.quiz-how{color:var(--fg-dim);margin:-2px 0 0;font-size:13px}.quiz-options{flex-direction:column;gap:8px;display:flex}.quiz-option{text-align:left;background:var(--surface);border:1px solid var(--line);width:100%;color:var(--fg);border-radius:var(--radius);font:inherit;cursor:pointer;align-items:center;gap:10px;padding:12px 14px;font-size:14.5px;line-height:1.35;display:flex}.quiz-option:disabled{cursor:default}.quiz-option.picked{border-color:var(--accent)}.quiz-option.right{border-color:var(--accent);background:var(--accent-dim)}.quiz-option.wrong{border-color:var(--bad)}.quiz-option.dim{opacity:.45}.quiz-n{background:var(--accent);color:#10130f;border-radius:50%;flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:600;display:inline-flex}.quiz-text{flex:1;min-width:0}.quiz-reset{align-self:center}.quiz-foot{flex-direction:column;gap:6px;min-height:26px;display:flex}.quiz-foot .verdict em{margin-top:2px;font-size:13.5px;display:block}.quiz-note{color:var(--fg-dim);margin:0;font-size:13.5px;line-height:1.45}.quiz-review{flex-direction:column;gap:10px;display:flex}.quiz-review-prompt{margin:0;font-size:16px;line-height:1.4}.quiz-review dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:14px;display:grid}.quiz-review dt{color:var(--fg-dim)}.quiz-review dd{margin:0}.quiz-review dd.bad{color:var(--bad)}.quiz-review dd.good{color:var(--accent)}
