.cb-wrap{aspect-ratio:1;border:2px solid #1e90ff;border-radius:8px;width:100%;max-width:360px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 4px #1565c0}.cb{grid-template-rows:repeat(8,1fr);grid-template-columns:repeat(8,1fr);width:100%;height:100%;display:grid}.cb-sq{cursor:default;min-width:0;font:inherit;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:relative}button.cb-sq{cursor:pointer;-webkit-tap-highlight-color:transparent}button.cb-sq:disabled{cursor:default}.cb-sq.light{background:#e8f3ff}.cb-sq.dark{background:#1e90ff}.cb-sq.hi{box-shadow:inset 0 0 0 3px #14347873}.cb-sq.from{background:#f6dc8f}.cb-sq.dark.from{background:#d9b75a}.cb-sq.to{background:#b3d9ff}.cb-sq.dark.to{background:#0b6fd6}.cb-interactive button.cb-sq:not(:disabled):hover{filter:brightness(1.06)}.cb-sq.is-selected{box-shadow:inset 0 0 0 4px #143478}.cb-sq.is-correct{background:#58cc02!important}.cb-sq.is-wrong{background:#ff6b6b!important}.cb-pcw{z-index:1;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.cb-slide{animation:.42s cubic-bezier(.22,1,.36,1) cb-slide}@keyframes cb-slide{0%{transform:translate(calc(var(--cb-dx) * 100%), calc(var(--cb-dy) * 100%))}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.cb-slide{animation:none}}.cb-pc{font-size:clamp(20px,7.4vw,34px);line-height:1}.cb-w{color:#fff;text-shadow:0 0 1px #334155,0 1px 2px #00000059;-webkit-text-stroke:1px #475569}.cb-b{color:#1a1a2e;text-shadow:0 1px 1px #ffffff40}.cb-dot{background:#14347866;border-radius:50%;width:26%;height:26%}.cb-ring{border:3px solid #14347880;border-radius:50%;position:absolute;inset:8%}.cb-coord{pointer-events:none;z-index:2;font-size:clamp(8px,2.3vw,11px);font-weight:800;line-height:1;position:absolute}.cb-rank{top:3px;left:3px}.cb-file{bottom:2px;right:3px}.cb-sq.light .cb-coord{color:#1e90ff}.cb-sq.dark .cb-coord{color:#e8f3ff}.cb-tag{z-index:3;pointer-events:none;color:#1a1a2e;background:#fff;border:1px solid #cbd5e1;border-radius:5px;padding:1px 4px;font-size:clamp(8px,2.3vw,11px);font-weight:800;line-height:1.3;position:absolute;top:2px;right:2px;box-shadow:0 1px #94a3b8}.cb-arrows{pointer-events:none;z-index:4;color:#ff8c00d1;width:100%;height:100%;position:absolute;inset:0}.cb-teach .te-body{gap:14px}.cb-caption{text-align:center;flex-direction:column;align-items:center;gap:8px;min-height:96px;animation:.25s cb-fade;display:flex}.cb-move{color:#1a1a2e;letter-spacing:.02em;background:#fff;border:1.5px solid #dbe7f5;border-radius:10px;padding:4px 12px;font-size:15px;font-weight:800;display:inline-block;box-shadow:0 3px #d5e3f4}.cb-move.cb-your-turn{color:#1e90ff;border-color:#9dc8f7;box-shadow:0 3px #9dc8f7}.cb-note{color:#334155;margin:0;font-size:15px;line-height:1.5}@keyframes cb-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cb-caption{animation:none}}.ex-board{width:100%;max-width:340px;margin:4px auto 16px}.cb-puzzle{flex-direction:column;gap:12px;display:flex}.cb-puzzle-bar{background:#fff;border:1.5px solid #dbe7f5;border-radius:12px;align-items:center;gap:10px;min-height:40px;padding:8px 12px;display:flex;box-shadow:0 3px #d5e3f4}.cb-turn{border:2px solid #475569;border-radius:50%;flex:none;width:16px;height:16px}.cb-turn-w{background:#fff}.cb-turn-b{background:#1a1a2e}.cb-puzzle-msg{color:#334155;flex:1;font-size:14px;font-weight:600;line-height:1.4}.cb-puzzle-msg b{color:#1a1a2e;font-weight:800}.cb-reset{font:inherit;color:#64748b;cursor:pointer;background:0 0;border:none;flex:none;padding:4px 6px;font-size:13px;font-weight:700}.cb-reset:hover{color:#1a1a2e}.cb-challenge{box-sizing:border-box;flex-direction:column;gap:12px;width:100%;max-width:380px;margin:0 auto;padding:48px 16px 20px;display:flex}.cb-challenge-title{text-align:center;color:#0f172a;margin:0;font-size:22px}.cb-challenge-ask{text-align:center;color:#475569;justify-content:center;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;line-height:1.45;display:flex}.cb-challenge-count{color:#1e90ff;background:#e8f2ff;border-radius:8px;flex:none;padding:2px 8px;font-size:12px;font-weight:800}.cb-challenge-result{border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:15px;font-weight:800;animation:.25s cb-fade;display:flex}.cb-challenge-result.is-correct{color:#1a8f63;background:#e7f8f0;border:1.5px solid #a7e3c9;box-shadow:0 3px #a7e3c9}.cb-challenge-result.is-wrong{color:#d93636;background:#fff0f0;border:1.5px solid #ffc4c4;box-shadow:0 3px #ffc4c4}.cb-challenge-btn{font:inherit;color:#fff;cursor:pointer;background:#1e90ff;border:none;border-radius:10px;flex:none;align-items:center;gap:6px;padding:8px 14px;font-size:14px;font-weight:800;transition:transform .1s,box-shadow .1s;display:inline-flex;box-shadow:0 3px #0b7fde}.cb-challenge-btn:active{transform:translateY(3px);box-shadow:0 0 #0b7fde}
