:root{font-family:Inter,Segoe UI,sans-serif;color:#203a35;background:#f5f5ee;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible{outline:3px solid #d89940;outline-offset:2px}header{height:88px;display:flex;align-items:center;justify-content:space-between;max-width:1280px;margin:auto;padding:0 40px;border-bottom:1px solid #dce1d7}.brand{font-size:28px;display:flex;gap:10px;align-items:center;text-decoration:none;color:#173d32;font-weight:700}.brand>span{font-size:20px}.brand-light{font-weight:400}.header-note{color:#7c877d;font-size:13px}.ghost{background:transparent;color:#436051;padding:10px;border:1px solid #d7dfd4;border-radius:7px}#count{font-size:11px;margin-left:6px;background:#e4eadf;padding:2px 6px;border-radius:4px}main{max-width:1200px;padding:40px;margin:auto}.intro{margin-bottom:28px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#6b806c}h1{font-family:Georgia,serif;font-size:42px;font-weight:400;letter-spacing:-1px;margin:12px 0}p{line-height:1.6;color:#758075;font-size:14px}.intro p{margin:0}.layout{display:grid;grid-template-columns:minmax(0,650px) minmax(290px,360px);gap:32px;align-items:start}.board-panel{min-width:0}.player{display:flex;align-items:center;gap:12px;padding:0 0 14px}.player:has(.light-avatar){padding:16px 0 12px}.player b{font-size:14px}.player small{display:block;font-size:11px;color:#7b8579;margin-top:4px}.avatar{width:42px;height:42px;border-radius:8px;background:#1f4035;color:#fff;font-size:29px;text-align:center;line-height:42px}.light-avatar{background:#e5e7d9;color:#264638}.pill{margin-left:auto;border:1px solid #dce2d6;color:#7b8779;font-size:10px;letter-spacing:.4px;border-radius:12px;padding:5px 10px}.player button{margin-left:auto;font-size:12px}.board{display:grid;grid-template-columns:repeat(8,1fr);aspect-ratio:1;border:7px solid #294c3e;border-radius:4px;overflow:hidden;box-shadow:0 12px 30px #253e3018}.square{position:relative;display:grid;place-items:center;aspect-ratio:1;min-width:0;width:100%;padding:0;border-radius:0}.light{background:#eeedda}.dark{background:#7f9c7c}.piece{font-family:Segoe UI Symbol,DejaVu Sans,serif;font-size:clamp(25px,4.9vw,60px);line-height:1;position:relative;z-index:1;-webkit-user-select:none;user-select:none}.white-piece{color:#fffdf2;text-shadow:1px 1px 1px #223326,-1px -1px 1px #223326,1px -1px 1px #223326,-1px 1px 1px #223326}.black-piece{color:#18342c;text-shadow:0 1px 1px #ffffff70}.rank,.file{position:absolute;font-size:10px;font-weight:600;z-index:2;color:#405c3e}.rank{top:3px;left:4px}.file{bottom:2px;right:4px}.dark small{color:#edf0df}.square.last{background:#c4c97b}.square.selected{background:#d6b765}.square.legal:after{content:"";width:23%;height:23%;background:#254e4170;border-radius:50%;position:absolute;z-index:3}.square.check{background:#d37d68}.status{background:#e8ecdf;color:#416048;border-radius:6px;text-align:center;padding:12px;font-size:13px;min-height:40px}.card{background:#fffefa;border:1px solid #e2e6db;border-radius:12px;padding:22px;margin-bottom:20px}.tabs{display:flex;background:#eeefe7;padding:4px;border-radius:7px;margin-bottom:24px}.tabs button{flex:1;background:none;font-size:12px;padding:10px 4px;border-radius:5px;color:#7a8378}.tabs .active{background:#fff;color:#244b39;box-shadow:0 1px 4px #0001;font-weight:600}h2{font-size:19px;font-weight:600;margin:0}.card p{font-size:12px;margin:9px 0 20px}label{display:flex;justify-content:space-between;font-size:12px;margin-top:22px;margin-bottom:10px}label strong{color:#3a6547;font-size:11px}input[type=range]{width:100%;accent-color:#476d4e}.range-labels{display:flex;justify-content:space-between;font-size:10px;color:#929b8a;margin:6px 0 20px}select,input[readonly]{width:100%;padding:11px;border:1px solid #dde3d5;background:#fffefa;border-radius:6px;color:#40563f;font-size:12px}.primary{display:flex;justify-content:space-between;width:100%;background:#254e3d;color:#fff;border-radius:6px;padding:15px 16px;margin-top:22px;font-size:13px}.primary:hover{background:#356449}#privacy{display:block;text-align:center;font-size:10px;color:#969e8e;margin-top:13px}.section-title{display:flex;justify-content:space-between;align-items:center}.section-title h2{font-size:15px}.text-button{background:none;color:#7a8775;font-size:11px}.moves{height:165px;overflow:auto;margin-top:15px}.empty{padding:35px 0;text-align:center;font-style:italic}.move-row{display:grid;grid-template-columns:35px 1fr 1fr;align-items:center;padding:4px 7px;font-size:12px}.move-row:nth-child(odd){background:#f4f5ed}.move-row>span{color:#929c88}.move-row button{background:none;text-align:left;color:#3a5140;padding:6px}.move-row .current{background:#d8e3ca;border-radius:3px}.review-controls{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e9ecdf;margin-top:10px;padding:10px 0}.review-controls button{background:none;color:#607854;font-size:19px}.review-controls span{font-size:10px;color:#929b88}.game-actions{display:flex;justify-content:space-between;border-top:1px solid #e9ecdf;padding-top:12px;gap:4px}.game-actions button{background:#f1f2e9;color:#75836b;font-size:10px;border-radius:4px;padding:8px}.aside-note{text-align:center;font-size:11px;line-height:1.8;color:#929b88}footer{border-top:1px solid #dde2d5;max-width:1120px;margin:20px auto 0;padding:25px 0;display:flex;justify-content:space-between;font-size:11px;color:#8c9682}footer a{color:inherit}#notice{padding:12px;background:#fff0cf;color:#7c551c;font-size:13px;margin-top:12px;border-radius:6px}#notice button{display:block;margin-top:8px}dialog{width:min(600px,94vw);max-height:85vh;overflow:auto;border:1px solid #dbe2d0;border-radius:14px;padding:24px;background:#fffef6;color:#294838}dialog::backdrop{background:#132b2266}.history-item{display:block;width:100%;text-align:left;background:#eef1e5;border-radius:6px;padding:14px;margin:10px 0;font-size:12px}#promotionChoices{display:flex;justify-content:space-around}#promotionChoices button{font-size:50px;background:none}#drawOffer button{padding:8px;background:#e6edda;margin:4px}[hidden]{display:none!important}.profile-bar{display:flex;gap:10px;align-items:center;margin-top:16px;font-size:11px;color:#7c8872}.profile-bar button{font-size:11px;background:none;color:#3a6547;text-decoration:underline}@media(min-width:1300px){.piece{font-size:60px}}@media(max-width:760px){header{height:65px;padding:0 18px}.brand>span{font-size:16px}.header-note{display:none}main{padding:24px 14px}.intro{margin-bottom:22px}h1{font-size:32px}.intro p{font-size:12px}.layout{grid-template-columns:1fr;gap:22px}.board{border-width:4px}.piece{font-size:clamp(26px,8vw,65px)}.card{padding:20px}.board-panel{max-width:650px;width:100%;margin:auto}aside{display:grid;grid-template-columns:1fr 1fr;gap:14px}.card{margin:0}.aside-note{grid-column:1/-1}footer{margin:0 15px;padding:20px 0}footer>span:nth-child(2){display:none}.rank,.file{font-size:8px}.moves{height:200px}}@media(max-width:540px){aside{display:block}.card{margin-bottom:16px}.intro .eyebrow{font-size:9px}h1{font-size:29px}.player b{font-size:12px}.avatar{width:36px;height:36px;font-size:25px;line-height:36px}.moves{height:160px}}
