:root{--bg: #0e1410;--board: #c9a36b;--line: #5e431f;--p0: #f4ecd8;--p0edge: #b9a87d;--p1: #2a2622;--p1edge: #000000;--gold: #e0a93c;--panel: #18221b;--ink: #eaf3ea}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:radial-gradient(circle at 50% -10%,#1d2c20,var(--bg));color:var(--ink);font-family:Segoe UI,system-ui,sans-serif;display:flex;flex-direction:column;align-items:center;min-height:100%;-webkit-user-select:none;user-select:none}h1{font-size:1.5rem;letter-spacing:.04em;margin:.6rem 0 .05rem}h1 .mg{color:var(--gold)}.sub{color:#b8a079;font-size:.8rem;margin:0 0 .5rem;text-align:center}.bar{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;justify-content:center;margin-bottom:.4rem}.bar label{font-size:.8rem;color:#cbb88e;display:inline-flex;gap:.3rem;align-items:center}.bar select,.bar button{background:var(--panel);color:var(--ink);border:1px solid #3a4a3c;border-radius:8px;padding:.4rem .7rem;font-size:.85rem;cursor:pointer}.bar button:hover{border-color:var(--gold)}.bar button.primary{background:var(--gold);border-color:var(--gold);color:#2a2008;font-weight:700}.bar button:disabled{opacity:.4;cursor:default}#status{min-height:1.5rem;font-size:.95rem;margin:.2rem 0 .4rem;text-align:center}#status .win{color:var(--gold);font-weight:800}#status .chk{color:#ef6a5a}#status .you{color:var(--gold)}canvas{background:var(--board);border-radius:12px;box-shadow:0 12px 34px #0009;touch-action:manipulation;display:block;margin-inline:auto}.foot{font-size:.72rem;color:#93805a;margin:.6rem 1rem 1.3rem;max-width:600px;text-align:center;line-height:1.55}#overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#080e0ab8;border-radius:12px}#overlay.hidden{display:none}#overlay .card{background:var(--panel);border:1px solid #3a4a3c;border-radius:12px;padding:1rem 1.2rem;max-width:320px;text-align:center;box-shadow:0 14px 40px #000a}#overlay .card h2{margin:0 0 .4rem;font-size:1.1rem;color:var(--gold)}#overlay .card p{font-size:.8rem;color:#cbb88e;margin:0 0 .7rem}#overlay .orow{display:flex;gap:.4rem;margin:.35rem 0;justify-content:center}#overlay button,#overlay input{background:var(--bg);color:var(--ink);border:1px solid #3a4a3c;border-radius:8px;padding:.45rem .7rem;font-size:.85rem;cursor:pointer}#overlay button.primary{background:var(--gold);border-color:var(--gold);color:#2a2008;font-weight:700;flex:1}#overlay button:hover{border-color:var(--gold)}#overlay input{flex:1;text-transform:uppercase;cursor:text}
