:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#121213;--fg:#f8f8f8;--muted:#818384;--tile:#3a3a3c;--line:#3a3a3c;--ok:#538d4e;--sel:#b59f3b;font-family:Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0}.app{flex-direction:column;align-items:center;min-height:100vh;display:flex}header{border-bottom:1px solid var(--line);text-align:center;width:100%;padding:12px}.logo{color:var(--fg);letter-spacing:.2em;font-size:22px;font-weight:800;text-decoration:none}main{flex-direction:column;align-items:center;gap:16px;width:100%;max-width:480px;padding:20px;display:flex}.muted{color:var(--muted)}.tag{color:var(--muted);margin:0}.card{border:1px solid var(--line);width:100%;color:var(--fg);border-radius:8px;padding:16px 20px;text-decoration:none;transition:border-color .2s;display:block}.card:hover{border-color:var(--muted)}.card h2{margin:0 0 4px}.card p{color:var(--muted);margin:0}.meta{justify-content:space-between;width:100%;font-size:14px;display:flex}.theme{text-align:center}.theme span{text-transform:uppercase;letter-spacing:.15em;font-size:12px}.theme h1{margin:4px 0 0;font-size:26px}.board{margin:8px 0;position:relative}.tile{touch-action:none;border:2px solid var(--line);background:var(--tile);width:54px;height:54px;color:var(--fg);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:28px;font-weight:700;transition:transform .35s cubic-bezier(.4,1.4,.6,1),background .3s,border-color .2s;display:flex;position:absolute;top:0;left:0}.tile.ok{background:var(--ok);border-color:var(--ok)}.tile.sel{border-color:var(--sel);box-shadow:0 0 0 2px var(--sel)}.counter{font-size:18px}.hint{text-align:center;margin:0;font-size:13px}.btn{background:var(--ok);color:#fff;cursor:pointer;border:0;border-radius:6px;padding:10px 22px;font-size:15px;font-weight:700}.btn.ghost{border:1px solid var(--line);color:var(--muted);background:0 0}.win{text-align:center}.win pre{background:#1e1e20;border-radius:6px;padding:12px;font-family:inherit}.stars{margin-bottom:8px;font-size:28px}.answers{letter-spacing:.1em;font-weight:700}.tabs{gap:8px;display:flex}.tab{border:1px solid var(--line);width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border-radius:50%;font-weight:700}.tab.on{border-color:var(--fg);color:var(--fg)}.tab.ok{background:var(--ok);border-color:var(--ok);color:#fff}.tab.rev{color:#fff;background:#555}.goal{text-align:center;margin:0;font-size:18px;font-weight:600}.mboard{position:relative}.match,.ghost{touch-action:none;cursor:pointer;transform-origin:50%;border:0;height:8px;padding:0;transition:transform .45s cubic-bezier(.3,1.3,.5,1),background .2s,box-shadow .2s,opacity .2s;position:absolute;top:0;left:0}.match{z-index:2;background:linear-gradient(#e9c98f,#c99a55);border-radius:3px;box-shadow:0 1px 2px #0008}.match:after{content:"";background:#9e3b33;border-radius:50%;width:12px;height:12px;position:absolute;top:-2px;right:-3px;box-shadow:0 1px 1px #0005}.match.lifted{box-shadow:0 0 0 2px var(--sel),0 6px 12px #000a;z-index:3}.mboard.won .match:after{background:#a8443a}.ghost{z-index:1;background:0 0;border-radius:3px;outline:1px dashed #ffffff14}.ghost.live{background:#ffffff0a;outline:1px dashed #fff5}.ghost.live:hover{background:#b59f3b55}.row{gap:8px;display:flex}.btn.ghostbtn{border:1px solid var(--line);color:var(--fg);background:0 0}.btn:disabled{opacity:.4}.okmsg{color:#d9a36a;margin:0;font-weight:700}.shake{animation:.3s shake}@keyframes shake{25%{translate:-6px}75%{translate:6px}}.fit{width:100%;margin:12px 0;position:relative}.fit>.board,.fit>.mboard{transform-origin:0 0;margin:0}.board,.mboard{touch-action:none}.tile.drag,.match.drag{cursor:grabbing;transition:none}.tile.drag{opacity:.95;box-shadow:0 8px 18px #000a}.tile.over{border-color:var(--sel)}.ghost{pointer-events:none}.ghost.hot{background:#b59f3b88;outline-color:#b59f3b}.match:after{pointer-events:none}.card{flex-direction:column;padding:0;display:flex}.cardmain{color:var(--fg);padding:16px 20px 8px;text-decoration:none;display:block}.card .arch{color:var(--muted);padding:0 20px 14px;font-size:14px;text-decoration:none}.card .arch:hover{color:var(--fg)}.num{font-size:15px;font-weight:400}.meta a{text-decoration:none}.back{color:var(--fg);text-decoration:none}.archive{gap:10px}.alist{width:100%;margin:0;padding:0;list-style:none}.alist a{border-bottom:1px solid var(--line);color:var(--fg);align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.alist a:hover{background:#1c1c1e}.anum{color:var(--muted);width:42px}.adate{flex:1}.alist a.done .anum{color:var(--ok)}.alist a.lost .anum{color:#a55}.hintbtn{margin-top:8px;padding:8px 16px}.hint-shown{font-size:20px;font-style:italic}.hinttext{margin:4px 0 0;font-style:italic}.linkbtn{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-top:4px;font-size:13px;text-decoration:underline}.connection{font-size:18px;font-weight:600}.gear{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-left:8px;padding:2px;font-size:17px}.menu{text-align:left;background:#1c1c1e;border:1px solid #333;border-radius:8px;margin:6px 0;padding:10px 12px;font-size:14px}.menu input{margin-right:6px}.stat{margin:2px 0 8px;font-size:13px}.atype{margin-right:6px}.acct{font-size:13px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.signin{color:var(--fg,#eee);cursor:pointer;background:0 0;border:1px solid #444;border-radius:14px;padding:4px 12px;font-size:13px}.acctname{color:var(--fg,#eee);text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;max-width:110px;font-weight:600;text-decoration:none;display:inline-block;overflow:hidden}.profile{text-align:center;max-width:460px;margin:0 auto;padding:20px 16px}.profile h1{margin:8px 0 4px}.small{font-size:13px}.err{color:#e57373}.pstats{gap:12px;margin:18px 0;display:grid}.pcard{background:#1c1c1e;border:1px solid #2c2c2e;border-radius:10px;padding:12px}.pcard h2{margin:0 0 8px;font-size:16px}.pgrid{grid-template-columns:repeat(4,1fr);row-gap:2px;display:grid}.pgrid b{font-size:22px}.pgrid span{color:var(--muted,#999);font-size:11px}.ph{text-align:left;font-size:16px}.adminlink{color:var(--muted,#999);margin-right:10px;font-size:12px;text-decoration:none}.admin{text-align:left;max-width:760px;margin:0 auto;padding:12px 14px}.admin h1{font-size:20px}.admin h2{margin:14px 0 6px;font-size:15px}.atabs{gap:6px;margin-bottom:10px;display:flex}.atabs button{color:inherit;cursor:pointer;background:#1c1c1e;border:1px solid #333;border-radius:8px;padding:6px 14px}.atabs .on{background:#3a3a3c}.designer label{color:var(--muted,#aaa);margin:8px 0;font-size:13px;display:block}.designer input,.designer select,.designer textarea,.poolm input{box-sizing:border-box;color:#eee;background:#1c1c1e;border:1px solid #3a3a3c;border-radius:6px;width:100%;margin-top:3px;padding:7px 9px;font-size:15px;display:block}.row2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.anal{background:#161618;border:1px solid #2c2c2e;border-radius:8px;gap:4px;padding:8px 10px;font-size:13px;display:grid}.okc{color:#81c784}.slots{flex-wrap:wrap;gap:8px;display:flex}.slot{align-items:center;gap:4px;display:flex}.slot input{letter-spacing:2px;text-transform:uppercase;width:auto;margin:0;font-family:monospace}.lock{cursor:pointer;background:0 0;border:0;font-size:16px}.btns{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0;display:flex}.btns input[type=date]{width:auto;margin:0;display:inline-block}.sugs{gap:6px;display:grid}.sug{color:#eee;cursor:pointer;text-align:left;background:#1c1c1e;border:1px solid #333;border-radius:8px;justify-content:space-between;padding:8px 10px;display:flex}.sug span{color:#999;font-size:12px}.sug:hover{border-color:#666}.modal{z-index:50;background:#000000bf;justify-content:center;align-items:flex-start;padding:20px 0;display:flex;position:fixed;inset:0;overflow:auto}.modalbox{background:#121213;border:1px solid #333;border-radius:12px;width:min(440px,96vw);position:relative}.close{position:absolute;top:8px;right:10px}.ptable{border-collapse:collapse;width:100%;font-size:13px}.ptable td,.ptable th{vertical-align:top;text-align:left;border-bottom:1px solid #2a2a2c;padding:6px 4px}.ptable tr.draft{opacity:.75}.acts button{color:#ddd;cursor:pointer;background:#1c1c1e;border:1px solid #333;border-radius:5px;margin:1px;font-size:12px}.acts .danger{color:#e57373}.clock{font-variant-numeric:tabular-nums;color:var(--muted,#999);margin:-4px 0 8px;font-size:14px}.ptimes{margin-top:8px}.psettings{text-align:left;background:#1c1c1e;border:1px solid #2c2c2e;border-radius:10px;margin:12px 0;padding:10px 12px}.psettings h2{margin:0 0 6px}.psettings label{font-size:14px}.profile .adate{white-space:nowrap}header{position:relative}.helpbtn{color:#ddd;cursor:pointer;background:0 0;border:1.5px solid #888;border-radius:50%;width:28px;height:28px;font-weight:700;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.hinttitle{flex-direction:column;align-items:center;gap:6px;display:flex}.typechip{letter-spacing:.04em;text-transform:uppercase;color:#aaa;background:#1f1f22;border:1px solid #333;border-radius:999px;padding:2px 10px;font-size:12px}.titlepv{text-align:center;border:1px dashed #444;border-radius:8px;margin:6px 0 10px;padding:8px}.helpmodal .modalbox{box-sizing:border-box;text-align:left;max-width:420px;max-height:88vh;padding:16px;position:relative;overflow:auto}.helpmodal h2{text-align:center;margin-top:0}.howto{padding-left:18px;font-size:14px;line-height:1.45}.howto li{margin:4px 0}.close{color:#aaa;cursor:pointer;background:0 0;border:0;font-size:24px;position:absolute;top:6px;right:10px}.example{border-top:1px solid #2a2a2c;padding:8px 0}.exhead{margin-bottom:4px;font-size:14px}.exboards{align-items:center;gap:10px;margin:4px 0;display:flex}.arrow{color:#888}.mini{flex-direction:column;gap:3px;display:flex}.minirow{gap:3px;display:flex}.minitile{background:#222;border:1px solid #444;border-radius:3px;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:inline-flex}.minitile.ok{background:#538d4e;border-color:#538d4e}.helpmodal .btn{margin:10px auto 0;display:block}.mini{gap:6px}.tile.near{background:#b59f3b;border-color:#b59f3b}.ylw{color:#c9b458}.grn{color:#6aaa64}.lock{opacity:.55;border:1px solid #444;border-radius:6px;padding:2px 6px}.lock.on{opacity:1;background:#3a3a1e;border-color:#c9b458;box-shadow:0 0 0 1px #c9b458}.lock:disabled{opacity:.25;cursor:default}.warn{color:#e2c044}.wchip{align-items:center;gap:4px;margin:0 6px 0 2px;font-weight:600;display:inline-flex}.wchip .linkbtn{font-size:12px;font-weight:400}.wordlist textarea{box-sizing:border-box;width:100%}.wadd{margin:8px 0}.hintbtns{justify-content:center;gap:8px;margin:6px 0 10px;display:flex}.hintbtns .btn{padding:6px 12px;font-size:13px}.hintbtns .btn:disabled{opacity:.4}.themehint{color:#c9b458;margin:4px 0 0;font-size:15px}.tile.hinted:after{content:"";opacity:.85;background:#c9b458;border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}.tile{position:absolute}
