:root{--bg:#fafaf8;--fg:#1a1a1a;--mute:#6b6b6b;--line:#e2e2de;--line-soft:#f0f0ec;--card:#fff;--hover:#f3f6fd;--sel:#e5edfc;--path:#fff3d6;--G:#6aaa64;--Y:#c9b458;--B:#787c7e;--tile-empty:#d3d6da;--tile-fg:#fff;--key:#d3d6da;--accent:#3b6fd8;--accent-fg:#fff;--alt:#e08a1e;--alt2:#9b6bd1;--hl:#ffe08a;--bar:#cfd8ea;--bar-alt:#f0b878;--bad:#b3452c;--focus:#111;--shadow:0 6px 18px #00000026;--radius:8px;--font:system-ui, -apple-system, "Segoe UI", sans-serif;--tile:52px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#121213;--fg:#e8e8e6;--mute:#9a9a98;--line:#2f2f31;--line-soft:#242426;--card:#1b1b1d;--hover:#242a36;--sel:#23324f;--path:#3a3016;--G:#538d4e;--Y:#b59f3b;--B:#3a3a3c;--tile-empty:#3a3a3c;--key:#818384;--accent:#6d98ef;--accent-fg:#0b1220;--alt:#f0a04a;--alt2:#b48ce6;--hl:#6b5a1c;--bar:#34405a;--bar-alt:#7a5530;--bad:#f08a70;--focus:#fff;--shadow:0 6px 18px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0}body{font:14px/1.4 var(--font);background:var(--bg);color:var(--fg)}a{color:var(--accent)}button{font:inherit;color:inherit}h2{margin:0 0 8px;font-size:15px}h3{margin:0 0 4px;font-size:14px}.muted{color:var(--mute)}.small{font-size:12px}.bad{color:var(--bad)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.linkish{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}header.site{border-bottom:1px solid var(--line);background:var(--card);flex-wrap:wrap;align-items:center;gap:16px;padding:8px 16px;display:flex}header.site h1{white-space:nowrap;margin:0;font-size:16px}header.site h1 a{color:var(--fg);text-decoration:none}header.site nav{gap:2px;display:flex}header.site nav a{color:var(--mute);border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600;text-decoration:none}header.site nav a:hover{background:var(--hover)}header.site nav a[aria-current=page]{color:var(--fg);background:var(--line-soft)}.top{border-bottom:1px solid var(--line);background:var(--card);flex-wrap:wrap;align-items:center;gap:16px;padding:10px 16px;display:flex;position:relative}.top .tagline{color:var(--mute);font-size:12px}.topnav{gap:2px;display:flex}.topnav a{color:var(--mute);border-radius:6px;padding:8px 14px;font-weight:600;text-decoration:none}.topnav a:hover{background:var(--hover)}.topnav a[aria-current=page]{background:var(--fg);color:var(--bg)}.burger{cursor:pointer;border:1px solid var(--line);background:var(--card);border-radius:999px;padding:4px 10px;font-size:18px;line-height:1;display:none}.search{flex-direction:column;gap:4px;min-width:240px;margin-left:auto;display:flex;position:relative}.search input{font:600 18px/1 var(--font);letter-spacing:.15em;text-transform:uppercase;border:2px solid var(--line);border-radius:var(--radius);background:var(--card);width:240px;color:var(--fg);padding:10px 14px}.search input:focus{border-color:var(--accent);outline:none}.search .msg{color:var(--mute);max-width:320px;font-size:12px}.search .msg button{margin-top:2px}.suggest{z-index:30;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);width:240px;box-shadow:var(--shadow);margin:0;padding:4px;list-style:none;position:absolute;top:46px;left:0}.suggest li{cursor:pointer;text-transform:uppercase;letter-spacing:.1em;border-radius:4px;padding:6px 10px;font-weight:600}.suggest li[aria-selected=true],.suggest li:hover{background:var(--sel)}#root{flex-direction:column;min-height:100vh;display:flex}main{flex:1 0 auto;width:100%;max-width:1400px;margin:0 auto;padding:16px}.intro{margin:0 0 12px}.banner{background:var(--path);border-radius:var(--radius);margin-bottom:12px;padding:8px 12px}footer{width:100%;max-width:1400px;color:var(--mute);border-top:1px solid var(--line);margin:0 auto;padding:16px;font-size:12px}footer.offscreen{visibility:hidden;position:absolute;top:0;left:0;right:0}header.site .credit{color:var(--mute);white-space:nowrap;margin-left:auto;font-size:11px;text-decoration:none}header.site .credit:hover{text-decoration:underline}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px}.chip{border:1px solid var(--line);text-transform:uppercase;background:var(--card);cursor:pointer;border-radius:10px;margin:2px;padding:1px 6px;font-size:11px;display:inline-block}.chip.on{background:var(--hl)}.tag{vertical-align:middle;background:var(--sel);color:var(--fg);border-radius:4px;margin-left:4px;padding:0 5px;font-size:10px;display:inline-block}.tag.opt{background:color-mix(in srgb, var(--G) 30%, transparent)}.tiles{gap:2px;display:inline-flex}.t{width:22px;height:22px;color:var(--tile-fg);text-transform:uppercase;border-radius:3px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.t.G{background:var(--G)}.t.Y{background:var(--Y)}.t.B{background:var(--B)}.t.N{color:var(--fg);border:2px solid var(--tile-empty);background:0 0}.t.sm{border-radius:2px;width:12px;height:12px;font-size:0}.t.lg{width:min(var(--tile), 15vw);height:min(var(--tile), 15vw);border-radius:4px;font-size:min(26px,7.5vw)}.explore{grid-template-columns:360px 1fr;align-items:start;gap:16px;display:grid}.explore .left{flex-direction:column;gap:12px;display:flex}.board{flex-direction:column;align-items:center;gap:6px;display:flex}.brow{gap:4px;display:flex}button.brow{cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0}button.brow:hover .t{filter:brightness(1.08)}.brow.cur .t{outline:2px dashed var(--accent);outline-offset:1px}.brow.cur .t:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.brow.paint .t{cursor:pointer;-webkit-user-select:none;user-select:none;border:0;transition:transform 80ms}.brow.paint .t:hover{transform:scale(1.06)}.paintbar{text-align:center;flex-direction:column;align-items:center;gap:4px;margin-top:4px;display:flex}button.go{background:var(--accent);color:var(--accent-fg);cursor:pointer;border:0;border-radius:6px;padding:6px 16px}button.go:disabled{background:var(--line);color:var(--mute);cursor:default}.nodestats{color:var(--mute);flex-wrap:wrap;justify-content:center;gap:14px;margin-top:6px;font-size:12px;display:flex}.nodestats b{color:var(--fg);font-size:14px}.bitsq{background:var(--sel);width:18px;height:18px;color:var(--accent);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;margin-left:2px;padding:0;font-size:11px;display:inline-flex}.explain{background:var(--hover);border-radius:6px;max-width:320px;margin-top:6px;padding:8px;font-size:12px}.cmp{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:6px;font-size:13px;display:flex}.cmp b{font-size:16px}.solved{font-weight:600}details.cands summary{cursor:pointer;font-size:13px;font-weight:600}details.cands>div{max-height:220px;margin-top:6px;overflow-y:auto}.plist{max-height:calc(100vh - 220px);margin-top:8px;overflow-y:auto}.prow{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;grid-template-columns:auto 50px 1fr 96px;align-items:center;gap:8px;width:100%;padding:3px 4px;display:grid}.prow:hover{background:var(--hover)}.prow.on{background:var(--sel)}.prow.path{background:var(--path)}.prow .cnt{text-align:right;font-variant-numeric:tabular-nums}.prow .nx{text-transform:uppercase;color:var(--mute);font-size:11px}.bar{background:var(--bar);border-radius:4px;height:8px}.more{border:1px dashed var(--line);cursor:pointer;width:100%;color:var(--accent);background:0 0;border-radius:6px;margin-top:6px;padding:8px}.whatif{background:var(--hover);border-radius:6px;margin:8px 0 4px;padding:8px}.whatif label{flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.whatif input{font:600 14px var(--font);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);background:var(--card);width:110px;color:var(--fg);border-radius:6px;padding:5px 8px}.wires{margin-top:6px;font-size:12px}.strip{gap:1px;height:14px;margin:2px 0 6px;display:flex}.strip div{background:var(--accent);opacity:.55}.strip.alt div{background:var(--alt);opacity:.75}.alts{margin-top:6px;font-size:12px}.alts summary{cursor:pointer;color:var(--accent)}.alts table{border-collapse:collapse;width:100%;margin-top:4px}.alts td{font-variant-numeric:tabular-nums;padding:2px 6px 2px 0}.alts td.w{text-transform:uppercase;letter-spacing:.05em;font-weight:600}.scope{color:var(--mute);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:12px;font-size:12px;display:flex}.scope b{color:var(--fg);text-transform:uppercase}.grid2{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}svg.chart{width:100%;height:auto;display:block;overflow:visible}svg.chart text{font:11px var(--font);fill:var(--mute)}svg.chart .axis{stroke:var(--line)}svg.chart [role=button]{cursor:pointer}svg.chart [role=button]:hover rect,svg.chart [role=button]:focus rect{opacity:.8}svg.chart [role=button]:focus{outline:none}svg.chart [role=button]:focus-visible rect.hit{stroke:var(--focus);stroke-width:2px}.legend{color:var(--mute);flex-wrap:wrap;gap:12px;margin-bottom:4px;font-size:11px;display:flex}.legend i{vertical-align:middle;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.pick{max-height:140px;overflow:auto}.hard .grp{border-top:1px solid var(--line-soft);padding:6px 0}.hard .fam{letter-spacing:.1em;margin-right:6px;font-family:ui-monospace,monospace;font-weight:700}.openers{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.opener{border:1px solid var(--line);background:var(--card);text-transform:uppercase;cursor:pointer;letter-spacing:.05em;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.opener[aria-pressed=true]{background:var(--fg);color:var(--bg);border-color:var(--fg)}.lb{grid-template-columns:30px 104px 1fr 56px 56px;align-items:center;gap:6px;padding:2px 0;font-size:12px;display:grid}.lb .w{text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap;font-weight:600}.lb .num{text-align:right;font-variant-numeric:tabular-nums}.lb.head{color:var(--mute);border-bottom:1px solid var(--line)}.lbwrap{max-height:520px;overflow-y:auto}.seg{border:1px solid var(--line);border-radius:6px;margin-bottom:8px;display:inline-flex;overflow:hidden}.seg button{background:var(--card);cursor:pointer;border:0;padding:4px 10px;font-size:12px}.seg button[aria-pressed=true]{background:var(--fg);color:var(--bg)}@media (width<=1000px){.explore,.grid2{grid-template-columns:1fr}.plist{max-height:none}}@media (width<=700px){main{padding:10px}.top,header.site{gap:8px;padding:8px 10px}.top .tagline{display:none}.burger{display:inline-block}.topnav{display:none}.topnav.open{z-index:60;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;padding:6px;display:flex;position:absolute;top:48px;left:10px}.search{order:9;width:100%;min-width:0;margin-left:0}.search input{width:100%;padding:8px 10px;font-size:16px}.suggest{width:100%;top:40px}.prow{grid-template-columns:auto 34px 1fr 80px;padding:9px 4px}}
