:root{color-scheme:dark;font-family:'Noto Sans JP',sans-serif;background:#10192a;color:#f4edda}*{box-sizing:border-box}body{margin:0}main{max-width:1100px;margin:auto;padding:28px 20px}header span{color:#e9bf6c;font-size:12px;letter-spacing:4px}h1{font-size:clamp(24px,4vw,40px);margin:8px 0}header p,.guide,footer{color:#a5b4ca}header{margin-bottom:24px}.arena{position:relative;border:1px solid #526178;border-radius:20px;overflow:hidden;background:#17253c}canvas{width:100%;display:block;touch-action:none}.hud{position:absolute;top:16px;left:20px;right:20px;display:flex;justify-content:space-between;pointer-events:none;text-shadow:0 2px 5px #000}.hud b{color:#ffdb90}#overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#10192ad9;text-align:center;padding:20px}#overlay[hidden]{display:none}h2{font-size:20px}button{background:#e9bf6c;color:#172033;border:0;border-radius:10px;padding:12px 20px;font-weight:800;font-size:14px;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.5}button:hover{filter:brightness(1.1)}.controls{display:flex;gap:10px;margin:14px 0}.controls button{flex:1;min-height:55px}.controls button:nth-child(n+2){background:#2c405c;color:#fff}#hint{color:#ffdb90;min-height:24px}.guide{font-size:13px;line-height:1.8}.board,#submitBox{background:#172337;border:1px solid #2d405b;border-radius:16px;padding:20px;margin:24px 0}.boardHead{display:flex;justify-content:space-between;align-items:center}small{color:#e9bf6c;font-size:12px;margin-left:10px}input{background:#0e192a;color:white;border:1px solid #516582;border-radius:8px;padding:13px;font-size:16px;min-width:0}form{display:flex;gap:10px}#submitBox p,footer{font-size:12px}.tableWrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px;text-align:left;white-space:nowrap}th{color:#a5b4ca;font-weight:400}th,td{padding:14px 10px;border-bottom:1px solid #2c3c52}td button{background:transparent;color:#ffdb90;padding:0}td:nth-child(3){font-variant-numeric:tabular-nums;font-weight:bold}#history{line-height:2;color:#b9c7dc}footer{text-align:center}@media(max-width:600px){main{padding:18px 10px}.hud{font-size:12px;top:10px;left:10px;right:10px}#overlay h2{font-size:18px;margin:0}#overlay p{font-size:12px}.controls button{padding:10px 3px;font-size:12px}form{flex-direction:column}.board{padding:12px}header p{font-size:13px}}
