/* OnlineTools Kenya 1.4.0 — original word trails, answer zones and race lanes. */
.otk-game-kit .w1-word-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;margin-bottom:16px;color:#465c78;flex-wrap:wrap}.otk-game-kit .w1-pill{display:inline-flex;border-radius:100px;background:#e5eeff;border:1px solid #bfd1f3;padding:6px 10px;color:#164fa4;font-size:11px;font-weight:800}.otk-game-kit .w1-word-scene{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:15px;align-items:center}.otk-game-kit .w1-clue{font-size:clamp(21px,3vw,29px);line-height:1.3;letter-spacing:-.025em;margin-bottom:20px;overflow-wrap:anywhere}.otk-game-kit .w1-kite-art{width:100%;max-width:250px;margin:auto}.otk-game-kit .w1-kite-art svg{display:block;width:100%;height:auto;aspect-ratio:250/210}.otk-game-kit .w1-word-slots{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 13px}.otk-game-kit .w1-word-slot{display:grid;place-items:center;min-height:42px;min-width:28px;padding:3px 6px;background:#fff;border-bottom:3px solid #0053e2;border-radius:6px 6px 0 0;font-size:23px;font-weight:800;color:#153665}.otk-game-kit .w1-word-slot.is-punctuation{border-bottom:0;min-width:12px;background:none;padding:0}.otk-game-kit .w1-word-slot.is-hint{color:#795110;border-bottom-color:#c38930;background:#fff7e6}.otk-game-kit .w1-allowance{font-size:12px;font-weight:650;color:#3d546f;margin-bottom:0}.otk-game-kit .w1-word-form{display:flex;gap:8px;align-items:flex-end;margin-top:16px}.otk-game-kit .w1-word-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;flex:1;min-width:0}.otk-game-kit .w1-word-form input{width:100%;min-width:0;background:#fff;border:1px solid #97b3d9;border-radius:10px;min-height:46px;padding:9px 11px;font-size:17px}.otk-game-kit .w1-word-form .gk-primary{min-height:46px}.otk-game-kit .w1-letter-board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:18px 0 9px}.otk-game-kit .w1-letter{min-height:44px;min-width:0;border:1px solid #a7bfdc;border-radius:9px;background:#fff;color:#133e7b;font-size:17px;font-weight:750;padding:5px;box-shadow:0 2px 0 #d1deef}.otk-game-kit .w1-letter:hover{background:#e6efff;border-color:#0053e2}.otk-game-kit .w1-letter.is-correct{color:#155534;background:#e0f1e7;border-color:#81b396}.otk-game-kit .w1-letter.is-miss{color:#6d7480;background:#e5e9ef;border-color:#c7cfda;text-decoration:line-through;box-shadow:none}.otk-game-kit .w1-tried{font-size:11px;color:#4d627e;margin:10px 0 0;overflow-wrap:anywhere}.otk-game-kit .w1-word-feedback{padding:14px 17px;background:#fff;border:1px solid #c3d6ed;border-radius:12px;margin-top:17px}.otk-game-kit .w1-word-feedback strong{font-size:17px}.otk-game-kit .w1-word-feedback p{margin:5px 0 0;font-size:13px}.otk-game-kit .w1-word-final{text-align:center}.otk-game-kit .w1-word-final h3{font-size:25px;margin:10px 0}.otk-game-kit .w1-word-final p{font-size:13px;color:#465c78}.otk-game-kit .w1-word-final .w1-kite-art{max-width:220px}
.otk-game-kit .w1-duel-grid,.otk-game-kit .w1-duel-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px;align-items:stretch}.otk-game-kit .w1-duel-grid.is-solo{grid-template-columns:minmax(0,1fr);max-width:600px;margin:auto}.otk-game-kit .w1-player-zone{--w1-team:#0053e2;border:1px solid #a9c3e6;background:#fff;border-radius:16px;padding:18px 14px;min-width:0;box-shadow:0 5px 17px #193b7510;display:flex;flex-direction:column;position:relative;overflow:hidden}.otk-game-kit .w1-player-zone:before{content:"";height:5px;position:absolute;inset:0 0 auto;background:var(--w1-team)}.otk-game-kit .w1-player-1{--w1-team:#087260;border-color:#9bc9bf}.otk-game-kit .w1-player-zone h3{font-size:17px;color:var(--w1-team);letter-spacing:-.015em;margin:3px 0 10px}.otk-game-kit .w1-score-line{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;font-size:10px;color:#4c607c;line-height:1.4;margin-bottom:10px}.otk-game-kit .w1-player-score{font-size:30px;line-height:1.1;color:#1e3452}.otk-game-kit .w1-misses{margin-left:auto}.otk-game-kit .w1-meter{height:11px;border:1px solid #c4d1e3;border-radius:100px;overflow:hidden;background:#e8eef7;min-width:0}.otk-game-kit .w1-meter>span{display:block;height:100%;background:var(--w1-team,#0053e2);transition:width .23s ease;border-radius:100px}.otk-game-kit .w1-streak-label{font-size:11px;color:#465c78;margin:6px 0 14px}.otk-game-kit .w1-card-number{font-size:11px;color:#516786;margin:9px 0 7px;font-weight:700}.otk-game-kit .w1-question{font-size:clamp(23px,3vw,37px);line-height:1.15;letter-spacing:-.025em;font-weight:800;font-variant-numeric:tabular-nums;color:#172e4d;min-height:66px;display:flex;align-items:center;justify-content:center;word-spacing:.05em;overflow-wrap:anywhere;text-align:center;margin:6px 0 14px}.otk-game-kit .w1-duel-form{margin:0}.otk-game-kit .w1-duel-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700;min-width:0}.otk-game-kit .w1-duel-form input{width:100%;min-width:0;border:1px solid #94afd4;border-radius:9px;min-height:48px;background:#fff;padding:8px;font-size:21px;text-align:center;color:#172e4d;font-variant-numeric:tabular-nums}.otk-game-kit .w1-player-1 .w1-duel-form input{border-color:#93bdb4}.otk-game-kit .w1-answer-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.otk-game-kit .w1-answer-row .gk-primary{flex:1;background:var(--w1-team);border-color:var(--w1-team);padding:9px 10px;min-width:72px}.otk-game-kit .w1-answer-row .gk-button{padding:9px 8px;flex:none}.otk-game-kit .w1-player-feedback{font-size:11px;color:#425b79;min-height:34px;margin:13px 0 0}.otk-game-kit .w1-player-note{font-size:11px;color:#4a607c;line-height:1.5}.otk-game-kit .w1-bot-note{display:flex;flex-direction:column;font-size:11px;border-radius:10px;background:#e9f5f1;padding:12px 10px;color:#225c51;gap:5px;margin:0 0 12px}.otk-game-kit .w1-bot-countdown{font-size:13px;color:#087260;font-weight:750;font-variant-numeric:tabular-nums;margin:0 0 12px}.otk-game-kit .w1-match-notice{font-size:12px;color:#475f7f;text-align:center;line-height:1.5;margin:17px 0 0}.otk-game-kit .w1-race-track{margin:8px 0 3px;min-width:0}.otk-game-kit .w1-race-stripe{position:relative;margin:0 28px 0 21px;height:57px;background:linear-gradient(to bottom,transparent 36px,#7f97b4 36px,#7f97b4 39px,transparent 39px);border-bottom:2px dashed #b0c1d8}.otk-game-kit .w1-racer{position:absolute;width:54px;height:30px;bottom:15px;transform:translateX(-50%);color:var(--w1-team);transition:left .3s ease;z-index:1}.otk-game-kit .w1-racer svg{width:100%;height:auto;display:block}.otk-game-kit .w1-finish-flag{position:absolute;right:-18px;bottom:21px;font-size:28px;color:#30465f;line-height:1}.otk-game-kit .w1-lane-distance{font-size:10px;color:#4a607d;margin:6px 0}.otk-game-kit .w1-duel-preview .w1-meter{margin:15px 0}
@media(max-width:1050px){.otk-game-kit .w1-word-scene{grid-template-columns:minmax(0,1fr) 115px}.otk-game-kit .w1-duel-grid,.otk-game-kit .w1-duel-preview{gap:10px}.otk-game-kit .w1-player-zone{padding:16px 10px}.otk-game-kit .w1-question{font-size:27px}}
@media(max-width:600px){.otk-game-kit .w1-word-scene{grid-template-columns:minmax(0,1fr) 95px;gap:7px}.otk-game-kit .w1-clue{font-size:23px}.otk-game-kit .w1-word-slot{font-size:21px;min-width:25px;min-height:38px;padding:3px 5px}.otk-game-kit .w1-word-slots{gap:4px}.otk-game-kit .w1-player-zone{padding:16px 9px;border-radius:12px}.otk-game-kit .w1-question{font-size:25px;min-height:59px}.otk-game-kit .w1-duel-grid,.otk-game-kit .w1-duel-preview{gap:8px}.otk-game-kit .w1-player-zone h3{font-size:15px}.otk-game-kit .w1-answer-row .gk-primary{font-size:12px!important;padding:8px 7px}.otk-game-kit .w1-answer-row .gk-button{font-size:11px!important;padding:8px 7px}.otk-game-kit .w1-player-score{font-size:26px}}
@media(max-width:430px){.otk-game-kit[data-otk-tool="kiswahili-word-guessing-game"] .gk-metrics,.otk-game-kit[data-otk-tool="maths-battle"] .gk-metrics,.otk-game-kit[data-otk-tool="multiplication-race"] .gk-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.otk-game-kit .w1-word-scene{grid-template-columns:1fr}.otk-game-kit .w1-word-scene .w1-kite-art{max-width:140px;display:none}.otk-game-kit .w1-word-heading{font-size:11px}.otk-game-kit .w1-clue{font-size:22px;margin-bottom:15px}.otk-game-kit .w1-letter-board{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.otk-game-kit .w1-letter{font-size:15px;min-height:42px;border-radius:7px}.otk-game-kit .w1-word-form{gap:6px}.otk-game-kit .w1-word-form label{font-size:11px}.otk-game-kit .w1-word-form .gk-primary{padding:9px 12px}.otk-game-kit .w1-duel-grid,.otk-game-kit .w1-duel-preview{grid-template-columns:minmax(0,1fr)}.otk-game-kit .w1-player-zone{padding:15px 13px}.otk-game-kit .w1-question{font-size:31px;min-height:45px;margin:3px 0 12px}.otk-game-kit .w1-score-line{margin-bottom:7px}.otk-game-kit .w1-card-number{margin:6px 0 2px}.otk-game-kit .w1-streak-label{margin-bottom:8px}.otk-game-kit .w1-duel-form{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:end}.otk-game-kit .w1-answer-row{margin:0;gap:5px}.otk-game-kit .w1-duel-form input{min-height:46px}.otk-game-kit .w1-answer-row .gk-primary,.otk-game-kit .w1-answer-row .gk-button{min-height:46px}.otk-game-kit .w1-player-feedback{min-height:0;margin:9px 0 0}.otk-game-kit .w1-race-track{margin:0}.otk-game-kit .w1-race-stripe{height:46px;background:linear-gradient(to bottom,transparent 25px,#7f97b4 25px,#7f97b4 28px,transparent 28px)}.otk-game-kit .w1-bot-note{margin-top:0}.otk-game-kit .w1-player-note{margin-bottom:0}}
@media(max-width:350px){.otk-game-kit .w1-duel-form{grid-template-columns:1fr}.otk-game-kit .w1-answer-row .gk-primary{min-width:100px}.otk-game-kit .w1-letter-board{grid-template-columns:repeat(6,minmax(0,1fr))}.otk-game-kit .w1-letter{min-height:40px}}
@media print{.otk-game-kit .w1-letter-board,.otk-game-kit .w1-word-form,.otk-game-kit .w1-duel-form{display:none!important}.otk-game-kit .w1-duel-grid{break-inside:avoid}}

/* dark-mode:start — generated by scripts/dark-mode.py from build/game-kit-assets/wave1-learning.css; do not edit by hand */
@media screen{
 html[data-theme="dark"] .otk-game-kit .w1-word-heading:not([data-otk-paper],[data-otk-paper] *){color:#b5b5b5}
 html[data-theme="dark"] .otk-game-kit .w1-pill:not([data-otk-paper],[data-otk-paper] *){background:#2d2d2d;border:1px solid #35435e;color:#97bffd}
 html[data-theme="dark"] .otk-game-kit .w1-word-slot:not([data-otk-paper],[data-otk-paper] *){background:#212121;border-bottom:3px solid #0053e2;color:#e0e0e0}
 html[data-theme="dark"] .otk-game-kit .w1-word-slot.is-punctuation:not([data-otk-paper],[data-otk-paper] *){border-bottom:0;background:none}
 html[data-theme="dark"] .otk-game-kit .w1-word-slot.is-hint:not([data-otk-paper],[data-otk-paper] *){color:#daad72;border-bottom-color:#6e583d;background:#1f1809}
 html[data-theme="dark"] .otk-game-kit .w1-allowance:not([data-otk-paper],[data-otk-paper] *){color:#bfbfbf}
 html[data-theme="dark"] .otk-game-kit .w1-word-form input:not([data-otk-paper],[data-otk-paper] *){background:#212121;border:1px solid #3e526c}
 html[data-theme="dark"] .otk-game-kit .w1-letter:not([data-otk-paper],[data-otk-paper] *){border:1px solid #384d66;background:#212121;color:#d4d4d4;box-shadow:0 2px 0 #3a3a3a}
 html[data-theme="dark"] .otk-game-kit .w1-letter:hover:not([data-otk-paper],[data-otk-paper] *){background:#2c2c2c;border-color:#0053e2}
 html[data-theme="dark"] .otk-game-kit .w1-letter.is-correct:not([data-otk-paper],[data-otk-paper] *){color:#9edcb5;background:#22332a;border-color:#3d5e4b}
 html[data-theme="dark"] .otk-game-kit .w1-letter.is-miss:not([data-otk-paper],[data-otk-paper] *){color:#9a9a9a;background:#313131;border-color:#444444;box-shadow:none}
 html[data-theme="dark"] .otk-game-kit .w1-tried:not([data-otk-paper],[data-otk-paper] *){color:#afafaf}
 html[data-theme="dark"] .otk-game-kit .w1-word-feedback:not([data-otk-paper],[data-otk-paper] *){background:#212121;border:1px solid #30435a}
 html[data-theme="dark"] .otk-game-kit .w1-word-final p:not([data-otk-paper],[data-otk-paper] *){color:#b5b5b5}
 html[data-theme="dark"] .otk-game-kit .w1-player-zone:not([data-otk-paper],[data-otk-paper] *){border:1px solid #384b65;background:#212121;box-shadow:0 5px 17px #193b7510}
 html[data-theme="dark"] .otk-game-kit .w1-player-zone:not([data-otk-paper],[data-otk-paper] *):before{background:#0053e2}
 html[data-theme="dark"] .otk-game-kit .w1-player-1:not([data-otk-paper],[data-otk-paper] *){border-color:#29544c}
 html[data-theme="dark"] .otk-game-kit .w1-player-zone h3:not([data-otk-paper],[data-otk-paper] *){color:#ababab}
 html[data-theme="dark"] .otk-game-kit .w1-score-line:not([data-otk-paper],[data-otk-paper] *){color:#b1b1b1}
 html[data-theme="dark"] .otk-game-kit .w1-player-score:not([data-otk-paper],[data-otk-paper] *){color:#e5e5e5}
 html[data-theme="dark"] .otk-game-kit .w1-meter:not([data-otk-paper],[data-otk-paper] *){border:1px solid #434343;background:#2d2d2d}
 html[data-theme="dark"] .otk-game-kit .w1-meter>span:not([data-otk-paper],[data-otk-paper] *){background:#0053e2}
 html[data-theme="dark"] .otk-game-kit .w1-streak-label:not([data-otk-paper],[data-otk-paper] *){color:#b5b5b5}
 html[data-theme="dark"] .otk-game-kit .w1-card-number:not([data-otk-paper],[data-otk-paper] *){color:#a9a9a9}
 html[data-theme="dark"] .otk-game-kit .w1-question:not([data-otk-paper],[data-otk-paper] *){color:#ececec}
 html[data-theme="dark"] .otk-game-kit .w1-duel-form input:not([data-otk-paper],[data-otk-paper] *){border:1px solid #40536e;background:#212121;color:#ececec}
 html[data-theme="dark"] .otk-game-kit .w1-player-1 .w1-duel-form input:not([data-otk-paper],[data-otk-paper] *){border-color:#2e5951}
 html[data-theme="dark"] .otk-game-kit .w1-answer-row .gk-primary:not([data-otk-paper],[data-otk-paper] *){background:#0053e2;border-color:#0053e2}
 html[data-theme="dark"] .otk-game-kit .w1-player-feedback:not([data-otk-paper],[data-otk-paper] *){color:#b7b7b7}
 html[data-theme="dark"] .otk-game-kit .w1-player-note:not([data-otk-paper],[data-otk-paper] *){color:#b1b1b1}
 html[data-theme="dark"] .otk-game-kit .w1-bot-note:not([data-otk-paper],[data-otk-paper] *){background:#212c29;color:#94cfc1}
 html[data-theme="dark"] .otk-game-kit .w1-bot-countdown:not([data-otk-paper],[data-otk-paper] *){color:#6ac0ac}
 html[data-theme="dark"] .otk-game-kit .w1-match-notice:not([data-otk-paper],[data-otk-paper] *){color:#b2b2b2}
 html[data-theme="dark"] .otk-game-kit .w1-race-stripe:not([data-otk-paper],[data-otk-paper] *){background:linear-gradient(to bottom,transparent 36px,#4b6585 36px,#4b6585 39px,transparent 39px);border-bottom:2px dashed #3a4b63}
 html[data-theme="dark"] .otk-game-kit .w1-racer:not([data-otk-paper],[data-otk-paper] *){color:#80abf7}
 html[data-theme="dark"] .otk-game-kit .w1-finish-flag:not([data-otk-paper],[data-otk-paper] *){color:#cfcfcf}
 html[data-theme="dark"] .otk-game-kit .w1-lane-distance:not([data-otk-paper],[data-otk-paper] *){color:#b1b1b1}
 @media(max-width:430px){
  html[data-theme="dark"] .otk-game-kit .w1-race-stripe:not([data-otk-paper],[data-otk-paper] *){background:linear-gradient(to bottom,transparent 25px,#4b6585 25px,#4b6585 28px,transparent 28px)}
 }
}
/* dark-mode:end */
