@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.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+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-vietnamese-opsz-normal-BjhtXyW2.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-ext-opsz-normal-BQn1nviT.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-opsz-normal-s-izfB6B.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+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-vietnamese-opsz-italic-DTr-ymY4.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-ext-opsz-italic-CSPGnFdO.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/newsreader-latin-opsz-italic-kJKFiXvB.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+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#f8f4ec;--rail-bg:#fbf8f2;--surface:#faf7f0;--raised:#fdfbf7;--bubble:#f6f2e9;--stripe:#f3efe7;--hover:#eee9df;--current:#e8e2d5;--line:#e8e2d7;--line-2:#dcd5c8;--ink:#16181b;--ink-2:#3b3d40;--muted:#6c6963;--faint:#a39e94;--green:#1d1b18;--green-2:#1d1b18;--green-3:#5d9136;--green-tint:#ebe5d8;--accent-top:#3a3631;--on-accent:#f8f4ec;--focus:#1d1b186b;--live:#7fb350;--brass:#ac945c;--brass-ink:#8c7442;--track:#e6e1d7;--red:#c7473a;--red-tint:#f5e3de;--board-light:#eee7d5;--board-dark:#6c8163;--last-light:#e4d294;--last-dark:#c0aa66;--arrow-jev:#d9a441;--arrow-hint:#58a83c;--arrow-threat:#e3503e;--arrow-user:#fa0;--arrow-user-green:#7fb241;--arrow-user-red:#e8503d;--eval-dark:#2f3030;--eval-light:#f4efe4;--serif:"Newsreader Variable", "Newsreader", "Iowan Old Style", Georgia, serif;--sans:"Geist Variable", "Geist", ui-sans-serif, system-ui, -apple-system, sans-serif;--shadow-surface:0 1px 2px #3a2e1a0a, 0 24px 48px -28px #3a2e1a3d;--shadow-board:0 1px 2px #22201429, 0 30px 54px -26px #2c261475;--ease:cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-appearance=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#191816;--rail-bg:#1d1c1a;--surface:#222120;--raised:#2a2826;--bubble:#292725;--stripe:#272523;--hover:#33302d;--current:#3b3834;--line:#353230;--line-2:#4a4641;--ink:#f2efe8;--ink-2:#d9d5cc;--muted:#aca69c;--faint:#8e887e;--green:#ede7da;--green-2:#ede7da;--green-3:#93c25d;--green-tint:#36322e;--accent-top:#fffaf0;--on-accent:#1b1a18;--focus:#ede7da80;--brass:#c4ab78;--brass-ink:#d0b985;--track:#3a423a;--red:#e17e70;--red-tint:#472e2b;--shadow-surface:0 18px 45px -24px #0009;--shadow-board:0 24px 48px -24px #000c}*{box-sizing:border-box}html,body,#root{height:100%}body{color:var(--ink);background-color:var(--paper);font:400 14.5px/1.45 var(--sans);font-optical-sizing:auto;font-feature-settings:"ss01", "cv11";letter-spacing:-.003em;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .27 0 0 0 0 .18 0 0 0 .045 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");margin:0;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}img{display:block}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.shell{--u:clamp(.76px, calc(100dvh / 1024), 1.08px);--rail-w:clamp(80px, min(calc(128 * var(--u)), 7.8vw), 136px);grid-template-columns:var(--rail-w) minmax(0, 1fr);height:100dvh;display:grid}.rail{min-height:0;padding:calc(22 * var(--u)) 0 calc(20 * var(--u));background:var(--rail-bg);border-right:1px solid var(--line);flex-direction:column;align-items:center;display:flex}.brand{align-items:center;gap:calc(7 * var(--u));color:var(--ink);flex-direction:column;text-decoration:none;display:flex}.brand-mark{width:calc(58 * var(--u));height:calc(58 * var(--u))}.brand-mark .mark-fill{fill:#fdfcf8}.brand-mark .mark-ink{fill:#151412}.brand-mark .mark-ink-stroke{stroke:#151412}:root[data-appearance=dark] .brand-mark .mark-fill{fill:#f2efe8}:root[data-appearance=dark] .brand-mark .mark-ink{fill:#0f0e0d}:root[data-appearance=dark] .brand-mark .mark-ink-stroke{stroke:#0f0e0d}.brand-name{font:600 calc(17 * var(--u)) / .95 var(--sans);letter-spacing:-.025em;justify-items:center;display:grid}.brand-name small{margin-top:calc(3 * var(--u));font:600 calc(11 * var(--u)) / 1 var(--sans);letter-spacing:.13em;text-transform:uppercase}.rail-items{gap:calc(8 * var(--u));width:100%;margin-top:calc(48 * var(--u));flex-direction:column;display:flex}.rail-item{align-items:center;gap:calc(7 * var(--u));width:100%;padding:calc(13 * var(--u)) 4px;color:var(--ink-2);font:500 calc(12.5 * var(--u)) / 1.2 var(--sans);letter-spacing:.005em;text-align:center;background:0 0;border:0;flex-direction:column;transition:color .15s;display:flex;position:relative}.rail-item svg{width:calc(26 * var(--u));height:calc(26 * var(--u))}.rail-item:hover{color:var(--ink)}.rail-item.active svg{color:var(--green-2)}.rail-item.active{color:var(--ink)}.rail-item.active:before{content:"";background:var(--green-2);border-radius:0 3px 3px 0;width:3px;position:absolute;top:16%;bottom:16%;left:0}.rail-appearance,.rail-account{margin-top:auto}.rail-account+.rail-appearance{margin-top:0}.rail-account img{width:calc(32 * var(--u));height:calc(32 * var(--u));border:1px solid var(--line-2);object-fit:cover;border-radius:50%}.rail-quota{top:calc(7 * var(--u));right:calc(21 * var(--u));border:2px solid var(--rail-bg);background:var(--green-2);min-width:18px;height:18px;color:var(--on-accent);font:700 10px/1 var(--sans);border-radius:999px;place-items:center;padding:0 5px;display:grid;position:absolute}.account-gate{background:radial-gradient(circle at 50% 10%, color-mix(in srgb, var(--green-2) 10%, transparent), transparent 35%), var(--paper);min-height:100dvh;color:var(--ink);place-items:center;padding:24px;display:grid}.account-card{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent);text-align:center;border-radius:24px;width:min(500px,100%);padding:46px 46px 40px;box-shadow:0 34px 90px -44px #19161180}.account-brand{width:76px;height:76px;margin-bottom:24px}.account-card .eyebrow{color:var(--green-2);font:700 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px}.account-card h1{font:500 clamp(34px, 6vw, 48px)/1.04 var(--serif);letter-spacing:-.03em;margin:0}.account-card>p:not(.eyebrow){color:var(--ink-2);font:16px/1.55 var(--sans);margin:18px auto 26px}.account-google{justify-content:center;align-items:center;gap:12px;width:100%;text-decoration:none;display:flex}.google-g{color:#2b6be8;background:#fff;border-radius:50%;place-items:center;width:24px;height:24px;font:700 14px/1 Arial,sans-serif;display:grid}.account-card>small{color:var(--muted);font:12.5px/1.5 var(--sans);margin-top:20px;display:block}.account-error{border:1px solid color-mix(in srgb, var(--red) 35%, var(--line));background:color-mix(in srgb, var(--red) 7%, var(--raised));color:var(--ink-2);font:13.5px/1.45 var(--sans);border-radius:10px;margin-top:22px;padding:12px 14px}.account-loading{border:2px solid var(--line-2);border-top-color:var(--green-2);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}.account-profile{border-bottom:1px solid var(--line);grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 0 18px;display:grid}.account-profile>img,.account-profile>span{background:var(--green);width:52px;height:52px;color:var(--on-accent);object-fit:cover;font:600 21px/1 var(--sans);border-radius:50%;place-items:center;display:grid}.account-profile b,.account-profile small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.account-profile b{font:600 16px/1.3 var(--sans)}.account-profile small{color:var(--muted);font:12.5px/1.3 var(--sans);margin-top:3px}.account-profile em{background:var(--green-tint);color:var(--green-2);font:700 10px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 8px}.quota-card{border:1px solid var(--line);background:var(--raised);border-radius:13px;margin:18px 0;padding:17px 18px}.quota-card>span,.quota-card>strong,.quota-card>small{display:block}.quota-card>span{color:var(--muted);font:600 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase}.quota-card>strong{font:600 18px/1.25 var(--sans);margin-top:7px}.quota-track{background:var(--track);border-radius:5px;height:5px;margin:14px 0 10px;overflow:hidden}.quota-track i{border-radius:inherit;background:var(--green-2);height:100%;display:block}.quota-card>small{color:var(--muted);font:12px/1.4 var(--sans)}.account-privacy{color:var(--ink-2);font:13px/1.5 var(--sans);margin:0 0 16px}.billing-card{border:1px solid color-mix(in srgb, var(--brass) 48%, var(--line));background:color-mix(in srgb, var(--brass) 8%, var(--raised));border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;margin:0 0 18px;padding:17px 18px;display:grid}.billing-card span,.billing-card strong,.billing-card small{display:block}.billing-card span{color:var(--brass-ink);font:700 10.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase}.billing-card strong{font:600 18px/1.2 var(--sans);margin-top:7px}.billing-card small{color:var(--muted);font:12px/1.4 var(--sans);margin-top:5px}.billing-card button{min-width:158px}.quota-inline,.form-error{text-align:center;width:100%;font:12.5px/1.35 var(--sans);margin:0 0 5px}.quota-inline{color:var(--muted)}.quota-inline.is-empty,.form-error{color:var(--red)}@media (width<=560px){.account-card{padding:34px 24px 30px}.billing-card{grid-template-columns:1fr}.billing-card button{width:100%}}:root[data-appearance=dark] .dialog,:root[data-appearance=dark] .review-dialog,:root[data-appearance=dark] .review-actions{background:var(--surface);border-color:var(--line)}:root[data-appearance=dark] .scrim{background:#080c0ab8}:root[data-appearance=dark] .game-over{background:#080c0a55}:root[data-appearance=dark] .board-loading{background:var(--raised)}:root[data-appearance=dark] .opponent.is-on{background:var(--green-tint)}:root[data-appearance=dark] .is-on>.radio{border-color:var(--green-2)}:root[data-appearance=dark] .is-on>.radio:after{background:var(--green-2)}:root[data-appearance=dark] .color-choice.is-on{border-color:var(--green-2)}:root[data-appearance=dark] .graph-detail{background:var(--bubble)}:root[data-appearance=dark] .graph-detail button{background:var(--raised);color:var(--green-2);border-color:var(--line-2)}:root[data-appearance=dark] .graph-detail button:hover{background:var(--hover)}:root[data-appearance=dark] .send,:root[data-appearance=dark] .view-pill{background:var(--green);color:var(--on-accent)}:root[data-appearance=dark] .switch:not(.is-on){background:var(--line-2)}:root[data-appearance=dark] .shimmer{background:linear-gradient(90deg, var(--stripe), var(--hover), var(--stripe)) 0 0 / 200% 100%}:root[data-appearance=dark] :focus-visible{outline-color:var(--green-2)}:root[data-appearance=dark] .leon-links button{-webkit-text-decoration-color:var(--green-2);text-decoration-color:var(--green-2)}:root[data-appearance=dark] .fig-icon[src*=\/b],:root[data-appearance=dark] .captured-group img[src*=\/b]{filter:drop-shadow(0 0 .7px #f1eee5)}.stage{--pad-x:calc(28 * var(--u));--pad-y:calc(18 * var(--u));--gap:calc(30 * var(--u));--bar-h:calc(76 * var(--u));--bar-gap:calc(10 * var(--u));--eval-w:calc(24 * var(--u));--eval-gap:calc(12 * var(--u));--side-w:clamp(300px, calc(33vw - 40px), calc(520 * var(--u)));--avail-h:calc(100dvh - 2 * var(--pad-y) - 2 * var(--bar-h) - 2 * var(--bar-gap));--avail-w:calc(100vw - var(--rail-w) - var(--side-w) - var(--gap) - var(--eval-w) - var(--eval-gap) - 2 * var(--pad-x));--board:min(var(--avail-h), var(--avail-w));justify-content:center;align-items:center;gap:var(--gap);min-width:0;min-height:0;padding:var(--pad-y) var(--pad-x);display:flex}@supports (width:round(down, 10px, 8px)){.stage{--board:round(down, min(var(--avail-h), var(--avail-w)), 8px)}}.board-col{grid-template-rows:var(--bar-h) var(--board) var(--bar-h);row-gap:var(--bar-gap);width:calc(var(--board) + var(--eval-w) + var(--eval-gap));flex:none;display:grid}.board-row{gap:var(--eval-gap);display:flex}.player-bar{align-items:center;gap:calc(14 * var(--u));min-width:0;padding-left:calc(var(--eval-w) + var(--eval-gap));display:flex}.player-meta{justify-content:center;gap:calc(5 * var(--u));flex-direction:column;min-width:0;display:flex}.player-name{font:600 calc(17 * var(--u)) / 1.15 var(--sans);letter-spacing:-.01em;white-space:nowrap;align-items:baseline;gap:.4em;display:flex}.player-rating{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:400}.captured{align-items:center;gap:calc(6 * var(--u));height:calc(22 * var(--u));display:flex}.captured-group{display:flex}.captured-group img{width:calc(22 * var(--u));height:calc(22 * var(--u));opacity:.92}.captured-group img+img{margin-left:calc(-11 * var(--u))}.captured-lead{margin-left:calc(2 * var(--u));font:500 calc(14 * var(--u)) / 1 var(--sans);color:var(--muted)}.player-thinking{font:500 calc(13 * var(--u)) / 1 var(--sans);color:var(--muted);letter-spacing:.01em;align-items:center;gap:2px;margin-left:auto;display:inline-flex}.player-thinking i{background:currentColor;border-radius:50%;width:3px;height:3px;animation:1.2s ease-in-out infinite dot}.player-thinking i:first-of-type{margin-left:3px}.player-thinking i:nth-of-type(2){animation-delay:.15s}.player-thinking i:nth-of-type(3){animation-delay:.3s}.avatar{width:var(--bar-h);height:var(--bar-h);border-radius:calc(8 * var(--u));flex:none;place-items:center;display:grid;overflow:hidden}.avatar-jev{color:#b19e6d;background:linear-gradient(160deg,#323a3d,#22282a);box-shadow:inset 0 0 0 1px #ffffff0d}.avatar-stockfish{color:#f4efe3;background:linear-gradient(160deg,#7b9072,#62775a)}.avatar-jev span,.avatar-stockfish span{font:500 calc(var(--bar-h) * .56) / 1 var(--sans);transform:translateY(-2%)}.avatar-you{color:#4a4946;background:#d8d3c9}.avatar-you svg{fill:currentColor;width:74%;height:74%}.avatar-dark{color:#e9e4d8;background:#3a3c3e}.avatar-libre{background:var(--raised);border:1px solid var(--line-2);color:var(--ink)}.avatar-image{background:var(--raised);position:relative;overflow:hidden}.avatar-image img{object-fit:cover;width:100%;height:100%}.avatar-player{border-radius:calc(8 * var(--u))}.avatar-stockfish{background:radial-gradient(circle at 32% 25%,#536a5b,#17251e 72%)}.avatar-stockfish img{object-fit:contain;transform:scale(1.04)}.avatar-player{background:linear-gradient(155deg,#d9d4c8,#aaa69c)}.avatar-decision{color:#fff;box-shadow:inset 0 0 0 1px var(--line-2)}.avatar-decision img{object-fit:contain;width:68%;height:68%}.avatar-decision strong{font:800 calc(var(--bar-h) * .56)/1 var(--sans);letter-spacing:-.08em;transform:translateY(-3%)}.avatar-laya{background:#f7f9fc}.avatar-laya img{width:78%;height:78%}.avatar-nimble{background:#dce9e7}.avatar-nimble img{width:58%;height:66%}.avatar-decider{color:#f4f4f2;background:#191a1c}.eval-bar{width:var(--eval-w);height:var(--board);background:var(--eval-dark);border-radius:999px;flex:none;position:relative;overflow:hidden;box-shadow:0 0 0 1px #d4cfc5}.eval-fill{background:var(--eval-light);transition:height .7s var(--ease);position:absolute;bottom:0;left:0;right:0}.eval-flipped{background:var(--eval-light)}.eval-flipped .eval-fill{background:var(--eval-dark)}.eval-label{text-align:center;font:600 calc(10.5 * var(--u)) / 1 var(--sans);letter-spacing:-.03em;position:absolute;left:0;right:0}.eval-at-bottom{bottom:calc(8 * var(--u));color:var(--eval-dark)}.eval-at-top{top:calc(8 * var(--u));color:var(--eval-light)}.eval-flipped .eval-at-bottom{color:var(--eval-light)}.eval-flipped .eval-at-top{color:var(--eval-dark)}.board-frame{width:var(--board);height:var(--board);border-radius:calc(5 * var(--u));box-shadow:var(--shadow-board);position:relative}.board{border-radius:inherit;-webkit-user-select:none;user-select:none;touch-action:none;width:100%;height:100%;position:relative}.board[data-theme=noyer]{--board-light:#ecdcc0;--board-dark:#a47b56;--last-light:#f0d98f;--last-dark:#c79f58}.board[data-theme=ardoise]{--board-light:#e6e8e6;--board-dark:#6f8190;--last-light:#e6dc9f;--last-dark:#a7a36f}.board[data-theme=club]{--board-light:#eeeed5;--board-dark:#779859;--last-light:#f2f184;--last-dark:#bbc94c}.board[data-theme=club] .coord{font-family:var(--sans);font-weight:700}.board-squares{border-radius:inherit;grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);display:grid;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 0 1px #242c1c38}.sq{appearance:none;border:0;width:100%;height:100%;padding:0;position:relative}.sq.light{background:var(--board-light)}.sq.dark{background:var(--board-dark)}.sq.light.last,.sq.light.sel{background:var(--last-light)}.sq.dark.last,.sq.dark.sel{background:var(--last-dark)}.sq.hover:after{content:"";box-shadow:inset 0 0 0 calc(var(--board) * .006) #ffffffbf;position:absolute;inset:0}.sq.check{background-image:radial-gradient(circle at 50% 52%,#d43a2af2 0%,#d43a2a99 32%,#d43a2a00 72%)}.coord{z-index:1;font:500 calc(var(--board) * .024) / 1 var(--sans);pointer-events:none;position:absolute}.coord.rank{top:5%;left:6%}.coord.file{bottom:5%;right:6%}.sq.light .coord{color:var(--board-dark)}.sq.dark .coord{color:var(--board-light)}.target:after{content:"";background:#16181429;border-radius:50%;width:30%;height:30%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.target.capture:after{width:100%;height:100%;box-shadow:inset 0 0 0 calc(var(--board) * .009) #16181429;background:0 0}.board-pieces{pointer-events:none;position:absolute;inset:0}.piece{will-change:transform;z-index:2;width:12.5%;height:12.5%;position:absolute;top:0;left:0}.piece.arrow-origin{z-index:4}.piece.dragging{z-index:5;filter:drop-shadow(0 10px 10px #1410084d);transition:none}.board.is-dragging{cursor:grabbing}.board-arrows{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;inset:0}.board-arrows .arrow{opacity:var(--o);transition:opacity .25s}.board-badges{z-index:5;pointer-events:none;--b:calc(var(--board) * .05);position:absolute;inset:0}.board-badge{width:var(--b);height:var(--b);left:min(calc((var(--bx) + 1) * 12.5% - var(--b) * .88), calc(100% - var(--b) * .94));top:max(calc(var(--by) * 12.5% - var(--b) * .12), calc(var(--b) * -.06));animation:.34s cubic-bezier(.3,1.6,.5,1) badge-pop;position:absolute}@keyframes badge-pop{0%{opacity:0;transform:scale(.4)}}.promo{z-index:8;background:var(--raised);width:12.5%;box-shadow:0 16px 34px -12px #1e180c80, 0 0 0 1px var(--line);border-radius:8px;flex-direction:column;display:flex;position:absolute;overflow:hidden}.promo button{aspect-ratio:1;background:0 0;border:0;padding:6%}.promo button:hover{background:var(--current)}.promo img{width:100%;height:100%}.view-pill{background:var(--ink);color:#f6f2e8;font:500 12.5px / 1 var(--sans);white-space:nowrap;animation:rise .2s var(--ease);border:0;border-radius:999px;align-items:center;gap:8px;margin-left:auto;padding:8px 12px 8px 15px;display:inline-flex;box-shadow:0 10px 22px -14px #000000b3}.view-pill-sep{background:#ffffff47;width:1px;height:12px}.view-pill:hover{background:#000}.board-loading{z-index:6;color:var(--muted);font:500 13px / 1 var(--sans);background:#faf7f0eb;border-radius:999px;padding:10px 16px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 24px -14px #0006}.game-over{z-index:9;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);background:#f8f4ec47;place-items:center;animation:.25s ease-out fade;display:grid;position:absolute;inset:0}.game-over-card{border:1px solid var(--line);background:var(--surface);text-align:center;width:min(76%,330px);animation:rise .3s var(--ease);border-radius:16px;padding:30px 28px 18px;position:relative;box-shadow:0 30px 60px -28px #281e0a8c}.game-over-close{position:absolute;top:8px;right:8px}.game-over-score{font:600 12px / 1 var(--sans);letter-spacing:.18em;color:var(--brass-ink);margin:0}.game-over-card h2{font:500 32px / 1.05 var(--sans);letter-spacing:-.015em;margin:10px 0 6px}.game-over-card.tone-won h2{color:var(--green)}.game-over-detail{color:var(--muted);margin:0 0 20px;font-size:16px}.game-over-card .btn-primary{width:100%}.game-over-card .btn-quiet{margin-top:6px}.review-scrim{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#23201b8f}.review-dialog{width:min(680px,100vw - 32px);max-height:calc(100dvh - 32px);animation:review-in .28s var(--ease);background:#fbf8f2;border:1px solid #ffffff61;border-radius:16px;padding:34px 38px 28px;position:relative;overflow:auto;box-shadow:0 32px 90px -30px #120f0a9e}.review-close{position:absolute;top:12px;right:12px}.review-result,.review-method{text-align:center;color:var(--muted);font:12px/1.5 var(--sans);margin:10px 0}.review-breakdown{border-block:1px solid var(--line);margin:18px 0;padding:10px 0}.review-quality-row{min-height:32px;font:13px/1.3 var(--sans);grid-template-columns:1fr 190px 1fr;align-items:center;display:grid}.review-quality-row>strong{text-align:center;font-variant-numeric:tabular-nums}.review-quality-row>span{align-items:center;gap:12px;display:flex}.review-graph{color:var(--ink);margin:24px 0 30px}.dialog.library-dialog{width:min(760px,100vw - 32px)}.library-dialog p,.study-dialog p{color:var(--muted);font:14px/1.6 var(--sans)}.library-dialog textarea{resize:vertical;border:1px solid var(--line);background:var(--paper,#fbf8f2);width:100%;min-height:100px;color:var(--ink);font:13px/1.5 var(--sans);border-radius:10px;padding:14px}.atelier-actions{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.library-list article{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:16px 0;display:flex}.library-list article>div{flex:1;min-width:180px}.library-list small{color:var(--muted);margin-top:6px;display:block}.dialog.study-dialog{width:min(1080px,100vw - 32px)}.study-layout{grid-template-columns:minmax(0,1.3fr) minmax(240px,1fr);gap:24px;display:grid}.study-board{aspect-ratio:1;--board:500px;border-radius:8px;width:100%;overflow:hidden}.study-safe{margin-top:0}.study-moves{flex-wrap:wrap;gap:2px;max-height:180px;display:flex;overflow:auto}@media (width<=700px){.study-layout{grid-template-columns:1fr}}.review-graph figcaption{font:12px/1.5 var(--sans);justify-content:space-between;margin-bottom:8px;display:flex}.review-graph figcaption span{color:var(--muted)}.review-graph svg{border-radius:8px;width:100%;height:auto;display:block;overflow:hidden}.graph-axis{color:var(--muted);font:10px/1.4 var(--sans);font-variant-numeric:tabular-nums;justify-content:space-between;padding-top:7px;display:flex}.review-graph svg text{font:10px var(--sans);fill:var(--muted)}.graph-move{cursor:pointer;outline:none}.graph-dot{fill:var(--q,#a49b8b);stroke:#faf8f1;stroke-width:.6px}.graph-move:focus .graph-dot,.graph-move:hover .graph-dot{stroke:var(--ink);stroke-width:2px}.graph-detail{min-height:74px;font:12px/1.5 var(--sans);background:#f1eee6;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin:14px 0;padding:14px 16px;display:flex}.graph-detail>div{gap:4px;display:grid}.graph-detail span{color:var(--muted)}.graph-detail button{appearance:none;border:1px solid var(--line-2);background:var(--raised);color:var(--ink);font:500 12px/1.3 var(--sans);cursor:pointer;white-space:nowrap;border-radius:7px;align-items:center;gap:12px;padding:9px 13px;display:inline-flex}.graph-detail button:hover{background:var(--hover);border-color:var(--faint)}.graph-detail button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.graph-method{color:var(--muted);font:11px/1.6 var(--sans);margin-top:12px}.graph-method summary{cursor:pointer;width:fit-content}.graph-method p{max-width:58ch;margin:8px 0 0}.graph-legend{font:11px var(--sans);flex-wrap:wrap;gap:8px 14px;display:flex}.graph-legend span{background:0 0;align-items:center;gap:5px;display:flex}.review-graph .q-best,.review-graph .q-excellent{--q:#7fb350}.review-graph .q-good{--q:#93ab89}.review-graph .q-book{--q:#a58a68}.review-graph .q-brilliant{--q:#2bbfa6}.review-graph .q-inaccuracy{--q:#f4c43a}.review-graph .q-mistake{--q:#fca35e}.review-graph .q-blunder{--q:#f24534}.graph-legend i{background:var(--q,#a49b8b);border-radius:50%;width:8px;height:8px}.review-phases table{border-collapse:collapse;width:100%;font:12px/1.5 var(--sans)}.review-phases th,.review-phases td{border-bottom:1px solid var(--line);text-align:center;padding:12px 5px}.review-phases th:first-child{text-align:left}.review-phases small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.review-moment small{color:var(--muted);font:11px/1.4 var(--sans);grid-column:2/-1;padding-bottom:10px}@media (width<=540px){.review-dialog{padding:30px 18px 20px}.review-quality-row{grid-template-columns:1fr 160px 1fr}}.review-dialog h2{text-align:center;font:500 36px/1.1 var(--sans);letter-spacing:-.022em;margin:0}.review-scoreline{grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin:24px 0 18px;display:grid}.review-scoreline b{color:var(--brass-ink);font:500 34px/1 var(--sans);white-space:nowrap}.review-scoreline span{font:500 19px/1.2 var(--sans)}.review-scoreline span:first-child{text-align:right}.review-scoreline span:last-child{text-align:left}.review-accuracy{grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin-bottom:22px;display:grid}.review-accuracy>div{justify-content:center;align-items:baseline;gap:4px;display:flex}.review-accuracy strong{font:500 58px/.9 var(--sans);letter-spacing:-.035em}.review-accuracy span{color:var(--muted);font:500 18px/1 var(--sans)}.review-accuracy em{color:var(--muted);font:italic 400 18px/1 var(--sans)}.review-timeline{border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);padding:15px 0 16px}.timeline-row{grid-template-columns:118px 1fr;align-items:center;gap:12px;min-height:34px;display:grid}.timeline-row>span{color:var(--ink-2);font:500 15px/1 var(--sans);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.timeline-row ol{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.quality{background:var(--track);border:0;border-radius:5px;width:17px;height:17px;padding:0;transition:transform .12s,filter .12s}.quality:hover{filter:brightness(1.08);transform:translateY(-1px)scale(1.08)}.q-brilliant{background:#2bbfa6}.q-best{background:#7fb350}.q-excellent{background:#94b952}.q-good{background:#93ab89}.q-book{background:#a58a68}.q-inaccuracy{background:#f4c43a}.q-mistake{background:#fca35e}.q-blunder{background:#f24534}.q-pending{background:#ded8cd}.review-moments h3{font:500 27px/1.15 var(--sans);margin:18px 0 6px}.review-moment{border:0;border-bottom:1px solid var(--line);width:100%;min-height:46px;color:var(--ink);text-align:left;background:0 0;grid-template-columns:34px 72px 36px 1fr;align-items:center;gap:12px;padding:0 4px;display:grid}.review-moment:hover{background:var(--hover)}.review-moment>span:not(.cls){color:var(--muted);font-variant-numeric:tabular-nums}.cls,.review-moment>.cls,.mv .cls,.leon-title .cls{color:#fff}.review-moment .fig,.review-moment strong{font:500 18px/1 var(--sans)}.review-empty{color:var(--muted);font-style:italic}.review-actions{background:#fbf8f2;flex-direction:row-reverse;justify-content:flex-start;margin-top:22px;padding:14px 0;position:sticky;bottom:-28px}.review-actions .btn-primary{min-width:180px}@keyframes review-in{0%{opacity:0;transform:translateY(12px)scale(.985)}}.sidebar{width:var(--side-w);height:calc(var(--board) + 2 * var(--bar-h) + 2 * var(--bar-gap));min-height:0;padding:calc(18 * var(--u)) calc(18 * var(--u)) calc(14 * var(--u));border:1px solid var(--line);border-radius:calc(16 * var(--u));background:var(--surface);box-shadow:var(--shadow-surface);flex-direction:column;flex:none;display:flex;position:relative}.coach-head{align-items:center;gap:calc(16 * var(--u));flex:none;display:flex}.portrait{width:calc(94 * var(--u));height:calc(94 * var(--u));flex:none;position:relative}.portrait img{object-fit:cover;border-radius:50%;width:100%;height:100%;box-shadow:0 0 0 1px #0000000f,0 8px 16px -10px #281e0a8c}.portrait:before{content:"";opacity:0;border-radius:50%;transition:opacity .3s;position:absolute;inset:-5px}.portrait.is-listening:before{opacity:1;border:2px solid var(--live);animation:1.8s ease-in-out infinite halo;box-shadow:0 0 0 5px #81b64c33}.portrait.is-speaking:before{opacity:1;border:1.5px solid #ac945cbf;animation:2.2s ease-in-out infinite halo}.coach-id{flex:1;min-width:0}.coach-id h2{font:600 calc(33 * var(--u)) / 1.05 var(--sans);letter-spacing:-.015em;margin:0}.coach-status{margin:calc(6 * var(--u)) 0 0;font-size:calc(13.5 * var(--u));color:var(--muted);white-space:nowrap;letter-spacing:.005em;align-items:center;gap:9px;display:flex}.coach-status>span:first-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.coach-status .sound-bars{flex:none}.sound-bars{height:calc(15 * var(--u));color:var(--green-3);align-items:center;gap:2px;display:inline-flex}.sound-bars i{transform-origin:50%;background:currentColor;border-radius:2px;width:2px;height:100%;animation:.9s ease-in-out infinite bars}.sound-bars i:nth-child(2){animation-delay:-.25s}.sound-bars i:nth-child(3){animation-delay:-.5s}.sound-bars i:nth-child(4){animation-delay:-.15s}.sound-bars i:nth-child(5){animation-delay:-.4s}.round-btn{width:calc(46 * var(--u));height:calc(46 * var(--u));border:1px solid var(--line-2);background:var(--raised);color:var(--ink);border-radius:50%;flex:none;place-items:center;margin-left:auto;transition:background .15s,color .15s;display:grid}.round-btn svg{width:calc(21 * var(--u));height:calc(21 * var(--u))}.round-btn:hover{background:var(--hover)}.round-btn.is-off{color:var(--faint)}.speech{gap:calc(8 * var(--u));margin-top:calc(14 * var(--u));flex-direction:column;flex:none;display:flex}.you-said{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.you-label{font-size:calc(12 * var(--u));letter-spacing:.02em;color:var(--muted);padding-right:4px;font-weight:500}.you-bubble{max-width:90%;padding:calc(9 * var(--u)) calc(14 * var(--u));background:var(--green-tint);font:italic 400 calc(16.5 * var(--u)) / 1.35 var(--sans);-webkit-line-clamp:3;border-radius:14px 14px 4px;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.you-bubble.is-live{min-width:44px}.caret{vertical-align:-.16em;background:var(--green-2);width:1.5px;height:1.05em;margin-left:2px;animation:1s steps(2,end) infinite blink;display:inline-block}.leon-bubble{padding:calc(15 * var(--u)) calc(18 * var(--u)) calc(13 * var(--u));border:1px solid var(--line);border-radius:calc(12 * var(--u));background:var(--bubble);transition:opacity .25s;position:relative}.leon-bubble:before{content:"";top:-7px;left:calc(38 * var(--u));border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--bubble);width:12px;height:12px;position:absolute;transform:rotate(45deg)}.you-said+.leon-bubble:before{display:none}.leon-bubble.is-dim{opacity:.58}.leon-title{align-items:center;gap:calc(12 * var(--u));display:flex}.leon-title h3{font:500 calc(21.5 * var(--u)) / 1.2 var(--sans);letter-spacing:-.008em;margin:0}.leon-sub,.leon-text,.leon-why,.leon-links{margin-left:calc(46 * var(--u))}.leon-bubble:not(:has(.cls)) :is(.leon-sub,.leon-text,.leon-why,.leon-links){margin-left:0}.leon-sub{font-size:calc(14 * var(--u));color:var(--muted);margin-top:3px;margin-bottom:0;font-style:italic}.leon-text{margin-top:calc(6 * var(--u));font-size:calc(16.5 * var(--u));color:var(--ink-2);-webkit-line-clamp:6;-webkit-box-orient:vertical;margin-bottom:0;line-height:1.42;display:-webkit-box;overflow:hidden}.leon-why{margin-top:calc(8 * var(--u));padding-top:calc(8 * var(--u));border-top:1px dashed var(--line-2);font-size:calc(15 * var(--u));color:var(--ink-2);margin-bottom:0}.leon-links{gap:calc(22 * var(--u));margin-top:calc(8 * var(--u));display:flex}.leon-links button{color:var(--green-2);font:500 calc(13.5 * var(--u)) / 1.3 var(--sans);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-decoration-color:color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:4px;background:0 0;border:0;padding:0;text-decoration-thickness:1px}.leon-links button:hover{text-decoration-color:currentColor}.typing{gap:5px;margin:6px 0;display:flex}.typing i{background:var(--faint);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite dot}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}.cls{color:#fff;font:700 12px / 1 var(--sans);letter-spacing:-.04em;border-radius:50%;flex:none;place-items:center;display:inline-grid}.cls svg{display:block}.cls b{font-weight:800}.cls-md{width:calc(34 * var(--u));height:calc(34 * var(--u));font-size:calc(13.5 * var(--u))}.cls-sm{width:17px;height:17px;font-size:9.5px}.cls-board{width:100%;height:100%;font-size:calc(var(--b) * .44);box-shadow:0 2px 5px #00000052,inset 0 -2px #0000001f}.cls-brilliant{background:#2bbfa6}.cls-best{background:#7fb350}.cls-excellent{background:#94b952}.cls-good{background:#93ab89}.cls-book{background:#a58a68}.cls-inaccuracy{background:#f4c43a}.cls-mistake{background:#fca35e}.cls-blunder{background:#f24534}.opening{align-items:center;gap:calc(8 * var(--u));min-width:0;margin-top:calc(14 * var(--u));padding:calc(7 * var(--u)) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:calc(14 * var(--u));white-space:nowrap;flex:none;display:flex}.eco{padding:calc(3 * var(--u)) calc(7 * var(--u));background:var(--bubble);letter-spacing:.02em;font-variant-numeric:tabular-nums;border-radius:5px;flex:none;font-size:.9em;font-weight:600}.opening-dot{color:var(--muted)}.opening-name{text-overflow:ellipsis;overflow:hidden}.opening-name.is-muted{padding-left:calc(8 * var(--u));color:var(--muted);font-style:italic}.moves{min-height:calc(84 * var(--u));margin:calc(6 * var(--u)) calc(-8 * var(--u)) 0;padding:0 calc(8 * var(--u));overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:transparent transparent;flex:auto;overflow-y:auto}.moves:hover{scrollbar-color:#d6cfc2 transparent}.moves-empty{margin:calc(12 * var(--u)) 0 0 calc(12 * var(--u));color:var(--faint);font-style:italic;font-size:calc(15.5 * var(--u))}.move-row{grid-template-columns:calc(46 * var(--u)) 1fr 1fr;height:calc(34 * var(--u));border-radius:7px;align-items:center;display:grid}.move-row:nth-child(2n){background:var(--stripe)}.move-num{padding-left:calc(12 * var(--u));color:var(--faint);font-size:calc(13.5 * var(--u));font-variant-numeric:tabular-nums;font-weight:500}.mv-empty{display:block}.mv{justify-content:flex-start;align-items:center;gap:calc(7 * var(--u));height:calc(28 * var(--u));margin-right:calc(10 * var(--u));padding:0 calc(9 * var(--u));color:var(--ink);font:500 calc(15 * var(--u)) / 1 var(--sans);font-variant-numeric:tabular-nums;text-align:left;background:0 0;border:0;border-radius:6px;transition:background .12s;display:flex}.mv:hover{background:var(--hover)}.mv.is-current{background:var(--current);box-shadow:inset 0 -1.5px 0 var(--line-2);font-weight:650}.mv .cls-sm{width:calc(16 * var(--u));height:calc(16 * var(--u));font-size:calc(9 * var(--u))}.fig{white-space:nowrap;align-items:center;display:inline-flex}.fig-icon{width:1.12em;height:1.12em;margin-right:.06em;transform:translateY(-.06em)}.decision{margin-top:calc(8 * var(--u));padding-top:calc(12 * var(--u));border-top:1px solid var(--line);flex:none}.decision-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.decision-head h3{font:500 calc(20 * var(--u)) / 1.2 var(--sans);letter-spacing:-.005em;margin:0}.decision-meta{color:var(--faint);font:500 calc(11.5 * var(--u)) / 1 var(--sans);letter-spacing:.02em;font-variant-numeric:tabular-nums}.decision-empty{margin:calc(6 * var(--u)) 0 calc(4 * var(--u));color:var(--faint);font-size:calc(15 * var(--u));font-style:italic}.bars,.lines{margin:calc(6 * var(--u)) calc(-6 * var(--u)) 0;padding:0;list-style:none}.bars li{grid-template-columns:calc(66 * var(--u)) 1fr calc(54 * var(--u));align-items:center;gap:calc(14 * var(--u));height:calc(31 * var(--u));padding:0 calc(6 * var(--u));border-radius:6px;display:grid}.bars li:hover{background:var(--hover)}.bar-move{font:500 calc(15 * var(--u)) / 1 var(--sans)}.bar-track{background:var(--track);border-radius:4px;height:4px;overflow:hidden}.bar-track i{background:var(--brass);height:100%;transition:width .55s var(--ease);border-radius:4px;display:block}.bars li.is-chosen .bar-track i{background:var(--brass-ink)}.bar-pct{text-align:right;color:var(--ink-2);font-size:calc(13.5 * var(--u));font-variant-numeric:tabular-nums;font-weight:500}.bars.is-loading .bar-move{border-radius:4px;width:70%;height:12px;display:block}.bars.is-loading .bar-track i{height:100%}.shimmer{background:linear-gradient(90deg,#ebe6dc 0%,#f6f2ea 50%,#ebe6dc 100%) 0 0/200% 100%;animation:1.3s linear infinite shimmer}.lines li{grid-template-columns:calc(58 * var(--u)) 1fr;align-items:center;gap:calc(12 * var(--u));height:calc(31 * var(--u));padding:0 calc(6 * var(--u));border-radius:6px;display:grid}.lines li:hover{background:var(--hover)}.line-eval{background:var(--bubble);font:600 calc(12.5 * var(--u)) / 1.2 var(--sans);text-align:center;font-variant-numeric:tabular-nums;border-radius:5px;padding:3px 0}.line-pv{gap:calc(12 * var(--u));font:500 calc(14.5 * var(--u)) / 1 var(--sans);white-space:nowrap;display:flex;overflow:hidden}.toolbar{align-items:center;gap:calc(6 * var(--u));margin-top:calc(8 * var(--u));padding:calc(6 * var(--u)) 0;border-top:1px solid var(--line);flex:none;display:flex;position:relative}.tool-group{justify-content:space-between;align-items:center;min-width:0;display:flex}.tools-play{flex:5}.tools-nav{flex:4}.tool{flex:0 1 calc(42 * var(--u));min-width:0;height:calc(42 * var(--u));color:var(--ink);background:0 0;border:0;border-radius:999px;place-items:center;transition:background .15s,color .15s;display:grid}.tool svg{width:calc(21 * var(--u));height:calc(21 * var(--u))}.tool:hover:not(:disabled){background:var(--current)}.tool:disabled{color:var(--faint);opacity:.6}.tool.is-active{background:var(--green-tint);color:var(--green-2)}.tool.tone-red.is-active{background:var(--red-tint);color:var(--red)}.tool-divider{width:1px;height:calc(26 * var(--u));background:var(--line-2)}.confirm-pop{z-index:12;border:1px solid var(--line);background:var(--raised);white-space:nowrap;animation:rise .18s var(--ease);border-radius:12px;align-items:center;gap:10px;padding:10px 10px 10px 16px;font-size:15px;display:flex;position:absolute;bottom:calc(100% + 6px);right:0;box-shadow:0 18px 40px -20px #281e0a80}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);z-index:30;background:var(--ink);color:var(--paper);font:500 12px / 1 var(--sans);letter-spacing:.01em;white-space:pre;pointer-events:none;opacity:0;border-radius:7px;padding:7px 9px;animation:.15s .45s forwards tip;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.coach-head [data-tip]:hover:after{top:calc(100% + 8px);bottom:auto}.toolbar:has(.confirm-pop) [data-tip]:hover:after{display:none}.tools-nav .tool:last-child[data-tip]:hover:after,.mic[data-tip]:hover:after{left:auto;right:0;transform:none}.composer-wrap{margin-top:calc(8 * var(--u));flex:none}.composer-note{margin:0 0 calc(8 * var(--u));color:var(--muted);font-size:calc(14 * var(--u));text-align:center}.composer-note.is-error{color:var(--red)}.composer{align-items:center;gap:calc(14 * var(--u));display:flex}.composer-field{flex:1;min-width:0;position:relative}.composer-field input{width:100%;height:calc(56 * var(--u));padding:0 calc(54 * var(--u)) 0 calc(22 * var(--u));border:1px solid var(--line-2);background:var(--raised);font:400 calc(15 * var(--u)) / 1 var(--sans);border-radius:999px;outline:none;transition:border-color .15s,box-shadow .15s}.composer-field input::placeholder{color:var(--muted)}.composer-field input:focus{border-color:var(--faint);box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 7%, transparent)}.send{top:50%;right:calc(8 * var(--u));width:calc(40 * var(--u));height:calc(40 * var(--u));background:var(--green);color:var(--on-accent);border:0;border-radius:50%;place-items:center;display:grid;position:absolute;transform:translateY(-50%)}.mic{width:calc(60 * var(--u));height:calc(60 * var(--u));background:radial-gradient(circle at 35% 28%, var(--accent-top), var(--green) 62%);color:var(--on-accent);border:0;border-radius:50%;flex:none;place-items:center;transition:transform .15s,filter .15s;display:grid;position:relative;box-shadow:0 10px 20px -12px #14120eb3,inset 0 1px #ffffff1f}.mic svg{width:calc(26 * var(--u));height:calc(26 * var(--u))}.mic:hover{filter:brightness(1.12)}.mic:active{transform:scale(.96)}.mic.is-live:before{content:"";z-index:-1;background:#81b64c4d;border-radius:50%;animation:1.7s ease-out infinite pulse;position:absolute;inset:-7px}.listening{align-items:center;gap:calc(12 * var(--u));margin-top:calc(8 * var(--u));padding:calc(9 * var(--u)) calc(9 * var(--u)) calc(9 * var(--u)) calc(22 * var(--u));border:1px solid var(--line-2);background:var(--raised);box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 5%, transparent);isolation:isolate;animation:rise .2s var(--ease);border-radius:999px;flex:none;display:flex;position:relative}.listening-body{flex:1;min-width:0}.listening-label{margin:0 0 calc(5 * var(--u));color:var(--ink-2);font-size:calc(14 * var(--u));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.wave{height:calc(24 * var(--u));align-items:center;gap:3px;display:flex}.wave i{background:var(--green-2);border-radius:2px;flex:1;max-width:3px;height:100%;transition:transform 90ms linear;transform:scaleY(.06)}.wave i:nth-child(4n+2){opacity:.5}.phase-transcribing .wave i,.phase-requesting .wave i{background:var(--faint)}.listening-cancel{width:calc(44 * var(--u));height:calc(44 * var(--u));margin-left:0}.listening-progress{background:var(--brass);border-radius:2px;max-width:calc(100% - 44px);height:2px;transition:width .3s;position:absolute;bottom:5px;left:22px}.spinner{border:2px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.btn-primary{background:radial-gradient(120% 140% at 30% 0%, var(--accent-top), var(--green) 60%);height:50px;color:var(--on-accent);font:600 15.5px / 1 var(--sans);letter-spacing:.005em;border:0;border-radius:10px;padding:0 28px;transition:filter .15s,transform .1s;box-shadow:0 12px 24px -16px #14120ecc,inset 0 1px #ffffff1a}.btn-primary:hover{filter:brightness(1.1)}.btn-primary:active{transform:translateY(1px)}.btn-primary.wide{width:100%}.btn-quiet{color:var(--green-2);font:500 14.5px / 1.2 var(--sans);background:0 0;border:0;padding:6px 12px}.btn-quiet:hover{text-underline-offset:4px;text-decoration:underline}.btn-danger{background:var(--red);color:#fff;font:600 14px / 1.2 var(--sans);border:0;border-radius:8px;padding:8px 14px}.confirm-pop .btn-quiet{font-size:14px}.data-reset{margin-top:8px}.reset-confirm{border:1px solid color-mix(in srgb, var(--red) 38%, var(--line));background:color-mix(in srgb, var(--red) 7%, var(--raised));border-radius:10px;margin-top:10px;padding:14px 16px}.reset-confirm p{color:var(--ink-2);font:13px/1.45 var(--sans);margin:0 0 12px}.reset-confirm>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.icon-btn{width:36px;height:36px;color:var(--ink);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.icon-btn:hover{background:var(--hover)}.scrim{z-index:50;background:#f6f2ea9e;place-items:center;padding:16px;animation:.18s ease-out fade;display:grid;position:fixed;inset:0}.dialog{border:1px solid var(--line);scrollbar-width:none;width:min(560px,100%);max-height:calc(100dvh - 32px);animation:rise .24s var(--ease);background:#fbf9f4;border-radius:18px;outline:none;padding:24px 30px 20px;overflow:auto;box-shadow:0 34px 80px -34px #281e0a80,0 2px 6px #281e0a0f}.dialog.new-game{width:min(760px,100%);padding:26px 28px 20px}.new-game .dialog-head{margin-bottom:20px}.new-game .dialog-head h2{font-size:31px}.new-game-section+.new-game-section{margin-top:22px}.config-heading{justify-content:space-between;align-items:baseline;gap:18px;margin-bottom:10px;display:flex}.config-heading h3{color:var(--ink);font:600 17px/1.2 var(--sans);letter-spacing:-.015em;margin:0}.config-heading p{color:var(--muted);font:12.5px/1.35 var(--sans);text-align:right;margin:0}.new-game .field-label{margin:16px 0 7px}.new-game .force{padding-bottom:25px}.new-game .color-choice{width:62px;height:62px}.new-game .dialog-actions{margin-top:15px}.dialog-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.dialog-head h2{font:500 34px / 1.1 var(--sans);letter-spacing:-.018em;margin:0}.field-label{color:var(--ink-2);font:600 11.5px / 1 var(--sans);letter-spacing:.17em;text-transform:uppercase;margin:18px 0 9px}.field-label.is-disabled{color:var(--faint)}.field-hint{color:var(--muted);margin:8px 0 6px;font-size:14.5px;line-height:1.4}.opponents{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.opponent{border:1px solid var(--line-2);background:color-mix(in srgb, var(--raised) 72%, transparent);min-width:0;min-height:64px;color:var(--ink);text-align:left;border-radius:12px;grid-template-columns:38px minmax(0,1fr) 22px;align-items:center;gap:10px;padding:9px 11px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.opponent:hover{border-color:color-mix(in srgb, var(--green-2) 45%, var(--line-2));background:var(--raised)}.opponent .avatar{border-radius:9px;width:38px;height:38px}.opponent .avatar-jev span,.opponent .avatar-stockfish span{font-size:26px}.opponent-text{min-width:0}.opponent-text b{font:600 14.5px/1.25 var(--sans);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.opponent-text small{color:var(--muted);font:11px/1.2 var(--sans);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;display:block;overflow:hidden}.opponent.is-on{border-color:color-mix(in srgb, var(--green-2) 68%, var(--line));background:var(--green-tint);box-shadow:0 0 0 2px color-mix(in srgb, var(--green-2) 9%, transparent)}.opponent-summary{color:var(--muted);font:11.5px/1.4 var(--sans);margin:8px 2px 0}.opponent-summary b{color:var(--ink-2);font-weight:600}.selection-mark{border:1px solid var(--line-2);color:#0000;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.selection-mark svg{width:12px;height:12px}.opponent.is-on .selection-mark{border-color:var(--green-2);background:var(--green-2);color:var(--on-accent)}.decision-models{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.decision-model{border:1px solid var(--line-2);background:color-mix(in srgb, var(--raised) 72%, transparent);min-width:0;min-height:82px;color:var(--ink);text-align:left;border-radius:12px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:0 9px;padding:10px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.decision-model:hover{border-color:color-mix(in srgb, var(--green-2) 45%, var(--line-2));background:var(--raised)}.decision-model:disabled{cursor:not-allowed;opacity:.58}.decision-model:disabled:hover{border-color:var(--line-2);background:color-mix(in srgb, var(--raised) 72%, transparent)}.decision-model.is-on{border-color:color-mix(in srgb, var(--green-2) 68%, var(--line));background:var(--green-tint);box-shadow:0 0 0 2px color-mix(in srgb, var(--green-2) 9%, transparent)}.decision-model-copy{min-width:0}.decision-model b,.decision-model small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.decision-model b{font:600 14px/1.2 var(--sans)}.decision-model small{color:var(--muted);font:11px/1.2 var(--sans);margin-top:2px}.provider-status{background:var(--hover);color:var(--muted);font:600 9px/1 var(--sans);letter-spacing:.045em;text-transform:uppercase;border-radius:999px;grid-column:2;justify-self:start;margin-top:6px;padding:3px 7px}.decision-model.is-ready .provider-status{background:color-mix(in srgb, var(--green-2) 13%, transparent);color:var(--green-2)}.btn-primary:disabled{cursor:not-allowed;filter:grayscale(.65);opacity:.58}.decision-model-note{color:var(--muted);font:11.5px/1.4 var(--sans);align-items:baseline;gap:0;margin:8px 2px 0;display:flex}.decision-model-note b{color:var(--ink-2);font-weight:600}.radio{border:1.5px solid #a19b90;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;display:grid}.is-on>.radio{border-color:var(--green)}.is-on>.radio:after{content:"";background:var(--green);border-radius:50%;width:10px;height:10px}.segmented{border:1px solid var(--line-2);background:var(--raised);border-radius:10px;gap:3px;padding:3px;display:flex}.segmented button{font:500 14px / 1.1 var(--sans);white-space:nowrap;background:0 0;border:0;border-radius:7px;flex:1;padding:9px 8px;transition:background .15s,color .15s}.segmented button:hover:not(:disabled):not(.is-on){background:var(--hover)}.segmented button.is-on{background:var(--green);color:var(--on-accent)}.segmented.is-disabled{opacity:.45}.force{color:var(--ink-2);align-items:center;gap:16px;padding:4px 2px 22px;font-size:14px;display:flex}.force.is-disabled{opacity:.45}.strength-presets{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.strength-presets button{border:1px solid var(--line);min-width:65px;color:var(--ink-2);background:0 0;border-radius:8px;flex:1;padding:8px 5px}.strength-presets button[aria-pressed=true]{background:var(--ink);color:var(--paper,#fbf8f2)}.strength-presets b,.strength-presets span{display:block}.strength-presets b{font-variant-numeric:tabular-nums;font-weight:600}.strength-presets span{color:var(--muted);font:500 10.5px/1.2 var(--sans);white-space:nowrap;margin-top:4px}.strength-presets button[aria-pressed=true] span{color:inherit;opacity:.75}.force>span{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:500}.strength-presets button:disabled{opacity:.4}.strength-note{color:var(--muted);font:11px/1.4 var(--sans);margin:10px 0 0}.force-track{flex:1;align-items:center;height:24px;display:flex;position:relative}.force-track input{background:linear-gradient(90deg, var(--brass) var(--pct), var(--track) var(--pct));appearance:none;border-radius:4px;outline:none;width:100%;height:4px;margin:0}.force-track input::-webkit-slider-thumb{cursor:grab;-webkit-appearance:none;background:radial-gradient(circle at 35% 30%,#ecdcab,#a8884c 72%);border:1px solid #8a6f3d;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 6px #3c280a59}.force-track input::-moz-range-thumb{background:radial-gradient(circle at 35% 30%,#ecdcab,#a8884c 72%);border:1px solid #8a6f3d;border-radius:50%;width:20px;height:20px}.force-track output{top:26px;left:calc(10px + (100% - 20px) * var(--p));color:var(--ink);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;position:absolute;transform:translate(-50%)}.colors{justify-content:center;gap:22px;display:flex}.color-choice{border:1px solid var(--line-2);background:var(--raised);width:74px;height:74px;color:var(--ink);border-radius:50%;place-items:center;transition:border-color .15s,box-shadow .15s;display:grid}.color-choice img{width:64%;height:64%}.color-choice.is-on{border:1.5px solid var(--green);box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 7%, transparent)}.dialog-actions{flex-direction:column;align-items:center;gap:6px;margin-top:22px;display:flex}@media (width<=520px){.dialog.new-game{padding-inline:18px}.config-heading{display:block}.config-heading p{text-align:left;margin-top:3px}.decision-models{grid-template-columns:1fr 1fr}.new-game .opponents{grid-template-columns:1fr}.new-game .opponent,.new-game .opponent{grid-column:auto}}.toggle-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:12px 0;display:flex}.toggle-text b{font:600 15px / 1.3 var(--sans);letter-spacing:-.005em;display:block}.toggle-text small{color:var(--muted);margin-top:2px;font-size:13px;display:block}.switch{background:#d8d2c6;border-radius:999px;flex:none;width:42px;height:24px;transition:background .2s;position:relative}.switch i{width:18px;height:18px;transition:transform .2s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch.is-on{background:var(--green-3)}.switch.is-on i{transform:translate(18px)}.voice-list{flex-wrap:wrap;gap:8px;margin:12px 0 2px;display:flex}.chip{border:1px solid var(--line-2);background:var(--raised);font:500 13.5px / 1.2 var(--sans);border-radius:999px;padding:7px 14px}.chip:hover:not(.is-on){background:var(--hover)}.chip.is-on{border-color:var(--green);background:var(--green);color:var(--on-accent)}.swatches{gap:10px;margin-bottom:10px;display:flex}.swatch{border:1px solid var(--line-2);background:var(--raised);font:500 13px / 1.2 var(--sans);border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:8px;padding:12px 8px 10px;display:flex}.swatch.is-on{border-color:var(--green);box-shadow:0 0 0 4px color-mix(in srgb, var(--ink) 7%, transparent)}.swatch-board{background:conic-gradient(var(--d) 0 25%, var(--l) 0 50%, var(--d) 0 75%, var(--l) 0) 0 0 / 50% 50%;border-radius:6px;width:52px;height:52px;box-shadow:inset 0 0 0 1px #00000014}.swatch-pieces{align-items:center;height:52px;display:flex}.swatch-pieces img{width:44px;height:44px}.select-row{border-bottom:1px solid var(--line);font:600 15px / 1.25 var(--sans);justify-content:space-between;align-items:center;gap:16px;padding:4px 0 10px;display:flex}.select-row select{border:1px solid var(--line-2);background:var(--raised);max-width:320px;height:38px;font:400 14px / 1 var(--sans);color:var(--ink);border-radius:9px;flex:1;padding:0 12px}.brand span,.coach-id h2,.leon-title h3,.leon-text,.leon-sub,.you-bubble,.decision-head h3,.dialog-head h2,.game-over-card h2,.review-dialog h2,.review-moments h3,.review-scoreline b,.review-accuracy strong,.review-accuracy em,.moves-empty,.decision-empty,.avatar-jev span,.avatar-stockfish span{font-family:var(--serif);letter-spacing:-.012em}.coach-id h2{letter-spacing:-.022em;font-weight:500}.leon-title h3{font-weight:500}.leon-text{font-size:calc(16.5 * var(--u));letter-spacing:-.004em}.decision-head h3{font-weight:500;font-size:calc(19 * var(--u))}.dialog-head h2{letter-spacing:-.025em;font-weight:400}.review-dialog h2{letter-spacing:-.028em;font-weight:400}.review-accuracy strong{letter-spacing:-.045em;font-weight:400}.field-label{letter-spacing:.16em;font-size:11px}.timeline-row>span,.review-moment .fig,.review-moment strong{font-size:15px;font-weight:500}.review-scoreline span{font-size:16px;font-weight:600}.review-accuracy span{font-size:15px}.home{min-width:0;height:100dvh;padding:calc(56 * var(--u)) clamp(28px, 6vw, 96px) calc(48 * var(--u));overflow-y:auto}.home>*{max-width:1080px;margin-inline:auto}.home-eyebrow{color:var(--muted);font:500 12px / 1 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:0}.home-head h1{font:400 clamp(44px, 5.2vw, 68px) / 1 var(--serif);letter-spacing:-.035em;margin:12px auto 28px}.home-leon{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-surface);animation:rise .35s var(--ease);border-radius:18px;grid-template-columns:92px 1fr;gap:26px;padding:28px 32px;display:grid}.home-leon img{object-fit:cover;width:92px;height:92px;box-shadow:0 0 0 1px var(--line), 0 10px 20px -12px #281e0a80;border-radius:50%}.home-leon-name{font:500 22px / 1.1 var(--serif);letter-spacing:-.015em;margin:2px 0 8px}.home-leon-name span{color:var(--muted);font:400 14px / 1 var(--sans);letter-spacing:0}.home-leon-text{max-width:62ch;color:var(--ink-2);font:400 19px / 1.5 var(--serif);letter-spacing:-.005em;margin:0}.home-actions{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:22px;display:flex}.home-actions .btn-primary{height:48px}.btn-secondary{border:1px solid var(--line-2);background:var(--raised);height:48px;color:var(--ink);font:600 15px / 1 var(--sans);border-radius:10px;align-items:center;gap:10px;padding:0 20px;transition:background .15s,border-color .15s;display:inline-flex}.btn-secondary:hover{background:var(--hover);border-color:var(--faint)}.btn-secondary span{background:var(--ink);min-width:22px;height:22px;color:var(--paper);border-radius:999px;place-items:center;padding:0 6px;font-size:12px;display:grid}.home-stats{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px;display:grid}.home-stats article,.home-card{border:1px solid var(--line);background:var(--surface);animation:rise .4s var(--ease) both;border-radius:16px;padding:22px 24px}.home-stats article:nth-child(2){animation-delay:40ms}.home-stats article:nth-child(3){animation-delay:80ms}.home-stats h2,.home-card h2{color:var(--muted);font:600 11px / 1 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin:0}.home-big{font:400 48px / 1 var(--serif);letter-spacing:-.04em;font-variant-numeric:lining-nums;align-items:baseline;gap:10px;margin:14px 0 6px;display:flex}.home-big .unit{color:var(--muted);font:500 15px / 1 var(--sans);letter-spacing:0}.home-big .up,.home-big .down{font:600 13px / 1 var(--sans);letter-spacing:0}.home-big .up{color:#5d9136}.home-big .down{color:var(--red)}.home-stats small{color:var(--muted);font-size:13px}.home-columns{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}.home-card h2{margin-bottom:16px}.home-empty{color:var(--muted);font:italic 400 16px / 1.5 var(--serif);margin:0}.home-weak{gap:16px;margin:0;padding:0;list-style:none;display:grid}.home-weak li>div{justify-content:space-between;gap:12px;font-size:14.5px;display:flex}.home-weak li>div span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.home-weak i{background:linear-gradient(90deg, var(--brass) var(--w), var(--track) var(--w));border-radius:4px;height:4px;margin:8px 0 7px;display:block}.home-weak small{color:var(--muted);font-size:13px;line-height:1.45}.home-games{margin:0;padding:0;list-style:none}.home-games li{border-bottom:1px solid var(--line);grid-template-columns:84px 1fr auto;align-items:center;gap:14px;padding:10px 0;display:grid}.home-games li:last-child{border-bottom:0}.home-games b{white-space:nowrap;text-overflow:ellipsis;font-size:14.5px;font-weight:600;display:block;overflow:hidden}.home-games small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;display:block;overflow:hidden}.home-acc{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:14px;font-weight:500}.result-pill{font:600 11.5px / 1 var(--sans);letter-spacing:.02em;border-radius:999px;justify-self:start;padding:5px 9px}.result-pill.win{color:#4f7d2b;background:#7fb3502e}.result-pill.loss{color:#b8392b;background:#f2453424}.result-pill.draw{background:var(--bubble);color:var(--muted)}:root[data-appearance=dark] .result-pill.win{color:#a6d27a}:root[data-appearance=dark] .result-pill.loss{color:#f08a7e}.home-more{margin:10px 0 0 -12px}.home-product-note{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:22px 2px 0;font-size:12px;display:flex}.home-product-note strong{color:var(--ink-2);font-weight:600}.home-product-note a{color:var(--green);margin-left:auto;text-decoration:none}.home-product-note a:hover{text-underline-offset:3px;text-decoration:underline}.onboarding-scrim{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dialog.onboarding{width:min(620px,100%);padding:30px 34px 22px}.onboarding-intro{grid-template-columns:76px 1fr;align-items:start;gap:20px;display:grid}.onboarding-intro img{object-fit:cover;border-radius:50%;width:76px;height:76px}.onboarding-intro h2{font:400 32px / 1.1 var(--serif);letter-spacing:-.025em;margin:8px 0}.onboarding-intro p:last-child{color:var(--ink-2);font:400 16.5px / 1.5 var(--serif);margin:0}.level-cards{grid-template-columns:1fr 1fr;gap:8px;display:grid}.level-card{border:1px solid var(--line-2);background:var(--raised);text-align:left;border-radius:11px;flex-direction:column;align-items:flex-start;gap:3px;padding:13px 15px;transition:border-color .15s,box-shadow .15s;display:flex}.level-card:hover{border-color:var(--faint)}.level-card b{font-size:15px;font-weight:600}.level-card small{color:var(--muted);font-size:13px}.level-card.is-on{border-color:var(--ink);box-shadow:inset 0 0 0 .5px var(--ink)}.drill-count{color:var(--muted);font:500 13px / 1 var(--sans);font-variant-numeric:tabular-nums;margin-right:auto}@media (width<=760px),(aspect-ratio<=3/4){.home{height:auto;padding:28px 16px 40px}.home-leon{grid-template-columns:1fr;padding:22px}.home-stats,.home-columns{grid-template-columns:1fr}.home-product-note a{width:100%;margin-left:0}.level-cards{grid-template-columns:1fr}}.review-lesson{border:1px solid var(--line);background:var(--bubble);border-radius:14px;margin:22px 0 6px;padding:20px 22px}.review-lesson-text{font:400 20px / 1.45 var(--serif);letter-spacing:-.008em;margin:10px 0 0}.review-lesson .home-actions{margin-top:16px}.review-rating{color:var(--muted);font-size:14px}.review-rating b{color:var(--ink);font-variant-numeric:tabular-nums}.review-rating .up{color:#5d9136;font-style:normal;font-weight:600}.review-rating .down{color:var(--red);font-style:normal;font-weight:600}.confetti{pointer-events:none;height:0;position:absolute;inset:0 0 auto}.confetti i{top:-10px;left:calc(4% + var(--i) * 5.3%);background:hsl(calc(var(--i) * 47), 62%, 58%);opacity:0;width:7px;height:11px;animation:confetti 1.9s calc(var(--i) * 45ms) cubic-bezier(.2, .6, .4, 1) forwards;border-radius:2px;position:absolute}@keyframes confetti{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(260px) rotate(calc(160deg + var(--i) * 40deg))}}@keyframes dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@keyframes bars{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@keyframes halo{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.035)}}@keyframes pulse{0%{opacity:.9;transform:scale(.92)}to{opacity:0;transform:scale(1.35)}}@keyframes blink{50%{opacity:0}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes tip{to{opacity:1}}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}}@media (width<=760px),(aspect-ratio<=3/4){html,body,#root{width:100%;max-width:100%}body{padding-bottom:calc(62px + env(safe-area-inset-bottom));overflow:hidden auto}.shell{--u:.9px;width:100%;height:auto;min-height:100dvh;display:block}.rail{z-index:60;width:100%;height:calc(62px + env(safe-area-inset-bottom));min-height:0;padding:0 6px env(safe-area-inset-bottom);border:0;border-top:1px solid var(--line);background:color-mix(in srgb, var(--rail-bg) 95%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);flex-direction:row;position:fixed;inset:auto 0 0;overflow:hidden}.brand{display:none}.rail-items{scrollbar-width:none;flex-direction:row;flex:auto;gap:0;width:auto;min-width:0;margin:0;overflow-x:auto}.rail-items::-webkit-scrollbar{display:none}.rail-item{flex:0 0 45px;gap:0;width:45px;height:58px;padding:8px 5px}.rail-item svg{width:23px;height:23px}.rail-item span,.rail-item.active:before{display:none}.rail-account,.rail-settings,.rail-appearance{flex-basis:45px;margin:0}.rail-account img{width:27px;height:27px}.rail-quota{border-width:1px;min-width:17px;height:17px;font-size:9px;top:5px;right:2px}.stage{--bar-h:52px;--bar-gap:5px;--eval-w:14px;--eval-gap:5px;--avail-w:calc(100vw - 12px - var(--eval-w) - var(--eval-gap));--avail-h:var(--avail-w);--board:var(--avail-w);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:12px;width:100%;padding:8px 6px 18px}.board-col{margin:0 auto}.player-bar{padding-left:calc(var(--eval-w) + var(--eval-gap));gap:8px}.player-name{font-size:14px}.captured{gap:3px;overflow:hidden}.captured-group img{width:17px;height:17px}.captured-group img+img{margin-left:-9px}.captured-lead{font-size:12px}.sidebar{border-radius:13px;width:100%;height:auto;min-height:580px;padding:14px 12px 12px}.portrait{width:62px;height:62px}.coach-id h2{font-size:25px}.coach-status{font-size:12px}.head-speed{margin-top:5px;font-size:11px}.head-speed input{max-width:110px}.moves{max-height:34vh}.home{padding:24px 14px 28px}.home-head h1{margin-bottom:18px;font-size:44px}.home-leon{gap:17px;padding:20px 18px}.home-leon img{width:72px;height:72px}.home-leon-text{font-size:17px}.home-actions{align-items:stretch}.home-actions button{justify-content:center;width:100%}.home-stats article,.home-card{padding:19px 18px}.home-games li{grid-template-columns:74px minmax(0,1fr) auto;gap:9px}.scrim{padding:8px 8px max(8px, env(safe-area-inset-bottom));place-items:end center}.dialog,.dialog.new-game,.dialog.library-dialog,.dialog.study-dialog,.dialog.onboarding{border-radius:20px 20px 14px 14px;width:100%;max-width:100%;max-height:calc(100dvh - 16px);padding:22px 18px 16px}.dialog-head h2,.new-game .dialog-head h2{font-size:27px}.opponents{grid-template-columns:1fr}.decision-models{grid-template-columns:1fr 1fr}.decision-model{min-height:72px}.strength-presets{grid-template-columns:repeat(2,1fr)}.account-profile{grid-template-columns:44px minmax(0,1fr)}.account-profile>img,.account-profile>span{width:44px;height:44px}.account-profile em{grid-column:2;justify-self:start}.end-actions{grid-template-columns:1fr}}@media (width<=380px){.rail-item{flex-basis:42px;width:42px}.rail-account,.rail-settings,.rail-appearance{flex-basis:42px}.stage{--avail-w:calc(100vw - 8px - var(--eval-w) - var(--eval-gap));padding-inline:4px}.decision-models{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.force{padding-bottom:30px}.force-track output{white-space:nowrap;font-size:12.5px;top:24px}.strength-presets{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:6px;display:grid}.strength-presets button{border-radius:8px;min-width:0;padding:8px 4px 7px}.strength-presets b{font:600 12.5px / 1.2 var(--sans);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.strength-presets span{font-variant-numeric:tabular-nums;margin-top:3px;font-size:10.5px}.end-actions{gap:calc(10 * var(--u));grid-template-columns:1fr 1fr;display:grid}.end-actions .btn-primary{height:calc(46 * var(--u));font-size:calc(15 * var(--u));padding:0 12px}.review-actions{flex-direction:column;align-items:stretch}.review-actions .end-actions .btn-primary{width:100%;min-width:0}.review-actions>.btn-quiet{align-self:center}.speed-row{border-bottom:1px solid var(--line);grid-template-columns:1fr 190px 52px;align-items:center;gap:14px;padding:12px 0;display:grid}.speed-row .force-track output{display:none}.speed-value{text-align:right;font:600 14px / 1 var(--sans);font-variant-numeric:tabular-nums}.head-speed{margin-top:calc(7 * var(--u));color:var(--muted);font:500 calc(12 * var(--u)) / 1 var(--sans);align-items:center;gap:8px;display:flex}.head-speed input{background:linear-gradient(90deg, var(--brass) var(--pct), var(--track) var(--pct));appearance:none;cursor:pointer;border-radius:3px;outline:none;flex:1;min-width:60px;max-width:150px;height:3px;margin:0}.head-speed input::-webkit-slider-thumb{-webkit-appearance:none;background:radial-gradient(circle at 35% 30%,#ecdcab,#a8884c 72%);border:1px solid #8a6f3d;border-radius:50%;width:13px;height:13px}.head-speed input::-moz-range-thumb{background:#c2a66c;border:1px solid #8a6f3d;border-radius:50%;width:13px;height:13px}.head-speed output{min-width:38px;color:var(--ink-2);font-variant-numeric:tabular-nums}.head-speed[data-tip]:hover:after{top:calc(100% + 8px);bottom:auto}.btn-primary.btn-play{color:#fff;background:radial-gradient(120% 140% at 30% 0,#8cc05a,#5d9136 62%);box-shadow:0 12px 24px -16px #3c641ee6,inset 0 1px #ffffff2e}
