/* Original responsive Chess workspace 1.5.0, GPL-2.0-or-later. */
.otk-game-kit .w23ch-board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));width:100%;max-width:550px;margin:0 auto;border:3px solid #213e56;border-radius:8px;overflow:hidden;box-shadow:0 8px 23px #15365425;touch-action:manipulation}.otk-game-kit .w23ch-square{display:grid;place-items:center;position:relative;aspect-ratio:1;min-height:0;min-width:0;width:100%;padding:0;border:0;border-radius:0;line-height:1;background:#e8eef0;color:#122c46}.otk-game-kit .w23ch-square.is-dark{background:#66879a}.otk-game-kit .w23ch-square.is-light{background:#e5edf0}.otk-game-kit .w23ch-piece{font-family:"DejaVu Sans","Segoe UI Symbol","Arial Unicode MS",serif;font-size:clamp(22px,3.8vw,47px);line-height:1;font-weight:400;pointer-events:none;user-select:none}.otk-game-kit .w23ch-piece.is-w{color:#fffdf3;-webkit-text-stroke:1px #243d50;text-shadow:0 1px 1px #18394b}.otk-game-kit .w23ch-piece.is-b{color:#163047;text-shadow:0 1px 0 #d8e3e9}.otk-game-kit .w23ch-square.is-selected{background:#f4cb6a;box-shadow:inset 0 0 0 3px #7c5a16}.otk-game-kit .w23ch-square.is-last:after{content:"";position:absolute;inset:2px;border:2px solid #99c9fd;pointer-events:none}.otk-game-kit .w23ch-square.is-check{background:#de9290}.otk-game-kit .w23ch-square.is-hint{box-shadow:inset 0 0 0 4px #f1bd47}.otk-game-kit .w23ch-square.is-legal:hover{box-shadow:inset 0 0 0 3px #f6d586}.otk-game-kit .w23ch-square.is-legal:before{content:"";position:absolute;inset:1px;border:3px solid #f5d682;pointer-events:none;border-radius:50%}.otk-game-kit .w23ch-target{width:25%;height:25%;background:#4b6380;border-radius:50%;font-size:0;pointer-events:none}.otk-game-kit .w23ch-square:focus-visible{outline:3px solid #ec9100;outline-offset:-4px;z-index:1}.otk-game-kit .w23ch-coordinate{position:absolute;left:2px;bottom:1px;font:800 9px/1 system-ui;color:#223f54;pointer-events:none}.otk-game-kit .w23ch-square.is-dark .w23ch-coordinate{color:#fff}.otk-game-kit .w23ch-text{margin:14px 0 0;font-size:12px}.otk-game-kit .w23ch-text summary{font-size:12px;font-weight:750;color:#3b5b74;cursor:pointer;min-height:32px}.otk-game-kit .w23ch-text dl{display:grid;grid-template-columns:35px 1fr 35px 1fr;gap:5px 9px;margin:10px 0;background:#fff;padding:10px;border:1px solid #cad7e3;border-radius:8px}.otk-game-kit .w23ch-text dt{font-weight:800;color:#164997}.otk-game-kit .w23ch-text dd{margin:0;font-size:11px}.otk-game-kit .w23ch-fen{font:11px/1.5 ui-monospace,monospace;overflow-wrap:anywhere;margin:8px 0 0}.otk-game-kit .w23ch-clocks{display:flex;gap:10px;margin:0 auto 17px;max-width:550px}.otk-game-kit .w23ch-clock{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:9px 13px;border:1px solid #b8cada;background:#fff;border-radius:12px}.otk-game-kit .w23ch-clock span{font-size:11px;color:#536b83}.otk-game-kit .w23ch-clock strong{font-size:23px;font-variant-numeric:tabular-nums;line-height:1.3}.otk-game-kit .w23ch-clock.is-active{background:#eaf2ff;border-color:#0053e2;box-shadow:inset 3px 0 #0053e2}.otk-game-kit .w23ch-clock.is-active span{color:#124a99}.otk-game-kit .w23ch-promotion{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:18px 12px;background:#fff;border:2px solid #0053e2;border-radius:13px;margin-top:14px}.otk-game-kit .w23ch-promotion h3{font-size:16px;text-align:center;width:100%;margin:0 0 4px}.otk-game-kit .w23ch-moves{margin-top:15px;font-size:12px}.otk-game-kit .w23ch-moves summary{cursor:pointer;min-height:33px;font-weight:750;color:#395976}.otk-game-kit .w23ch-moves ol{columns:2;column-gap:20px;max-height:300px;overflow:auto;margin:8px 0;padding:10px 10px 10px 34px;background:#fff;border:1px solid #cad6e3;border-radius:9px}.otk-game-kit .w23ch-moves li{padding:5px 4px;break-inside:avoid;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.otk-game-kit .w23ch-review{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;width:100%}.otk-game-kit .w23ch-review>span{width:100%;text-align:center;color:#4c657e;font-size:12px}.otk-game-kit .w23ch-task{margin:0 0 8px;text-align:center;color:#125098;font-size:12px;font-weight:800}.otk-game-kit .w23ch-line{text-align:center;padding:10px;border-radius:9px;background:#fff;font-size:13px;font-weight:750;margin:14px 0 0;overflow-wrap:anywhere}.otk-game-kit .w23ch-feedback{padding:14px;background:#e5f3ec;border:1px solid #a4cbb8;color:#285d47;border-radius:10px;margin:14px 0 0;font-size:13px}.otk-game-kit .w23ch-feedback.is-wrong{background:#fff0e5;color:#7f451c;border-color:#e0bb9b}
@media(max-width:1050px){.otk-game-kit:is([data-otk-tool=chess],[data-otk-tool=chess-puzzle-rush]) .gk-layout{grid-template-columns:1fr}.otk-game-kit:is([data-otk-tool=chess],[data-otk-tool=chess-puzzle-rush]) .gk-side{border-left:0;border-top:1px solid #d5e0ee}.otk-game-kit .w23ch-piece{font-size:clamp(22px,5.5vw,46px)}}
@media(max-width:600px){.otk-game-kit:is([data-otk-tool=chess],[data-otk-tool=chess-puzzle-rush]) .gk-main{padding:9px}.otk-game-kit:is([data-otk-tool=chess],[data-otk-tool=chess-puzzle-rush]) .gk-surface{padding:8px}.otk-game-kit .w23ch-board{border-width:2px}.otk-game-kit .w23ch-piece{font-size:clamp(22px,7.9vw,42px)}.otk-game-kit .w23ch-coordinate{font-size:8px}.otk-game-kit .w23ch-clock{padding:8px 10px}.otk-game-kit .w23ch-clock strong{font-size:19px}.otk-game-kit .w23ch-text dl{grid-template-columns:29px 1fr}.otk-game-kit .w23ch-moves ol{columns:1}.otk-game-kit .w23ch-square.is-legal:before{border-width:2px}}

/* Compact devices keep complete metric words in two readable columns. */
@media(max-width:380px){:is([data-otk-tool="chess"],[data-otk-tool="chess-puzzle-rush"]) .gk-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}:is([data-otk-tool="chess"],[data-otk-tool="chess-puzzle-rush"]) .gk-metric{min-width:0}:is([data-otk-tool="chess"],[data-otk-tool="chess-puzzle-rush"]) .gk-metric strong{word-break:normal;overflow-wrap:normal}}

/* dark-mode:start — generated by scripts/dark-mode.py from build/game-kit-assets/wave23-chess.css; do not edit by hand */
@media screen{
 html[data-theme="dark"] .otk-game-kit .w23ch-board:not([data-otk-paper],[data-otk-paper] *){border:3px solid #213e56;box-shadow:0 8px 23px #15365425}
 html[data-theme="dark"] .otk-game-kit .w23ch-square:not([data-otk-paper],[data-otk-paper] *){border:0;background:#2e2e2e;color:#f0f0f0}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-dark:not([data-otk-paper],[data-otk-paper] *){background:#41697f}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-light:not([data-otk-paper],[data-otk-paper] *){background:#2f2f2f}
 html[data-theme="dark"] .otk-game-kit .w23ch-piece.is-w:not([data-otk-paper],[data-otk-paper] *){color:#fffdf3;text-shadow:0 1px 1px #18394b}
 html[data-theme="dark"] .otk-game-kit .w23ch-piece.is-b:not([data-otk-paper],[data-otk-paper] *){color:#ececec;text-shadow:0 1px 0 #373737}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-selected:not([data-otk-paper],[data-otk-paper] *){background:#52421b;box-shadow:inset 0 0 0 3px #7c5a16}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-last:not([data-otk-paper],[data-otk-paper] *):after{border:2px solid #344a63}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-check:not([data-otk-paper],[data-otk-paper] *){background:#825554}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-hint:not([data-otk-paper],[data-otk-paper] *){box-shadow:inset 0 0 0 4px #5c4a24}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-legal:hover:not([data-otk-paper],[data-otk-paper] *){box-shadow:inset 0 0 0 3px #4b3b13}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-legal:not([data-otk-paper],[data-otk-paper] *):before{border:3px solid #4a3f1f}
 html[data-theme="dark"] .otk-game-kit .w23ch-target:not([data-otk-paper],[data-otk-paper] *){background:#4b6380}
 html[data-theme="dark"] .otk-game-kit .w23ch-square:focus-visible:not([data-otk-paper],[data-otk-paper] *){outline:3px solid #674f36}
 html[data-theme="dark"] .otk-game-kit .w23ch-coordinate:not([data-otk-paper],[data-otk-paper] *){color:#dadada}
 html[data-theme="dark"] .otk-game-kit .w23ch-square.is-dark .w23ch-coordinate:not([data-otk-paper],[data-otk-paper] *){color:#fff}
 html[data-theme="dark"] .otk-game-kit .w23ch-text summary:not([data-otk-paper],[data-otk-paper] *){color:#b9b9b9}
 html[data-theme="dark"] .otk-game-kit .w23ch-text dl:not([data-otk-paper],[data-otk-paper] *){background:#212121;border:1px solid #414141}
 html[data-theme="dark"] .otk-game-kit .w23ch-text dt:not([data-otk-paper],[data-otk-paper] *){color:#c5c5c5}
 html[data-theme="dark"] .otk-game-kit .w23ch-clock:not([data-otk-paper],[data-otk-paper] *){border:1px solid #474747;background:#212121}
 html[data-theme="dark"] .otk-game-kit .w23ch-clock span:not([data-otk-paper],[data-otk-paper] *){color:#a6a6a6}
 html[data-theme="dark"] .otk-game-kit .w23ch-clock.is-active:not([data-otk-paper],[data-otk-paper] *){background:#292929;border-color:#0053e2;box-shadow:inset 3px 0 #0053e2}
 html[data-theme="dark"] .otk-game-kit .w23ch-clock.is-active span:not([data-otk-paper],[data-otk-paper] *){color:#a3c6fb}
 html[data-theme="dark"] .otk-game-kit .w23ch-promotion:not([data-otk-paper],[data-otk-paper] *){background:#212121;border:2px solid #0053e2}
 html[data-theme="dark"] .otk-game-kit .w23ch-moves summary:not([data-otk-paper],[data-otk-paper] *){color:#bbbbbb}
 html[data-theme="dark"] .otk-game-kit .w23ch-moves ol:not([data-otk-paper],[data-otk-paper] *){background:#212121;border:1px solid #414141}
 html[data-theme="dark"] .otk-game-kit .w23ch-review>span:not([data-otk-paper],[data-otk-paper] *){color:#adadad}
 html[data-theme="dark"] .otk-game-kit .w23ch-task:not([data-otk-paper],[data-otk-paper] *){color:#96c3fe}
 html[data-theme="dark"] .otk-game-kit .w23ch-line:not([data-otk-paper],[data-otk-paper] *){background:#212121}
 html[data-theme="dark"] .otk-game-kit .w23ch-feedback:not([data-otk-paper],[data-otk-paper] *){background:#223029;border:1px solid #2f5343;color:#98cfb4}
 html[data-theme="dark"] .otk-game-kit .w23ch-feedback.is-wrong:not([data-otk-paper],[data-otk-paper] *){background:#33261c;color:#eca980;border-color:#5c432c}
 @media(max-width:1050px){
  html[data-theme="dark"] .otk-game-kit:is([data-otk-tool=chess],[data-otk-tool=chess-puzzle-rush]) .gk-side:not([data-otk-paper],[data-otk-paper] *){border-left:0;border-top:1px solid #3d3d3d}
 }
}
/* dark-mode:end */
