@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/fonts/inter-latin-wght-v1.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2190-2199,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f6f5f1;--surface:#fcfcfb;--surface-2:#efede7;--surface-3:#e6e3db;--ink:#161513;--ink-2:#52514e;--ink-3:#6f6d68;--line:#e1e0d9;--line-2:#c3c2b7;--accent:#256abf;--accent-hover:#1c5cab;--accent-ink:#fff;--accent-soft:#e2ecf8;--accent-text:#1c5cab;--series-1:#2a78d6;--good:#0ca30c;--warning:#fab219;--serious:#ec835a;--critical:#d03b3b;--good-ink:#006300;--warning-ink:#6b4a00;--critical-ink:#a82626;--good-soft:#e1f3e1;--warning-soft:#fdf1d6;--critical-soft:#f9e2e2;--board-bg:#d6cfc3;--cell-bg:#e7e1d7;--shadow-1:0 1px 2px #18140e0f, 0 2px 8px #18140e0d;--shadow-2:0 2px 6px #18140e14, 0 12px 32px #18140e1f;--radius:14px;--ease-out:cubic-bezier(.22, 1, .36, 1);--font:"Inter Variable", Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0f0f0e;--surface:#1a1a19;--surface-2:#242422;--surface-3:#2e2e2b;--ink:#f4f3ef;--ink-2:#c3c2b7;--ink-3:#9e9c93;--line:#2c2c2a;--line-2:#3d3d39;--accent:#256abf;--accent-hover:#2a78d6;--accent-soft:#1c2a3d;--accent-text:#8ab8f0;--series-1:#3987e5;--good-ink:#4fd04f;--warning-ink:#fbc54d;--critical-ink:#f08080;--good-soft:#15291a;--warning-soft:#2e2512;--critical-soft:#331a1a;--board-bg:#2a2824;--cell-bg:#35322d;--shadow-1:0 1px 2px #0006;--shadow-2:0 4px 24px #00000080}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--page);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss01";margin:0;font-size:16px;line-height:1.5}h1,h2,h3{letter-spacing:-.01em;margin:0;line-height:1.2}p{margin:0}a{color:var(--accent-text)}button{font:inherit;color:inherit}kbd{font:inherit;border:1px solid var(--line-2);background:var(--surface);border-radius:5px;padding:0 .4em;font-size:.85em}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--accent);color:var(--accent-ink);z-index:100;border-radius:8px;padding:8px 12px;position:absolute;top:-40px;left:8px}.skip:focus{top:8px}:focus-visible{outline:3px solid color-mix(in srgb, var(--series-1) 70%, transparent);outline-offset:2px}.muted{color:var(--ink-3)}.shell{flex-direction:column;min-height:100dvh;display:flex}.topbar{justify-content:space-between;align-items:center;width:100%;max-width:1012px;height:56px;margin:0 auto;padding:0 16px;display:flex}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:10px;font-size:18px;text-decoration:none;display:flex}.brand-name{font-weight:650}.brand-name b{color:var(--accent-text);font-weight:800}.brand-mark{background:#d9a514;border-radius:8px;grid-template-columns:1fr 1fr;gap:3px;width:28px;height:28px;padding:4px;display:grid}.brand-mark i{background:#ffffffd9;border-radius:3px}.brand-mark i:nth-child(2),.brand-mark i:nth-child(3){background:#ffffff80}.brand-mark i:nth-child(4){background:#3b2a05}.topnav{gap:4px;display:flex}.topnav a{color:var(--ink-2);border-radius:10px;padding:8px 12px;font-size:15px;font-weight:550;text-decoration:none}.topnav a:hover{background:var(--surface-2);color:var(--ink)}.topnav a.on{color:var(--ink);background:var(--surface-3)}.main{width:100%;max-width:1200px;padding:0 16px calc(84px + env(safe-area-inset-bottom));padding-bottom:calc(32px + env(safe-area-inset-bottom));flex:1;margin:0 auto}@media (max-width:479px){.topnav a:first-child{display:none}}.screen-loading{min-height:50vh}.btn{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;transition:background .15s, border-color .15s, color .15s, transform .1s var(--ease-out);-webkit-tap-highlight-color:transparent;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:active:not(:disabled){transform:scale(.97)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{background:var(--accent-hover)}.btn.ghost{color:var(--accent-text);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--accent-soft)}.btn.small{border-radius:10px;min-height:36px;padding:7px 12px;font-size:14px}.btn.big{min-height:50px;padding:12px 22px;font-size:16px}.btn.danger{color:var(--critical-ink)}.btn:disabled{opacity:.5;cursor:default}.segmented{background:var(--surface-2);border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;gap:2px;padding:3px;display:grid}.segmented button{min-height:38px;color:var(--ink-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:9px;padding:6px 8px;font-size:14px;font-weight:600}.segmented button:hover{color:var(--ink)}.segmented button.on{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-1)}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:14px;font-weight:700;display:inline-flex}.pill.best{background:var(--accent-soft);color:var(--accent-text)}.pill.warn{background:var(--critical-soft);color:var(--critical-ink)}.pill.neutral{background:var(--surface-2);color:var(--ink-2)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-1)}.spinner{border:2.5px solid var(--line-2);border-top-color:var(--series-1);vertical-align:-3px;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{rotate:360deg}}.board{width:var(--board-size,min(calc(100vw - 32px), 460px));aspect-ratio:1;background:var(--board-bg);border-radius:calc(var(--board-size,400px) * .035);touch-action:none;-webkit-user-select:none;user-select:none;--gap:2.8cqw;--cellsz:calc((100cqw - 5 * var(--gap)) / 4);--tile-radius:2cqw;flex:none;align-self:flex-start;position:relative;container-type:inline-size}.board.dim .tile{opacity:.55}.board-grid{inset:var(--gap);gap:var(--gap);grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(4,1fr);display:grid;position:absolute}.cell{background:var(--cell-bg);border-radius:var(--tile-radius)}.tile,.mark,.hit{left:var(--gap);top:var(--gap);width:var(--cellsz);height:var(--cellsz);translate:calc(var(--c) * (var(--cellsz) + var(--gap))) calc(var(--r) * (var(--cellsz) + var(--gap)));position:absolute}.tile{border-radius:var(--tile-radius);letter-spacing:-.03em;z-index:2;font-variant-numeric:tabular-nums;place-items:center;font-weight:800;line-height:1;transition:translate .105s ease-in-out;display:grid;box-shadow:inset 0 -.6cqw #00000012}.tile.ghost{z-index:1}.tile.merged{z-index:3;animation:.19s ease-out 85ms backwards tile-pop}.tile.new{animation:.18s cubic-bezier(.2,.9,.3,1.25) 95ms backwards tile-appear}@keyframes tile-appear{0%{opacity:0;scale:.25}to{opacity:1;scale:1}}@keyframes tile-pop{0%{scale:.7}55%{scale:1.13}to{scale:1}}@media (prefers-reduced-motion:reduce){.tile{transition:none}.tile.merged,.tile.new{animation:none}}.tile.d1,.tile.d2{font-size:calc(var(--cellsz) * .46)}.tile.d3{font-size:calc(var(--cellsz) * .38)}.tile.d4{font-size:calc(var(--cellsz) * .3)}.tile.d5{font-size:calc(var(--cellsz) * .245)}.tile.d6{font-size:calc(var(--cellsz) * .205)}.tile.d7{font-size:calc(var(--cellsz) * .18)}.t1{color:#5c5048;background:#efe7dc}.t2{color:#5c5048;background:#ede0c8}.t3{color:#4a2a10;background:#f6b47c}.t4{color:#3f230b;background:#f39a5d}.t5{color:#fff;background:#e4623e}.t6{color:#fff;background:#d64b34}.t7{color:#3b2a05;background:#edcf6a;box-shadow:0 0 1.5cqw #edcf6a59}.t8{color:#3b2a05;background:#e8c54c;box-shadow:0 0 2cqw #e8c54c66}.t9{color:#3b2a05;background:#e4bb2f;box-shadow:0 0 2.5cqw #e4bb2f73}.t10{color:#3b2a05;background:#dfb01a;box-shadow:0 0 3cqw #dfb01a80}.t11{color:#3b2a05;background:#d9a514;box-shadow:0 0 3.5cqw #d9a51499}.t12{color:#fff;background:#3f62d6;box-shadow:0 0 3cqw #3f62d673}.t13{color:#fff;background:#5b4bd1;box-shadow:0 0 3cqw #5b4bd173}.t14{color:#fff;background:#7d3fc6;box-shadow:0 0 3cqw #7d3fc680}.t15{color:#fff;background:#a23aa8;box-shadow:0 0 3cqw #a23aa880}.t16{color:#fff;background:#c2336f;box-shadow:0 0 3cqw #c2336f80}.t17,.t18{color:#fff;background:#2a2933;box-shadow:0 0 3cqw #2a293399}.board-marks .mark{border-radius:var(--tile-radius);z-index:4;pointer-events:none}.mark.fault{box-shadow:inset 0 0 0 .9cqw var(--critical);background:color-mix(in srgb, var(--critical) 12%, transparent);animation:.22s ease-out mark-in}@keyframes mark-in{0%{opacity:0}}.board-hit .hit{z-index:5;border-radius:var(--tile-radius);cursor:pointer;background:0 0;border:0;padding:0}@media (hover:hover){.board-hit .hit:hover{box-shadow:inset 0 0 0 .8cqw color-mix(in srgb, var(--ink) 25%, transparent)}}.board-hit .hit.sel{box-shadow:inset 0 0 0 .9cqw var(--series-1)}.board-arrow{z-index:6;color:#fff;box-shadow:var(--shadow-2);pointer-events:none;border-radius:999px;align-items:center;gap:4px;padding:7px;font-size:13px;font-weight:700;animation:.2s ease-out arrow-in;display:flex;position:absolute}.board-arrow span{padding-right:6px}.board-arrow.best,.board-arrow.same{background:var(--accent)}.board-arrow.warn{background:var(--critical)}.board-arrow.played{background:#57554f}.board-arrow.top{top:0;left:50%;translate:-50% -50%}.board-arrow.bottom{bottom:0;left:50%;translate:-50% 50%}.board-arrow.left{top:50%;left:0;translate:-38% -50%}.board-arrow.right{top:50%;right:0;translate:38% -50%}@media (max-width:759px){.board-arrow.left span,.board-arrow.right span{display:none}}@keyframes arrow-in{0%{opacity:0;scale:.6}}.board-over{z-index:8;border-radius:inherit;background:color-mix(in srgb, var(--page) 80%, transparent);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);place-items:center;animation:.3s ease-out .15s backwards fade-in;display:grid;position:absolute;inset:0}.over-card{text-align:center;justify-items:center;gap:10px;padding:20px;display:grid}.over-card h2{font-size:30px;font-weight:800}.over-card p{color:var(--ink-2);margin-bottom:6px}@keyframes fade-in{0%{opacity:0}}.dojo{--board-size:min(calc(100vw - 32px), 460px);justify-content:center;gap:18px;padding-top:2px;display:grid}.bench{width:var(--board-size);flex-direction:column;gap:10px;min-width:0;margin:0 auto;display:flex}.scores{align-items:stretch;gap:8px;display:flex}.score-box{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;flex:1 1 0;min-width:0;padding:5px 12px 6px;display:flex}.score-label{letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);font-size:11px;font-weight:650}.score-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:19px;font-weight:750;line-height:1.25}.scores .btn{align-self:stretch;min-height:0}.btn.icon-text{gap:6px}.btn.on{border-color:color-mix(in srgb, var(--series-1) 60%, var(--line));background:var(--accent-soft);color:var(--accent-text)}.board-row{justify-content:center;align-items:flex-start;gap:18px;margin-top:12px;display:flex}.main-board.editing{box-shadow:0 0 0 3px color-mix(in srgb, var(--series-1) 65%, transparent)}.transport{justify-content:center;align-items:center;gap:6px;display:flex}.btn.icon{width:40px;padding:0}.tp-pos{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:96px;font-size:14.5px;font-weight:700}.tp-pos small{color:var(--ink-3);font-size:13px;font-weight:500}@media (max-width:479px){.btn.icon{width:36px}.tp-pos{min-width:74px;font-size:13.5px}.tp-pos small{font-size:12px}}.btn kbd{margin-left:2px;font-size:12px;font-weight:600;line-height:1.5}kbd.on-accent{color:#fff;background:#00000038;border-color:#ffffff73}.grade-line{min-height:36px;color:var(--ink-2);margin-top:8px;font-size:14px}.gl-body,.gl-main{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.gl-body{min-height:36px;animation:gl-in .22s var(--ease-out);flex-wrap:nowrap;gap:12px}@keyframes gl-in{0%{opacity:0;translate:0 3px}}.gl-n{color:var(--ink-3);font-variant-numeric:tabular-nums;font-weight:650}.gl-dir{color:var(--ink);font-weight:700}.gl-why{color:var(--ink)}.gl-better{color:var(--ink-3)}.gl-better b{color:var(--ink);font-weight:650}.gl-undo{margin-left:auto}.btn.gl-undo{min-height:30px;padding:4px 12px;font-size:13.5px}.grade{letter-spacing:.01em;background:var(--surface-2);color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;padding:1px 8px;font-size:12px;font-weight:650;line-height:1.6;display:inline-flex}.grade.best{background:var(--good-soft);color:var(--good-ink)}.grade.good{background:var(--accent-soft);color:var(--accent-text)}.grade.questionable{background:var(--warning-soft);color:var(--warning-ink)}.grade.blunder{background:var(--critical-soft);color:var(--critical-ink)}.grade.coach{color:var(--ink-3);font-weight:600}.autoplay{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ap-label{color:var(--ink-2);font-size:13.5px;font-weight:650}.ap-buttons{border:1px solid var(--line);background:var(--surface);border-radius:10px;display:inline-flex;overflow:hidden}.ap-buttons .btn{background:0 0;border:0;border-radius:0;min-width:42px;padding-left:11px;padding-right:11px}.ap-buttons .btn+.btn{border-left:1px solid var(--line)}.ap-buttons .btn:hover:not(:disabled){background:var(--surface-2)}.ap-speed .btn,.ap-speed .menu-button{border-radius:10px}@media (max-width:479px){.ap-label{flex-basis:100%;margin-bottom:-2px}}.switch{--w:38px;--h:22px;width:var(--w);height:var(--h);background:var(--line-2);cursor:pointer;transition:background .2s var(--ease-out);border:0;border-radius:999px;flex:none;padding:0;position:relative}.switch.big{--w:52px;--h:30px}.switch.small{--w:34px;--h:20px}.switch .knob{width:calc(var(--h) - 6px);height:calc(var(--h) - 6px);transition:translate .24s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch.on{background:var(--accent)}.switch.on .knob{translate:calc(var(--w) - var(--h)) 0}.panel{width:var(--board-size);align-content:start;gap:16px;min-width:0;margin:0 auto;display:grid}.panel.coach{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-1,0 1px 2px #0000000a);border-radius:18px;padding:16px 16px 18px;transition:background .2s,box-shadow .2s}.panel.coach.off{box-shadow:none;background:0 0}.panel.coach.on>:not(.coach-head){animation:panel-in .26s var(--ease-out) backwards}@keyframes panel-in{0%{opacity:0;translate:0 4px}}.coach-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.coach-head h2{letter-spacing:-.015em;margin:0;font-size:20px;font-weight:750}.coach-sub{color:var(--ink-3);margin:2px 0 0;font-size:13px}.options{background:color-mix(in srgb, var(--surface-2) 55%, var(--surface));border-radius:12px;display:grid;overflow:hidden}.option{border:0;border-top:1px solid color-mix(in srgb, var(--line) 70%, transparent);font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;transition:background .15s;display:flex}.option:first-child{border-top:0}@media (hover:hover){.option:hover{background:color-mix(in srgb, var(--surface-3) 45%, transparent)}}.option-text{gap:1px;min-width:0;display:grid}.option-label{font-size:14px;font-weight:650}.option-desc{color:var(--ink-3);font-size:12.5px;line-height:1.35}.option:not(.on) .option-label{color:var(--ink-2)}.panel .autoplay{border-top:1px solid var(--line);padding-top:14px}.plan-line{border-left:3px solid var(--accent);color:var(--ink-2);margin:0;padding:1px 0 1px 12px;font-size:13.5px;line-height:1.5}.plan-line.blocked{border-left-color:var(--warning);color:var(--ink)}.plan-line.blocked strong{color:var(--warning-ink)}.mv-note{margin:0}.odds-cards{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:6px;display:grid}.odds-card{background:color-mix(in srgb, var(--surface-2) 55%, var(--surface));border-radius:10px;gap:5px;padding:9px 10px 10px;display:grid}.oc-tile{color:var(--ink-3);font-size:12px;font-weight:650}.oc-p{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:17px;font-weight:750}.oc-bar{background:var(--surface-3);border-radius:999px;height:4px;overflow:hidden}.oc-bar i{background:var(--accent);height:100%;transition:width .35s var(--ease-out);border-radius:999px;display:block}.movelist{gap:10px;transition:opacity .2s;display:grid}.movelist.stale{opacity:.55}.movelist ul{border:1px solid var(--line);border-radius:12px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.mv+.mv{border-top:1px solid var(--line)}.mv.played{box-shadow:inset 3px 0 0 var(--ink-3)}.mv-row{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:18px 46px 92px 1fr 40px;align-items:center;gap:8px;padding:10px 12px;transition:background .15s;display:grid}.mv-row .grade{justify-self:start}.mv-row:disabled{cursor:default}@media (hover:hover){.mv-row:not(:disabled):hover{background:var(--surface-2)}}.mv-arrow{text-align:center;color:var(--ink-2);font-size:16px;font-weight:700}.mv-name{font-weight:650}.mv-bar{background:var(--surface-2);border-radius:999px;height:5px;overflow:hidden}.mv-bar i{background:var(--good);height:100%;transition:width .35s var(--ease-out), background .2s;border-radius:999px;display:block}.g-good .mv-bar i{background:var(--accent)}.g-questionable .mv-bar i{background:var(--warning)}.g-blunder .mv-bar i{background:var(--critical)}.mv-pct{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink-2);font-size:13.5px;font-weight:650}.mv-why{color:var(--ink-2);margin:-5px 12px 10px 38px;font-size:13px;line-height:1.45}.odds-box{gap:8px;display:grid}.linklike.odds-toggle{color:var(--ink-2);justify-self:start;align-items:center;gap:6px;font-size:13px;text-decoration:none;display:inline-flex}.linklike.odds-toggle:hover{color:var(--ink)}.odds-toggle:after{content:"";width:6px;height:6px;transition:rotate .2s var(--ease-out);border-bottom:1.5px solid;border-right:1.5px solid;rotate:-45deg}.odds-toggle[aria-expanded=true]:after{translate:0 -2px;rotate:45deg}.board-wait{z-index:7;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.over-counts{justify-content:center;gap:6px;margin:0 0 12px;display:flex}.review-sheet .counts{grid-template-columns:repeat(4,1fr);gap:8px;margin:8px 0 14px;display:grid}.count{background:var(--surface-2);border-radius:12px;justify-items:center;padding:8px 4px;display:grid}.count strong{font-variant-numeric:tabular-nums;font-size:22px;font-weight:750}.count span{color:var(--ink-3);font-size:12px;font-weight:600}.count.g-blunder strong{color:var(--critical-ink)}.count.g-questionable strong{color:var(--warning-ink)}.flagged{gap:6px;max-height:50vh;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.fl{border:1px solid var(--line);background:var(--surface);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:9px 12px;display:flex}@media (hover:hover){.fl:hover{background:var(--surface-2)}}.fl-n{color:var(--ink-3);font-variant-numeric:tabular-nums;font-weight:650}.fl-dir{font-weight:650}.fl-why{width:100%;color:var(--ink-2);font-size:13px}.editor-tools{justify-items:center;gap:10px;display:grid}.edit-bar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.edit-bar .btn{flex:none}.menu{display:flex;position:relative}.menu-button{width:40px;padding:0}.menu-list{z-index:30;background:var(--surface);border:1px solid var(--line);min-width:250px;box-shadow:var(--shadow-2);border-radius:12px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.menu-list button{text-align:left;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;font-size:14.5px;font-weight:550;display:flex}.menu-list button:hover,.menu-list button:focus-visible{background:var(--surface-2)}.menu-list button:disabled{opacity:.45;cursor:default}.board-arrow.clickable{pointer-events:auto;cursor:pointer;font:inherit;border:0;font-size:13px;font-weight:700;transition:scale .12s,filter .12s}.board-arrow.clickable:hover{filter:brightness(1.08);scale:1.08}.over-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.keys{gap:7px;margin:0;display:grid}.keys div{grid-template-columns:minmax(150px,auto) 1fr;align-items:baseline;gap:12px;display:grid}.keys dt,.keys dd{margin:0}.keys dd{color:var(--ink-2);font-size:14.5px}.modal.shortcuts{max-width:520px}@media (min-width:960px){.route-play .main{padding-bottom:24px}.dojo{--board-size:max(320px, min(540px, calc(100dvh - 290px), calc(100vw - 520px)));align-items:start;gap:40px;padding-top:8px}.dojo.with-panel{grid-template-columns:var(--board-size) 400px}.bench{width:var(--board-size);margin:0}.panel{scrollbar-width:thin;width:auto;max-height:calc(100dvh - 88px);margin:0;padding:2px 8px 16px 2px;position:sticky;top:8px;overflow-y:auto}}.backdrop{z-index:50;background:#0f0e0c61;justify-content:center;align-items:flex-end;animation:.16s ease-out fade-in;display:flex;position:fixed;inset:0}.modal{background:var(--surface);width:100%;max-width:460px;padding:22px 20px calc(20px + env(safe-area-inset-bottom));box-shadow:var(--shadow-2);border-radius:20px 20px 0 0;gap:12px;animation:.22s cubic-bezier(.2,.9,.3,1) sheet-up;display:grid}.modal h2{font-size:20px;font-weight:750}.modal p{color:var(--ink-2)}.modal .actions{gap:8px;margin-top:4px;display:grid}@keyframes sheet-up{0%{opacity:.4;translate:0 40px}}@media (min-width:640px){.backdrop{align-items:center}.modal{border-radius:20px;padding:24px}.modal .actions{grid-auto-columns:1fr;grid-auto-flow:column}}.warn-head{align-items:center;gap:12px;display:flex}.warn-badge{background:var(--critical);color:#fff;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:20px;font-weight:900;display:grid}.backdrop.for-warn{background:#0f0e0c38}@media (min-width:960px){.backdrop.for-warn{justify-content:flex-end;padding-right:max(16px,50vw - 548px)}.modal.warn{max-width:356px}.modal.warn .actions{grid-auto-flow:row}}.keys-hint{text-align:center;font-size:12.5px;color:var(--ink-3)!important}@media (pointer:coarse){.keys-hint{display:none}}.toast{z-index:40;background:var(--ink);color:var(--page);box-shadow:var(--shadow-2);border-radius:999px;padding:9px 18px;font-size:14.5px;font-weight:650;animation:.26s cubic-bezier(.2,.9,.3,1.2) toast-in;position:fixed;top:64px;left:50%;translate:-50%}@keyframes toast-in{0%{opacity:0;translate:-50% -10px}}.toast.with-action{align-items:center;gap:10px;width:max-content;max-width:calc(100vw - 24px);padding:6px 6px 6px 18px;display:flex}.toast-action{background:color-mix(in srgb, var(--page) 20%, transparent);color:inherit;font:inherit;cursor:pointer;white-space:nowrap;border:0;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:700}.toast-action:hover{background:color-mix(in srgb, var(--page) 32%, transparent)}.toast-close{color:inherit;opacity:.7;cursor:pointer;background:0 0;border:0;padding:6px 8px;font-size:13px}.page{gap:18px;padding-top:8px;display:grid}.page>*{min-width:0}.page.narrow{max-width:760px;margin:0 auto}.page-head{gap:6px;display:grid}.page-head h1{letter-spacing:-.025em;font-size:28px;font-weight:800}.lead{color:var(--ink-2);max-width:70ch;font-size:16px}.back{width:-moz-fit-content;width:fit-content;font-size:14px;font-weight:600;text-decoration:none}.small{font-size:13px}.notice{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;display:flex}.linklike{color:var(--accent-text);cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-head h2{font-size:16px;font-weight:750}.tag{white-space:nowrap;border-radius:999px;align-items:center;padding:1px 8px;font-size:12px;font-weight:700;line-height:1.6;display:inline-flex}.tag.best,.tag.good{background:var(--good-soft);color:var(--good-ink)}.tag.played{background:var(--accent-soft);color:var(--accent-text)}.tag.inaccuracy{background:var(--warning-soft);color:var(--warning-ink)}.tag.mistake{background:color-mix(in srgb, var(--serious) 22%, var(--surface));color:var(--critical-ink)}.tag.blunder,.tag.warn{background:var(--critical-soft);color:var(--critical-ink)}.tag.neutral{background:var(--surface-2);color:var(--ink-2)}.facts{color:var(--ink-2);margin-top:-4px;font-size:15px}.palette{width:var(--board-size);grid-template-columns:repeat(6,1fr);gap:6px;margin-top:12px;display:grid}.pal{aspect-ratio:1.25;letter-spacing:-.03em;cursor:pointer;border:2px solid #0000;border-radius:8px;place-items:center;padding:0;font-size:13px;font-weight:800;display:grid}.pal.d1,.pal.d2{font-size:19px}.pal.d3{font-size:15px}.pal.d5,.pal.d6{font-size:10.5px}.palette .pal:not(.on){box-shadow:none}.pal.eraser{background:var(--surface-2);color:var(--ink-2)}.pal.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--surface) inset}.hint-text{color:var(--ink-3);text-align:center;font-size:13px}.presets{width:var(--board-size);flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;min-height:34px;padding:6px 12px;font-size:13.5px;font-weight:600}.chip:hover{background:var(--surface-2)}.paste{width:var(--board-size);gap:6px;display:grid}.paste label{color:var(--ink-2);font-size:13px;font-weight:650}.paste-row{gap:6px;display:flex}.paste input{border:1px solid var(--line-2);background:var(--surface);min-width:0;min-height:40px;color:var(--ink);font:inherit;border-radius:10px;flex:1;padding:8px 12px;font-size:15px}.field-error{color:var(--critical-ink);font-size:13px}.grades-key{gap:10px;margin:18px 0;display:grid}.grades-key div{grid-template-columns:120px 1fr;align-items:baseline;gap:12px;display:grid}.grades-key dt,.grades-key dd{margin:0}.how section{gap:10px;display:grid}.how h2{font-size:20px;font-weight:750}.how p{color:var(--ink-2)}.how-list{color:var(--ink-2);gap:10px;margin:0;padding-left:20px;display:grid}.how-list strong,.how-terms dt{color:var(--ink)}.how-terms{gap:4px;margin:0;display:grid}.how-terms dt{margin-top:8px;font-weight:700}.how-terms dd{color:var(--ink-2);margin:0}.how-cta{flex-wrap:wrap;gap:10px;padding:8px 0 16px;display:flex}.score-box{position:relative}.score-gain{color:var(--good-ink);font-variant-numeric:tabular-nums;pointer-events:none;animation:score-gain .65s var(--ease-out) forwards;font-size:15px;font-weight:700;position:absolute;top:50%;right:12px}@keyframes score-gain{0%{opacity:0;translate:0 -20%}25%{opacity:1}to{opacity:0;translate:0 -110%}}@media (prefers-reduced-motion:reduce){.score-gain,.gl-body,.panel.coach.on>:not(.coach-head){animation:none}.score-gain{display:none}}@media (max-width:959px){.panel.coach .autoplay{order:5}.panel.coach .options{order:10}}.gl-played{color:var(--ink-3);white-space:nowrap}.gl-played b{color:var(--ink);font-weight:650}.odds-note{margin:0;line-height:1.45}@media (max-width:959px) and (orientation:landscape) and (max-height:600px){.dojo{--board-size:max(200px, min(calc(100vw - 32px), 460px, calc(100dvh - 150px)))}.bench{width:min(100vw - 32px,460px)}.bench .board-row{justify-content:center}}.gl-body:has(.gl-played){flex-wrap:wrap;gap:4px 8px}.credits{border-top:1px solid var(--line);color:var(--ink-2);gap:8px;margin-top:8px;padding-top:16px;font-size:14px;display:grid}.credits h2{color:var(--ink);font-size:15px;font-weight:700}.linklike.gl-why-open{font-size:13.5px}
