:root{--bg:#12161a;--panel:#1b2229;--panel-2:#2e3b47;--line:#2f3a45;--line-strong:#4b5e6e;--text:#e6edf3;--muted:#8ea0b0;--accent:#78c8ff;--danger:#ff6b6b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}.app{max-width:1160px;margin:0 auto;padding:12px 16px 40px}header{text-align:center;margin-bottom:10px}header h1{letter-spacing:.02em;margin:0;font-size:26px}.wordmark{vertical-align:middle;width:auto;height:54px;display:inline-block}main{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:12px 24px;display:grid}@media (width<=900px){main{grid-template-columns:minmax(0,1fr)}}.board-area{flex-direction:column;align-items:stretch;gap:10px;display:flex}.board{max-width:640px;position:relative}.eval-bar{border:1px solid var(--line);background:#0e1216;border-radius:6px;flex:none;max-width:640px;height:26px;position:relative;overflow:hidden}.eval-bar-fill{background:#e8eef3;transition:width .22s;position:absolute;top:0;bottom:0}.eval-bar-label{letter-spacing:-.02em;font-variant-numeric:tabular-nums;align-items:center;font-size:11px;font-weight:600;display:flex;position:absolute;top:0;bottom:0}.eval-bar-label.on-white{color:#12161a}.eval-bar-label.on-black{color:#e8eef3}.captured{justify-content:space-between;align-items:center;gap:48px;max-width:640px;min-height:30px;display:flex}.captured-side{flex-wrap:nowrap;align-items:center;gap:1px;min-width:0;display:flex}.captured-side-right{justify-content:flex-end}.captured-stack{flex:none;align-items:center;display:flex}.captured-stack+.captured-stack{margin-left:-6px}.captured-stack+.captured-stack-n{margin-left:-9px}.captured-piece svg path,.captured-piece svg circle{paint-order:stroke;stroke-width:3px!important}.captured-piece-black svg path,.captured-piece-black svg circle{stroke:#b7c2cb!important}.captured-piece-white svg path,.captured-piece-white svg circle{stroke:#363d44!important}.captured-piece{flex:none;width:28px;height:28px;display:block}.captured-piece+.captured-piece{margin-left:-20px}.side{flex-direction:column;gap:14px;display:flex}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px}.panel-heading{font:inherit;margin:0}.panel-toggle{text-transform:uppercase;letter-spacing:.08em;width:100%;min-height:0;color:var(--muted);text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:8px;margin:0 0 12px;padding:0;font-size:13px;display:flex}.panel-toggle:hover:not(:disabled){color:var(--text);border:none}.panel-toggle[aria-expanded=false]{margin-bottom:0}.chevron{border-top:4.5px solid #0000;border-bottom:4.5px solid #0000;border-left:5px solid;width:0;height:0;transition:transform .16s}.chevron.open{transform:rotate(90deg)}.row{align-items:center;gap:8px;display:flex}.row.wrap{flex-wrap:wrap}.row.controls{flex-wrap:nowrap;gap:6px}.row.controls>button.icon-button{flex:0 70px;min-width:44px;padding:8px 0;font-size:17px;line-height:1}.row.controls>button:not(.icon-button){white-space:nowrap;flex:1 0 auto;min-width:max-content;padding:8px 6px}.row.controls>button.flip{flex:none;min-width:48px}@media (width>=900px){.row.controls>button.icon-button{flex-basis:51px}}.row.controls>button.new-game{flex:none}.row+.row,.row+.field,.field+.field,.field+.row{margin-top:12px}p.hint+.row{margin-top:8px}button{background:var(--panel-2);color:var(--text);border:1px solid var(--line-strong);min-height:40px;font:inherit;cursor:pointer;border-radius:7px;padding:8px 12px;font-weight:500}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:default}button.ghost{background:#26313b}.row>button{flex:auto}textarea,select,input[type=range]{width:100%;font:inherit}textarea,select{color:var(--text);border:1px solid var(--line);resize:vertical;background:#0e1216;border-radius:7px;padding:8px}.field{display:block}.field>span{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}.field strong{color:var(--text)}.field .approx{color:var(--muted);font-style:normal}.hint.level-blurb{margin-top:6px;margin-bottom:14px}.check{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.check input{accent-color:var(--accent)}.check-icon{color:var(--accent);font-size:15px;line-height:1}.status{text-align:center;margin:0;padding:0}.status.thinking,.status.over{color:var(--accent)}.status.error,.hint.error{color:var(--danger)}.hint{color:var(--text);margin:8px 0 0;font-size:12.5px}.hint.muted{color:var(--muted)}.move-list{font-variant-numeric:tabular-nums;max-height:220px;margin:0;padding:0;list-style:none;overflow-y:auto}.move-list.empty{color:var(--muted);font-size:13px}.move-list li{border-radius:5px;grid-template-columns:38px 1fr 1fr;gap:6px;padding:2px 4px;display:grid}.move-list li:nth-child(odd){background:#ffffff06}.move-number{color:var(--muted)}.move.current{color:var(--accent);font-weight:600}.modal-backdrop{z-index:20;background:#080b0eb8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--line-strong);border-radius:12px;width:min(420px,100%);padding:18px;box-shadow:0 18px 50px #00000073}.modal h2{text-transform:none;letter-spacing:0;color:var(--text);margin:0 0 8px;font-size:17px}.modal p{color:var(--muted);margin:0 0 16px}button.danger{color:#ffe9e9;background:#7a2b2b;border-color:#9c3a3a}button.danger:hover:not(:disabled){border-color:var(--danger)}.promotion-backdrop{background:#0a0d1099;border-radius:8px;place-items:center;display:grid;position:absolute;inset:0}.promotion{background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:10px;padding:14px 16px}.promotion p{color:var(--muted);margin:0 0 8px;font-size:13px}.promotion-choices{gap:8px;display:flex}.promotion-choices button{padding:6px 10px;font-size:30px;line-height:1}.about{max-width:62ch;color:var(--muted);margin-top:34px;font-size:13.5px}.about h2{color:var(--text);margin:0 0 8px;font-size:15px}.about h3{color:var(--text);margin:18px 0 6px;font-size:13.5px}.about p{margin:0 0 10px}footer{color:var(--muted);margin-top:28px;font-size:12.5px}footer a{color:var(--muted)}
