/* Optional lesson companion. Styles are scoped to this feature. */
.cb-recharge-launch{position:fixed;right:16px;bottom:84px;z-index:75;border:1px solid #c48813;border-radius:999px;background:#f4c444;color:#0b2842;padding:11px 18px;box-shadow:0 8px 28px #0920353d;font:800 15px/1.2 system-ui,sans-serif;cursor:pointer}
.cb-recharge-launch:hover,.cb-recharge-launch:focus-visible{background:#ffdb75;outline:3px solid #54b9b7;outline-offset:3px}
.cb-recharge-dialog{box-sizing:border-box;width:min(710px,calc(100vw - 28px));max-height:calc(100vh - 28px);padding:25px;border:1px solid #bad5df;border-radius:20px;overflow:auto;background:#fff;color:#0d2941;box-shadow:0 25px 80px #06192b65;font:16px/1.5 system-ui,sans-serif}
.cb-recharge-dialog::backdrop{background:#04182bc9}
.cb-recharge-dialog[open]{display:block}
.cb-recharge-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.cb-recharge-kicker{color:#a26b00;font-size:11px;font-weight:850;letter-spacing:.1em}
.cb-recharge-head h2{font:800 clamp(23px,4vw,33px)/1.14 system-ui,sans-serif;margin:6px 0 5px;color:#0b2842}
.cb-recharge-close{min-width:40px;min-height:40px;border:1px solid #c8dce6;border-radius:10px;background:#f3f8fb;color:#0d2941;font-size:20px;cursor:pointer}
.cb-recharge-intro{margin:10px 0 18px;color:#496276}
.cb-recharge-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.cb-recharge-choices button{display:flex;flex-direction:column;gap:4px;text-align:left;min-height:92px;padding:13px;border:1px solid #bdd5e1;border-radius:12px;background:#f5fafb;color:#17354d;cursor:pointer;font:inherit}
.cb-recharge-choices button strong{font-size:17px}
.cb-recharge-choices button span{font-size:13px;color:#4e6678}
.cb-recharge-choices button[aria-pressed="true"]{border-color:#0b9c9b;background:#dff6f2}
.cb-recharge-panel{margin-top:18px;padding:16px;border-radius:13px;background:#f0f7fa}
.cb-recharge-panel[hidden]{display:none}
.cb-recharge-panel h3{margin:0 0 12px;color:#0d3652;font:800 20px/1.3 system-ui,sans-serif}
.cb-recharge-panel video{display:block;width:100%;height:auto;border-radius:11px;background:#081b31;aspect-ratio:16/9}
.cb-recharge-panel p{margin:11px 0;color:#344e60}
.cb-recharge-panel pre{overflow-x:auto;padding:17px;border-radius:10px;background:#0b2137;color:#e1f7f5;font:15px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}
.cb-recharge-panel summary{cursor:pointer;color:#0a6478;font-weight:700}
.cb-recharge-answers{display:flex;flex-wrap:wrap;gap:9px;border:0;margin:0;padding:0}
.cb-recharge-answers legend{font-weight:800;margin-bottom:9px}
.cb-recharge-answers button,.cb-recharge-timer-button,.cb-recharge-return{border:1px solid #9fbccc;border-radius:9px;background:white;color:#103551;padding:10px 17px;font:700 15px/1.2 system-ui,sans-serif;cursor:pointer}
.cb-recharge-answers button:hover,.cb-recharge-timer-button:hover{background:#e3f7f4}
.cb-recharge-answers button[aria-pressed="true"]{background:#c1f0e9;border-color:#15887f}
.cb-recharge-game-picker{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.cb-recharge-game-picker button,.cb-recharge-game button{border:1px solid #9fbccc;border-radius:9px;background:white;color:#103551;padding:9px 12px;font:700 14px/1.2 system-ui,sans-serif;cursor:pointer}
.cb-recharge-game-picker button[aria-pressed="true"],.cb-recharge-game button[aria-pressed="true"]{background:#c1f0e9;border-color:#15887f}
.cb-recharge-game[hidden]{display:none}
.cb-recharge-board{display:grid;grid-template-columns:repeat(3,58px);gap:7px;margin:12px 0}
.cb-recharge-board button{height:58px;padding:0;background:white;font-size:28px;font-weight:800}
.cb-recharge-board button:disabled{color:#0b4c63;cursor:default}
.cb-recharge-game .cb-recharge-mini-answers{display:flex;flex-wrap:wrap;gap:8px}
.cb-recharge-game .cb-recharge-mini-answers button:hover,.cb-recharge-board button:not(:disabled):hover,.cb-recharge-game-picker button:hover{background:#e3f7f4}
.cb-recharge-return{background:#0d3652;color:white;border-color:#0d3652}
.cb-recharge-footer{margin-top:18px;display:flex;justify-content:flex-end}
.cb-recharge-dialog button:focus-visible,.cb-recharge-dialog summary:focus-visible{outline:3px solid #d99103;outline-offset:2px}
@media(max-width:760px){.cb-recharge-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.cb-recharge-launch{right:12px;bottom:72px}.cb-recharge-dialog{padding:18px}.cb-recharge-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.cb-recharge-choices button{min-height:76px}.cb-recharge-choices button span{font-size:12px}}

/* Shared games on the remaining numbered C lessons. */
#cbCoursePuzzleAnswers,.cb-course-game-area .cb-recharge-mini-answers{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0}
#cbCoursePuzzleAnswers button,.cb-course-game-area button{border:1px solid #9fbccc;border-radius:9px;background:#fff;color:#103551;padding:9px 14px;font:700 15px/1.25 system-ui,sans-serif;cursor:pointer;margin:4px}
#cbCoursePuzzleAnswers button:hover,.cb-course-game-area button:not(:disabled):hover{background:#e3f7f4}
#cbCoursePuzzleAnswers button[aria-pressed="true"]{background:#c1f0e9;border-color:#15887f}
.cb-course-game-area button:disabled{cursor:default;opacity:.65}
.cb-course-game-area .cb-course-memory{display:grid;grid-template-columns:repeat(3,70px);gap:7px}
.cb-course-game-area .cb-course-memory button{height:62px;font-size:25px;margin:0}
.cb-course-game-area .cb-course-maze{display:grid;grid-template-columns:repeat(4,42px);gap:3px;max-width:max-content;margin:12px 0}
.cb-course-maze span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #b5ced9;border-radius:5px;background:#fff;font:800 23px/1 system-ui,sans-serif}
.cb-course-game-area .cb-course-number{width:110px;padding:9px;border:1px solid #99b4c3;border-radius:9px;font-size:18px}
.cb-course-game-area input[type="range"]{width:min(350px,100%);accent-color:#0a8494}
