@font-face{font-family:Plus Jakarta Sans;font-weight:700;font-display:swap;src:url(/fonts/jakarta-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-weight:700;font-display:swap;src:url(/fonts/jakarta-700-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1E00-1E9F,U+20A0-20AB,U+20AD-20C4,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next;font-weight:200 800;font-display:swap;src:url(/fonts/atkinson-next-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Next;font-weight:200 800;font-display:swap;src:url(/fonts/atkinson-next-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+1E00-1E9F,U+20A0-20AB,U+20AD-20C4,U+2C60-2C7F,U+A720-A7FF}:root{--wine:#8e1b2b;--wine-hover:#a32235;--red:#d02a41;--ink:#1e1416;--ink-soft:#4a3b3d;--muted:#6e5e60;--cream:#f6efe8;--paper:#fffdfb;--line:#e4d6ca;--ok:#2f6b3a;--ok-bg:#e5f1e3;--warn:#8a4b00;--warn-bg:#fbebd4;--radius:10px;--surface:#fff;--wine-text:#8e1b2b;--theirs:#4a4a48;--on-theirs:#fff;--theirs-border:#b4b2a9;--badge-new-bg:#efe7df;--badge-new:#5e5050;--bar-bg:#f6efe8f5;--toast-bg:#1e1416;--toast-fg:#fff;--sq-light:#f3e6da;--sq-dark:#bc8487;--coord-on-light:#9c6266;--coord-on-dark:#f3e6da;--mark:#1e1416;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--ink:#f3eae4;--ink-soft:#d6c8c2;--muted:#b5a6a8;--cream:#1c1517;--paper:#251c1f;--surface:#2e2427;--line:#43363a;--wine-text:#f08a98;--red:#e8475c;--ok:#8fd19b;--ok-bg:#1f3a25;--warn:#f2c27a;--warn-bg:#3d2b12;--theirs:#c9c4bc;--on-theirs:#1e1416;--theirs-border:#6e6863;--badge-new-bg:#3a2f32;--badge-new:#d6c8c2;--bar-bg:#1c1517f5;--toast-bg:#f3eae4;--toast-fg:#1e1416;--sq-light:#d9c3b5;--sq-dark:#8c5a5e;--coord-on-light:#8c5a5e;--coord-on-dark:#eadbd0;--mark:#000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){html:not([data-theme=light]){--ink:#f3eae4;--ink-soft:#d6c8c2;--muted:#b5a6a8;--cream:#1c1517;--paper:#251c1f;--surface:#2e2427;--line:#43363a;--wine-text:#f08a98;--red:#e8475c;--ok:#8fd19b;--ok-bg:#1f3a25;--warn:#f2c27a;--warn-bg:#3d2b12;--theirs:#c9c4bc;--on-theirs:#1e1416;--theirs-border:#6e6863;--badge-new-bg:#3a2f32;--badge-new:#d6c8c2;--bar-bg:#1c1517f5;--toast-bg:#f3eae4;--toast-fg:#1e1416;--sq-light:#d9c3b5;--sq-dark:#8c5a5e;--coord-on-light:#8c5a5e;--coord-on-dark:#eadbd0;--mark:#000;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}html[data-board=contrast]{--sq-light:#fff;--sq-dark:#4f6475;--coord-on-light:#4f6475;--coord-on-dark:#fff}*{box-sizing:border-box}html,body{margin:0}body{background:var(--cream);color:var(--ink);font-family:Atkinson Hyperlegible Next,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.5}h1,h2,h3{letter-spacing:-.01em;margin:0 0 8px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-weight:700}h2{font-size:1.25rem}h3{margin-top:20px;font-size:1rem}a{color:var(--wine-text)}.accent{color:var(--red)}.muted{color:var(--muted);font-size:.95rem}[hidden]{display:none!important}.topbar{border-bottom:1px solid var(--line);background:var(--cream);align-items:center;padding:12px 20px;display:flex}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:8px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:1.35rem;font-weight:700;text-decoration:none;display:flex}.layout{grid-template-columns:minmax(0,1fr) minmax(300px,400px);align-items:start;gap:28px;max-width:1120px;margin:0 auto;padding:24px 20px;display:grid}@media (width<=820px){.layout{grid-template-columns:minmax(0,1fr);gap:20px;padding:16px 12px}}.board-area{justify-self:center;width:100%;max-width:640px}.board{aspect-ratio:1;width:100%}.cm-chessboard.default .board .square.white{fill:var(--sq-light)}.cm-chessboard.default .board .square.black{fill:var(--sq-dark)}.cm-chessboard.default .coordinates .coordinate.white{fill:var(--coord-on-light)}.cm-chessboard.default .coordinates .coordinate.black{fill:var(--coord-on-dark)}.cm-chessboard .markers .marker.marker-square{fill:#f2c14e;opacity:.45}.cm-chessboard .arrow-success .arrow-head{fill:#2f6b3a}.cm-chessboard .arrow-mine .arrow-head{fill:#8e1b2b}.cm-chessboard .arrow-mine .arrow-line{stroke:#8e1b2b;stroke-linecap:round;opacity:.8}.cm-chessboard .arrow-mine-alt .arrow-head{fill:#8e1b2b;opacity:.55}.cm-chessboard .arrow-mine-alt .arrow-line{stroke:#8e1b2b;stroke-linecap:round;opacity:.4}.cm-chessboard .arrow-theirs .arrow-head{fill:#3a3a38;opacity:.75}.cm-chessboard .arrow-theirs .arrow-line{stroke:#3a3a38;stroke-linecap:round;opacity:.55}.cm-chessboard .markers .marker.marker-dot,.cm-chessboard .markers .marker.marker-bevel{fill:var(--mark);opacity:.3}.cm-chessboard .arrow-success .arrow-line{stroke:#2f6b3a;opacity:.7}.panel{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);margin-top:16px;padding:16px}.field-label{color:var(--ink-soft);margin:8px 0 6px;font-size:.9rem;font-weight:700;display:block}.row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}select,input[type=text]{font:inherit;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0;color:var(--ink);flex:160px;padding:9px 12px}select:focus-visible,input:focus-visible,button:focus-visible,summary:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #f2c14e}.btn{min-height:44px;font:inherit;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;padding:9px 14px;font-size:.95rem;font-weight:700}.btn:hover{border-color:var(--wine-text)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--wine);border-color:var(--wine);color:#fff}.btn-primary:hover{background:var(--wine-hover)}.btn-danger{color:var(--wine-text)}.side-choice{border:0;margin:8px 0 0;padding:0}.side-choice label{cursor:pointer;margin-right:16px}.tabs{background:var(--cream);border-radius:var(--radius);gap:4px;margin:16px 0 12px;padding:4px;display:flex}.tab{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:8px;font-weight:700}.tab[aria-selected=true]{background:var(--surface);color:var(--wine-text);box-shadow:0 1px 2px #1e14161f}.hint{color:var(--ink-soft);margin:0 0 4px}.line{border-radius:var(--radius);background:var(--cream);flex-wrap:wrap;gap:4px;min-height:36px;padding:8px;display:flex}.line .move{font:inherit;cursor:pointer;color:var(--ink);background:0 0;border:0;border-radius:6px;padding:2px 6px}.line .move.mine{color:var(--wine-text);font-weight:700}.line .move.theirs{color:var(--theirs)}.line .move:hover{background:var(--surface)}.line .move.current.mine{background:var(--wine);color:#fff}.line .move.current.theirs{background:var(--theirs);color:var(--on-theirs)}.line .empty{color:var(--muted);padding:2px 6px}.children{flex-wrap:wrap;gap:8px;display:flex}.child{min-height:44px;font:inherit;border-radius:var(--radius);background:var(--surface);cursor:pointer;align-items:center;gap:8px;padding:8px 14px;font-weight:700;display:inline-flex}.child.mine{border:1.5px solid var(--wine);color:var(--wine-text)}.child.theirs{border:1.5px solid var(--theirs-border);color:var(--theirs)}.child:hover{background:var(--cream)}.child .count{color:var(--muted);font-size:.8rem;font-weight:400}.status{border-radius:var(--radius);background:var(--cream);min-height:48px;margin:0 0 8px;padding:12px 14px;font-weight:700}.status.ok{background:var(--ok-bg);color:var(--ok)}.status.warn{background:var(--warn-bg);color:var(--warn)}.tree-settings{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}.tree-settings summary{cursor:pointer;color:var(--ink-soft);font-weight:700}.tree-settings .btn-danger{margin-top:12px}.footer{text-align:center;padding:16px 20px 28px;font-size:.8rem}.line,.children,.status,.toast,.move,.child{font-variant-emoji:text;font-family:Atkinson Hyperlegible Next,Segoe UI Symbol,Apple Symbols,"Noto Sans Symbols 2",DejaVu Sans,system-ui,sans-serif}.label-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.saved{color:var(--ok);opacity:0;font-size:.85rem;transition:opacity .3s}.saved.show{opacity:1}.toast{z-index:20;background:var(--toast-bg);max-width:calc(100% - 24px);color:var(--toast-fg);border-radius:12px;align-items:center;gap:16px;padding:12px 16px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #1e141640}.toast-undo{font:inherit;background:var(--surface);min-height:40px;color:var(--wine-text);cursor:pointer;border:0;border-radius:8px;padding:6px 12px;font-weight:700}.mobile-bar{display:none}@media (width<=820px){body.has-tree{padding-bottom:84px}body.has-tree .mobile-bar{z-index:10;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--bar-bg);border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-bar .btn{min-height:52px;font-size:1rem}.toast{bottom:96px}.layout{padding-top:8px}.board-area{max-width:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.fig{vertical-align:-.32em;width:1.35em;height:1.35em;margin:0 1px 0 0}.line .move.current .fig,.child .fig{filter:drop-shadow(0 0 .5px #1e141659)}.opening{min-height:1.6em;color:var(--ink);margin:0 0 10px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:1.05rem;font-weight:700}.opening-label{color:var(--muted);margin-right:4px;font-family:Atkinson Hyperlegible Next,system-ui,sans-serif;font-size:.85rem;font-weight:400}.badge{white-space:nowrap;border-radius:6px;padding:2px 7px;font-size:.75rem;font-weight:700}.badge.new{background:var(--badge-new-bg);color:var(--badge-new)}.badge.learning{background:var(--warn-bg);color:var(--warn)}.badge.mastered{background:var(--ok-bg);color:var(--ok)}.tree-map{border-radius:var(--radius);background:var(--cream);scrollbar-width:thin;align-items:flex-start;gap:6px;padding:8px;display:flex;overflow-x:auto}.map-col{flex-direction:column;flex:none;gap:4px;display:flex}.map-node{background:var(--surface);min-height:36px;font:inherit;cursor:pointer;white-space:nowrap;font-variant-emoji:text;border:1px solid #0000;border-radius:8px;align-items:center;gap:4px;padding:4px 8px;font-size:.9rem;display:inline-flex}.map-node.mine{color:var(--wine-text)}.map-node.theirs{color:var(--theirs)}.map-node:hover{border-color:var(--line)}.map-node.on-path.mine{background:var(--wine);color:#fff}.map-node.on-path.theirs{background:var(--theirs);color:var(--on-theirs)}.map-node[aria-current=step]{outline-offset:1px;outline:2px solid #f2c14e}.dot{border-radius:50%;flex:none;width:8px;height:8px}.dot.new{border:1.5px solid #9c8e8f}.dot.learning{background:#e3a13b}.dot.mastered{background:#3e8a4b}.map-node.on-path .dot.new{border-color:#fff}.topbar{justify-content:space-between}.settings-btn{min-height:40px}.settings{flex-wrap:wrap;gap:8px 32px;max-width:1120px;margin:12px auto 0;display:flex}.settings fieldset{border:0;margin:0;padding:0}.settings label{cursor:pointer;padding:4px 0;display:block}@media (width<=820px){.settings{margin:8px 12px 0}}.move-form{margin-top:12px}.move-form input{font-family:inherit}.move-error{min-height:1.4em;color:var(--warn);margin:4px 0 0;font-size:.9rem}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.small{font-size:.85rem}.game-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin:8px 0;padding:12px 14px}.game-card .row{margin-top:6px}.game-head{margin:0 0 4px;font-weight:700}.game-line{margin:0;line-height:1.7}.game-line .count{color:var(--muted);font-size:.85rem}.line-move{white-space:nowrap}.result{border-radius:6px;margin-right:4px;padding:1px 8px;font-size:.8rem;display:inline-block}.result.win{background:var(--ok-bg);color:var(--ok)}.result.loss{background:var(--warn-bg);color:var(--warn)}.result.draw{background:var(--badge-new-bg);color:var(--badge-new)}.link-btn{align-items:center;text-decoration:none;display:inline-flex}.engine-box{margin:0 0 8px}.evalbar{border:1px solid var(--line);background:#2b2b2b;border-radius:6px;height:10px;overflow:hidden}.evalbar-fill{background:#f4f1ec;width:50%;height:100%;transition:width .4s}.engine-head{align-items:baseline;gap:8px;margin:4px 0 0;display:flex}.engine-eval{font-variant-numeric:tabular-nums;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:1.15rem;font-weight:700}.engine-lines{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.engine-lines li{border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);grid-template-columns:4.2em minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;font-size:.92rem;display:grid}.engine-line-eval{font-variant-numeric:tabular-nums;font-weight:700}.engine-line-moves{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.engine-add{min-height:36px;padding:4px 10px;font-size:.85rem}.chip-eval{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:400}.cm-chessboard .arrow-engine .arrow-head{fill:#2f7fb8}.cm-chessboard .arrow-engine .arrow-line{stroke:#2f7fb8;stroke-linecap:round;opacity:.55}.check{margin-top:16px}.flag{border-radius:6px;padding:1px 6px;font-size:.75rem;font-weight:700}.flag-inaccuracy{color:#6b5300;background:#fff3c4}.flag-mistake{background:var(--warn-bg);color:var(--warn)}.flag-blunder{color:#7a1424;background:#f9d9dd}@media (prefers-reduced-motion:reduce){.evalbar-fill{transition:none}}.board-head{justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px;display:flex}.board-head .opening{margin:0}.engine-toggle{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:8px;padding:6px 14px;font-size:.9rem;font-weight:700;display:inline-flex}.engine-toggle-dot{background:#9c8e8f;border-radius:50%;width:10px;height:10px}.engine-toggle[aria-pressed=true]{border-color:#2f7fb8}.engine-toggle[aria-pressed=true] .engine-toggle-dot{background:#2f9e57;box-shadow:0 0 0 3px #2f9e5740}.topbar{flex-wrap:wrap;gap:12px}.sections{background:var(--paper);border:1px solid var(--line);border-radius:999px;gap:4px;margin-left:auto;padding:3px;display:flex}.section-btn{font:inherit;min-height:38px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:700}.section-btn[aria-current=page]{background:var(--wine);color:#fff}body.in-puzzles .mobile-bar{display:none!important}body.in-puzzles{padding-bottom:0!important}.sv-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0;display:grid}.sv-stats>div{background:var(--cream);border-radius:var(--radius);flex-direction:column;padding:8px 10px;display:flex}.sv-stats strong{font-variant-numeric:tabular-nums;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:1.35rem}#sv-lives{color:var(--red);letter-spacing:2px;font-variant-emoji:text}@media (width<=820px){.sections{order:3;justify-content:center;width:100%;margin-left:0}}body.in-puzzles .opening-label{display:none}.welcome h2{font-size:1.5rem}.welcome-steps{padding-left:1.2em;line-height:1.7}.link-btn{font:inherit;color:var(--wine-text);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.mode-help{margin:0 0 12px;font-size:.92rem}.onboarding{border:1px dashed var(--line);border-radius:var(--radius);margin:0 0 12px;padding:10px 12px}.onboarding-head{justify-content:space-between;align-items:baseline;display:flex}.onboarding-steps{gap:4px;margin:6px 0 0;padding:0;font-size:.92rem;list-style:none;display:grid}.onboarding-steps li{align-items:baseline;gap:8px;display:flex}.onboarding-steps li.done{color:var(--muted)}.step-mark{text-align:center;width:1.2em;color:var(--ok)}.map-details,.type-move{margin-top:12px}.map-details summary,.type-move summary{cursor:pointer;color:var(--ink-soft);font-weight:700}.engine-lines li:nth-child(n+2){display:none}.engine-lines.show-all li{display:grid}.engine-more{margin-top:6px;font-size:.9rem}.account{align-items:center;gap:8px;display:flex}.account-name{text-overflow:ellipsis;white-space:nowrap;max-width:12em;font-weight:700;overflow:hidden}.account-btn{align-items:center;min-height:40px;text-decoration:none;display:inline-flex}.google-btn{background:var(--surface)}@media (width<=820px){.account-name{display:none}}body.in-home .layout{grid-template-columns:minmax(0,1fr);max-width:980px}body.in-home .board-area,body.in-home .mobile-bar{display:none!important}body.in-home{padding-bottom:0!important}.home{flex-direction:column;gap:20px;display:flex}.home-continue{border:2px solid var(--wine-text);background:var(--surface);border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.home-kicker{margin:0;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:1.15rem;font-weight:700}.home-continue-text{color:var(--ink-soft);margin:2px 0 0}.home-continue .btn{flex-shrink:0;min-width:120px}.home-grid{grid-template-rows:1fr 1fr;grid-template-columns:2fr 1fr;gap:20px;display:grid}.home-card{border:1px solid var(--line);background:var(--surface);min-height:210px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:16px;padding:20px;transition:border-color .15s,transform .15s;display:block;position:relative;overflow:hidden}.home-card:hover{border-color:var(--wine-text);transform:translateY(-2px)}.home-card:focus-visible{outline:3px solid var(--wine-text);outline-offset:2px}.home-card-big{grid-row:span 2;min-height:440px}.home-card img{pointer-events:none;width:75%;height:auto;position:absolute;bottom:0;right:0}.home-card-big img{width:100%}.home-card-text{z-index:1;flex-direction:column;gap:4px;max-width:70%;display:flex;position:relative}.home-card-big .home-card-text{max-width:45%}.home-card-title{font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:1.3rem;font-weight:700}.home-card-big .home-card-title{font-size:1.75rem}.home-card-desc{color:var(--ink-soft)}.home-meta{color:var(--wine-text);margin-top:6px;font-size:.95rem;font-weight:700}@media (width<=820px){.home-continue{flex-direction:column;align-items:stretch}.home-grid{grid-template-rows:none;grid-template-columns:minmax(0,1fr)}.home-card,.home-card-big{grid-row:auto;min-height:220px}.home-card-big{min-height:260px}.home-card-big .home-card-title{font-size:1.4rem}.home-card img,.home-card-big img{width:62%}.home-card-text,.home-card-big .home-card-text{max-width:62%}}@media (prefers-reduced-motion:reduce){.home-card{transition:none}.home-card:hover{transform:none}}
