/* مغامرة المأمون V30 — طبقة التصميم للمتعلم غير الناطق */
@font-face{font-family:'Baloo Bhaijaan 2';src:url('fonts/BalooBhaijaan2.woff2') format('woff2');font-weight:400 800;font-display:swap}
@font-face{font-family:'Noto Naskh Arabic';src:url('fonts/NotoNaskhArabic.woff2') format('woff2');font-weight:400 700;font-display:swap}
:root{--learn:'Noto Naskh Arabic','Traditional Arabic',serif;--ui:'Baloo Bhaijaan 2',Tahoma,Arial,sans-serif;--good:#1f9d55;--bad:#d24b45;--sun:#f3c952}
body,button,input,select,textarea{font-family:var(--ui)}

/* النص العربي الذي يتعلمه الطالب: خط نسخ مدرسي واضح الحركات */
.ar-text,.token,.letter-tile,.alpha-btn,.lc-letter,.lc-chip b,.lc-form b,.reading-text,.read-word,.choice.ar,.match-card.word,.voice-item,.ar-input,.q-ar,.prompt-ar,.activity-target{font-family:var(--learn)}
.activity-target{line-height:1.6;flex-direction:column;gap:6px;min-height:150px}
.activity-target .ar-text{font-size:clamp(52px,8vw,96px);font-weight:700;line-height:1.5}
.activity-target .ar-text.sentence{font-size:clamp(28px,3.6vw,42px);line-height:1.9}
.activity-target.small .ar-text{font-size:clamp(44px,6vw,72px)}
.listen-target{font-size:84px;animation:pulseEar 2.2s ease-in-out infinite}
.pic-target .ar-text,.pic-big{font-size:clamp(84px,11vw,130px);line-height:1.1;font-family:var(--ui)}
.reveal-word{font-size:28px;color:var(--teal2);font-weight:700}
.q-ar{font-size:clamp(24px,2.6vw,34px);color:var(--navy);margin:8px 0 2px;text-align:center}
.prompt-ar{font-size:clamp(20px,2vw,26px);color:var(--navy);text-align:center;margin:6px 0 0;font-weight:700}
.prompt-ar.small{font-size:20px;margin-top:14px}
.center{text-align:center}.center-row{justify-content:center}
.big-emoji{font-size:72px}

/* مساعدة الإنجليزية والنطق اللاتيني — تُظهرها/تخفيها أزرار EN و Aa */
.gloss,.tl{display:none}
body.help-on .gloss{display:block;font-family:var(--ui);font-size:15px;font-weight:600;color:#5a7a8c;direction:ltr;line-height:1.35;margin-top:2px}
body.help-on span.gloss{display:block}
body.tl-on .tl,.tl.always{display:block;font-family:var(--ui);font-size:17px;font-weight:700;color:var(--teal2);direction:ltr;letter-spacing:.3px;line-height:1.3}
.activity-target .tl{font-size:22px}
.choice .tl,.token .tl,.match-card .tl{font-size:13px;margin-top:2px}
.gloss-inline{font-size:.7em;opacity:.8;font-weight:600}
body:not(.help-on) .translation{display:none}
.start-en{font-size:18px!important;color:#0f7f86!important;font-weight:700;margin-top:-6px!important}
.toggle-btn{min-width:48px;height:44px;border-radius:14px;border:2px solid rgba(255,255,255,.35);background:transparent;color:#cfe3ec;font-weight:800;font-size:15px;padding:0 10px}
.toggle-btn.on{background:var(--sun);border-color:var(--sun);color:#123d67}
.settings-row .toggle-btn,.profile-content .toggle-btn{color:var(--navy);border-color:#bcd7e1;height:52px;font-size:17px;padding:0 18px}
.settings-row{display:flex;gap:12px;justify-content:center;margin:22px 0 40px}
.top-hud .hud-stats,.top-hud .hud-actions{display:flex;gap:8px;align-items:center}

/* الخيارات */
.choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px!important}
.choice.ar{font-size:clamp(28px,3vw,40px);font-weight:700;min-height:92px;padding:8px 44px 8px 12px;line-height:1.5}
.choice.pic{min-height:132px;display:grid;place-items:center}
.pic-emoji{font-size:clamp(56px,6vw,76px);line-height:1;font-family:var(--ui)}
.opt-pic{font-size:30px;display:block;line-height:1;font-family:var(--ui)}
.choice.reveal{border-color:var(--good)!important;background:#effbf2!important;animation:revealPulse .8s ease 2}
.choice.speaking{border-color:var(--sun)!important;transform:translateY(-3px);box-shadow:0 7px 0 #e7b53c}
.choice:focus-visible,.token:focus-visible,.letter-tile:focus-visible,.alpha-btn:focus-visible,.match-card:focus-visible,.big-btn:focus-visible,.control-btn:focus-visible,.toggle-btn:focus-visible,.round-btn:focus-visible,.read-word:focus-visible{outline:4px solid #f3c952;outline-offset:3px}
.feedback.good{background:#e9f9ef;color:#17663a}
.feedback.bad{background:#fff3f1;color:#8a3029}
.feedback b{font-size:22px}
.after-actions{display:flex;gap:14px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:14px}
.next-btn{font-size:22px!important;padding:14px 26px!important}
.help-btn.used{opacity:.6}
.mini-dots{display:flex;gap:6px;justify-content:center;margin:8px 0 2px}
.mini-dots span{width:12px;height:12px;border-radius:50%;background:#d8e8ee}
.mini-dots .done{background:var(--teal)}.mini-dots .current{background:var(--sun);transform:scale(1.25)}
.activity-title h2{margin:4px 0 0}

/* المدرّب */
.coach img.happy{animation:hop .6s ease}
.coach img.think{animation:tilt .7s ease}
.coach-talk b{font-family:var(--learn);font-size:21px;line-height:1.6}
.combo{background:linear-gradient(180deg,#ff9d3c,#f06a2b)!important;border-color:transparent!important}
.combo.pop{animation:pop .35s ease}

/* قراءة الكلمات */
.word-reader{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:10px}
.letter-tiles{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.letter-tile{min-width:64px;height:78px;border-radius:18px;border:3px solid #cce3eb;background:#fff;font-size:40px;color:var(--navy);box-shadow:0 6px 0 #d4e7ec;line-height:1.4}
.letter-tile.lit,.read-word.lit{background:#fff5d4;border-color:var(--sun)}
.audio-cards{grid-template-columns:repeat(3,1fr)}
.audio-card{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:22px;background:#f4fafc;border:3px solid #d6e8ee}
.audio-card.playing{border-color:var(--sun)}
.audio-card .control-btn{font-size:22px}
.audio-card .choice.pick{min-height:56px;font-size:20px}

/* المطابقة */
.match-board{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:760px;margin:18px auto}
.match-board.win{animation:pop .5s ease}
.match-col{display:grid;gap:12px}
.match-card{min-height:88px;border-radius:20px;border:3px solid #cce4eb;background:#fff;box-shadow:0 6px 0 #d6e8ed;color:var(--navy);font-size:34px;font-weight:700}
.match-card.pic{font-size:52px;font-family:var(--ui)}
.match-card.sel{border-color:var(--sun);background:#fffbea}
.match-card.ok{border-color:var(--good);background:#e9f9ef;opacity:.75}
.shake{animation:shake .4s ease}

/* بناء الجملة */
.goal-card{display:flex;flex-direction:column;align-items:center;margin:8px auto 12px}
.goal-emoji{font-size:54px;line-height:1.2}
.sentence-slots{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;align-items:center;direction:rtl}
.sentence-slots.solved{border-color:var(--good);background:#e9f9ef;border-style:solid}
.slot-hint{color:#7d97a6;font-size:18px;text-align:center}
.token.ar{font-size:30px;font-weight:700;line-height:1.5;padding:8px 18px}
.token.wrong-slot{border-color:var(--bad);background:#fff1ef}
.race-track .player-car,.race-track .rival-car{transition:left .3s linear}

/* القراءة */
.reading-text.ar{font-size:clamp(26px,2.8vw,34px);line-height:2.2}
.read-word{font:inherit;background:none;border:none;border-radius:10px;padding:0 3px;color:inherit;cursor:pointer}
.read-word:hover{background:#eaf6fb}
.translation{max-width:760px;margin:0 auto 10px;background:#f7fbfd;border-radius:16px;padding:8px 14px}
.translation summary{cursor:pointer;font-weight:700;color:#3b6378}
.question-card{background:#f7fbfd;border:2px solid #d6e8ee;border-radius:22px;padding:14px;margin:14px auto;max-width:900px}
.question-card.q-ok{border-color:#9fdcb5}.question-card.q-bad{border-color:#f0b4ae}
.q-head{display:flex;align-items:center;gap:12px;justify-content:center;font-size:26px;color:var(--navy)}
.q-num{width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:17px;font-family:var(--ui)}
.choice-audio.inline{position:static;transform:none}

/* الميكروفون */
.mic-practice{display:flex;align-items:center;gap:12px;background:#fff5f5;border-radius:20px;padding:8px 16px}
.mic-btn.small{width:64px;height:64px;font-size:26px;box-shadow:0 6px 0 #b12e39}
.mic-btn.listening{animation:pulseMic 1s ease infinite}
.mic-feed{font-weight:700;color:#7a3a3f;max-width:360px}
.compare-row{display:flex;gap:10px;align-items:center;margin-top:6px;flex-wrap:wrap}
.compare-row audio{height:40px}
.compare-btn{margin-top:8px;font-size:15px}

/* النهاية والنجوم */
.stars-row{display:flex;gap:10px;font-size:64px;line-height:1}
.stars-row span{color:#d8e3e8}
.stars-row span.on{color:var(--sun);text-shadow:0 4px 0 #d99c13;animation:starIn .5s both}
.sticker-won{display:flex;flex-direction:column;align-items:center;background:#fffbea;border:3px dashed var(--sun);border-radius:24px;padding:12px 26px;margin:8px}
.sticker-won span{font-size:56px;animation:hop .8s ease 2}
.level-up{background:#eaf6ff;border-radius:16px;padding:8px 16px;font-weight:700;color:#0d5a86}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:300;overflow:hidden}
.confetti span{position:absolute;top:-40px;font-size:26px;animation:fall linear forwards}
.flash-msg{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:400;background:#0d3f65;color:#fff;padding:13px 20px;border-radius:16px;font-weight:700;box-shadow:0 14px 30px rgba(0,0,0,.25);max-width:92vw;text-align:center}

/* الخريطة */
.node-stars{display:block;font-style:normal;color:var(--sun);font-size:14px;letter-spacing:1px;text-shadow:0 1px 0 #7a5a00}
.mission-stars{color:#d99c13;letter-spacing:2px}
.mission-panel .gloss{font-size:13px}

/* مختبر الحروف */
.lab-screen{background:linear-gradient(180deg,#eef9ff,#f9fdff)}
.lab-content{max-width:1200px;margin:0 auto;padding:20px}
.lab-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:22px;align-items:start;margin-top:14px}
.alphabet-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.alpha-btn{aspect-ratio:1;border-radius:16px;border:3px solid #cce3eb;background:#fff;font-size:clamp(28px,3vw,40px);color:var(--navy);box-shadow:0 5px 0 #d4e7ec;line-height:1}
.alpha-btn.sel{background:var(--navy);border-color:var(--navy);color:#fff;box-shadow:0 5px 0 #06243a}
.letter-card{background:#fff;border-radius:30px;padding:22px;box-shadow:var(--shadow);position:sticky;top:12px}
.letter-card h4{margin:16px 0 8px;color:var(--navy);font-size:18px}
.lc-top{display:flex;gap:20px;align-items:center}
.lc-top h2{margin:0;font-family:var(--learn);font-size:36px;color:var(--navy)}
.lc-letter{width:130px;height:130px;border-radius:28px;border:none;background:linear-gradient(180deg,#19a7d8,#0d7fae);color:#fff;font-size:86px;line-height:1;box-shadow:0 8px 0 #0a5f82}
.lc-row{display:flex;gap:10px;flex-wrap:wrap}
.lc-chip{min-width:84px;border-radius:18px;border:3px solid #cce3eb;background:#fff;padding:6px 12px;color:var(--navy);box-shadow:0 5px 0 #d4e7ec}
.lc-chip b{display:block;font-size:40px;line-height:1.5}
.lc-chip small{font-size:14px;color:var(--teal2);font-weight:700}
.lc-row.forms{display:grid;grid-template-columns:repeat(4,1fr)}
.lc-form{background:#f4fafc;border-radius:16px;padding:8px;text-align:center}
.lc-form b{display:block;font-size:44px;line-height:1.5;color:var(--navy)}
.lc-form small{font-size:13px;color:#5a7a8c}
.lc-word{display:flex;align-items:center;gap:16px;width:100%;border:3px solid #cce3eb;border-radius:22px;background:#fffdf5;padding:10px 18px;color:var(--navy);text-align:start}
.lc-word .pic-big{font-size:64px}
.lc-word .ar-text{font-size:42px}
.letter-card [data-mic]{margin-top:14px}
.note{background:#fff7e0;border-radius:12px;padding:8px 12px;font-size:15px;color:#7a5a00}

/* الملف الشخصي */
.profile-hero h1{font-size:42px;color:var(--navy);margin:10px 0}
.profile-hero img{max-height:220px}
.section-title{color:var(--navy);font-size:24px;margin:26px 0 10px}
.section-title .gloss{display:inline!important;margin-inline-start:8px}
body:not(.help-on) .section-title .gloss{display:none!important}
.sticker-book{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}
.sticker{background:#fff;border:3px dashed #cfe0e7;border-radius:22px;padding:12px 8px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;color:#8aa2b0}
.sticker.got{border-style:solid;border-color:var(--sun);color:var(--navy);background:#fffdf3}
.sticker-icon{font-size:40px}
.sticker b{font-size:14px}
.sticker i{font-style:normal;color:#d99c13;letter-spacing:1px}
.id-card{display:flex;gap:14px;justify-content:center;margin:16px 0}
.id-card span{background:#f4fafc;border:2px solid #d6e8ee;border-radius:18px;padding:10px 18px;display:flex;flex-direction:column;font-weight:700;color:#5a7a8c}
.id-card b{font-size:30px;color:var(--navy);letter-spacing:2px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-field label small{color:#6c8797;font-weight:600;margin-inline-start:6px}

/* الإدارة */
.admin-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.admin-actions .big-btn{font-size:16px;padding:12px 16px}
.admin-warning{background:#fff7e0;border:1px solid #f1d58a;color:#6b4e00;border-radius:14px;padding:10px 14px;margin:10px 0;font-weight:700}
.table-wrap{overflow-x:auto}
.empty-state{text-align:center;color:#5a7a8c;padding:30px}
.error-list{list-style:none;padding:0;margin:8px 0;display:grid;gap:6px}
.error-list li{display:flex;gap:10px;align-items:center;background:#fff;border-radius:12px;padding:6px 12px}
.error-list li span{font-family:var(--learn);font-size:20px;flex:1}
.error-list li small{color:#6c8797}
.big-btn.danger{color:var(--bad)!important}
.muted{color:#6c8797}
.overlay-card{max-height:92vh;overflow:auto}
.overlay-card .report,.overlay-card .studio{min-width:min(760px,90vw)}
.overlay-card:has(.report),.overlay-card:has(.studio){width:min(900px,96vw)}
.voice-list{display:flex;flex-wrap:wrap;gap:8px;max-height:220px;overflow:auto;background:#f4fafc;border-radius:16px;padding:10px;margin:8px 0}
.voice-item{border:2px solid #d6e8ee;background:#fff;border-radius:12px;padding:4px 12px;font-size:22px;color:var(--navy)}
.voice-item.has{border-color:#9fdcb5}
.voice-item.sel{border-color:var(--sun);background:#fffbea}
.ar-input{font-size:24px!important}
.voice-banner{margin-top:14px;background:#fff7e0;border:1px solid #f1d58a;color:#6b4e00;border-radius:16px;padding:10px 14px;font-size:15px;line-height:1.7}

/* الحركة */
@keyframes pulseEar{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
@keyframes revealPulse{0%,100%{transform:none}50%{transform:scale(1.04)}}
@keyframes hop{0%,100%{transform:translateY(0)}40%{transform:translateY(-16px)}}
@keyframes tilt{0%,100%{transform:rotate(0)}30%{transform:rotate(-6deg)}70%{transform:rotate(5deg)}}
@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.18)}100%{transform:scale(1)}}
@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}
@keyframes starIn{from{transform:scale(0) rotate(-40deg);opacity:0}to{transform:none;opacity:1}}
@keyframes fall{to{transform:translateY(110vh) rotate(540deg)}}
@keyframes pulseMic{0%,100%{box-shadow:0 0 0 0 rgba(223,69,82,.5)}50%{box-shadow:0 0 0 16px rgba(223,69,82,0)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* الأجهزة اللوحية والهواتف */
@media(max-width:980px){.lab-layout{grid-template-columns:1fr}.letter-card{position:static}.audio-cards{grid-template-columns:1fr}}
@media(max-width:640px){.choice-grid:not(.two){grid-template-columns:1fr!important}.choice.pic{min-height:104px}.alphabet-grid{grid-template-columns:repeat(5,1fr)}.lc-row.forms{grid-template-columns:repeat(2,1fr)}.match-board{gap:12px}.toggle-btn{min-width:38px;height:38px;font-size:13px;padding:0 6px}.form-row{grid-template-columns:1fr}.lc-letter{width:96px;height:96px;font-size:64px}}
.word-bank .token:disabled{opacity:.28;transform:scale(.94);box-shadow:none}
@media(max-width:760px){.admin-head{flex-direction:column;align-items:stretch}.admin-actions{justify-content:flex-start}.stage-hud .hud-title{font-size:18px}}

/* ورشة الكتابة */
.write-screen{background:linear-gradient(180deg,#eaf7ff,#fdfbf2)}
.write-board{max-width:980px;margin:22px auto;min-height:auto}
.write-intro{text-align:center;padding:10px}
.write-intro h2{font-size:40px;color:var(--navy);margin:6px 0}
.trace-wrap{position:relative;width:min(360px,82vw);aspect-ratio:1;margin:14px auto 8px;border-radius:28px;background:#fff;border:4px solid #cfe3ea;box-shadow:inset 0 0 0 10px #f6fbfd;touch-action:none;overflow:hidden}
.trace-wrap::before{content:"";position:absolute;inset:auto 8% 34% 8%;border-top:2px dashed #e3edf2}
.trace-wrap canvas{position:absolute;inset:0;width:100%;height:100%}
.trace-ink{cursor:crosshair;touch-action:none}
.trace-hint{position:absolute;bottom:10px;left:12px;font-size:28px;animation:hop 1.4s ease infinite;pointer-events:none}
.trace-wrap.inked .trace-hint{display:none}
.trace-wrap.traced{border-color:var(--good);box-shadow:inset 0 0 0 10px #eafaf0}
.trace-actions{margin-top:4px}
.letter-card .trace-wrap{width:min(260px,70vw)}
.spell-top{display:flex;flex-direction:column;align-items:center;gap:6px;margin:6px 0}
.spell-top .listen-target{font-size:74px}
.spell-built{min-height:112px;margin:10px auto;max-width:560px;border-radius:24px;border:3px dashed #a9ced9;background:#f4fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 14px}
.spell-built.good{border-style:solid;border-color:var(--good);background:#e9f9ef}
.spell-built.bad{border-style:solid;border-color:var(--bad);background:#fff1ef;animation:shake .4s ease}
.spell-word{font-family:var(--learn);font-size:clamp(48px,7vw,72px);color:var(--navy);line-height:1.4;font-weight:700}
.spell-left{font-size:30px;color:#9fbccb;letter-spacing:6px;direction:rtl}
.spell-letters{font-family:var(--learn);font-size:26px;color:var(--teal2)}
.spell-tiles{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:10px 0}
.spell-tile{width:74px;height:78px;border-radius:18px;border:3px solid #cce3eb;background:#fff;font-family:var(--learn);font-size:42px;color:var(--navy);box-shadow:0 6px 0 #d4e7ec;line-height:1.3}
.spell-tile:disabled{opacity:.25;box-shadow:none;transform:scale(.94)}
.spell-tile:focus-visible{outline:4px solid #f3c952;outline-offset:3px}
@media(max-width:640px){.spell-tile{width:60px;height:66px;font-size:34px}.game-nav button span{font-size:10px}}

/* فحص الحروف الـ28 */
.lc-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;max-width:560px;margin:14px auto}
.lc-cell{aspect-ratio:1;border-radius:14px;display:grid;place-items:center;font-family:var(--learn);font-size:30px;line-height:1;border:3px solid transparent;position:relative;color:var(--navy);background:#eef3f5}
button.lc-cell{cursor:pointer}
.lc-cell.known{background:#dff6e7;border-color:#7fd19b}
.lc-cell.learning{background:#fff4cf;border-color:#f0cf62}
.lc-cell.weak{background:#ffe3e0;border-color:#ef9d95}
.lc-cell.new{background:#f1f5f7;border-color:#dbe6eb;color:#7d97a6}
.lc-cell.teacher{box-shadow:0 0 0 3px #d99c13}
.lc-cell i{position:absolute;bottom:2px;left:6px;font-style:normal;font-size:14px;font-family:var(--ui)}
.lc-legend{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;font-size:13px;font-weight:700;color:#5a7a8c}
.lc-legend span::before{content:"";display:inline-block;width:12px;height:12px;border-radius:4px;margin-inline-end:5px;vertical-align:-1px}
.lc-legend .known::before{background:#7fd19b}.lc-legend .learning::before{background:#f0cf62}.lc-legend .weak::before{background:#ef9d95}.lc-legend .new::before{background:#dbe6eb}
.lc-progress{max-width:420px;margin:12px auto;font-size:22px;font-weight:800;color:var(--navy);text-align:center}
.lc-progress .bar{height:14px;border-radius:10px;background:#e3edf1;overflow:hidden;margin-top:6px}
.lc-progress .bar b{display:block;height:100%;background:linear-gradient(90deg,#42b966,#14a7a4)}
.lc-session{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:10px 0}
.lc-session .lc-cell{width:62px}
.lc-show{font-size:clamp(90px,12vw,140px)!important}
.lc-mini{margin-top:8px;background:#fff7e0;border-radius:12px;padding:6px 10px;font-size:14px;color:#6b4e00}
.lab-check{display:flex;justify-content:center;margin:10px 0}
.alpha-btn.st-known{border-color:#7fd19b;background:#f0fbf3}
.alpha-btn.st-learning{border-color:#f0cf62;background:#fffaea}
.alpha-btn.st-weak{border-color:#ef9d95;background:#fff3f1}
.alpha-btn.sel{background:var(--navy)!important;border-color:var(--navy)!important;color:#fff}
.report .lc-grid{max-width:480px}
@media(max-width:640px){.lc-grid{gap:5px}.lc-cell{font-size:24px;border-radius:10px}}
.lc-session .lc-cell{overflow:visible}
.lc-cell i{bottom:auto;left:auto;top:-9px;right:-9px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:13px;color:#fff;background:var(--good);box-shadow:0 2px 0 rgba(0,0,0,.15)}
.lc-cell.weak i{background:var(--bad)}
.ab-icon{display:inline-grid;place-items:center;min-width:1.5em;height:1.3em;padding:0 .25em;border-radius:.3em;background:#1b9bd1;color:#fff;font-family:var(--learn);font-weight:700;font-size:.8em;line-height:1;vertical-align:-.12em;box-shadow:0 .08em 0 #0d6e98}
.big-emoji .ab-icon,.trophy .ab-icon{font-size:56px;height:1.25em}
.game-nav .ab-icon{font-size:15px}
.game-nav button .ab-icon{display:inline-grid!important;width:auto;margin:0 auto;font-size:14px}

/* اللمس على iPad والأجهزة اللوحية */
html{-webkit-text-size-adjust:100%}
button,.choice,.token,.spell-tile,.match-card,.letter-tile,.alpha-btn,.lc-cell{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}
.trace-wrap,.trace-wrap canvas{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none;overscroll-behavior:contain}
/* على الشاشات اللمسية لا نرفع الأزرار عند «المرور» حتى لا تبقى مرفوعة بعد اللمس */
@media (hover:none){.choice:hover,.big-btn:hover,.control-btn:hover,.token:hover,.read-word:hover{transform:none}.read-word:hover{background:none}}
.choice:active,.token:active,.spell-tile:active,.match-card:active,.alpha-btn:active,.big-btn:active{transform:scale(.97)}
/* لوح كتابة أكبر على الأجهزة اللوحية لإصبع الطفل */
.trace-wrap{width:min(480px,86vw,58vh);min-width:min(280px,86vw)}
.letter-card .trace-wrap{width:min(340px,76vw)}

/* الاستيراد والرقم السري */
.imp-table{max-height:300px;overflow:auto;margin:10px 0;border-radius:14px;border:1px solid #d6e8ee}
.imp-table .admin-table{font-size:14px}
.muted-row{opacity:.45}
.pin-input{font-size:30px!important;letter-spacing:12px;text-align:center}
.big-btn.primary .gloss,.big-btn.gold .gloss{color:rgba(255,255,255,.9)!important}
.big-btn.gold .gloss{color:#5a4500!important}

/* ===== المهام والوتيرة ===== */
.mission-panel{max-height:calc(100% - 24px);overflow-y:auto}
.mission-list{margin:10px 0;display:grid;gap:6px}
.ml-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:15px;color:var(--navy)}
.day-pill{background:#eaf6ff;color:#0d5a86;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}
.day-pill.empty{background:#fff4cf;color:#6b4e00}
.ml-item{display:flex;align-items:center;gap:10px;width:100%;text-align:start;border:2px solid #d6e8ee;background:#fff;border-radius:14px;padding:7px 10px;color:var(--navy);font:inherit}
.ml-item .ml-icon{font-size:22px;width:30px;text-align:center}
.ml-item .ml-text{flex:1;display:flex;flex-direction:column;line-height:1.3}
.ml-item .ml-text b{font-size:15px}
.ml-item .gloss{font-size:11px!important;margin:0}
.ml-item .ml-meta{color:#d99c13;font-size:13px;letter-spacing:1px}
.ml-item.done{background:#f2fbf5;border-color:#a8dfbb}
.ml-item.next{border-color:var(--teal);box-shadow:0 0 0 3px rgba(20,167,164,.15)}
.ml-item.locked{opacity:.55}
.ml-item.tomorrow{background:#fffaea;border-color:#f0cf62}
.ml-why{font-size:11px;color:#8a6d00}
.node-missions{display:block;font-style:normal;font-size:11px;letter-spacing:2px;color:#9ff0ec;text-shadow:0 1px 1px #043}
.mission-progress{display:flex;gap:8px;justify-content:center;margin:6px 0}
.mission-progress span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e3edf1;color:#62798a;font-weight:800}
.mission-progress span.on{background:var(--sun);color:#fff}
.mission-progress span.cur{box-shadow:0 0 0 3px var(--teal)}
.pacing-card{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;background:#f4fafc;border:1px solid #d6e8ee;border-radius:14px;padding:12px 14px;margin:10px 0}
.pacing-card select{padding:6px 10px;border-radius:10px;border:1px solid #bcd7e1}
.pacing-card small{flex-basis:100%}

/* صيد الحروف */
.hunt-target{display:flex;align-items:center;justify-content:center;gap:18px;margin:8px 0}
.hunt-letter{width:96px;height:96px;border-radius:24px;border:none;background:linear-gradient(180deg,#19a7d8,#0d7fae);color:#fff;font-family:var(--learn);font-size:62px;line-height:1;box-shadow:0 6px 0 #0a5f82}
.hunt-count{font-size:20px;font-weight:800;color:var(--teal2)}
.hunt-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;max-width:760px;margin:14px auto}
.bubble{aspect-ratio:1;border-radius:50%;border:3px solid #bfe0ea;background:radial-gradient(circle at 35% 30%,#fff,#e6f5fa);font-family:var(--learn);font-size:clamp(28px,4vw,40px);color:var(--navy);line-height:1;box-shadow:0 5px 0 #cfe6ee;animation:bob 3.2s ease-in-out infinite}
.bubble.pop{background:radial-gradient(circle at 35% 30%,#fff,#c9f1d6);border-color:var(--good);color:#17663a;animation:none;transform:scale(.9)}
.bubble.nope{border-color:#f0b4ae}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

/* ركّب الصوت */
.syl-preview{width:150px;height:130px;margin:10px auto;border-radius:28px;border:3px dashed #a9ced9;background:#f4fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--learn);font-size:72px;color:var(--navy);line-height:1.2}
.syl-preview.good{border-style:solid;border-color:var(--good);background:#e9f9ef}
.syl-row{display:flex;align-items:center;justify-content:center;gap:14px;margin:8px 0;flex-wrap:wrap}
.syl-label{font-weight:800;color:#476376;min-width:70px;text-align:center}
.syl-opts{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.syl-tile{min-width:78px;height:84px;border-radius:18px;border:3px solid #cce3eb;background:#fff;font-family:var(--learn);font-size:44px;color:var(--navy);box-shadow:0 6px 0 #d4e7ec;line-height:1.2;padding:0 10px}
.syl-tile.vowel{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:40px}
.syl-tile.vowel small{font-size:13px;font-family:var(--ui);color:#5a7a8c}
.syl-tile.sel{border-color:var(--sun);background:#fffbea}

/* أين الحرف في الكلمة */
.inword-card{display:flex;flex-direction:column;align-items:center;gap:4px;margin:8px 0}
.inword-word{font-size:clamp(54px,8vw,86px);color:var(--navy);line-height:1.4}
.inword-word .hl{color:#e0572e}
.pos-label{display:block;font-family:var(--learn);font-size:18px;color:#476376}

/* نفس الصوت أم مختلف */
.sd-pair{display:flex;gap:26px;justify-content:center;margin:14px 0}
.sd-bubble{width:120px;height:120px;border-radius:50%;border:4px solid #cce3eb;background:#fff;font-size:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--navy);box-shadow:0 6px 0 #d4e7ec}
.sd-bubble b{font-size:18px}
.sd-bubble .ar-text{font-size:52px}
.sd-bubble.lit{border-color:var(--sun);transform:scale(1.08);background:#fffbea}
.sd-btn{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:110px!important}
.sd-sym{font-size:44px;line-height:1;font-family:var(--ui)}
.sd-btn b{font-family:var(--learn);font-size:24px}

/* سلّتا الأصوات */
.sort-card{display:flex;justify-content:center;margin:10px 0}
.sort-token{width:130px;height:130px;border-radius:30px;border:4px solid var(--sun);background:#fffbea;font-size:56px;box-shadow:0 8px 0 #e7b53c;animation:bob 2.6s ease-in-out infinite}
.sort-token.drop{animation:none;transform:scale(.6);opacity:.4;transition:.4s}
.baskets{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:620px;margin:16px auto}
.basket{border:4px solid #cfe3ea;border-radius:28px;background:#fff;padding:12px;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--navy);box-shadow:0 7px 0 #d6e8ed}
.basket-letter{font-family:var(--learn);font-size:64px;line-height:1.2}
.basket-ex{font-family:var(--learn);font-size:28px;color:#5a7a8c}
.basket-icon{font-size:40px}
.basket.fill{border-color:var(--good);background:#e9f9ef}
.basket.reveal{border-color:var(--good);animation:revealPulse .8s ease 2}
@media(max-width:640px){.hunt-grid{grid-template-columns:repeat(4,1fr);gap:8px}.sd-bubble{width:96px;height:96px}.baskets{gap:10px}.basket-letter{font-size:48px}}

/* نقاط المهام على طريق الخريطة */
.learning-route #learningRouteDone{fill:none;stroke:#f3c952;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px rgba(0,0,0,.45));animation:none;stroke-dasharray:none}
.path-dot{position:absolute;transform:translate(-50%,-50%);z-index:6;width:34px;height:34px;border:none;background:transparent;padding:0;display:grid;place-items:center;cursor:pointer}
.path-dot span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;line-height:1;background:#fff;color:#0d3f65;border:3px solid #fff;box-shadow:0 2px 5px rgba(0,0,0,.35);transition:transform .2s}
.path-dot.done span{background:#f3c952;border-color:#fff4cf;color:#fff;font-size:13px;text-shadow:0 1px 0 #b98200}
.path-dot.next span{background:#14a7a4;border-color:#fff;color:#fff;width:26px;height:26px;animation:dotPulse 1.4s ease-in-out infinite}
.path-dot.tomorrow span{background:#23365a;border-color:#f3c952;font-size:12px}
.path-dot.locked span{background:rgba(255,255,255,.55);border-color:rgba(255,255,255,.8);box-shadow:none}
.path-dot.gate span{width:28px;height:28px;border-radius:9px;font-size:14px}
.path-dot.gate.done span{font-size:14px}
.path-dot.armed span{transform:scale(1.3);box-shadow:0 0 0 4px rgba(243,201,82,.7),0 2px 5px rgba(0,0,0,.35)}
.path-dot:focus-visible span{outline:3px solid #f3c952;outline-offset:2px}
.ml-item.flash{animation:revealPulse .45s ease 2;border-color:var(--sun)}
@keyframes dotPulse{0%,100%{box-shadow:0 0 0 0 rgba(20,167,164,.6),0 2px 5px rgba(0,0,0,.35)}50%{box-shadow:0 0 0 9px rgba(20,167,164,0),0 2px 5px rgba(0,0,0,.35)}}
@media(max-width:640px){.path-dot{width:28px;height:28px}.path-dot span{width:17px;height:17px;font-size:10px;border-width:2px}.path-dot.next span{width:20px;height:20px}.path-dot.gate span{width:22px;height:22px}}
.explorer{pointer-events:none}
.path-dot.next,.path-dot.tomorrow,.path-dot.armed{z-index:9}
.panel-toggle{display:none}
@media(max-width:760px){
 .mission-panel{position:absolute;left:8px!important;right:8px!important;bottom:8px!important;top:auto!important;width:auto!important;max-width:none!important;max-height:152px;overflow:hidden;padding-top:34px!important;transition:max-height .3s ease;z-index:12}
 .mission-panel.expanded{max-height:70%;overflow-y:auto}
 .mission-panel:not(.expanded) .mission-list,.mission-panel:not(.expanded) #missionDesc,.mission-panel:not(.expanded) #missionCanDo,.mission-panel:not(.expanded) #missionSkill,.mission-panel:not(.expanded) #missionZone{display:none}
 .mission-panel:not(.expanded) h3{margin:0 0 6px}
 .panel-toggle{display:block;position:absolute;top:4px;left:50%;transform:translateX(-50%);border:none;background:#e8f4f8;color:var(--navy);font-weight:800;border-radius:999px;padding:4px 16px;font-size:13px}
 .mission-panel.expanded .pt-open,.mission-panel:not(.expanded) .pt-close{display:none}
}
@media(max-width:760px){.mission-panel{max-height:168px}.mission-panel:not(.expanded) #missionReward{display:none}.mission-panel:not(.expanded) .mission-bottom{margin-top:4px}}

/* ===== الصفحة الرئيسية: أصغر، تتسع في الشاشة، ولا شيء يغطي الأسماء ===== */
.start-screen.active{display:flex;flex-direction:column;min-height:100vh}
.start-screen .plane{display:none}
.start-screen .school-strip{padding:10px 24px 2px}
.start-screen .school-brand{padding:8px 12px;gap:10px;border-radius:18px}
.start-screen .school-brand img{width:46px;height:46px}
.start-screen .school-brand b{font-size:clamp(18px,1.5vw,26px)}
.start-screen .school-brand span{font-size:clamp(12px,.9vw,15px)}
.start-screen .icon-btn{width:48px;height:48px;font-size:20px}
.start-screen .start-content{min-height:0;flex:1;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:18px;padding:4px 28px 6px;align-items:center}
.start-screen .start-copy{padding:6px 0}
.start-screen .game-label{padding:6px 14px;font-size:14px}
.start-screen .start-copy h1{font-size:clamp(34px,3.8vw,56px);margin:8px 0 4px}
.start-screen .start-copy h2{font-size:clamp(18px,1.8vw,27px);margin:0 0 8px}
.start-screen .start-copy p{font-size:clamp(15px,1.1vw,18px);line-height:1.7;margin:0 0 6px}
.start-screen .start-en{font-size:clamp(13px,.95vw,15px)!important;margin:0 0 4px!important}
.start-screen .path-preview{margin:8px 0 10px;gap:6px}
.start-screen .path-preview span{padding:6px 12px;font-size:16px;border-radius:14px}
.start-screen .path-preview i{font-size:17px}
.start-screen .path-preview .ab-icon{background:#1b9bd1;color:#fff;border:none;box-shadow:0 .08em 0 #0d6e98;padding:0 .25em;font-size:.8em;border-radius:.3em}
.start-screen .evidence-strip{margin:0 0 10px;gap:6px}
.start-screen .evidence-strip span{font-size:12.5px;padding:5px 10px}
.start-screen .start-buttons{gap:10px}
.start-screen .start-buttons .big-btn{font-size:clamp(17px,1.4vw,22px);padding:11px 20px;border-radius:18px}
.start-screen .start-buttons .big-btn small{font-size:.7em}
.start-screen .hero-character{min-height:0;padding:8px 8px 0;justify-content:center}
.start-screen .hero-character::before{inset:18% 6% 0 6%}
.start-screen .hero-character::after{width:300px;height:300px}
.start-screen .hero-character img{max-height:min(46vh,400px);width:auto;max-width:100%}
.start-screen .speech-bubble{font-size:clamp(14px,1.05vw,17px);padding:10px 14px;margin-bottom:8px;max-width:320px;line-height:1.55}
/* سطر الإعداد في مكانه الطبيعي أسفل الصفحة، ولا تغطيه الصورة */
.start-screen .credit{position:relative!important;bottom:auto!important;z-index:5;background:transparent;margin:0 auto;padding:6px 20px 12px;font-size:clamp(13px,1vw,16px)}
.start-screen .resume-box{margin-top:10px;padding:10px 14px}
.start-screen .voice-banner{margin-top:8px;font-size:13px;padding:8px 12px}
@media (max-width:1100px){.start-screen .start-content{grid-template-columns:1fr}.start-screen .hero-character img{max-height:300px}}
@media (max-width:700px){.start-screen .start-copy h1{font-size:34px}.start-screen .hero-character img{max-height:240px}.start-screen .start-buttons .big-btn{width:100%}}
.start-screen .school-strip,.start-screen .start-content{width:100%;box-sizing:border-box;align-self:center}
.start-screen .school-strip{background:transparent;border-bottom:none}

/* ===== الخريطة بأبعادها الحقيقية ===== */
.world{background:#0b4466}
.world::before{content:"";position:absolute;inset:-30px;background:url('bahrain-world.webp?v=33') center/cover;filter:blur(22px) brightness(.72) saturate(1.1);z-index:0}
.map-box{position:absolute;z-index:1;border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.35);--mw:900px}
.map-box .world-art{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.map-box .learning-route{z-index:2}
/* المحطة: بطاقة تغطي لوحة الاسم المرسومة تمامًا، ورقمها فوق مكان الدبوس */
.map-box .station-node{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:12.8%;height:10.9%;min-width:0;padding:0 2px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:linear-gradient(180deg,#fffaf0,#f7ecd2);border:calc(var(--mw)*.0024) solid #7b4a12;border-radius:calc(var(--mw)*.011);box-shadow:0 calc(var(--mw)*.004) calc(var(--mw)*.01) rgba(0,0,0,.35);z-index:8;color:#3d2508;line-height:1.15;text-align:center}
.map-box .station-node b{font-size:calc(var(--mw)*.0128);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;background:none;padding:0;color:#4a2c07}
.map-box .station-node small{font-size:calc(var(--mw)*.0096);background:none;box-shadow:none;padding:0;margin:0;color:#6b4a1c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.map-box .station-node span{position:absolute;left:50%;transform:translateX(-50%);top:calc(var(--mw)*-.05);width:calc(var(--mw)*.04);height:calc(var(--mw)*.04);margin:0;font-size:calc(var(--mw)*.018);border-width:calc(var(--mw)*.0028);box-shadow:0 0 0 calc(var(--mw)*.004) rgba(255,255,255,.55),0 3px 8px rgba(0,0,0,.3)}
.map-box .station-node .node-stars{font-size:calc(var(--mw)*.0092);line-height:1}
.map-box .station-node .node-missions{display:none}
.map-box .station-node.current{box-shadow:0 0 0 calc(var(--mw)*.004) #f3c952,0 4px 12px rgba(0,0,0,.35)}
.map-box .station-node.locked{filter:grayscale(.55) brightness(.92);opacity:.92}
.map-box .station-node:focus-visible{outline:3px solid #f3c952;outline-offset:3px}
.map-box .explorer{width:calc(var(--mw)*.06);height:calc(var(--mw)*.085);z-index:7}
.map-box .path-dot{width:calc(var(--mw)*.03);height:calc(var(--mw)*.03);min-width:26px;min-height:26px}
.map-box .path-dot span{width:calc(var(--mw)*.019);height:calc(var(--mw)*.019);min-width:16px;min-height:16px;font-size:calc(var(--mw)*.0095)}
.map-box .path-dot.next span{width:calc(var(--mw)*.023);height:calc(var(--mw)*.023)}
.map-box .path-dot.gate span{width:calc(var(--mw)*.024);height:calc(var(--mw)*.024)}
.moving-boat,.flying-bird,.zone-label,.ocean-glow{display:none!important}
/* بطاقة المحطة مضغوطة على الشاشات القصيرة حتى لا تحتاج إلى تمرير */
@media (min-width:761px){
 .mission-panel{top:12px!important;bottom:12px;max-height:none;display:flex;flex-direction:column;padding:14px 16px!important;width:min(320px,30vw)!important}
 .mission-panel h3{font-size:clamp(18px,2.2vh,26px);margin:2px 0}
 .mission-panel #missionZone,.mission-panel #missionSkill{font-size:13px}
 .mission-panel .mission-list{flex:1;overflow-y:auto;margin:6px 0}
 .mission-panel .mission-bottom{margin-top:auto}
}
@media (min-width:761px) and (max-height:760px){
 .mission-panel #missionDesc{display:none}
 .mission-panel #missionCanDo{padding:6px 10px;font-size:13px}
 .mission-panel #missionCanDo .gloss{display:none!important}
 .mission-panel #missionZone .gloss,.mission-panel #missionSkill .gloss{display:none!important}
 .mission-panel .ml-item{padding:5px 8px}
 .mission-panel .ml-item .gloss{display:none!important}
 .mission-panel #missionReward{font-size:12px}
 .mission-panel .mission-bottom .big-btn{padding:10px 16px;font-size:18px}
}

/* ===== شاشات الأنشطة: تتسع في الشاشة بدون تمرير (الشاشات القصيرة مثل اللابتوب) ===== */
@media (min-width:761px) and (max-height:900px){
 .stage-hud{height:auto!important;min-height:0;padding:6px 16px!important}
 .stage-hud .round-btn{width:40px;height:40px;font-size:18px;border-radius:12px}
 .stage-hud .hud-pill{padding:6px 10px;font-size:14px}
 .stage-hud .toggle-btn{height:36px;min-width:40px;font-size:13px}
 .stage-hud .hud-title{font-size:18px}
 .stage-layout{min-height:calc(100vh - 54px);grid-template-columns:210px 1fr;gap:12px;padding:8px 0;align-items:start}
 .coach{padding:10px;border-radius:20px}
 .coach img{width:78px}
 .coach-talk{padding:8px 10px;margin-top:4px}
 .coach-talk b{font-size:16px}
 .skill-progress{margin-top:8px;font-size:13px}
 .activity-board{padding:12px 18px;min-height:0;border-radius:24px}
 .activity-title .cefr-tag{padding:3px 10px;font-size:12px}
 .activity-title h2{font-size:21px;margin:2px 0}
 .activity-title .gloss{font-size:12px!important}
 .mini-dots{margin:4px 0 0}.mini-dots span{width:9px;height:9px}
 .prompt-ar{font-size:18px;margin:4px 0 0}
 .prompt-ar+.gloss{font-size:12px!important}
 .activity-target{min-height:0;margin:4px auto;padding:2px}
 .activity-target .ar-text{font-size:clamp(38px,9vh,72px)}
 .activity-target .ar-text.sentence{font-size:clamp(22px,3.8vh,32px)}
 .activity-target .tl{font-size:16px}
 .listen-target{font-size:clamp(40px,8vh,64px)}
 .pic-target .ar-text,.pic-big{font-size:clamp(54px,10vh,90px)}
 .sound-actions{gap:8px}
 .sound-actions .control-btn{padding:7px 14px;font-size:15px;border-radius:14px}
 .choice-grid{margin-top:8px!important;gap:10px}
 .choice{min-height:56px}
 .choice.ar{min-height:62px;font-size:clamp(22px,4vh,32px);padding:4px 40px 4px 10px}
 .choice.pic{min-height:clamp(70px,13vh,110px)}
 .pic-emoji{font-size:clamp(40px,7.5vh,64px)}
 .feedback{margin-top:8px;padding:7px 12px;border-radius:14px}
 .feedback b{font-size:18px}
 .after-actions{margin-top:8px}
 .next-btn{padding:9px 20px!important;font-size:18px!important}
 .letter-tile{min-width:46px;height:56px;font-size:30px}
 .word-reader{margin-top:4px}
 .audio-card{padding:8px;gap:6px}
 .goal-emoji{font-size:34px}
 .sentence-slots{min-height:54px;padding:6px}
 .word-bank{margin:8px 0}
 .token.ar{font-size:24px;padding:4px 12px}
 .race-track{height:92px;margin:8px 0}
 .match-board{gap:14px;margin:8px auto}.match-col{gap:8px}
 .match-card{min-height:52px;font-size:24px}.match-card.pic{font-size:36px}
 .hunt-target{margin:2px 0;gap:12px}.hunt-letter{width:64px;height:64px;font-size:42px;border-radius:16px}
 .hunt-grid{gap:8px;margin:8px auto;max-width:min(640px,85vh)}
 .bubble{font-size:clamp(22px,4vh,34px)}
 .syl-preview{width:110px;height:86px;font-size:50px;margin:6px auto;border-radius:20px}
 .syl-row{margin:4px 0}.syl-tile{min-width:58px;height:60px;font-size:32px}.syl-tile.vowel{font-size:30px}
 .inword-card{margin:2px 0;gap:0}.inword-word{font-size:clamp(40px,8vh,64px)}
 .sd-pair{margin:8px 0;gap:18px}.sd-bubble{width:84px;height:84px;font-size:26px}.sd-bubble .ar-text{font-size:38px}
 .sd-btn{min-height:74px!important}.sd-sym{font-size:30px}
 .sort-card{margin:4px 0}.sort-token{width:88px;height:88px;font-size:40px;border-radius:22px}
 .baskets{margin:8px auto;gap:14px}.basket{padding:6px}.basket-letter{font-size:44px}.basket-ex{font-size:20px}.basket-icon{font-size:26px}
 .reading-text.ar{font-size:clamp(20px,3.4vh,28px);line-height:1.9;padding:10px 14px;margin:6px 0}
 .translation{margin-bottom:4px;padding:4px 12px}
 .question-card{padding:8px 12px;margin:8px auto}
 .q-head{font-size:21px}
 .stage-finish{padding:10px}.stage-finish .trophy{font-size:60px}.stars-row{font-size:46px}
 .spell-built{min-height:84px}.spell-tile{height:62px}
}
@media (min-width:761px) and (max-height:700px){
 .coach img{display:none}
 .coach{align-self:start}
 .activity-title .cefr-tag{display:none}
 .choice.pic{min-height:clamp(64px,12vh,96px)}
}
@media (min-width:761px) and (max-height:900px){
 .stage-layout{min-height:0;padding:6px 0}
 .word-reader .activity-target.small .ar-text{font-size:clamp(32px,6.5vh,56px)}
 .word-reader .letter-tile{height:50px;min-width:42px;font-size:28px}
 .word-reader + .sound-actions{margin-top:2px}
 .audio-cards .control-btn{padding:6px 10px;font-size:17px}
 .audio-card .choice.pick{min-height:44px;font-size:17px}
 .compare-btn{margin-top:2px;padding:4px 10px!important;font-size:13px!important}
 .race-track{height:74px}.race-track .player-car,.race-track .rival-car{font-size:32px}
 .sd-bubble{width:74px;height:74px}
 .question-card{margin:6px auto}
}
/* المطابقة الكبرى: عمودان داخل كل جانب */
.match-col.many{grid-template-columns:1fr 1fr}

.version-tag{display:inline-block;margin-inline-start:8px;padding:1px 8px;border-radius:999px;background:#e3edf1;color:#476376;font-size:11px;font-weight:800}
/* سطرا الإعداد واضحان في نهاية الصفحة الرئيسية */
.start-screen .credit{display:flex;flex-direction:column;align-items:center;gap:2px;color:#23405c;font-size:clamp(14px,1.1vw,17px);font-weight:700;line-height:1.6}
.start-screen .credit b{color:#0d3f65;font-weight:800}
.start-screen .credit .version-tag{margin-top:2px}

/* مؤشر الحفظ في قاعدة البيانات */
.sync-badge{position:fixed;left:12px;bottom:12px;z-index:350;background:rgba(255,255,255,.95);color:#23405c;border-radius:999px;padding:5px 12px;font-size:12.5px;font-weight:800;box-shadow:0 4px 14px rgba(0,0,0,.18);display:flex;gap:6px;align-items:center}
.sync-badge small{font-weight:600;color:#6c8797}
.sync-badge.off,.sync-badge.err{background:#fff4d6;color:#6b4e00}
.sync-badge.busy{background:#eaf6ff}
body:not(.help-on) .sync-badge small{display:none}
.world-screen.active ~ .sync-badge,.sync-badge{pointer-events:none}
@media(max-width:760px){.sync-badge{bottom:auto;top:6px;left:6px;font-size:11px}}
