input{font:inherit;min-height:44px;padding:10px;border:1px solid #b5c9bf;border-radius:8px;max-width:100%;background:white;color:#172e31}#share-label{display:block}#share-link{display:block;width:100%;margin:8px 0}#room-code{text-transform:uppercase;width:145px}#room-message{font-weight:600}#chess-app{max-width:1120px;margin:auto}#chess-app header{display:flex;justify-content:space-between;gap:12px}.game-page-chess-room .game-shell-header{align-items:center}.game-page-chess-room .game-shell-main{width:100%;max-width:1160px}#members{padding-left:22px}#board button{min-width:0}#room-panel .toolbar{margin:12px 0}@media(max-width:480px){.layout{grid-template-columns:minmax(0,1fr)}#room-panel{padding:12px}#room-panel .toolbar{gap:8px}#room-panel button{font-size:13px}}
:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#172e31;background:#f3f6f2}*{box-sizing:border-box}body{margin:0}main{max-width:1120px;margin:auto;padding:26px}header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.eyebrow{letter-spacing:3px;font-size:12px;font-weight:800;color:#477563}h1{font-size:clamp(27px,4vw,42px);margin:0;letter-spacing:-1px}h2{font-size:19px;margin:0 0 12px}p{line-height:1.6}button,select{font:inherit;min-height:44px;padding:10px 14px;color:inherit;border:1px solid #b5c9bf;border-radius:8px;background:#fff;cursor:pointer}button:hover{background:#edf5e9}button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ba6600;outline-offset:2px}button:disabled{opacity:.5;cursor:default}.primary{background:#285e4a;color:white;border-color:#285e4a}.primary:hover{background:#184b38}.toolbar{display:flex;gap:16px;flex-wrap:wrap;align-items:end;margin:24px 0}.toolbar label{display:grid;gap:5px;font-size:14px}.layout{display:grid;grid-template-columns:minmax(310px,560px) minmax(260px,1fr);gap:28px}.player{font-size:14px;font-weight:700;letter-spacing:.3px}.card{padding:22px;background:#fff;border:1px solid #dae3dc;border-radius:14px;margin-bottom:18px;box-shadow:0 5px 22px #15362906}.card p{font-size:14px}.muted{color:#60766e}#status{font-weight:700;font-size:18px}#board{display:grid;grid-template-columns:repeat(8,1fr);aspect-ratio:1;border:5px solid #284a3d;border-radius:3px;overflow:hidden;box-shadow:0 10px 35px #16332616}#board button{position:relative;border:0;border-radius:0;min-height:0;aspect-ratio:1;padding:0;display:flex;align-items:center;justify-content:center;touch-action:manipulation}#board .light{background:#f0e8d6}#board .dark{background:#78977e}#board .last{background:#d7d07c}#board .selected{background:#eec465;box-shadow:inset 0 0 0 4px #926117}#board .check{background:#e39083}#board .target:after{content:'';position:absolute;width:24%;height:24%;border-radius:50%;background:#153e38a0}#board .target.occupied:after{width:88%;height:88%;background:transparent;border:4px solid #1b5b4bd0}#board img{width:88%;height:88%;object-fit:contain;pointer-events:none}#board .coord{position:absolute;bottom:1px;right:3px;font-size:10px;font-weight:700;color:#173328;pointer-events:none}#board button:focus-visible{outline-offset:-4px;z-index:1}.actions{display:flex;gap:8px}.actions button{flex:1;font-size:13px;padding:10px 5px}.notice{padding:15px;background:#fff2d5;border:1px solid #ddbd75;border-radius:10px;margin-bottom:16px}.promotions{display:grid;grid-template-columns:1fr 1fr;gap:8px}#promotion button{margin-bottom:8px}#history{max-height:260px;overflow:auto;padding-left:30px;font-family:ui-monospace,Consolas,monospace;font-size:16px;line-height:1.8}#history li span{display:inline-block;min-width:72px}summary{cursor:pointer;font-weight:700;min-height:30px}[hidden]{display:none!important}@media(max-width:760px){main{padding:14px}.layout{grid-template-columns:1fr;gap:20px}header select{max-width:110px;font-size:13px}.toolbar{gap:10px}.toolbar select{max-width:150px}#board{max-width:560px;margin:auto}.card{padding:18px}}
