@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_42e80c28-module__h9uxqW__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_42e80c28-module__h9uxqW__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_6b7574a6-module__BVULza__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_6b7574a6-module__BVULza__variable{--font-jetbrains:"JetBrains Mono", "JetBrains Mono Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/85fcf895b86d74a6-s.3pdm20a023wv-.woff2)format("woff2");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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5307092570128b5a-s.16191ingcc7md.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b67966e0b83b2cd0-s.p.0fuf3937kiol3.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:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_f3a2151d-module__xQm8wW__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_f3a2151d-module__xQm8wW__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:Twemoji Country Flags;unicode-range:U+1F1E6-1F1FF,U+1F3F4,U+E0062-E0063,U+E0065,U+E0067,U+E006C,U+E006E,U+E0073-E0074,U+E0077,U+E007F;src:url(/fonts/TwemojiCountryFlags.woff2)format("woff2");font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-deepest:#100d0b;--bg-darkest:#14110e;--bg-dark:#181410;--bg-panel:#1a1612;--bg-panel-hover:#221d18;--bg-panel-active:#1b2a23;--border-subtle:#f2e6d214;--border-strong:#f2e6d229;--text-primary:#f1e9db;--text-secondary:#b5a995;--text-dim:#938977;--board-light:#6e5a40;--board-dark:#423526;--board-edge:#2c2218;--gridspot-light:#3e3122;--gridspot-dark:#2c2218;--bear-off-light:#2c2218;--bear-off-dark:#1a1410;--piece-light:#f4ead0;--piece-mid:#d4c498;--piece-dark:#8a7550;--piece-ring:#1a1108;--brass:#d7b36a;--brass-strong:#eac77f;--brass-soft:#d7b36a24;--brass-line:#d7b36a73;--on-brass:#1a1308;--accent-mint:#8ec9ae;--accent-mint-soft:#8ec9ae1f;--accent-mint-line:#8ec9ae66;--accent-amber:#e2a15e;--accent-amber-soft:#e2a15e21;--accent-blue:#8fa8e8;--accent-red:#e3858f;--on-mint:#0b2a20;--font-sans:"Twemoji Country Flags", var(--font-inter), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:var(--font-jetbrains), "SF Mono", Consolas, Monaco, monospace;--font-display:var(--font-fraunces), "Iowan Old Style", Georgia, serif;--fs-label:11px;--fs-meta:12.5px;--fs-small:13.5px;--fs-text:14.5px;--fs-body:15px;--fs-lede:16px;--fs-lead:17px;--fs-title-sm:19px;--fs-title:22px;--fs-title-lg:26px;--fs-figure:26px;--page-gutter:clamp(16px, 3vw, 40px);--page-vpad:clamp(24px, 3.5vh, 44px);--topbar-h:60px;--board-chrome:calc(var(--topbar-h) + 116px);--content-w:1200px;--narrow-w:880px;--radius:10px;--radius-sm:6px;--shadow:none;--shadow-pop:0 12px 40px #0009;--ease:cubic-bezier(.2, .7, .2, 1)}*{box-sizing:border-box}html{scrollbar-gutter:stable;-webkit-text-size-adjust:100%}html,body{background:var(--bg-deepest);min-height:100%;color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11", "ss01";margin:0;padding:0;line-height:1.5}body{overflow-x:clip}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(1000px 440px at 50% -12%,#d7b36a0f,#0000 70%),radial-gradient(90% 80% at 50% 55%,#0000 55%,#0006 100%);position:fixed;inset:0}body:after{content:"";opacity:.045;pointer-events:none;z-index:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 0.93  0 0 0 0 0.82  0 0 0 0.5 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");background-size:180px 180px;position:fixed;inset:0}a{color:inherit;text-decoration:none}a:hover{color:var(--brass-strong)}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--brass);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}input,select,textarea{font:inherit}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--brass);color:var(--on-brass);transition:transform .15s var(--ease);padding:8px 14px;font-weight:640;position:absolute;top:10px;left:12px;transform:translateY(-160%)}.skip-link:focus{color:var(--on-brass);transform:none}.site{z-index:1;flex-direction:column;min-height:100dvh;display:flex;position:relative}.topbar{height:var(--topbar-h);border-bottom:1px solid var(--border-subtle);z-index:20;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:0 clamp(14px,2vw,28px);display:grid;position:sticky;top:0}.topbar:before{content:"";z-index:-1;-webkit-backdrop-filter:saturate(140%)blur(14px);background:#12100edb;position:absolute;inset:0}.brand{font-family:var(--font-display);font-weight:600;font-size:var(--fs-title-sm);font-variation-settings:"opsz" 20, "SOFT" 60;letter-spacing:-.01em;color:var(--text-primary);white-space:nowrap;justify-self:start;align-items:center;gap:10px;display:flex}.brand:hover{color:var(--text-primary)}.brand-mark{width:22px;height:22px;display:block}.sitenav{justify-content:center;align-items:center;gap:2px;display:flex}.sitenav a{border-radius:var(--radius-sm);height:36px;color:var(--text-secondary);font-size:var(--fs-text);letter-spacing:.005em;transition:color .15s var(--ease);align-items:center;padding:0 12px;font-weight:540;display:flex;position:relative}@media (min-width:901px){.sitenav .sitenav-icon{display:none}}.sitenav-item{align-items:center;gap:8px;min-width:0;display:flex;position:relative}.sitenav-icon{flex:none;display:flex;position:relative}.sitenav-icon svg{width:18px;height:18px}.sitenav-item .nav-count{margin:0}@media (hover:hover){.sitenav a:hover{color:var(--text-primary)}}.sitenav a[aria-current=page]{color:var(--text-primary)}.sitenav a[aria-current=page]:after{content:"";background:var(--brass);border-radius:2px;height:2px;position:absolute;bottom:-12px;left:12px;right:12px}.sitenav-item[data-pending]{color:var(--accent-mint)}.sitenav-item[data-pending] .sitenav-icon{animation:.9s ease-in-out infinite nav-pending}@keyframes nav-pending{50%{opacity:.45}}.topbar-end{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.bar-wrap{position:relative}.bar-btn{width:38px;height:38px;color:var(--text-secondary);cursor:pointer;transition:border-color .15s var(--ease), color .15s var(--ease), background .15s var(--ease);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.bar-btn:hover,.bar-btn.open{border-color:var(--border-strong);color:var(--text-primary);background:#f2e6d20d}.bar-btn .nav-count{box-shadow:0 0 0 2px var(--bg-deepest);margin:0;position:absolute;top:-3px;right:-4px}.bar-menu{background:var(--bg-panel);border:1px solid var(--border-strong);border-radius:var(--radius);width:360px;max-width:calc(100vw - 28px);box-shadow:var(--shadow-pop);z-index:60;animation:menu-in .14s var(--ease);max-height:calc(100dvh - var(--topbar-h) - 24px);overscroll-behavior:contain;padding:6px 0;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}}.bar-menu-head{font-size:var(--fs-label);letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);justify-content:space-between;align-items:center;padding:6px 14px 8px;font-weight:650;display:flex}.bar-menu-head a{letter-spacing:0;text-transform:none;font-weight:520;font-size:var(--fs-meta);color:var(--brass-strong)}.bell-list{margin:0;padding:0;list-style:none}.bell-item{border-top:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--fs-small);padding:10px 14px 10px 28px;line-height:1.45;text-decoration:none;display:block;position:relative}.bell-item:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.bell-item.unread{color:var(--text-primary)}.bell-item.unread:before{content:"";background:var(--accent-mint);border-radius:50%;width:7px;height:7px;position:absolute;top:16px;left:12px}.bell-text{display:block}.bell-time{font-size:var(--fs-label);color:var(--text-dim);margin-top:2px;display:block}.bar-menu-empty{font-size:var(--fs-small);color:var(--text-dim);margin:0;padding:12px 14px 14px;line-height:1.5}.fm-section+.fm-section{border-top:1px solid var(--border-subtle)}.fm-label{font-size:var(--fs-label);letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);padding:8px 14px 4px;font-weight:650}.fm-row{font-size:var(--fs-small);align-items:center;gap:8px;padding:7px 14px;display:flex}.fm-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.fm-name a{font-weight:600}.fm-row .btn{min-height:30px;font-size:var(--fs-meta);flex:none;padding:0 10px}.fm-error{margin:6px 14px 8px}.profile-button{border:1px solid var(--border-subtle);background:var(--bg-panel);min-width:0;max-width:220px;height:38px;color:var(--text-secondary);font-size:var(--fs-text);transition:border-color .15s var(--ease), color .15s var(--ease), background .15s var(--ease);border-radius:999px;align-items:center;gap:8px;padding:0 10px 0 4px;font-weight:560;display:flex}.profile-button:hover,.profile-button.open{border-color:var(--border-strong);background:var(--bg-panel-hover);color:var(--text-primary)}.profile-initial{border:1px solid var(--border-strong);width:28px;height:28px;color:var(--text-primary);font-family:var(--font-display);font-size:var(--fs-small);font-variation-settings:"opsz" 14, "SOFT" 40;background:#f2e6d212;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:flex}.profile-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-chevron{color:var(--text-dim);flex:none}.user-menu{width:220px}.menu-item{width:100%;min-height:40px;color:var(--text-secondary);font-size:var(--fs-text);text-align:left;background:0 0;border:none;align-items:center;padding:0 14px;display:flex}.menu-item:hover{background:var(--bg-panel-hover);color:var(--text-primary)}.menu-sep{border-top:1px solid var(--border-subtle);margin-top:6px;padding-top:6px}main{width:100%;max-width:calc(var(--content-w) + 2 * var(--page-gutter));padding:var(--page-vpad) var(--page-gutter) 72px;flex:1;margin:0 auto;container-type:inline-size}.narrow{max-width:var(--narrow-w);margin:0 auto}.site-foot{border-top:1px solid var(--border-subtle);padding:28px var(--page-gutter) 36px;color:var(--text-dim);font-size:var(--fs-meta);text-align:center;line-height:1.6}.site-foot-links a{font-weight:540}.site-foot p{max-width:64ch;margin:0 auto}.site-foot-links{font-size:var(--fs-small);flex-wrap:wrap;justify-content:center;gap:6px 22px;margin:0 0 10px;display:flex}.site-foot-links a{color:var(--text-secondary)}.site-foot-links a:hover{color:var(--brass-strong)}h1{font-family:var(--font-display);font-variation-settings:"opsz" 40, "SOFT" 30;letter-spacing:-.012em;margin:0 0 8px;font-size:clamp(30px,2.8vw,40px);font-weight:560;line-height:1.12}h2{font-family:var(--font-mono);font-size:var(--fs-label);color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;margin:0;font-weight:500}h3{font-family:var(--font-display);font-size:var(--fs-title-sm);font-variation-settings:"opsz" 18, "SOFT" 30;letter-spacing:-.005em;color:var(--text-primary);margin:0;font-weight:560;line-height:1.25}.oops{text-align:center;max-width:480px;margin:0 auto;padding-top:clamp(40px,12vh,120px)}.oops-art{opacity:.9;justify-content:center;margin-bottom:18px;display:flex}.oops .lede{margin-left:auto;margin-right:auto}.oops .row{justify-content:center}.page-head{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;margin-bottom:clamp(24px,3.2vh,40px);display:flex}.page-head .lede{margin-left:auto;margin-right:auto}.page-head.stacked{flex-direction:column;gap:16px}.section-head{align-items:center;gap:10px;margin-bottom:14px;display:flex}.section-head:not(:first-child){margin-top:clamp(32px,4vh,44px)}.section-head h2{font-family:var(--font-display);font-size:var(--fs-title);font-variation-settings:"opsz" 21, "SOFT" 30;color:var(--text-primary);text-transform:none;letter-spacing:-.005em;font-weight:560}.count{font-family:var(--font-mono);font-size:var(--fs-label);background:var(--bg-panel);border:1px solid var(--border-subtle);min-width:22px;color:var(--text-dim);text-align:center;border-radius:999px;padding:1px 7px;font-weight:600}.count-mint{color:var(--accent-mint);background:var(--accent-mint-soft);border-color:#8ec9ae4d}.count-amber{color:var(--accent-amber);background:var(--accent-amber-soft);border-color:#e8a75c4d}.account-panel{max-width:720px}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;gap:20px;display:grid;container-type:inline-size}@container (max-width:859px){.settings-grid .play-panel{order:-1}}.settings-grid .account-panel{max-width:none}.settings-head{font-size:var(--fs-lead);text-transform:none;letter-spacing:-.01em;color:var(--text-primary);margin:0 0 6px}.settings-head+.account-field{border-top:none}.account-field{border-top:1px solid var(--border-subtle);padding:18px 0}.account-field:first-child{border-top:none;padding-top:0}.account-field:last-child{padding-bottom:0}.account-field>label:not(.check-row),.account-label{font-size:var(--fs-meta);color:var(--text-primary);margin-bottom:10px;font-weight:650;display:block}.account-field .field:last-of-type{margin-bottom:12px}.account-field .hint{max-width:62ch;margin-top:9px}.account-field input[type=text],.account-field input[type=email],.account-field input[type=password],.account-field select{max-width:420px}.prose{max-width:68ch;line-height:1.7}.prose h2{font-family:var(--font-display);font-size:var(--fs-title);font-variation-settings:"opsz" 20, "SOFT" 30;color:var(--text-primary);text-transform:none;letter-spacing:-.005em;margin:28px 0 8px;font-weight:560}.prose h2:first-child{margin-top:0}.prose ul{padding-left:20px}.prose>p:first-of-type{margin-top:0}.prose code{background:var(--bg-panel-hover);font-family:var(--font-mono);border-radius:4px;padding:1px 5px;font-size:.88em}.prose li+li{margin-top:6px}.privacy{margin:0 auto}.tutorial{grid-template-columns:minmax(280px,380px) minmax(0,1fr);align-items:start;gap:clamp(20px,3vw,44px);max-width:1000px;margin:0 auto;display:grid}.tutorial-board{width:100%;max-width:560px;margin:0 auto}.tutorial-board .board{box-shadow:none;background:0 0}.tutorial-panel h2{font-family:var(--font-display);font-size:var(--fs-title);font-variation-settings:"opsz" 21, "SOFT" 30;color:var(--text-primary);text-transform:none;letter-spacing:-.005em;margin-bottom:10px;font-weight:560}.tutorial-count{color:var(--text-dim);font-weight:500}.tutorial-body{margin:0 0 16px;line-height:1.65}.tutorial-dots{gap:7px;margin-bottom:18px;display:flex}.tutorial-dot{border:1px solid var(--border-strong);cursor:pointer;background:0 0;border-radius:50%;width:10px;height:10px;padding:0}.tutorial-dot.passed{border-color:var(--accent-mint);background:var(--accent-mint-soft)}.tutorial-dot.current{border-color:var(--accent-mint);background:var(--accent-mint)}.tutorial-note{font-size:var(--fs-text);border-radius:var(--radius-sm);margin:0 0 14px;padding:10px 12px;line-height:1.55}.tutorial-note.is-try{color:var(--accent-amber);background:var(--accent-amber-soft)}.tutorial-note.is-good{color:var(--accent-mint);background:var(--accent-mint-soft)}.tutorial-actions{align-items:center;gap:16px;display:flex}.tutorial-restart{font-size:var(--fs-small);color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0}.tutorial-restart:hover{color:var(--text-secondary);text-decoration:underline}@media (max-width:900px){.tutorial{grid-template-columns:minmax(0,1fr)}}.lede{color:var(--text-secondary);font-size:var(--fs-lede);max-width:60ch;margin:0 0 26px;line-height:1.6}.empty{color:var(--text-dim);font-size:var(--fs-text);border:1px dashed var(--border-strong);border-radius:var(--radius);text-align:center;margin:0;padding:22px 18px}.empty a{color:var(--brass-strong)}.panel{background:linear-gradient(180deg, #fff0d706, transparent 64px), var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:clamp(16px,1.6vw,22px)}.panel h2{margin-bottom:12px}.rail{flex-direction:column;gap:14px;display:flex}.btn{border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-height:38px;font-size:var(--fs-text);color:var(--text-primary);white-space:nowrap;transition:background .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease), box-shadow .15s var(--ease);background:#f2e6d20a;justify-content:center;align-items:center;gap:7px;padding:0 16px;font-weight:560;line-height:1.2;display:inline-flex}.btn:hover:not(:disabled){color:var(--text-primary);background:#f2e6d214;border-color:#f2e6d242}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-sm{min-height:32px;font-size:var(--fs-small);padding:0 12px}.btn-lg{min-height:46px;font-size:var(--fs-body);padding:0 22px}@media (max-width:520px){.btn{white-space:normal;text-align:center;max-width:100%}}.btn-primary{background:var(--brass);border-color:var(--brass);color:var(--on-brass);font-weight:640}.btn-primary:hover:not(:disabled){background:var(--brass-strong);border-color:var(--brass-strong);color:var(--on-brass)}.btn-ghost{color:var(--text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--bg-panel-hover);border-color:var(--border-subtle)}.btn-danger{color:var(--accent-red)}.btn-danger:hover:not(:disabled){color:var(--accent-red);background:#e885941a;border-color:#e8859499}.link-button{font:inherit;font-size:var(--fs-small);color:var(--text-dim);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;margin-top:16px;padding:0;text-decoration:underline;display:block}.link-button.danger-link:hover{color:var(--accent-red)}.close-account{border-radius:var(--radius);font-size:var(--fs-text);background:#e885940d;border:1px solid #e8859473;margin-top:18px;padding:16px 18px;line-height:1.55}.close-account p{margin:0 0 10px}.check-row{font-size:var(--fs-text);color:var(--text-secondary);cursor:pointer;align-items:center;gap:10px;display:flex}.check-row input[type=checkbox]{accent-color:var(--accent-mint);width:17px;height:17px;margin:0}.linkish{font-size:inherit;color:var(--brass-strong);cursor:pointer;background:0 0;border:none;padding:0}.linkish:hover{text-decoration:underline}input[type=text],input[type=password],input[type=email],input[type=search],select,textarea{background:var(--bg-darkest);border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-height:40px;color:var(--text-primary);font-size:var(--fs-text);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);outline:none;padding:8px 12px}input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,input[type=search]:focus,select:focus,textarea:focus{border-color:var(--brass);box-shadow:0 0 0 3px var(--brass-soft)}input::placeholder,textarea::placeholder{color:var(--text-dim)}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.error{color:var(--accent-red);font-size:var(--fs-small);margin:10px 0 0}.notice{color:var(--accent-mint);font-size:var(--fs-small);margin:10px 0 0}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field label{font-size:var(--fs-small);color:var(--text-secondary);font-weight:600}.field input{width:100%}.hint{color:var(--text-dim);font-size:var(--fs-meta);margin:2px 0 0;line-height:1.5}.muted{color:var(--text-dim);font-size:var(--fs-small)}.list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.list-item{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius);transition:border-color .15s var(--ease), background .15s var(--ease);align-items:center;gap:12px;padding:12px 16px;display:flex;position:relative}.list-item:hover{border-color:var(--border-strong);background:var(--bg-panel-hover)}.list-item.urgent{background:linear-gradient(180deg, #8ec9ae21, var(--bg-panel) 70%);border-color:#8ec9ae8c;box-shadow:0 0 0 1px #8ec9ae2e}.list-item.urgent:hover{border-color:#8ec9aecc}.list-item.waiting{background:linear-gradient(180deg, #e8a75c1c, var(--bg-panel) 70%);border-color:#e8a75c80}.list-item.waiting:hover{border-color:#e8a75cbf}.stretch-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.list-item .btn,.list-item .tag,.list-item form,.list-item a:not(.stretch-link){z-index:1;position:relative}.row-main{flex:1;min-width:0}table{border-collapse:collapse;width:100%;font-size:var(--fs-text)}th{text-align:left;color:var(--text-dim);font-weight:600;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.07em;padding:0 12px 10px}td{border-top:1px solid var(--border-subtle);padding:11px 12px}tbody tr:hover td{background:#ffffff04}td.num{font-family:var(--font-mono);font-size:var(--fs-small);text-align:right;white-space:nowrap}td a{font-weight:560}.panel>table{width:calc(100% + 8px);margin:0 -4px}@media (max-width:760px){.wide-only{display:none}th{padding:0 8px 8px}td{overflow-wrap:anywhere;padding:10px 8px}}tr.you td{background:#8ec9ae1f;border-top-color:#8ec9ae4d}tr.you td:first-child{box-shadow:inset 3px 0 0 var(--accent-mint)}tr.you+tr td{border-top-color:#8ec9ae4d}th.num{text-align:right}.lb{padding:8px 12px 6px}.lb-you{font-size:var(--fs-text);color:var(--accent-mint);margin:10px 0 0;font-weight:620}.lb-table td{padding:12px}.lb-rank-col{text-align:center;width:56px}th.lb-rank-col{text-align:center}.lb-rank{width:28px;height:28px;font-family:var(--font-mono);font-size:var(--fs-small);color:var(--text-dim);border-radius:50%;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.lb-rank-1{color:var(--brass-strong)}.lb-rank-2{color:#cfd2d8}.lb-rank-3{color:#d29a6c}.lb-player{align-items:center;gap:10px;min-width:0;display:flex}.lb-player a{color:var(--text-primary);font-weight:620}.lb-player a:hover{color:var(--brass-strong)}td.lb-rating{color:var(--accent-amber);font-weight:650}.lb-tier td{border-top:none;padding:4px 12px}.lb-tier+tr td{border-top:none}tbody tr.lb-tier:hover td{background:0 0}.lb-tier-line{font-size:var(--fs-meta);color:var(--text-dim);white-space:nowrap;align-items:center;gap:10px;display:flex}.lb-tier-line:before,.lb-tier-line:after{content:"";background:var(--border-strong);flex:1;height:1px}.lb-tier-line a{color:var(--text-secondary);font-weight:620}.lb-tier-line a:hover{color:var(--text-primary)}.lb-tier-rating{font-family:var(--font-mono);color:var(--text-dim)}.lb-table td.lb-empty{text-align:center;color:var(--text-dim);padding:28px 12px}td.lb-progress{font-size:var(--fs-meta);color:var(--text-dim)}.lb-foot{margin-top:22px}@media (max-width:760px){.lb{padding:4px 4px 2px}.lb-table td{padding:10px 8px}.lb-rank-col{width:40px}.lb-player .profile-initial,.lb-player .avatar-wrap,.lb-tier-record{display:none}}.badges{flex-wrap:wrap;gap:8px;display:flex}.badge{border:1px solid var(--border-subtle);font-size:var(--fs-meta);color:var(--text-dim);opacity:.6;border-radius:999px;align-items:center;gap:7px;padding:5px 12px 5px 7px;font-weight:560;display:inline-flex}.badge:before{content:"";background:var(--bg-darkest);width:13px;height:13px;box-shadow:inset 0 0 0 2px var(--border-strong);border-radius:50%}.badge.earned{opacity:1;color:var(--accent-mint);background:var(--accent-mint-soft);border-color:#8ec9ae66}.badge.earned:before{background:radial-gradient(circle at 35% 30%, var(--piece-light), var(--piece-mid) 55%, var(--piece-dark));box-shadow:inset 0 0 0 2px var(--piece-ring)}.tag{font-family:var(--font-mono);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--border-strong);color:var(--text-secondary);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-weight:500;line-height:1.4;display:inline-flex}.tag-turn,.tag-training{color:var(--accent-mint);background:var(--accent-mint-soft);border-color:#8ec9ae61}.tag-waiting{color:var(--accent-amber);background:var(--accent-amber-soft);border-color:#e8a75c61}.tag-red{color:var(--accent-red);background:#e885941f;border-color:#e8859461}.tag-blue{color:var(--accent-blue);background:#8fa8e81f;border-color:#8fa8e861}.nav-count{background:var(--accent-mint);min-width:18px;color:var(--on-mint);font-size:var(--fs-label);text-align:center;border-radius:999px;margin-left:7px;padding:0 5px;font-weight:750;line-height:18px;display:inline-block}.statcards{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid;overflow:hidden}.statcard{border-left:1px solid var(--border-subtle);border-top:1px solid var(--border-subtle);margin:-1px 0 0 -1px;padding:14px 18px}.statvalue{font-family:var(--font-display);font-size:var(--fs-figure);font-variation-settings:"opsz" 28, "SOFT" 20;letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-weight:500;line-height:1.1}.statlabel{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-top:5px}main:has(.game-grid){max-width:none}.game-grid,.game-chat{--coach-h:120px;--coach-room:0px;--rail-room:348px;--board-chrome:calc(var(--topbar-h) + 116px + var(--coach-room))}.coach.coach-stack{order:2;margin-top:10px;display:none}.game-grid,.game-chat{--board-size:min(calc(100svh - var(--board-chrome) - 2 * var(--page-vpad)), calc(100cqi - var(--rail-room)))}.grid-2.game-grid{grid-template-columns:max(340px, var(--board-size)) minmax(260px, 320px);justify-content:center;align-items:stretch;gap:28px;max-width:1400px;margin-inline:auto}.game-col{min-width:0}.chat-band{margin-top:clamp(18px,2.2vh,30px)}.game-chat.chat-band{margin:var(--page-vpad) auto 0;max-width:calc(max(340px, var(--board-size)) + var(--rail-room))}.chat-band .chat-messages{min-height:160px;max-height:340px}.game-grid>.rail>*{flex-shrink:0}.moves-panel{flex-direction:column;flex:auto;min-height:0;display:flex}.moves-empty{flex:auto;margin:0}.moves-list{min-height:90px;font-family:var(--font-mono);font-size:var(--fs-small);flex:auto;margin:0 -8px;padding:0;list-style:none;overflow-y:auto}.move-row{width:100%;color:var(--text-secondary);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:6px 8px;display:flex}.move-row:hover{background:var(--bg-panel-hover)}.move-row.retracted{opacity:.45;text-decoration:line-through}.move-row.takeback{color:var(--accent-amber)}.move-row.active{background:var(--bg-panel-active);color:var(--accent-mint)}.move-ply{color:var(--text-dim);text-align:right;min-width:26px}.move-side{border-radius:50%;flex:none;width:8px;height:8px}.move-text{flex:1}.move-time{color:var(--text-dim)}.side-1{background:var(--accent-mint)}.side-2{background:var(--accent-amber)}.inline-dot{vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}@media (min-width:761px){@container not (min-width:calc(100svh - 2*clamp(24px,3.5vh,44px) + 172px)){.game-grid:not(:has(.coach-stack)){--rail-room:0px}.game-grid:not(:has(.coach-stack))~.game-chat{--rail-room:0px}.grid-2.game-grid:not(:has(.coach-stack)){grid-template-columns:minmax(0, max(340px, var(--board-size)))}.game-grid:not(:has(.coach-stack)) .moves-list{max-height:320px}}@container not (min-width:calc(100svh - 2*clamp(24px,3.5vh,44px) + 42px)){.game-grid:has(.coach-stack){--rail-room:0px;--coach-room:calc(var(--coach-h) + 10px)}.game-grid:has(.coach-stack)~.game-chat{--rail-room:0px;--coach-room:calc(var(--coach-h) + 10px)}.grid-2.game-grid:has(.coach-stack){grid-template-columns:minmax(0, max(340px, var(--board-size)))}.game-grid:has(.coach-stack) .moves-list{max-height:320px}.coach.coach-stack{display:flex}.coach.coach-side{display:none}}}@media (max-width:760px){.game-grid,.game-chat{--rail-room:0px}.game-grid:has(.coach-stack){--coach-room:calc(var(--coach-h) + 10px)}.game-grid:has(.coach-stack)~.game-chat{--coach-room:calc(var(--coach-h) + 10px)}.grid-2.game-grid{grid-template-columns:minmax(0,1fr);gap:18px}.moves-list{max-height:320px}.coach.coach-stack{display:flex}.coach.coach-side{display:none}}.grid-2{grid-template-columns:minmax(0,1fr) minmax(296px,330px);align-items:start;gap:clamp(24px,3vw,40px);display:grid}@media (max-width:900px){.grid-2{grid-template-columns:minmax(0,1fr)}}.status-title{font-family:var(--font-display);font-size:var(--fs-title);font-variation-settings:"opsz" 23, "SOFT" 30;letter-spacing:-.005em;margin:0;font-weight:560;line-height:1.2}.status-title.yours{color:var(--accent-mint)}.status-meta{font-size:var(--fs-small);color:var(--text-dim);margin:6px 0 0;line-height:1.6}.status-meta a{color:var(--text-secondary)}.status-offer{border-radius:var(--radius-sm);background:var(--accent-amber-soft);color:var(--accent-amber);font-size:var(--fs-small);margin:10px 0 0;padding:8px 10px}.status-actions{border-top:1px solid var(--border-subtle);flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:14px;display:flex}.status-actions .btn{flex:auto}.board{width:100%;max-width:min(100%, max(340px, calc(100svh - var(--board-chrome) - 2 * var(--page-vpad))));border-radius:var(--radius);-webkit-user-select:none;user-select:none;height:auto;margin:0 auto;display:block}.playerbar{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius);font-size:var(--fs-text);min-height:48px;transition:border-color .2s var(--ease), background .2s var(--ease);align-items:center;gap:10px;margin:0 auto;padding:0 14px;display:flex}.playerbar.to-move{border-color:var(--border-strong);background:var(--bg-panel-hover)}.playerdot{opacity:.4;border-radius:50%;flex-shrink:0;width:10px;height:10px}.playerbar.to-move .playerdot{opacity:1;box-shadow:0 0 0 4px #ffffff0f}.playername{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:620;overflow:hidden}.board-wrap{margin:4px 0 12px;position:relative}.board-wrap.reviewing .board{filter:saturate(.6)brightness(.84);cursor:default;pointer-events:none}.board-wrap{flex-direction:column;display:flex}.board-frame{width:100%;max-width:min(100%, max(340px, calc(100svh - var(--board-chrome) - 2 * var(--page-vpad))));margin:0 auto;position:relative;container-type:inline-size}.board-frame .board{max-width:none}.review-banner{border:1px solid var(--border-strong);width:max-content;max-width:calc(100% - 1.25em);color:var(--brass-strong);box-shadow:var(--shadow-pop);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;background:#100d0be6;border-radius:1.75em;justify-content:center;align-items:center;gap:.6em;padding:.45em .5em .45em .9em;font-size:2.3cqi;font-weight:560;line-height:1.3;display:flex;position:absolute;bottom:1.5cqi;left:50%;transform:translate(-50%)}.review-banner .btn{border-radius:999px;min-height:2.3em;padding:0 1em;font-size:1em}.review-banner .btn.step{width:3em;min-height:3em;padding:0;font-size:.77em}.review-banner:has(.banner-text){flex-direction:column;gap:.45em;padding-left:.9em;padding-right:.9em}.banner-actions{gap:.6em;display:flex}.review-banner.resting{border-color:var(--border-strong);color:var(--text-secondary);gap:.35em;padding:.45em}@media (max-width:760px){.board-frame .result-splash{border-radius:0}}.result-splash{border-radius:var(--radius);z-index:3;animation:menu-in .2s var(--ease);background:#0a08068c;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.result-card{text-align:center;border:1px solid var(--border-strong);background:#161310fa;border-radius:16px;max-width:calc(100% - 32px);padding:28px 40px;box-shadow:0 18px 60px #000000b3}.result-word{font-family:var(--font-display);font-variation-settings:"opsz" 44, "SOFT" 60;letter-spacing:-.01em;margin-bottom:4px;font-size:44px;font-weight:520}.result-card.won .result-word{color:var(--accent-mint)}.result-card.lost .result-word{color:var(--accent-amber)}.tabs{border-bottom:1px solid var(--border-subtle);scrollbar-width:none;gap:4px;margin-bottom:28px;display:flex;overflow-x:auto}.tab{min-height:44px;color:var(--text-secondary);font-size:var(--fs-text);white-space:nowrap;cursor:pointer;transition:color .15s var(--ease), border-color .15s var(--ease);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;margin-bottom:-1px;padding:0 16px;font-weight:560;display:inline-flex}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--text-primary);border-bottom-color:var(--brass)}.tab .count{margin-left:8px}.watch-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.game-card{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:16px 12px 14px}@media (max-width:520px){.watch-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.game-card{gap:8px;padding:12px 8px 10px}.game-card svg{width:100%;max-width:130px;height:auto}.game-card-meta{font-size:var(--fs-small)}}@media (hover:hover){.game-card:hover{transform:translateY(-1px)}}.game-card-meta{width:100%;font-size:var(--fs-small);flex-direction:column;align-items:center;gap:3px;min-width:0;display:flex}.chat-panel{flex-direction:column;min-height:0;display:flex}.chat-messages{flex-direction:column;flex:1;gap:12px;min-height:320px;max-height:640px;margin-bottom:12px;padding-right:4px;display:flex;overflow-y:auto}.chat-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.chat-head h2{margin-bottom:0}.chat-note{font-size:var(--fs-meta);color:var(--text-dim);margin:-6px 0 12px;line-height:1.5}.chat-msg{font-size:var(--fs-text);align-items:flex-start;gap:10px;line-height:1.5;display:flex}.chat-msg-main{overflow-wrap:anywhere;flex:1;min-width:0}.chat-name a{font-weight:650}.chat-time{color:var(--text-dim);font-size:var(--fs-label)}.chat-body{color:var(--text-secondary);overflow-wrap:anywhere;white-space:pre-wrap}.chat-compose{gap:8px;display:flex}.chat-input{background:var(--bg-darkest);border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-width:0;min-height:40px;color:var(--text-primary);font-size:var(--fs-text);flex:1;padding:8px 12px}.chat-input:focus{border-color:var(--accent-mint);outline:none;box-shadow:0 0 0 3px #8ec9ae29}.play-person{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:stretch;gap:16px;display:grid}@media (max-width:900px){.play-person{grid-template-columns:minmax(0,1fr)}}.play-start{padding:0}.play-option{flex-direction:column;align-items:stretch;gap:12px;padding:20px;display:flex}.play-option+.play-option{border-top:1px solid var(--border-subtle)}.play-option>.muted{margin:-6px 0 0;line-height:1.5}.play-option .btn{width:100%}.play-option .hint{margin-top:8px}.play-tables{flex-direction:column;padding:0;display:flex;overflow:hidden}.play-tables-head{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:16px 20px;display:flex}.play-tables-head h2{margin:0}.play-tables-empty{text-align:center;color:var(--text-dim);font-size:var(--fs-text);flex:1;justify-content:center;align-items:center;margin:0;padding:32px 20px;display:flex}.seek-list{margin:0;padding:0;list-style:none}.seek{border-top:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:10px 12px;padding:14px 20px;display:flex}.seek:first-child{border-top:none}.seek .row-main{flex-direction:column;flex:220px;gap:2px;display:flex}.seek-side{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.seek-name{font-weight:650;font-size:var(--fs-body);text-overflow:ellipsis;white-space:nowrap;align-items:baseline;gap:8px;display:flex;overflow:hidden}.seek-rating{font-family:var(--font-mono);font-size:var(--fs-meta);color:var(--accent-amber);font-weight:600}.seek-meta{font-size:var(--fs-small);color:var(--text-dim)}.seek.yours{background:linear-gradient(90deg, var(--accent-amber-soft), transparent 70%);box-shadow:inset 3px 0 0 var(--accent-amber)}.seek.yours .profile-initial{background:var(--accent-amber-soft);color:var(--accent-amber);border-color:#e8a75c59}@media (max-width:520px){.seek{padding:14px 16px}}.start-field{font-size:var(--fs-small);color:var(--text-secondary);flex-direction:column;gap:6px;font-weight:600;display:flex}.start-field select{width:100%}.start-field input[type=range]{width:100%;accent-color:var(--accent-mint);margin:4px 0 0}.start-field-value{color:var(--text-primary);font-weight:650}.start-check{font-size:var(--fs-small);color:var(--text-secondary);cursor:pointer;align-items:flex-start;gap:8px;font-weight:600;display:flex}.start-check input{accent-color:var(--accent-mint);margin:2px 0 0}.start-check .muted{font-weight:450}.setup-openings{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px;display:grid}.opening-choice{background:var(--bg-darkest);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--fs-meta);cursor:pointer;transition:border-color .15s var(--ease), color .15s var(--ease);flex-direction:column;align-items:center;gap:4px;padding:8px 6px 6px;display:flex}.opening-choice:hover:not(:disabled){border-color:var(--accent-mint-line);color:var(--text-primary)}.opening-choice:disabled{opacity:.5;cursor:default}.mini-line{width:100%;max-width:132px;height:auto;display:block}.splash-title{font-family:var(--font-display);font-variation-settings:"opsz" 144, "SOFT" 100;letter-spacing:-.02em;color:var(--piece-light);margin:0 0 calc(12px - .1em);padding-bottom:.1em;font-size:clamp(60px,7.5vw,96px);font-weight:480;line-height:1}.rating-hero{background:linear-gradient(100deg, #e8a75c14, var(--bg-panel) 45%);border-color:#e8a75c4d;grid-template-columns:200px minmax(0,1fr);align-items:center;gap:0;margin-bottom:14px;padding:0;display:grid}.rating-hero-rating{border-right:1px solid var(--border-subtle);text-align:center;flex-direction:column;justify-content:center;align-self:stretch;align-items:center;padding:22px 16px;display:flex}.rating-hero-label{font-size:var(--fs-meta);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);font-weight:650}.rating-hero-number{letter-spacing:-.03em;color:var(--accent-amber);font-variant-numeric:tabular-nums;margin:4px 0 2px;font-size:48px;font-weight:760;line-height:1.05}.rating-hero-pending{color:var(--text-dim)}.rating-hero-sub{font-size:var(--fs-small);color:var(--text-secondary)}.rating-hero-body{min-width:0;padding:20px clamp(16px,2vw,28px)}.scale{scrollbar-width:thin;align-items:center;padding:2px 2px 6px;display:flex;overflow-x:auto}.scale-item{display:contents}.scale-seg{background:var(--border-strong);border-radius:2px;flex:1 0 14px;height:2px}.scale-stop{flex-direction:column;flex:none;align-items:center;gap:5px;padding:0 2px;text-decoration:none;display:flex}.scale-name{font-size:var(--fs-meta);color:var(--text-secondary);white-space:nowrap;font-weight:620}a.scale-stop:hover .scale-name{color:var(--text-primary)}.scale-dot{background:var(--border-strong);border-radius:50%;width:10px;height:10px}.scale-value{font-family:var(--font-mono);font-size:var(--fs-label);color:var(--text-dim)}.scale-stop.beaten .scale-dot{background:var(--accent-mint)}.scale-you .scale-name,.scale-you .scale-value{color:var(--accent-amber)}.scale-you .scale-name{font-size:var(--fs-meta)}.scale-you .scale-dot{background:var(--accent-amber);width:14px;height:14px;box-shadow:0 0 0 4px #e8a75c40}.profile-avatar{border:1px solid var(--border-strong);width:64px;height:64px;color:var(--text-primary);font-family:var(--font-display);font-variation-settings:"opsz" 28, "SOFT" 40;background:#f2e6d212;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 12px;font-size:28px;font-weight:560;display:flex}.avatar-photo,.avatar-bot{background:var(--bg-panel-hover);border-color:var(--border-strong);overflow:hidden}.avatar-photo img,.avatar-bot svg{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.profile-initial.avatar-xs{width:20px;height:20px;font-size:10px}.avatar-current{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.avatar-current .profile-avatar{margin:0}.avatar-crop{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.avatar-stage{border:1px solid var(--border-strong);background:var(--bg-deepest);cursor:grab;touch-action:none;border-radius:50%}.avatar-stage:active{cursor:grabbing}.avatar-stage:focus-visible{outline:2px solid var(--accent-mint);outline-offset:3px}.avatar-zoom{width:200px;font-size:var(--fs-small);color:var(--text-secondary);align-items:center;gap:10px;display:flex}.avatar-zoom input{accent-color:var(--accent-mint);flex:1}.profile-bio{max-width:60ch;margin:8px auto 0;line-height:1.6}.news{max-width:68ch;margin:0 auto}.news-post{border-bottom:1px solid var(--border-subtle);margin-bottom:28px;padding:4px 0 28px}.news-post:last-of-type{border-bottom:none}.news-date{font-size:var(--fs-small);color:var(--text-dim);align-items:center;gap:10px;margin:0 0 8px;display:flex}.news-latest{font-size:var(--fs-label)}.news-post h2{font-family:var(--font-display);font-size:var(--fs-title-lg);font-variation-settings:"opsz" 26, "SOFT" 30;letter-spacing:-.008em;text-transform:none;color:var(--text-primary);margin:0 0 12px;font-weight:560;line-height:1.2}.news-post p:not(.news-date){color:var(--text-secondary);margin:0 0 12px;line-height:1.7}.news-contact{margin-top:8px}.news-contact h2{margin:0 0 8px}.news-contact p{font-size:var(--fs-text);color:var(--text-secondary);margin:0 0 6px;line-height:1.55}.news-contact p:last-child{margin-bottom:0}.section-note{max-width:72ch;margin:-6px 0 16px;line-height:1.6}.bots{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}@media (max-width:1100px){.bots{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.bots{grid-template-columns:minmax(0,1fr)}}.bot-card{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius);transition:border-color .15s var(--ease), background .15s var(--ease), transform .15s var(--ease);flex-direction:column;gap:8px;padding:18px;display:flex;position:relative}@media (hover:hover){.bot-card:hover{border-color:var(--brass-line);background:var(--bg-panel-hover);transform:translateY(-1px)}.bot-card:hover .btn:not(.btn-primary){border-color:var(--brass-line);color:var(--brass-strong)}}.bot-card.beaten{background:linear-gradient(180deg, #8ec9ae14, var(--bg-panel) 60%);border-color:#8ec9ae66}.stretch-btn:after{content:"";border-radius:inherit;position:absolute;inset:0}.bot-card a{z-index:1;position:relative}.bot-card-head{font-size:var(--fs-lede);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.bot-card-name{white-space:nowrap;align-items:center;gap:10px;min-width:0;display:flex}.bot-card-title{flex-direction:column;min-width:0;line-height:1.25;display:flex}.bot-card-elo{font-size:var(--fs-meta);color:var(--text-dim);font-variant-numeric:tabular-nums}.bot-card-desc{font-size:var(--fs-small);margin:0;line-height:1.5}.bot-card-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:6px;display:flex}.bot-card-record{min-width:0;font-size:var(--fs-meta);color:var(--text-dim);align-items:center;gap:8px;display:flex}.rating-change{opacity:.85;font-weight:650}.chat-room .chat-head h2,.chat-topics-head h2{font-family:var(--font-display);font-size:var(--fs-title);font-variation-settings:"opsz" 21, "SOFT" 30;color:var(--text-primary);text-transform:none;letter-spacing:-.005em;font-weight:560}.chat-room .chat-panel{height:clamp(320px, calc(100dvh - var(--topbar-h) - 220px), 720px)}.chat-room .chat-head h2:before{content:"";background:var(--accent-mint);width:8px;height:8px;box-shadow:0 0 0 4px var(--accent-mint-soft);vertical-align:2px;border-radius:50%;margin-right:10px;display:inline-block}.chat-room .chat-messages{min-height:0;max-height:none}.chat-topics{flex-direction:column;padding:0;display:flex;overflow:hidden}.chat-topics-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 14px;display:flex}.chat-topics-head .chat-note{margin:4px 0 0}.chat-topics-head .new-thread{flex-basis:100%}.chat-topics-chips{border-bottom:1px solid var(--border-subtle);margin:0;padding:0 20px 16px}.chat-topics-empty{text-align:center;color:var(--text-dim);font-size:var(--fs-text);margin:0;padding:40px 20px}.chat-lobby-link{color:var(--text-primary);transition:border-color .15s var(--ease), background .15s var(--ease);align-items:center;gap:14px;padding:16px 20px;display:flex}.chat-lobby-link:hover{color:var(--text-primary);border-color:var(--brass-line)}.chat-lobby-link.current{background:var(--brass-soft);border-color:var(--brass-line);box-shadow:inset 3px 0 0 var(--brass)}.chat-lobby-link.current .thread-title{color:var(--brass-strong)}.chat-lobby-dot{background:var(--accent-mint);width:8px;height:8px;box-shadow:0 0 0 4px var(--accent-mint-soft);border-radius:50%;flex:none;margin:0 4px}.thread-row.current{background:var(--brass-soft);box-shadow:inset 3px 0 0 var(--brass)}.thread-row.current .thread-title{color:var(--brass-strong)}.chat-side{flex-direction:column;gap:14px;display:flex}.new-thread{flex-direction:column;gap:12px;display:flex}.new-thread-row{flex-wrap:wrap;gap:12px;display:flex}.new-thread-category{flex:0 180px}.new-thread-title{flex:200px}.new-thread textarea{resize:vertical;width:100%;line-height:1.5}.chips{flex-wrap:wrap;gap:8px;margin:0 0 14px;display:flex}.chip{border:1px solid var(--border-subtle);background:var(--bg-panel);min-height:34px;color:var(--text-secondary);font-size:var(--fs-small);transition:border-color .15s var(--ease), color .15s var(--ease);border-radius:999px;align-items:center;padding:0 14px;font-weight:540;text-decoration:none;display:inline-flex}.chip:hover{color:var(--text-primary);border-color:var(--border-strong)}.chip.active{color:var(--brass-strong);border-color:var(--brass-line);background:var(--brass-soft)}input.chips-search{width:180px;min-height:34px;font-size:var(--fs-small);border-radius:999px;padding:4px 14px}.thread-list{margin:0;padding:0;list-style:none}.thread-row{border-top:1px solid var(--border-subtle);transition:background .15s var(--ease);align-items:center;gap:12px;padding:14px 20px;display:flex;position:relative}.thread-row:first-child{border-top:none}.thread-row:hover{background:var(--bg-panel-hover)}.thread-row.unread{box-shadow:inset 3px 0 0 var(--accent-mint)}.thread-main{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.thread-title{font-weight:650;font-size:var(--fs-body);overflow-wrap:anywhere}.thread-meta{font-size:var(--fs-meta);color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.thread-count{font-family:var(--font-mono);font-size:var(--fs-meta);color:var(--text-dim);flex:none;align-items:center;gap:5px;display:flex}main:has(.tutorial-table){max-width:none}.tutorial.tutorial-table{grid-template-columns:minmax(240px,290px) minmax(0,1fr) minmax(280px,340px);grid-template-areas:"lead board panel";gap:clamp(20px,2.6vw,44px);max-width:1600px}.tutorial-table .tutorial-lead{top:calc(var(--topbar-h) + 16px);max-height:calc(100dvh - var(--topbar-h) - 32px);flex-direction:column;grid-area:lead;gap:16px;display:flex;position:sticky;overflow-y:auto}.tutorial-table .tutorial-board{max-width:min(100%, calc(100svh - var(--topbar-h) - 2 * var(--page-vpad) - 20px));grid-area:board}.tutorial-table .tutorial-panel{top:calc(var(--topbar-h) + 16px);grid-area:panel;position:sticky}.tutorial-table .tutorial-dots{display:none}.tutorial-steps{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.tutorial-step{border-radius:var(--radius-sm);width:100%;min-height:40px;color:var(--text-secondary);font-size:var(--fs-text);text-align:left;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:1px solid #0000;align-items:center;gap:12px;padding:6px 10px;display:flex}.tutorial-step:hover{color:var(--text-primary);background:#f2e6d20a}.tutorial-step.current{color:var(--text-primary);background:var(--bg-panel);border-color:var(--brass-line)}.tutorial-step-n{width:22px;font-family:var(--font-mono);font-size:var(--fs-meta);color:var(--text-dim);text-align:center;flex:none}.tutorial-step.current .tutorial-step-n{color:var(--brass-strong)}.tutorial-step.passed .tutorial-step-n{color:var(--accent-mint)}.tutorial-lead .learn-card{flex-direction:column;align-items:stretch;margin:0}.tutorial-lead .learn-copy{flex:none}@media (max-width:1279px),(max-aspect-ratio:3/2){.tutorial.tutorial-table{grid-template-columns:clamp(230px,26vw,300px) minmax(0,1fr);grid-template-areas:"lead panel""lead board";row-gap:14px}.tutorial-table .tutorial-panel{position:static}.tutorial-table .tutorial-board{width:100%;max-width:min(100%, max(340px, calc(100svh - var(--topbar-h) - 2 * var(--page-vpad) - 160px)));justify-self:center}}@media (min-width:761px) and (max-width:1279px),(min-width:761px) and (max-aspect-ratio:3/2){.tutorial-table .tutorial-panel{grid-template:"title body actions""title note actions"minmax(40px,auto)/minmax(150px,210px) minmax(0,1fr) auto;align-content:center;align-items:center;gap:6px 20px;min-height:144px;padding:14px 20px;display:grid}.tutorial-table .tutorial-panel h2{font-size:var(--fs-title-sm);grid-area:title;margin:0}.tutorial-table .tutorial-body{grid-area:body;margin:0}.tutorial-table .tutorial-note{grid-area:note;margin:0;padding:8px 12px}.tutorial-table .tutorial-actions{flex-direction:column;grid-area:actions;align-items:flex-end;gap:10px}}@media (max-width:760px){.tutorial.tutorial-table{flex-direction:column;align-items:stretch;display:flex}.tutorial-table .tutorial-lead{display:contents}.tutorial-table .pt-head{order:1}.tutorial-table .tutorial-panel{order:2;position:static}.tutorial-table .tutorial-board{order:3}.tutorial-table .tutorial-dots{display:flex}.tutorial-table .pt-head .lede:first-of-type,.tutorial-steps{display:none}.tutorial-lead .learn-card{order:4}}.learn-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 28px;margin-bottom:16px;display:flex}.learn-copy{flex:320px}.learn-copy h2{font-family:var(--font-display);font-weight:560;font-size:var(--fs-title-sm);color:var(--text-primary);text-transform:none;letter-spacing:-.01em;align-items:center;gap:10px;margin-bottom:6px;font-weight:680;display:flex}.learn-copy p{margin:0;line-height:1.6}.coach{min-height:var(--coach-h);border-radius:var(--radius);background:var(--bg-panel);border:1px solid #8ec9ae80;flex-direction:column;align-items:flex-start;gap:8px;padding:12px 16px;animation:.16s ease-out coach-in;display:flex}@keyframes coach-in{0%{opacity:0}}.coach-side{min-height:132px}.coach:not(:has(.btn)){justify-content:center}.coach-quiet{animation:none}:is(.coach:has(.coach-stop),.coach:has(.coach-warn)){border-color:#e8a75c99}.coach-who{font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-mint);font-weight:650}.coach-say{font-size:var(--fs-text);color:var(--text-secondary);margin:0;line-height:1.5}.coach-say strong,.coach-stop,.coach-warn,.coach-new{color:var(--text-primary)}.coach-stop strong,.coach-warn strong{color:var(--accent-amber)}.coach>form,.coach>.btn{margin-top:auto}.coach .btn{min-height:32px;font-size:var(--fs-small);padding:0 12px}.coach .error{font-size:var(--fs-meta);margin:0}@media (max-width:520px){.coach{gap:6px;padding:10px 14px}.coach-say{font-size:var(--fs-small);line-height:1.45}}.illegal-note{white-space:nowrap;color:var(--accent-red);pointer-events:none;z-index:2;background:#12100eeb;border:1px solid #e8859499;border-radius:999px;margin:0;padding:.4em .9em;font-size:1em;font-weight:650;animation:2s ease-out forwards illegal-fade;position:absolute;bottom:calc(100% + .75em);left:50%;transform:translate(-50%)}@keyframes illegal-fade{0%,70%{opacity:1}to{opacity:0}}main:has(.home-hero){max-width:none}html:has(.home-hero){overscroll-behavior-y:none}.home-hero{grid-template-columns:clamp(300px,30vw,400px) minmax(0,1fr);grid-template-areas:"copy board""play board";gap:24px clamp(24px,3.2vw,64px);max-width:1600px;margin:0 auto 64px;display:grid}.home-hero-copy{grid-area:copy;align-self:end}.home-hero .home-board{grid-area:board;align-self:center}.home-hero .home-board .board-anchor{max-width:min(100%, calc(100svh - var(--topbar-h) - 2 * var(--page-vpad)))}.home-hero .home-play{grid-area:play;align-self:start}.home>.home-section{max-width:1000px}.home-hero .home-play{gap:8px}.home-hero .home-play-option{min-height:62px;padding-block:10px}.home-hero .home-play-icon{width:38px;height:38px}@media (min-width:901px) and (max-height:860px){.home-hero{row-gap:16px}.home-hero .splash-title{font-size:64px}.home-hero .home-tagline{font-size:var(--fs-title-sm);margin-bottom:12px}}@media (max-width:900px) and (min-width:600px){.home-hero .home-play{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.home-hero .home-play-account{grid-column:1/-1}.home-hero .home-play-arrow{display:none}}.home-tagline{font-family:var(--font-display);font-size:var(--fs-title);font-variation-settings:"opsz" 24, "SOFT" 60;color:var(--text-primary);margin:0 0 18px;font-weight:420;line-height:1.35}.home-more{font-size:var(--fs-text);color:var(--brass-strong);font-weight:560}.home-board{pointer-events:none;-webkit-user-select:none;user-select:none}.home-board .board{max-width:min(100%, calc(100svh - var(--topbar-h) - 2 * var(--page-vpad) - 80px))}.home-board-caption{text-align:center;font-size:var(--fs-meta);color:var(--text-dim);margin:6px 0 0}.home-play{flex-direction:column;gap:10px;display:flex}.home-play-option{border:1px solid var(--border-strong);border-radius:var(--radius);background:linear-gradient(180deg, #fff0d709, transparent), var(--bg-panel);min-height:72px;color:var(--text-primary);transition:border-color .15s var(--ease), transform .15s var(--ease), background .15s var(--ease);align-items:center;gap:14px;padding:12px 18px 12px 14px;display:flex}.home-play-option:hover{color:var(--text-primary);border-color:var(--brass);transform:translateY(-1px)}.home-play-option:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.home-play-icon{background:var(--brass-soft);width:44px;height:44px;color:var(--brass-strong);border-radius:50%;flex:none;place-items:center;display:grid}.home-play-icon svg{width:22px;height:22px}.home-play-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.home-play-title{font-family:var(--font-display);font-size:var(--fs-title-sm);font-variation-settings:"opsz" 19, "SOFT" 30;font-weight:560;line-height:1.2}.home-play-line{font-size:var(--fs-small);color:var(--text-dim);line-height:1.4}.home-play-arrow{font-size:var(--fs-title-sm);color:var(--text-dim);transition:transform .15s var(--ease), color .15s var(--ease);flex:none}.home-play-option:hover .home-play-arrow{color:var(--brass-strong);transform:translate(3px)}.home-play-option.primary{background:var(--brass);border-color:var(--brass);color:var(--on-brass)}.home-play-option.primary:hover{background:var(--brass-strong);border-color:var(--brass-strong);color:var(--on-brass)}.home-play-option.primary .home-play-icon{color:inherit;background:#1a120824}.home-play-option.primary .home-play-line,.home-play-option.primary .home-play-arrow{color:inherit;opacity:.75}.home-play-account{text-align:center;font-size:var(--fs-text);color:var(--text-dim);margin:6px 0 0}.home-play-account a{color:var(--brass-strong);font-weight:600}.home-about .home-about-lead{font-size:var(--fs-lead);color:var(--text-primary)}.home-glance h3{margin-bottom:4px}.signin-page{grid-template-columns:minmax(0,1fr) minmax(0,420px);align-items:center;gap:clamp(28px,5vw,72px);max-width:940px;margin:clamp(8px,4vh,48px) auto 0;display:grid}.signin-copy .lede{margin-bottom:14px}.signin-list{color:var(--text-secondary);gap:8px;margin:0 0 16px;padding-left:20px;line-height:1.55;display:grid}.signin-list li::marker{color:var(--brass)}.signin-note{font-size:var(--fs-text);margin:0}.signin-form .panel{border-color:var(--border-strong);padding:24px}@media (max-width:760px){.signin-page{grid-template-columns:minmax(0,1fr)}}.home-section{max-width:1000px;margin:0 auto 56px}.home-section-lede{margin-bottom:20px}.home-section-more{margin:18px 0 0;font-weight:560}.home-section-more a{color:var(--brass-strong)}.home-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.home-rule{align-items:center;gap:16px;display:flex}.home-rule .miniboard{flex:none}.home-rule h3{margin:0 0 6px}.home-rule p{font-size:var(--fs-text);color:var(--text-secondary);margin:0;line-height:1.5}.home-about-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:32px;display:grid}.home-about p{color:var(--text-secondary);line-height:1.6}.home-faq{gap:4px;margin:0;display:grid}.home-faq dd+dt{margin-top:14px}.home-faq dt{font-weight:650}.home-faq dd{color:var(--text-secondary);margin:4px 0 0;line-height:1.55}.rules-written{margin:56px auto 0}.rules-lede{margin-bottom:8px}.rules-section{border-bottom:1px solid var(--border-subtle);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:28px;padding:24px 0;display:grid}.rules-section:last-of-type{border-bottom:none}.rules-text h3{font-size:var(--fs-title);margin:0 0 10px}.rules-text p{color:var(--text-secondary);margin:0 0 12px;line-height:1.6}.rules-text p:last-child{margin-bottom:0}.rules-text code{font-family:var(--font-mono);color:var(--text-primary);font-size:.92em}:root{--ease-scene:cubic-bezier(.22, 1, .36, 1);--scene-ms:.42s}.scene-stage{z-index:-1;pointer-events:none;opacity:0;transition:opacity var(--scene-ms) var(--ease-scene), filter var(--scene-ms) var(--ease-scene);position:fixed;inset:0}.scene-stage[data-ready]:not([data-view=content]){opacity:1}.scene-stage[data-mood=reviewing]{filter:saturate(.7)brightness(.9)}.scene-stage canvas{display:block}.board-anchor{width:100%;max-width:min(100%, max(340px, calc(100svh - var(--board-chrome) - 2 * var(--page-vpad))));aspect-ratio:1;-webkit-user-select:none;user-select:none;margin:0 auto;position:relative}.board-anchor>.board{width:100%;max-width:none;height:100%;margin:0}.board-frame .board-anchor,.puzzle-board .board-anchor{max-width:none}.view-picker{z-index:3;border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:.5;touch-action:none;cursor:ns-resize;transition:opacity .15s var(--ease);background:#12100ebd;border-radius:999px;flex-direction:column;gap:2px;padding:3px;display:flex;position:absolute;top:2.5%;left:2.5%}.view-picker:hover,.view-picker:focus-within{opacity:1}.view-picker [role=radiogroup]{flex-direction:column;gap:2px;display:flex}.view-picker button{width:26px;height:26px;color:var(--text-dim);cursor:pointer;transition:color .15s var(--ease), background .15s var(--ease);background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:grid}.view-picker button:hover{color:var(--text-primary)}.view-picker button[aria-checked=true]{background:var(--bg-panel-hover);color:var(--brass-strong)}.view-grip{border-top:1px solid var(--border-subtle);border-radius:0 0 999px 999px;flex-direction:column;align-items:center;gap:3px;margin-top:2px;padding:7px 0 5px;display:flex}.view-grip span{background:var(--text-dim);border-radius:1px;width:12px;height:2px;display:block}.view-grip:hover span,.view-grip:focus-visible span{background:var(--text-primary)}@media (pointer:coarse){.view-picker{opacity:.8}.view-picker button{width:32px;height:32px}.view-grip{padding:9px 0 7px}.view-grip span{width:16px}}.board-frame{z-index:3;pointer-events:none}.board-frame>*{pointer-events:auto}main:has(.play-table){max-width:none}.play-table{grid-template-columns:minmax(250px,300px) minmax(0,1fr) minmax(270px,330px);grid-template-areas:"list board detail";align-items:start;gap:clamp(20px,2.6vw,44px);max-width:1600px;margin:0 auto;display:grid}.pt-list{top:calc(var(--topbar-h) + 16px);max-height:calc(100dvh - var(--topbar-h) - 32px);overscroll-behavior:contain;flex-direction:column;grid-area:list;gap:14px;display:flex;position:sticky;overflow-y:auto}@media (min-width:761px){.pt-list,.pg-lead,.lb-frame .pg-side,.tutorial-table .tutorial-lead{scrollbar-width:thin;scrollbar-gutter:stable;scrollbar-color:#f2e6d212 transparent;overscroll-behavior:contain;margin-right:-16px;padding-right:6px}:is(.pt-list,.pg-lead,.lb-frame .pg-side,.tutorial-table .tutorial-lead):hover{scrollbar-color:#f2e6d233 transparent}}.pt-head h1{margin:0 0 4px}.pt-head .lede{font-size:var(--fs-body);margin:0}.pt-modes{border:1px solid var(--border-subtle);border-radius:999px;gap:3px;padding:3px;display:flex}.pt-mode{min-height:34px;color:var(--text-secondary);font-size:var(--fs-text);transition:color .15s var(--ease), background .15s var(--ease);background:0 0;border:0;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:6px;font-weight:560;display:inline-flex}.pt-mode:hover{color:var(--text-primary)}.pt-mode.active{background:var(--bg-panel-hover);color:var(--brass-strong)}.pt-mode .count{min-width:0;padding:0 6px}.pt-intro p{font-size:var(--fs-text);color:var(--text-secondary);margin:0;line-height:1.6}.pt-list-heading{margin:4px 0 -6px}.pt-rows{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.pt-row{border-radius:var(--radius-sm);width:100%;min-height:52px;color:inherit;text-align:left;transition:background .15s var(--ease), border-color .15s var(--ease);background:0 0;border:1px solid #0000;align-items:center;gap:12px;padding:8px 12px;display:flex}.pt-row:hover{background:#f2e6d20a}.pt-row.active{background:var(--bg-panel);border-color:var(--brass-line)}.pt-row-text{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.pt-row-name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.pt-row-line{font-size:var(--fs-meta);color:var(--text-dim)}.pt-row-tags{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.pt-tick{color:var(--accent-mint);font-weight:700}.pt-vs{color:var(--text-dim);font-weight:400}.pt-empty{font-size:var(--fs-text);color:var(--text-dim);margin:0;padding:12px 0}.pt-start{border-top:1px solid var(--border-subtle)}.pt-start .play-option{padding:16px 0}.pt-board{scroll-margin-top:calc(var(--topbar-h) + 8px);--board-w:min(100%, calc((100svh - var(--topbar-h) - 2 * var(--page-vpad) - 110px) * 1.28));min-height:calc(100svh - var(--topbar-h) - 2 * var(--page-vpad));flex-direction:column;grid-area:board;justify-content:center;align-items:center;gap:10px;display:flex}.pt-board .board-anchor{max-width:var(--board-w)}.pt-far{margin-bottom:calc(var(--board-w) * -.15)}.pt-near{margin-top:calc(var(--board-w) * -.07)}.pt-seat{justify-content:center;min-height:44px;display:flex}.seat{align-items:center;gap:10px;display:inline-flex}.seat-text{flex-direction:column;line-height:1.25;display:flex}.seat-name{font-family:var(--font-display);font-size:var(--fs-title-sm);font-variation-settings:"opsz" 18, "SOFT" 30;font-weight:560}.seat-line{font-size:var(--fs-meta);color:var(--text-dim)}.pt-detail{top:calc(var(--topbar-h) + 16px);grid-area:detail;position:sticky}.pt-card{border:1px solid var(--border-subtle);border-radius:var(--radius);background:linear-gradient(180deg, #fff0d706, transparent 64px), var(--bg-panel);flex-direction:column;align-items:flex-start;gap:10px;padding:22px;display:flex}.pt-card .btn{width:100%;margin-top:6px}.pt-card-title{font-family:var(--font-display);font-size:var(--fs-title-lg);font-variation-settings:"opsz" 26, "SOFT" 30;letter-spacing:-.008em;text-transform:none;color:var(--text-primary);margin:4px 0 0;font-weight:560}.pt-card-head{flex-direction:column;gap:10px;display:flex}.pt-card-title a{color:inherit}.pt-card-title a:hover{color:var(--brass-strong)}.pt-card-kicker{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--brass);margin:0}.pt-card-text{font-size:var(--fs-text);color:var(--text-secondary);margin:0;line-height:1.6}.pt-facts{font-size:var(--fs-small);grid-template-columns:auto 1fr;gap:4px 14px;margin:4px 0 0;display:grid}.pt-facts dt{color:var(--text-dim)}.pt-facts dd{margin:0}.pt-card-more{font-size:var(--fs-small);color:var(--brass-strong)}.pt-divider{flex-direction:column;gap:4px;padding:8px 4px;display:flex}.pt-divider .lb-tier-line{white-space:normal}.pt-row-figure{font-family:var(--font-mono);font-size:var(--fs-small);font-variant-numeric:tabular-nums;color:var(--accent-amber)}.pt-row .lb-rank{width:22px;height:22px;font-size:var(--fs-meta);flex:none}.pt-search{margin-top:4px}.pt-search .player-search{max-width:none;margin:0}.pt-card-title .lb-flag,.seat-name .lb-flag{font-family:var(--font-sans);font-size:.8em}.pt-head .lb-you{color:var(--accent-mint);margin-top:6px}@media (max-width:1279px),(max-aspect-ratio:3/2){.play-table{grid-template-columns:clamp(230px,26vw,300px) minmax(0,1fr);grid-template-areas:"list detail""list board";row-gap:8px}.pt-detail{position:static;container-type:inline-size}.pt-far{display:none}.pt-board{--board-w:min(100%, max(340px, calc((100svh - var(--topbar-h) - 2 * var(--page-vpad) - 120px) * 1.28)));justify-content:flex-start;min-height:0}.pt-board .board-anchor{margin-top:calc(var(--board-w) * -.15)}.pt-board{gap:2px}.pt-near{min-height:30px}.pt-near .seat-text{flex-direction:row;align-items:baseline;gap:8px}.pt-detail{justify-self:center;width:min(100%,720px)}.pt-detail .pt-card{background:0 0;border:0;border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"portrait head action""portrait text action";align-items:center;gap:2px 12px;padding:0;display:grid}.pt-detail .pt-card:not(:has(>:is(.profile-avatar,.avatar-wrap):first-child)){grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"head action""text action"}.pt-detail .pt-card>*{margin:0}.pt-detail .pt-card>:is(.profile-avatar,.avatar-wrap):first-child{grid-area:portrait;align-self:start}.pt-detail .pt-card>.avatar-wrap.lg,.pt-detail .pt-card>.avatar-wrap.lg .profile-avatar,.pt-detail .pt-card>.profile-avatar{width:40px;height:40px;font-size:var(--fs-title-sm)}.pt-detail .pt-card>.pt-card-head{flex-flow:wrap;grid-area:head;align-items:baseline;gap:2px 10px}.pt-detail .pt-card .pt-card-head>*{margin:0}.pt-detail .pt-card .pt-card-title{font-size:var(--fs-title-sm)}.pt-detail .pt-card>.pt-card-text{grid-area:text}.pt-detail .pt-card>.pt-facts{display:none}.pt-detail .pt-card>:is(.btn,form,.muted){grid-area:action}.pt-detail .pt-card .btn{width:auto;margin-top:0}}@media (max-width:760px){.play-table{flex-direction:column;align-items:stretch;gap:16px;display:flex}.pt-list{display:contents}.pt-head{order:1}.pt-modes{order:2}.pt-list-heading,.pt-rows,.pt-empty{order:3}.pt-detail{order:4}.pt-board{order:5}.pt-intro{order:6}.pt-start{order:7}.pt-list-heading{margin:0 0 -8px}.pt-rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.pt-rows>li{min-width:0}.pt-rows .pt-row{border-color:var(--border-subtle);height:100%;min-height:48px;padding:6px 10px}.pt-rows .pt-row.active{border-color:var(--brass-line)}.play-table[data-mode=watch] :is(.pt-list-heading,.pt-rows,.pt-empty){order:6}.play-table[data-mode=watch] .pt-rows{grid-template-columns:minmax(0,1fr)}}main:has(.page-frame){max-width:none}.page-frame{grid-template-columns:minmax(250px,300px) minmax(0,1fr) minmax(260px,320px);grid-template-areas:"lead main side";align-items:start;gap:clamp(20px,2.6vw,44px);max-width:1600px;margin:0 auto;display:grid}.pg-lead{top:calc(var(--topbar-h) + 16px);max-height:calc(100dvh - var(--topbar-h) - 32px);scrollbar-width:thin;flex-direction:column;grid-area:lead;gap:16px;display:flex;position:sticky;overflow-y:auto}.pg-main{grid-area:main;min-width:0}.pg-side{top:calc(var(--topbar-h) + 16px);grid-area:side;position:sticky}.pg-side .pt-card-title{font-size:var(--fs-title)}.pg-lead .chat-topics-head{flex-direction:column;padding:16px 16px 12px}.pg-lead .chat-topics-chips{padding:0 16px 14px}.page-frame .chat-room .chat-panel{height:calc(100dvh - var(--topbar-h) - 2 * var(--page-vpad));min-height:420px}.page-frame .news{max-width:68ch;margin:0 auto;display:block}.news-index ol{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.news-index a{border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--fs-text);flex-direction:column;gap:2px;padding:8px 10px;line-height:1.4;display:flex}.news-index a:hover{color:var(--text-primary);background:#f2e6d20a}.news-index-date{font-family:var(--font-mono);font-size:var(--fs-label);color:var(--text-dim)}.news-post{scroll-margin-top:calc(var(--topbar-h) + 16px)}.page-frame .news-contact{margin:0;position:static}@media (max-width:1279px),(max-aspect-ratio:3/2){.page-frame{grid-template-columns:clamp(230px,26vw,300px) minmax(0,1fr);grid-template-areas:"lead main""lead side"}.pg-side{position:static}}@media (min-width:761px){main:has(.chat-frame){padding-bottom:var(--page-vpad)}body:has(.chat-frame) .site-foot{display:none}.chat-frame{height:calc(100dvh - var(--topbar-h) - 2 * var(--page-vpad));grid-template-rows:minmax(0,1fr);align-items:stretch;min-height:480px}.chat-frame .pg-lead,.chat-frame .pg-side{min-height:0;max-height:none;position:static;overflow-y:auto}.page-frame.chat-frame .chat-room .chat-panel{height:100%;min-height:0}}@media (min-width:761px) and (max-width:1279px),(min-width:761px) and (max-aspect-ratio:3/2){.chat-frame{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#f2e6d212 transparent;grid-template-rows:auto auto;grid-template-areas:"lead main""side main";align-content:start;align-items:start;overflow-y:auto}.chat-frame .pg-lead,.chat-frame .pg-side{min-height:auto;margin-right:0;padding-right:0;overflow:visible}.chat-frame .pg-main{height:max(480px, calc(100dvh - var(--topbar-h) - 2 * var(--page-vpad)));position:sticky;top:0}}@media (max-width:760px){.page-frame{flex-direction:column;align-items:stretch;gap:18px;display:flex}.pg-lead{display:contents}.pg-lead .pt-head{order:1}.pg-main{order:2}.pg-lead>:not(.pt-head){order:3}.pg-side{order:4;position:static}.news-index{display:none}.page-frame .chat-room .chat-panel{height:clamp(320px,56dvh,560px)}}.lb-pickable tbody tr:not(.lb-tier){cursor:pointer;transition:background .15s var(--ease)}.lb-pickable tbody tr:not(.lb-tier):hover td{background:#f2e6d208}.lb-pickable tbody tr.picked td{background:var(--brass-soft)}.lb-pickable tbody tr.picked td:first-child{box-shadow:inset 3px 0 0 var(--brass)}.lb-pickable tbody tr:focus-visible{outline:2px solid var(--brass);outline-offset:-2px}.lb-card{gap:12px}.lb-card-head{align-items:center;gap:14px;display:flex}.lb-card-head .profile-avatar,.lb-card-head .avatar-wrap.lg{flex:none;margin:0}.lb-card-head .pt-card-title{margin:0}.lb-frame{grid-template-columns:minmax(230px,270px) minmax(0,1fr) minmax(300px,360px)}.lb-frame .pg-side{max-height:calc(100dvh - var(--topbar-h) - 32px);overscroll-behavior:contain;scrollbar-width:thin;overflow:hidden auto}.lb-card{align-items:stretch;gap:16px}.lb-tiles{border:1px solid var(--border-subtle);border-radius:var(--radius-sm,8px);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.lb-tile{background:#f2e6d205;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 9px;display:flex}.lb-tile+.lb-tile{border-left:1px solid var(--border-subtle)}.lb-tile-value{font-family:var(--font-display);font-size:var(--fs-figure);font-variation-settings:"opsz" 21, "SOFT" 20;font-variant-numeric:tabular-nums;color:var(--text-primary);font-weight:500;line-height:1.1}.lb-tile-value.accent{color:var(--accent-amber)}.lb-tile-label,.lb-card-sub{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.lb-card-sub{margin:0 0 8px;font-weight:500}.lb-card-note{font-size:var(--fs-small);color:var(--text-dim);margin:0}.lb-badges{gap:6px}.lb-badges .badge{font-size:var(--fs-meta);gap:6px;padding:3px 10px 3px 5px}.lb-badges .badge:before{width:11px;height:11px}.lb-card-latest{font-size:var(--fs-small);color:var(--text-secondary);margin:0;line-height:1.5}.lb-card-latest a{color:var(--brass-strong);white-space:nowrap}.lb-card-profile{width:100%}@media (min-width:761px) and (max-width:1279px),(min-width:761px) and (max-aspect-ratio:3/2){.lb-frame{grid-template:auto auto minmax(0,1fr) auto/clamp(280px,31vw,340px) minmax(0,1fr);row-gap:16px}.lb-frame .pg-lead{display:contents}.lb-frame .pg-lead .pt-head{grid-area:1/1}.lb-frame .pg-lead .pt-search{grid-area:2/1;margin:0}.lb-frame .pg-side{grid-area:3/1;align-self:start;position:sticky}.lb-frame .pg-main{grid-area:1/2/4/3}.lb-frame .pg-lead .lb-about{grid-area:4/2;margin-top:8px}}.lb-back{font-size:var(--fs-small);color:var(--brass-strong);margin:12px auto 0;display:none}@media (max-width:760px){.lb-frame .pg-side{max-height:none;scroll-margin-top:calc(var(--topbar-h) + 8px);overflow:visible}.lb-back{display:block}}.lb-frame .pg-side{container-type:inline-size}@container (max-width:340px){.lb-tile-value{font-size:var(--fs-title)}.lb-tile-label{letter-spacing:.04em}}.lb-frame .pg-main{container-type:inline-size}@container (max-width:480px){.lb-table .wide-only{display:none}.lb-table td{padding:10px 8px}.lb-table th{padding-inline:8px}.lb-rank-col{width:40px}}.lb-about h2{margin-bottom:8px}.lb-about p{font-size:var(--fs-text);color:var(--text-secondary);margin:0 0 10px;line-height:1.6}@media (max-width:760px){.lb-frame .pg-lead .pt-search{order:2}.lb-frame .pg-main{order:3}.lb-frame .pg-side{scroll-margin-top:calc(var(--topbar-h) + 8px);order:4}.lb-frame .pg-lead .lb-about{order:5}}.dash-hero{grid-template-columns:minmax(0,420px) minmax(0,560px);justify-content:center;align-items:center;gap:clamp(28px,5vw,72px);margin-bottom:8px;display:grid}.dash-hero .home-head{text-align:left;align-items:flex-start}.dash-hero .home-head .lede{margin-left:0}.dash-board{position:relative}.home-board-link{z-index:3;pointer-events:auto;border-radius:var(--radius);justify-content:center;align-items:flex-end;padding-bottom:4%;display:flex;position:absolute;inset:0}.home-board-card{border:1px solid var(--border-strong);box-shadow:var(--shadow-pop);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .15s var(--ease), border-color .15s var(--ease);background:#12100eeb;border-radius:999px;flex-direction:column;align-items:center;gap:2px;padding:10px 18px;display:flex}.home-board-link:hover .home-board-card{border-color:var(--accent-mint-line);transform:translateY(-2px)}.home-board-link:hover{color:inherit}.home-board-who{font-size:var(--fs-small);color:var(--text-secondary)}.home-board-turn{font-weight:640;font-size:var(--fs-body);color:var(--text-primary)}.home-board-turn.yours{color:var(--accent-mint)}@keyframes stage-rise{0%{opacity:0;transform:translateY(-10px)scale(.985)}to{opacity:1;transform:none}}@keyframes stage-slide{0%{opacity:0;transform:translate(26px)}to{opacity:1;transform:none}}@keyframes stage-fade{0%{opacity:0}to{opacity:1}}main>:not(:has(.board-anchor)):not(.page-frame){animation:stage-rise .38s var(--ease-scene) 90ms backwards}main>:nth-child(2):not(:has(.board-anchor)){animation-delay:.13s}main>:nth-child(3):not(:has(.board-anchor)){animation-delay:.17s}main>:nth-child(4):not(:has(.board-anchor)){animation-delay:.21s}main>:nth-child(n+5):not(:has(.board-anchor)){animation-delay:.25s}.pg-lead>*,.pt-list>*,.puzzle-lead>*,.tutorial-lead>*,.home-hero-copy{animation:stage-rise .38s var(--ease-scene) 90ms backwards}:is(.pg-main:not(:has(.board-anchor)),.home-head){animation:stage-rise .38s var(--ease-scene) .14s backwards}.pg-side,.pt-detail,.puzzle-side,.tutorial-panel,.home-play{animation:stage-rise .38s var(--ease-scene) .19s backwards}.pick-fade{animation:.22s ease-out backwards stage-fade}.game-grid .rail{animation:stage-slide var(--scene-ms) var(--ease-scene) .11s backwards}.game-grid .playerbar{animation:stage-rise .38s var(--ease-scene) .13s backwards}.game-chat{animation:stage-rise .38s var(--ease-scene) .2s backwards}@media (max-width:900px){.home-hero{grid-template-rows:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"copy""play""board";gap:24px;max-width:640px}.home-rules,.home-about-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.home-rule{flex-direction:column;align-items:flex-start}.rules-section{grid-template-columns:minmax(0,1fr)}.rules-section .miniboard{order:-1}}@media (max-width:900px){.dash-hero{grid-template-columns:minmax(0,440px);gap:20px}.dash-hero .dash-board{width:min(100%,320px);margin:-4% auto -8%}.dash-hero .dash-board .home-board-caption{margin-top:-10%}.dash-hero .home-head{text-align:center;align-items:center}}@media (max-width:760px){.scene-stage[data-ready][data-view=content]{opacity:0}.tutorial-board .board-anchor{max-width:none;margin-inline:calc(-1 * var(--page-gutter));width:calc(100% + 2 * var(--page-gutter))}}@media (prefers-reduced-motion:reduce){.scene-stage{transition:none}.pg-lead>*,.pt-list>*,.puzzle-lead>*,.tutorial-lead>*,.home-hero-copy,.home-head,.pg-side,.pt-detail,.puzzle-side,.tutorial-panel,.home-play,.game-grid .rail,.game-grid .playerbar,.game-chat{animation:.16s ease-out backwards stage-fade}main>:not(:has(.board-anchor)):not(.page-frame){animation:.16s ease-out backwards stage-fade}.pg-main:not(:has(.board-anchor)){animation:.16s ease-out backwards stage-fade}}@media (max-width:900px){.rating-hero{grid-template-columns:minmax(0,1fr)}.rating-hero-rating{border-right:none;border-bottom:1px solid var(--border-subtle);padding:18px 16px 16px}}@media (max-width:1100px){.topbar{grid-template-columns:auto minmax(0,1fr) auto}.profile-name,.profile-chevron{display:none}.profile-button{padding:0 4px}}@media (max-width:900px){:root{--topbar-h:102px}.topbar{grid-template-rows:56px 46px;grid-template-columns:minmax(0,1fr) auto;gap:0 10px;padding:0 12px}.brand{grid-area:1/1}.topbar-end{grid-area:1/2;gap:4px}.sitenav{scrollbar-width:none;grid-area:2/1/auto/-1;justify-content:safe center;gap:2px;margin:0 -12px;padding:0 28px 8px 12px;scroll-padding-inline:16px 40px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12px calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#0000,#000 12px calc(100% - 28px),#0000)}.sitenav::-webkit-scrollbar{display:none}.sitenav a{height:38px;font-size:var(--fs-small);flex:none;padding:0 10px}.sitenav-item{gap:7px}.sitenav a[aria-current=page]:after{bottom:-8px;left:10px;right:10px}}@media (max-width:760px){.bar-menu{left:10px;right:10px;top:calc(var(--topbar-h) + 6px);width:auto;max-width:none;position:fixed}.user-menu{width:220px;left:auto}}@media (pointer:coarse){.btn{min-height:44px}.btn-sm,.fm-row .btn,.coach .btn{min-height:36px}.chip{min-height:40px}.menu-item{min-height:46px}input[type=text],input[type=password],input[type=email],input[type=search],select,textarea,.chat-input,input.chips-search{font-size:var(--fs-lede)}}@media (max-width:760px){main{--page-gutter:14px;--page-vpad:18px;padding:var(--page-vpad) var(--page-gutter) 48px}h1{font-size:var(--fs-title-lg)}.game-grid .board-frame,.tutorial-board .board{max-width:none;margin-inline:calc(-1 * var(--page-gutter));width:calc(100% + 2 * var(--page-gutter))}.statcards{grid-template-columns:repeat(auto-fit,minmax(84px,1fr))}.statcard{padding:12px 14px}.statvalue{font-size:var(--fs-title)}.list>.list-item{flex-wrap:wrap;row-gap:4px}.list>.list-item>.muted:last-child{flex-basis:100%}}.rating-chart{position:relative}.rating-chart svg{touch-action:pan-y;display:block;overflow:visible}.rating-chart svg:focus-visible{outline:2px solid var(--accent-mint);outline-offset:4px;border-radius:6px}.rc-grid{stroke:var(--border-subtle);stroke-width:1px}.rc-tick{fill:var(--text-dim);font-size:var(--fs-label);font-family:var(--font-mono)}.rc-bot{stroke:#e8a75c52;stroke-width:1px}.rc-bot-label{fill:var(--text-dim);font-size:var(--fs-label)}.rc-line{fill:none;stroke:var(--accent-mint);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.rc-cross{stroke:var(--text-dim);stroke-width:1px}.rc-dot{fill:var(--accent-mint);stroke:var(--bg-panel);stroke-width:2px}.rc-tip{border-radius:var(--radius);border:1px solid var(--border-strong);max-width:180px;box-shadow:var(--shadow-pop);font-size:var(--fs-meta);color:var(--text-secondary);pointer-events:none;text-align:center;background:#12100ef5;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 8px;padding:7px 11px;display:flex;position:absolute;transform:translate(-50%)}.rc-tip strong{font-family:var(--font-mono);font-size:var(--fs-body);color:var(--text-primary)}.rc-up{font-family:var(--font-mono);color:var(--accent-mint)}.rc-down{font-family:var(--font-mono);color:var(--accent-amber)}.rc-tip-line{flex-basis:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;table-layout:fixed;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rating-panel{padding:18px 18px 12px}.pt-head .lede+.lede{margin-top:10px}.profile-record{font-size:var(--fs-text);margin:14px 0 0}.start-here{margin-bottom:28px}.start-head{justify-content:space-between}.start-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.start-steps li{border-radius:var(--radius);background:var(--bg-panel);border:1px solid var(--border-subtle);gap:12px;padding:16px;display:flex}.start-steps li.next{background:linear-gradient(180deg, var(--accent-mint-soft), var(--bg-panel) 70%);border-color:#8ec9ae80}.start-steps li.done{opacity:.6}.start-mark{border:1px solid var(--border-strong);width:26px;height:26px;font-size:var(--fs-meta);color:var(--text-secondary);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:flex}.start-steps li.next .start-mark,.start-steps li.done .start-mark{background:var(--accent-mint);color:#12100e;border-color:#0000}.start-body{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.start-body strong{font-size:var(--fs-text)}.start-body p{font-size:var(--fs-small);color:var(--text-secondary);margin:0 0 4px;line-height:1.5}.start-done{font-size:var(--fs-meta);color:var(--accent-mint);font-weight:650}@media (max-width:900px){.start-steps{grid-template-columns:minmax(0,1fr)}}.invite{border-top:1px solid var(--border-subtle);flex-direction:column;gap:8px;margin-top:14px;padding-top:14px;display:flex}.invite-say{font-size:var(--fs-small);color:var(--text-secondary);margin:0}.invite-url{width:100%;font-family:var(--font-mono);font-size:var(--fs-meta)}.time-short{color:var(--accent-amber);font-weight:650}.notifications-page{padding:0;overflow:hidden}.notifications-page .bell-list li:first-child .bell-item{border-top:none}.notifications-page .bell-item{font-size:var(--fs-text);padding-top:13px;padding-bottom:13px}.notifications-page .bell-item.unread:before{top:20px}.lb-flag{font-size:var(--fs-body);line-height:1}.puzzle{grid-template-columns:minmax(0, min(620px, calc(100svh - var(--topbar-h) - 220px))) minmax(260px, 340px);justify-content:center;align-items:start;gap:28px;display:grid}.puzzle-board .board{max-width:100%}.puzzle-panel h2{font-family:var(--font-display);font-size:var(--fs-title-lg);font-variation-settings:"opsz" 26, "SOFT" 30;text-transform:none;letter-spacing:-.008em;color:var(--text-primary);margin:4px 0 8px;font-weight:560}.puzzle-kind{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--brass);font-weight:500}.puzzle-text{color:var(--text-secondary);margin:0 0 14px;line-height:1.55}.puzzle-wrong{color:var(--accent-amber);margin:0 0 14px;line-height:1.5}.puzzle-right{color:var(--accent-mint);margin:0 0 14px;font-weight:600;line-height:1.5}.puzzle-step{color:var(--text-primary);margin:0 0 14px;font-weight:600}.puzzle-counted{font-size:var(--fs-small);color:var(--text-secondary);margin:0 0 14px}.puzzle-actions{flex-wrap:wrap;gap:8px}.puzzle-mine{color:var(--text-secondary);margin:10px 0 0}.puzzle-mine strong{font-family:var(--font-mono);color:var(--accent-amber)}.puzzle-mine+.puzzle-mine{margin-top:4px}.puzzle-nav{max-width:988px;font-size:var(--fs-text);justify-content:space-between;gap:16px;margin:24px auto 0;display:flex}@media (max-width:760px){.puzzle{grid-template-columns:minmax(0,1fr);gap:18px}}main:has(.puzzle-table){max-width:none}.puzzle.puzzle-table{grid-template-columns:minmax(240px,290px) minmax(0,1fr) minmax(280px,340px);grid-template-areas:"lead board side";justify-content:stretch;gap:clamp(20px,2.6vw,44px);max-width:1600px;margin:0 auto}.puzzle-table .puzzle-lead{top:calc(var(--topbar-h) + 16px);flex-direction:column;grid-area:lead;gap:16px;display:flex;position:sticky}.puzzle-table .puzzle-board{grid-area:board;max-width:none}.puzzle-table .puzzle-board .board-anchor{max-width:min(100%, calc(100svh - var(--topbar-h) - 2 * var(--page-vpad) - 40px));margin:0 auto}.puzzle-table .puzzle-side{flex-direction:column;grid-area:side;gap:16px;display:flex}.puzzle-record .puzzle-mine:first-child{margin-top:0}.puzzle-about h2,.puzzle-leaders h2{margin-bottom:8px}.puzzle-about p{font-size:var(--fs-text);color:var(--text-secondary);margin:0 0 10px;line-height:1.6}.puzzle-table .puzzle-nav{flex-wrap:wrap;justify-content:flex-start;gap:8px 18px;max-width:none;margin:0}.puzzle-leaders{border:1px solid var(--border-subtle);border-radius:var(--radius);padding:18px}.puzzle-leaders .lb-table td,.puzzle-leaders .lb-table th{padding:8px 6px}@media (max-width:1279px),(max-aspect-ratio:3/2){.puzzle.puzzle-table{grid-template-columns:clamp(230px,26vw,300px) minmax(0,1fr);grid-template-areas:"lead side""lead board";row-gap:14px}.puzzle-table .puzzle-side{display:contents}.puzzle-table .puzzle-panel{grid-area:side}.puzzle-table .puzzle-side>:not(.puzzle-panel){grid-column:2}.puzzle-table .puzzle-board .board-anchor{max-width:min(100%, max(340px, calc(100svh - var(--topbar-h) - 2 * var(--page-vpad) - 160px)))}}@media (min-width:761px) and (max-width:1279px),(min-width:761px) and (max-aspect-ratio:3/2){.puzzle-table .puzzle-panel{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:center;gap:8px 24px;min-height:144px;padding:14px 20px;display:grid}.puzzle-table .puzzle-panel h2{font-size:var(--fs-title);margin:2px 0 6px}.puzzle-table .puzzle-text{margin:0}.puzzle-table .puzzle-play{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.puzzle-table .puzzle-play>*{margin:0}}@media (max-width:760px){.puzzle.puzzle-table{flex-direction:column;align-items:stretch;gap:18px;display:flex}.puzzle-table .puzzle-lead{display:contents}.puzzle-table .pt-head{order:1}.puzzle-table .puzzle-record{order:2}.puzzle-table .puzzle-panel{order:3}.puzzle-table .puzzle-board{order:4}.puzzle-table .puzzle-side>:not(.puzzle-panel){order:5}.puzzle-table .puzzle-about{order:6}.puzzle-table .puzzle-nav{order:7}}.daily-puzzle{color:inherit;transition:border-color .16s var(--ease);align-items:center;gap:18px;margin-top:18px;padding:14px 18px;text-decoration:none;display:flex}.daily-puzzle:hover{border-color:#8ec9ae73}.daily-puzzle-text{min-width:0;font-size:var(--fs-small);flex-direction:column;flex:1;gap:3px;line-height:1.45;display:flex}.daily-puzzle-text strong{font-size:var(--fs-lede);color:var(--text-primary)}.daily-puzzle-go{flex:none}@media (max-width:520px){.daily-puzzle-go{display:none}}.conquerors{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.conqueror{border-radius:var(--radius);background:var(--bg-panel);border:1px solid var(--border-subtle);color:inherit;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.conqueror:hover{border-color:var(--border-strong)}.conqueror>span:last-child{min-width:0;font-size:var(--fs-small);flex-direction:column;display:flex}.conqueror strong{font-size:var(--fs-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.avatar-wrap{flex:none;display:inline-flex;position:relative}.avatar-wrap.lg{margin:0 auto 12px}.avatar-wrap.lg .profile-avatar{margin:0}.online-dot{background:var(--accent-mint);border:2px solid var(--bg-panel);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.avatar-wrap.lg .online-dot{border-width:3px;border-color:var(--bg-deepest);width:16px;height:16px;bottom:2px;right:2px}.online-word{font-size:var(--fs-meta);color:var(--accent-mint)}.player-search{max-width:320px;margin:0 auto 18px;position:relative}.player-search input{width:100%}.player-search-results{z-index:5;border-radius:var(--radius);background:var(--bg-panel);border:1px solid var(--border-strong);box-shadow:var(--shadow-pop);margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0}.player-search-results a{color:var(--text-primary);font-size:var(--fs-text);border-radius:8px;align-items:center;gap:10px;padding:7px 8px;text-decoration:none;display:flex}.player-search-results a:hover,.player-search-results a:focus-visible{background:var(--bg-panel-hover)}.player-search-none{font-size:var(--fs-small);color:var(--text-dim);padding:8px}.mod-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.mod-item{padding:14px 16px}.mod-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.mod-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 6px}.mod-meta{font-size:var(--fs-meta);color:var(--text-dim);margin:0 0 10px}.mod-row .mod-meta{margin-bottom:0}.chat-report{font:inherit;font-size:var(--fs-label);color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity .12s var(--ease);background:0 0;border:none;margin-left:8px;padding:0}.chat-msg:hover .chat-report,.chat-report:focus-visible,.chat-report:disabled{opacity:1}.chat-report:hover:not(:disabled){color:var(--accent-red);text-decoration:underline}@media (hover:none){.chat-report{opacity:.8}}.moves-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.moves-copy{font:inherit;font-size:var(--fs-meta);color:var(--brass-strong);cursor:pointer;background:0 0;border:none;padding:0}.moves-copy:hover{text-decoration:underline}.matchup{flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 6px;width:100%;min-width:0;display:flex}.matchup-side{align-items:center;gap:5px;min-width:0;max-width:100%;display:inline-flex}.matchup-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.matchup-vs{font-size:var(--fs-meta);color:var(--text-dim);flex:none}.see-more{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.section-head[id]{scroll-margin-top:calc(var(--topbar-h) + 16px)}.celebration{pointer-events:none;border-radius:inherit;position:absolute;inset:0;overflow:hidden}.result-card{z-index:1;position:relative}.confetto{opacity:0;border-radius:2px;width:8px;height:13px;animation-name:confetti-fall;animation-timing-function:cubic-bezier(.25,.6,.45,1);animation-fill-mode:forwards;position:absolute;top:-12px}.confetto.round{border-radius:50%;width:9px;height:9px}@keyframes confetti-fall{0%{opacity:1;transform:translate(0)rotate(0)}85%{opacity:1}to{opacity:0;transform:translate(var(--drift), 105cqh) rotate(var(--spin))}}.balloon{width:var(--size);height:calc(var(--size) * 1.2);background:radial-gradient(circle at 32% 28%, #ffffff8c, var(--colour) 42%);opacity:.9;border-radius:50% 50% 48% 48%/55% 55% 45% 45%;animation-name:balloon-rise;animation-timing-function:ease-in;animation-fill-mode:forwards;position:absolute;bottom:-90px}.balloon:after{content:"";background:#f4ead073;width:1px;height:36px;position:absolute;top:100%;left:50%}@keyframes balloon-rise{0%{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-70cqh)rotate(4deg)}to{opacity:.7;transform:translateY(-150cqh)rotate(-3deg)}}@media (prefers-reduced-motion:reduce){.celebration{display:none}}.profile-nudge{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-bottom:20px;display:flex}.profile-nudge p{color:var(--text-secondary);margin:2px 0 0}.profile-nudge-actions{gap:8px;display:flex}.start-welcome{max-width:70ch;color:var(--text-secondary);margin:-4px 0 16px;line-height:1.6}.review-nav{flex-wrap:wrap;align-items:center;margin:0 auto 20px}.review-nav a{white-space:nowrap}.review-jump{gap:6px;display:flex}.review-jump input{width:84px}.review-panel{flex-direction:column;gap:12px;margin-top:16px;display:flex}.review-facts{font-size:var(--fs-small);color:var(--text-secondary);margin:0}.review-form{flex-direction:column;gap:10px;display:flex}.review-form textarea{resize:vertical;width:100%}.review-verdicts{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.review-verdicts .chosen{box-shadow:inset 0 0 0 2px}.btn.review-good{color:var(--accent-mint)}.btn.review-ok{color:var(--accent-amber)}.btn.review-drop{color:#e88594}.review-strip{grid-template-columns:repeat(auto-fill,minmax(14px,1fr));gap:3px;max-width:988px;margin:28px auto 0;display:grid}.review-cell{aspect-ratio:1;background:var(--border-subtle);border-radius:3px}.review-cell.review-good{background:var(--accent-mint)}.review-cell.review-ok{background:var(--accent-amber)}.review-cell.review-drop{background:#e88594}.review-cell.current{outline:2px solid var(--text-primary);outline-offset:1px}
