body{margin:0;background:radial-gradient(ellipse at top,#185b46,#083d31 75%);color:#fff3cf;font-family:system-ui,sans-serif}
.ck-app{--ck-cream:#fff3cf;--ck-red:#a73834;max-width:1100px;margin:auto;padding:24px;color:var(--ck-cream)}
.ck-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px}.ck-heading h1{font:700 clamp(32px,5vw,52px)/1.1 Georgia,serif;margin:5px 0}.ck-eyebrow{font:700 12px/1.5 system-ui;letter-spacing:.16em;text-transform:uppercase;color:#d4bc7e}.ck-heading p{margin:8px 0 0;color:#e2d8ba}
.ck-app button,.ck-app select{font:600 15px system-ui}.ck-button{background:#f8edcd;color:#173d32;border:1px solid #f8edcd;border-radius:9px;padding:11px 16px;cursor:pointer}.ck-button.secondary{background:transparent;color:var(--ck-cream);border-color:#aa9b70}.ck-button:disabled{opacity:.45;cursor:default}.ck-app button:focus-visible,.ck-app select:focus-visible{outline:3px solid #ffcf5a;outline-offset:3px}
.ck-layout{display:grid;grid-template-columns:minmax(0,650px) minmax(240px,1fr);gap:26px;align-items:start}.ck-table{padding:14px;background:linear-gradient(135deg,#785632,#3c2c20);border-radius:15px;box-shadow:0 12px 26px #001d2070;border:1px solid #a48a59}.ck-board{display:grid;grid-template-columns:repeat(8,1fr);aspect-ratio:1;overflow:hidden;border-radius:5px;border:2px solid #32261c}.ck-square{border:0!important;border-radius:0!important;padding:0;position:relative;display:grid;place-items:center;min-width:0;aspect-ratio:1;background:#e8d8b4;touch-action:manipulation}.ck-square.dark{background:#4c6655;cursor:pointer}.ck-square.last{background:#738568}.ck-square.selected{background:#a48a4f}.ck-square.target:after{content:'';width:27%;height:27%;border-radius:50%;background:#ffe097;box-shadow:0 0 0 4px #ffe09740}.ck-square.hint{box-shadow:inset 0 0 0 4px #ffdf77}.ck-square:focus-visible{outline-offset:-4px;z-index:1}.ck-piece{width:76%;height:76%;border-radius:50%;display:grid;place-items:center;position:relative;box-shadow:0 4px 4px #0006,inset 0 0 0 3px #ffffff22;transition:transform .15s ease;pointer-events:none}.ck-piece:before{content:'';position:absolute;inset:13%;border:2px solid #ffffff40;border-radius:50%}.ck-piece.red{background:radial-gradient(circle at 35% 25%,#d76353,#9b2928 70%);border:2px solid #72201e;color:#ffe6b0}.ck-piece.ivory{background:radial-gradient(circle at 35% 25%,#fff8df,#ddcba2 75%);border:2px solid #b29b73;color:#684722}.ck-piece.king:after{content:'♛';font-size:clamp(22px,4.2vw,40px);line-height:1;z-index:1}.ck-square.selected .ck-piece{transform:translateY(-3px)}.ck-coordinate{position:absolute;bottom:2px;right:4px;font:10px system-ui;color:#ffffff85;pointer-events:none}.ck-board-note{text-align:center;font:13px system-ui;margin:12px 0 0;color:#eadbb8}
.ck-panel{background:#083d31;border:1px solid #54705a;border-radius:14px;padding:20px}.ck-status{font:700 25px/1.2 Georgia,serif;margin:9px 0}.ck-help{font:14px/1.6 system-ui;min-height:45px;color:#ddd8bf}.ck-counts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.ck-count{border:1px solid #55715c;border-radius:9px;padding:12px}.ck-count strong{font:700 28px Georgia;display:block}.ck-count span{font:13px system-ui}.ck-actions{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.ck-history{max-height:175px;overflow:auto;font:14px/1.8 system-ui;padding-left:24px;color:#e3d8b8}.ck-panel h2{font:700 18px Georgia;margin:20px 0 8px}.ck-fine{font:12px/1.7 system-ui;color:#c4cbb6}.ck-result{border-top:1px solid #6a805f;padding-top:15px;margin-top:16px;font:16px/1.6 system-ui}.ck-dialog{color:#183e32;background:#fff5dc;border:1px solid #baa474;border-radius:15px;padding:26px;max-width:min(430px,90vw)}.ck-dialog::backdrop{background:#001a18bb}.ck-dialog label{display:block;margin:16px 0;font:600 15px system-ui}.ck-dialog select{display:block;width:100%;padding:10px;margin-top:8px;background:white;color:#173d32;border:1px solid #adab8e;border-radius:7px}.ck-dialog h2{font:700 28px Georgia;margin:0}.ck-dialog .ck-button{border-color:#54705a}.ck-dialog p{line-height:1.5}.ck-dialog .ck-actions{justify-content:flex-end}
@media(max-width:760px){.ck-app{padding:16px 10px}.ck-layout{grid-template-columns:1fr;gap:15px}.ck-heading{align-items:flex-start}.ck-heading h1{font-size:36px}.ck-table{padding:8px}.ck-panel{padding:16px}.ck-coordinate{font-size:8px}.ck-history{max-height:110px}.ck-piece.king:after{font-size:clamp(20px,7vw,40px)}}
.ck-piece.white{background:radial-gradient(circle at 35% 25%,#fffdf4,#dedbd0 75%);border:2px solid #aaa694;color:#514a36}
.ck-piece.black{background:radial-gradient(circle at 35% 25%,#62676c,#20252a 75%);border:2px solid #111820;color:#fff3cf}
.ck-piece.green{background:radial-gradient(circle at 35% 25%,#81ac75,#327343 75%);border:2px solid #b0c591;color:#fff3cf}
.ck-piece.yellow{background:radial-gradient(circle at 35% 25%,#ffe69a,#d2a535 75%);border:2px solid #9e7926;color:#453719}
.ck-piece.blue{background:radial-gradient(circle at 35% 25%,#76b4da,#326aa2 75%);border:2px solid #21496b;color:#fff3cf}
.ck-square.ck-travelling{z-index:4}.ck-square.ck-travelling .ck-piece{transition:none}
.ck-colors{border:1px solid #55715c;border-radius:9px;padding:12px;margin:16px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.ck-colors legend{font:600 14px system-ui;padding:0 5px}.ck-colors label{font:13px system-ui;min-width:0}.ck-colors select{display:block;width:100%;margin-top:6px;padding:8px 4px;background:#fff3dc;color:#173d32;border:1px solid #a69b7d;border-radius:6px}.ck-colors p{grid-column:1/-1;margin:0;font:12px/1.5 system-ui;color:#ddd8bf}
@media(prefers-reduced-motion:reduce){.ck-piece{transition:none}}
