/* ══════════════════════════════════════════════════
   خطوط محلية — تعمل بدون انترنت
══════════════════════════════════════════════════ */
@font-face {
    font-family: 'Noto Naskh Arabic';
    src: url('/fonts/NotoNaskhArabic-Regular.woff2') format('woff2');
    font-weight: 400;
    font-display: block;
}
@font-face {
    font-family: 'Noto Naskh Arabic';
    src: url('/fonts/NotoNaskhArabic-Bold.woff2') format('woff2');
    font-weight: 700;
    font-display: block;
}
@font-face {
    font-family: 'Tajawal';
    src: url('/fonts/Tajawal-Regular.woff2') format('woff2');
    font-weight: 400;
    font-display: block;
}
@font-face {
    font-family: 'Tajawal';
    src: url('/fonts/Tajawal-Bold.woff2') format('woff2');
    font-weight: 700;
    font-display: block;
}
@font-face {
    font-family: 'Tajawal';
    src: url('/fonts/Tajawal-ExtraBold.woff2') format('woff2');
    font-weight: 900;
    font-display: block;
}

/* ══════════════════════════════════════════════════
   مسار بابا أحمد للتأسيس — style.css v3.0
══════════════════════════════════════════════════ */
:root{
    --p:#0F6E56;
    --s:#185FA5;
    --bg:#f0f7f5;
    --accent:#534AB7;
    --train-grad:linear-gradient(135deg,#0F6E56,#1D9E75);
    --eval-grad:linear-gradient(135deg,#534AB7,#185FA5);
    --mission-grad:linear-gradient(135deg,#E65100,#F9A825);
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}

/* ══ iOS Touch Sensitivity Fix ══ */
button,
.btn-primary,
.btn-outline-green,
.btn-outline-red,
.t-item,
.path-card,
.eval-hub-card,
.gender-label,
.mission-banner,
.parent-entry-btn,
.mini-link,
[onclick] {
    touch-action: manipulation;
    -webkit-touch-callout: none;
    user-select: none;
    -webkit-user-select: none;
}
html,body{width:100%;height:100%;overflow:hidden;background:#0a1628;font-family:'Tajawal',sans-serif}

/* ══ Screens ══ */
.screen{
    position:absolute;top:0;left:0;right:0;bottom:0;display:none;flex-direction:column;align-items:center;
    overflow-y:auto;background:var(--bg);
    animation:fadeIn 0.3s cubic-bezier(0.4,0,0.2,1) forwards
}
.screen.active{display:flex}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes bob{from{transform:translateY(0)}to{transform:translateY(-12px)}}
@keyframes shake{0%{transform:translateX(0)}25%{transform:translateX(-7px)}75%{transform:translateX(7px)}100%{transform:translateX(0)}}
@keyframes popIn{0%{transform:scale(0.8);opacity:0}60%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.75}}
@keyframes glow{0%,100%{box-shadow:0 0 8px rgba(249,168,37,.4)}50%{box-shadow:0 0 22px rgba(249,168,37,.7)}}
@keyframes starPop{0%{transform:scale(0) rotate(-20deg);opacity:0}60%{transform:scale(1.3) rotate(5deg)}100%{transform:scale(1) rotate(0);opacity:1}}
@keyframes pulseRec{0%{box-shadow:0 0 0 0 rgba(239,68,68,.4)}70%{box-shadow:0 0 0 25px rgba(239,68,68,0)}100%{box-shadow:0 0 0 0 rgba(239,68,68,0)}}

/* ══ Accessibility ══ */
:focus-visible{outline:3px solid var(--p);outline-offset:2px;border-radius:6px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* ══ Toasts ══ */
#streak-toast{
    position:fixed;top:-70px;left:50%;transform:translateX(-50%);
    background:linear-gradient(135deg,#E65100,#F57C00);
    color:#fff;padding:13px 28px;border-radius:30px;
    font-size:15px;font-weight:900;z-index:9998;
    transition:top .45s cubic-bezier(0.34,1.56,0.64,1);
    white-space:nowrap;box-shadow:0 6px 20px rgba(230,81,0,.35);pointer-events:none;
}
#streak-toast.show{top:calc(env(safe-area-inset-top,0px) + 14px)}
#point-toast{
    position:fixed;bottom:-60px;left:50%;transform:translateX(-50%);
    background:linear-gradient(135deg,#0F6E56,#185FA5);
    color:#fff;padding:11px 26px;border-radius:30px;
    font-size:15px;font-weight:900;z-index:9998;
    transition:bottom .4s cubic-bezier(0.34,1.56,0.64,1);
    white-space:nowrap;box-shadow:0 6px 20px rgba(0,0,0,.2);pointer-events:none;
}
#point-toast.show{bottom:calc(env(safe-area-inset-bottom,0px) + 80px)}

/* ══ Splash ══ */
#s-splash{
    background:linear-gradient(160deg,#0a1628,#0F6E56);
    justify-content:center;gap:18px;
}
.splash-emoji{font-size:90px;animation:bob 1.5s ease infinite alternate}
.splash-title{color:#fff;font-size:22px;font-weight:900;text-align:center;padding:0 20px}
.splash-sub{color:#9FE1CB;font-size:14px;font-weight:700}

/* ══ Entry Screen ══ */
.entry-wave{
    background:linear-gradient(160deg,#0a1628,#0F6E56);
    width:100%;padding:calc(env(safe-area-inset-top,0px)+40px) 20px 60px;
    border-radius:0 0 40px 40px;flex-shrink:0;text-align:center;color:#fff;
}
.entry-book-emoji{font-size:65px;margin-bottom:12px;animation:bob 2s ease infinite alternate}
.entry-main-title{font-size:22px;font-weight:900;color:#fff;margin-bottom:6px;line-height:1.4}
.entry-tagline{font-size:13px;color:#9FE1CB;font-weight:700}
.entry-scroll{flex:1;width:100%;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding:0 16px 20px;margin-top:20px}
.entry-card{
    background:#fff;width:100%;max-width:400px;
    padding:28px 22px;border-radius:22px;
    box-shadow:0 8px 30px rgba(0,0,0,.09);
    margin-bottom:16px;
}
.field-label{font-size:14px;font-weight:900;color:#444;margin-bottom:10px}
.inp{
    width:100%;padding:15px;border:2px solid #eee;border-radius:14px;
    font-size:18px;font-family:'Tajawal',sans-serif;outline:none;
    text-align:center;background:#f9f9f9;transition:.2s;margin-bottom:4px;
    direction:rtl;
}
.inp:focus{border-color:var(--p);background:#fff}

/* اختيار الجنس */
.gender-row{display:flex;gap:12px;margin-bottom:20px}
.radio-input{display:none}
.gender-label{
    flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;
    padding:14px 10px;border:3px solid #eee;border-radius:18px;
    cursor:pointer;background:#fafafa;transition:.25s cubic-bezier(0.4,0,0.2,1);color:#888;
}
.radio-input:checked+.gender-label{
    border-color:var(--p);background:#E8F5E9;color:var(--p);
    transform:scale(1.05);box-shadow:0 5px 15px rgba(15,110,86,.18);
}
.gl-emoji{font-size:36px}
.gl-text{font-size:15px;font-weight:900}

/* أزرار */
.btn-primary{
    width:100%;padding:16px;border:none;border-radius:16px;
    background:linear-gradient(135deg,var(--p),#1D9E75);
    color:#fff;font-size:17px;font-weight:900;font-family:'Tajawal',sans-serif;
    cursor:pointer;transition:.2s;box-shadow:0 4px 14px rgba(15,110,86,.3);
}
.btn-primary:active{transform:scale(.97)}
.btn-primary:disabled{background:#ccc;box-shadow:none;cursor:not-allowed}

.btn-outline-green{
    background:#fff;border:2px solid var(--p);border-radius:14px;
    color:var(--p);font-size:14px;font-weight:900;
    font-family:'Tajawal',sans-serif;padding:12px 18px;cursor:pointer;transition:.15s;
}
.btn-outline-green:active{background:#E8F5E9;transform:scale(.97)}
.btn-outline-red{
    background:#fff;border:2px solid #e74c3c;border-radius:14px;
    color:#e74c3c;font-size:14px;font-weight:900;
    font-family:'Tajawal',sans-serif;padding:12px 18px;cursor:pointer;transition:.15s;
}
.btn-outline-red:active{background:#ffebee;transform:scale(.97)}

/* رابط ولي الأمر في الدخول */
.parent-entry-btn{
    width:100%;max-width:400px;margin-bottom:16px;
    background:transparent;border:2px dashed #bbb;color:#666;
    padding:13px 20px;border-radius:16px;font-size:13px;font-weight:900;
    cursor:pointer;transition:.2s;font-family:'Tajawal',sans-serif;text-align:center;
}
.parent-entry-btn:active{background:#f5f5f5;border-color:#888}

.mini-links-container{display:flex;justify-content:center;gap:8px;margin-bottom:14px;width:100%;max-width:400px;flex-wrap:wrap}
.mini-link{background:#fff;color:var(--p);border:1px solid #ddd;padding:10px 14px;border-radius:20px;font-size:13px;font-weight:700;text-decoration:none;transition:.2s;box-shadow:0 2px 5px rgba(0,0,0,.02)}
.mini-link:active{background:#E1F5EE;border-color:var(--p);transform:scale(.95)}
.clean-copyright{padding:10px 0 20px;text-align:center;font-size:11px;color:#888;line-height:1.8}

/* ══ Home Screen ══ */
.home-header{
    width:100%;
    background:linear-gradient(135deg,#0a1628,#0F6E56);
    padding:calc(env(safe-area-inset-top,0px)+18px) 20px 24px;
    color:#fff;border-radius:0 0 28px 28px;flex-shrink:0;
}
.hh-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.hh-title{font-size:18px;font-weight:900}
.streak-badge{
    background:rgba(255,255,255,.2);padding:6px 14px;border-radius:20px;
    font-size:13px;font-weight:900;
}
.hh-student{display:flex;flex-direction:column;align-items:center;gap:4px}
.hh-name{font-size:28px;font-weight:900}
.hh-welcome{font-size:13px;color:#9FE1CB;font-weight:700}

.home-body{width:100%;max-width:480px;padding:16px;margin:0 auto;display:flex;flex-direction:column;gap:14px}

/* بانر مهمة اليوم */
.mission-banner{
    background:var(--mission-grad);
    border-radius:18px;padding:16px 18px;
    display:flex;align-items:center;gap:14px;cursor:pointer;
    box-shadow:0 6px 20px rgba(230,81,0,.3);
    position:relative;overflow:hidden;
    animation:glow 2s ease infinite;
}
.mission-banner:active{transform:scale(.98)}
.mb-glow{
    position:absolute;top:-20px;right:-20px;width:80px;height:80px;
    background:rgba(255,255,255,.15);border-radius:50%;
}
.mb-star{font-size:32px;flex-shrink:0;animation:bob 1.5s ease infinite alternate}
.mb-content{flex:1}
.mb-title{font-size:14px;font-weight:900;color:#fff;margin-bottom:2px}
.mb-desc{font-size:12px;color:rgba(255,255,255,.85)}
.mb-letter{
    font-size:36px;font-family:'Noto Naskh Arabic',serif;font-weight:700;
    color:#fff;line-height:1.2;
}
.mb-go{
    font-size:14px;font-weight:900;color:rgba(255,255,255,.9);
    background:rgba(255,255,255,.2);padding:8px 14px;border-radius:12px;flex-shrink:0;
}

/* بطاقتا المسارين */
.path-card{
    background:#fff;border-radius:20px;
    padding:18px 16px;display:flex;align-items:center;gap:14px;
    cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.07);
    transition:.2s;border:2px solid transparent;
}
.path-card:active{transform:scale(.98)}
.card-train{border-color:#C8E6C9}
.card-train:active{background:#F1F8E9}
.card-eval{border-color:#D1C4E9}
.card-eval:active{background:#EDE7F6}

.pc-icon-wrap{
    width:60px;height:60px;border-radius:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.card-train .pc-icon-wrap{background:linear-gradient(135deg,#E8F5E9,#C8E6C9)}
.card-eval .pc-icon-wrap{background:linear-gradient(135deg,#EDE7F6,#D1C4E9)}
.pc-big-icon{font-size:32px}
.pc-body{flex:1;min-width:0}
.pc-title{font-size:17px;font-weight:900;color:#222;margin-bottom:3px}
.pc-sub{font-size:12px;color:#777;margin-bottom:8px}
.pc-bar-wrap{width:100%;height:6px;background:#eee;border-radius:3px;overflow:hidden;margin-bottom:4px}
.pc-bar{height:100%;border-radius:3px;transition:width .6s ease;width:0%}
.bar-train{background:linear-gradient(90deg,var(--p),#1D9E75)}
.bar-eval{background:linear-gradient(90deg,var(--accent),#185FA5)}
.pc-pct{font-size:11px;color:#888;font-weight:700}
.pc-arrow{font-size:24px;color:#ccc;flex-shrink:0;font-weight:900}

.home-footer-btns{display:flex;gap:10px;margin-top:4px}
.home-footer-btns .btn-outline-green,.home-footer-btns .btn-outline-red{flex:1;text-align:center}

/* ══ Eval Hub ══ */
.eval-hub-body{width:100%;max-width:480px;padding:16px;margin:0 auto}
.eval-hub-intro{
    text-align:center;font-size:16px;font-weight:900;color:var(--accent);
    margin:10px 0 18px;padding:12px;background:rgba(83,74,183,.08);
    border-radius:14px;
}
.eval-hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.eval-hub-card{
    background:#fff;border-radius:18px;padding:22px 12px 18px;
    text-align:center;cursor:pointer;
    box-shadow:0 3px 12px rgba(0,0,0,.07);
    transition:.2s;border:2px solid #eee;
}
.eval-hub-card:active{transform:scale(.96)}
.ehc-sounds{border-color:#C8E6C9}.ehc-sounds:active{background:#F1F8E9}
.ehc-shapes{border-color:#BBDEFB}.ehc-shapes:active{background:#E3F2FD}
.ehc-analysis{border-color:#F8BBD0}.ehc-analysis:active{background:#FCE4EC}
.ehc-words{border-color:#D1C4E9}.ehc-words:active{background:#EDE7F6}
.ehc-icon{font-size:42px;margin-bottom:10px}
.ehc-title{font-size:15px;font-weight:900;color:#222;margin-bottom:4px}
.ehc-sub{font-size:12px;color:#888}
.eval-hub-note{
    text-align:center;font-size:12px;color:#999;margin-top:18px;
    padding:10px;background:#fff;border-radius:12px;
}

/* ══ Header (screens) ══ */
.ghdr{
    width:100%;padding:calc(env(safe-area-inset-top,0px)+12px) 16px 12px;
    display:flex;align-items:center;gap:12px;color:#fff;
    background:var(--p);box-shadow:0 2px 10px rgba(0,0,0,.1);flex-shrink:0;
}
.gback{
    background:rgba(255,255,255,.2);border:none;color:#fff;
    width:36px;height:36px;border-radius:12px;font-size:18px;cursor:pointer;
    display:flex;align-items:center;justify-content:center;
}
.gtitle{font-size:16px;font-weight:700;flex:1}

/* ══ Academy Tip ══ */
.academy-tip{
    display:flex;align-items:flex-start;gap:10px;
    background:linear-gradient(135deg,#E8F5E9,#E1F5EE);
    border:1.5px solid #A5D6A7;border-radius:14px;
    padding:12px 14px;margin:10px 12px 4px;
    width:calc(100% - 24px);max-width:456px;
    font-size:13px;color:#2E7D32;font-weight:700;line-height:1.5;
}
.at-icon{font-size:18px;flex-shrink:0;margin-top:1px}
.at-text{flex:1;font-size:12px}
.at-link{color:var(--s);font-weight:900;text-decoration:underline}
.at-close{
    background:none;border:none;font-size:18px;color:#888;
    cursor:pointer;padding:0 0 0 4px;flex-shrink:0;line-height:1;
}
.letters-hint{
    text-align:center;font-size:14px;font-weight:900;color:var(--p);
    background:#E8F5E9;border-radius:12px;padding:10px 14px;
    margin-bottom:6px;
}

/* ══ Letters Grid ══ */
.lgrid-main{
    display:grid;grid-template-columns:repeat(5,1fr);gap:10px;
    width:100%;max-width:480px;padding:0 12px 30px;
}
.lbtn-main{
    background:#fff;border:2px solid #eee;border-radius:16px;
    aspect-ratio:1;display:flex;flex-direction:column;
    align-items:center;justify-content:center;gap:2px;
    cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.05);
    padding:6px;transition:.15s;position:relative;
}
.lbtn-main:active{transform:scale(.95)}
.lbtn-plant{font-size:13px;position:absolute;top:3px;right:5px}
.lbtn-char{font-size:24px;font-family:'Noto Naskh Arabic',serif;font-weight:700;color:#333}
.lgrid-dots{display:flex;align-items:center;gap:2px;flex-wrap:wrap;justify-content:center;margin-top:1px}
.lgrid-dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}
.lgrid-sep{display:inline-block;width:4px;flex-shrink:0}

/* ══ Training screen ══ */
#s-train{overflow-y:hidden}
#s-train>div.t-scroll{flex:1;overflow-y:auto;min-height:0;width:100%}
.t-sec{background:#fff;border-radius:20px;padding:16px;margin:10px auto;width:calc(100% - 20px);max-width:460px}
.t-sec-tt{font-size:14px;font-weight:900;color:#555;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--accent)}
.t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.t-item{background:#f8f9fa;border:2px solid #eee;border-radius:15px;padding:20px 5px;text-align:center;cursor:pointer;transition:.15s}
.t-char{font-size:42px;font-family:'Noto Naskh Arabic',serif;font-weight:700;color:#222;line-height:1}
.t-check{font-size:14px;color:#2E7D32;font-weight:900;margin-top:4px}
.t-trained:not(.t-mastered){border-color:#185FA5!important;background:#EEF4FF!important}
.t-mastered{border-color:#2E7D32!important;background:#F1F8E9!important}
.tr-progress-bar{
    background:#fff;border-top:2px solid #f0f0f0;padding:16px 20px;
    flex-shrink:0;width:100%;
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + 20px);
    display:flex;flex-direction:column;justify-content:center;
    box-shadow:0 -4px 15px rgba(0,0,0,.03);
}
.chal-btn{flex:1;max-width:150px;border:none;border-radius:16px;padding:12px 5px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:.3s;box-shadow:0 4px 10px rgba(0,0,0,.1)}
.chal-btn:active{transform:scale(.95)}
.chal-btn.done-snd{background:var(--accent);color:#fff;animation:popIn .4s}
.chal-btn.done-shp{background:var(--s);color:#fff;animation:popIn .4s}
.chal-btn.locked{background:#e0e0e0;color:#888;box-shadow:none;border:2px dashed #ccc}
.cb-icon{font-size:26px}.cb-txt{font-size:12px;font-weight:900}

/* ══ Evaluation ══ */
.qarea{background:#fff;border-radius:25px;padding:40px 20px;text-align:center;margin:20px auto;box-shadow:0 8px 20px rgba(0,0,0,.06);width:calc(100% - 32px);max-width:450px}
.sym-big{font-size:90px;font-family:'Noto Naskh Arabic',serif;font-weight:700;color:var(--p)}
.q-hint{font-size:14px;font-weight:700;color:#888;margin-top:10px}
.spk-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 16px;width:100%;max-width:600px;margin:0 auto}
@media(min-width:768px){.spk-grid{grid-template-columns:repeat(4,1fr)}}
.spk-btn{background:#fff;border:2px solid #eee;border-radius:20px;padding:20px 10px;font-size:40px;font-family:'Noto Naskh Arabic',serif;font-weight:700;cursor:pointer;transition:.15s}
.spk-btn.selected-spk{border-color:var(--s);background:#EEF4FF}

/* ══ Analysis ══ */
.aw-container{display:flex;flex-direction:column;align-items:center;padding:16px;width:100%;max-width:480px;margin:0 auto;flex:1;padding-bottom:40px}
.prog-label{font-size:12px;color:#aaa;font-weight:700;text-align:center;margin-bottom:4px;letter-spacing:1px}
.an-msg{font-size:15px;font-weight:700;color:#666;text-align:center;margin:8px 4px;min-height:28px;line-height:1.5}
.syllable-row{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0;direction:rtl;min-height:70px;position:relative}
.syl-tile{
    background:#fff;border:3px solid #e0e0e0;border-radius:18px;
    padding:14px 20px 10px;
    font-size:38px;font-family:'Noto Naskh Arabic',serif;font-weight:700;
    cursor:pointer;transition:transform .2s,opacity .2s;
    min-width:70px;text-align:center;
    box-shadow:0 4px 10px rgba(0,0,0,.1);
    user-select:none;-webkit-user-select:none;touch-action:none;z-index:10;
    line-height:1.5; /* مهم لعرض الحركات فوق الحرف */
    direction:rtl;
}
.syl-tile:active{cursor:grabbing}
.syl-tile.wrong-shake{animation:shake .35s;border-color:#EF4444;background:#fdeaea;color:#EF4444}
.cat-boxes{display:flex;justify-content:center;gap:10px;margin-top:10px;width:100%}
.cat-box{flex:1;border:3px dashed #ccc;border-radius:18px;padding:15px 5px;text-align:center;background:#fafafa;transition:.2s;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:110px}
.cat-box span{font-size:15px;font-weight:900;color:#888}
.cat-box.drag-over{border-color:var(--s);background:#E6F1FB;color:var(--s);transform:scale(1.05)}

/* ══ Words/Reading ══ */
.mic-btn{font-size:40px;background:#fff;border:4px solid #ddd;border-radius:50%;width:100px;height:100px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.3s;box-shadow:0 6px 15px rgba(0,0,0,.08);margin:20px auto}
.mic-btn.recording{border-color:#EF4444;background:#fdeaea;animation:pulseRec 1.5s infinite;color:#EF4444}
.mic-status{font-size:15px;font-weight:700;color:#555;text-align:center;margin-top:10px;min-height:25px}
.word-reveal{font-size:68px;font-family:'Noto Naskh Arabic',serif;font-weight:700;color:var(--accent);text-align:center;margin:14px 0;animation:popIn .4s cubic-bezier(0.34,1.56,0.64,1) forwards}
.aw-btn-group{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:30px;width:100%;max-width:260px}

/* ══ Overlays ══ */
.rov{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.72);display:none;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.rov.on{display:flex}
.rbox{background:#fff;border-radius:25px;padding:35px 25px;text-align:center;width:88%;max-width:340px;max-height:90vh;overflow-y:auto}

/* Success boxes */
.success-box{padding:30px 24px}
.sb-emoji{font-size:64px;animation:popIn .5s cubic-bezier(0.34,1.56,0.64,1)}
.sb-praise{font-size:20px;font-weight:900;color:var(--p);margin:10px 0 4px;line-height:1.4}
.sb-pts{font-size:15px;font-weight:900;color:#F9A825;background:#1a1a2e;padding:5px 18px;border-radius:20px;display:inline-block;margin-top:4px}

/* analysis success */
.an-success-box{max-width:320px;text-align:center}
.an-stars{font-size:30px;letter-spacing:4px;animation:starPop .5s ease}

/* mission complete */
.mission-complete-box{padding:28px 22px}
.mc-fireworks{font-size:32px;letter-spacing:4px;margin-bottom:8px}
.mc-trophy{font-size:64px;animation:bob 1s ease infinite alternate}
.mc-title{font-size:22px;font-weight:900;color:var(--p);margin:10px 0 4px}
.mc-praise{font-size:16px;font-weight:900;color:#E65100;margin-bottom:8px}
.mc-letter{font-size:70px;font-family:'Noto Naskh Arabic',serif;font-weight:900;color:var(--accent);line-height:1.2;margin:8px 0}
.mc-note{font-size:13px;color:#888;background:#f5f5f5;padding:8px 14px;border-radius:10px;margin-top:8px}

/* session report */
.session-box{padding:25px 20px}
.sess-header{margin-bottom:16px}
.sess-mode{font-size:14px;font-weight:900;color:#555;margin-bottom:12px}
.sess-stats{display:flex;justify-content:space-around;margin-bottom:12px}
.sess-stat{display:flex;flex-direction:column;align-items:center;gap:4px}
.sess-num{font-size:28px;font-weight:900;line-height:1}
.sess-lbl{font-size:12px;font-weight:700;color:#888}
.sess-duration{font-size:13px;color:#888;text-align:center;margin-bottom:12px}
.weak-letter-card{display:flex;align-items:center;gap:10px;background:#FFF3E0;border:2px solid #FFCC80;border-radius:14px;padding:12px;margin-bottom:12px}
.wlc-icon{font-size:24px}
.wlc-body{flex:1;text-align:right}
.wlc-title{font-size:12px;font-weight:900;color:#E65100}
.wlc-letter{font-size:28px;font-family:'Noto Naskh Arabic',serif;font-weight:900;color:#E65100}
.wlc-btn{font-size:12px!important;padding:8px 12px!important;flex-shrink:0}
.sess-bravo{font-size:14px;font-weight:900;color:#2E7D32;background:#E8F5E9;padding:12px;border-radius:12px;margin-bottom:12px}


/* letter popup (bo style) */
.bo{
    width:100%;padding:13px;border:2px solid #ddd;border-radius:14px;
    background:#fff;color:#444;font-size:15px;font-weight:900;
    font-family:'Tajawal',sans-serif;cursor:pointer;transition:.15s;
    display:block;text-align:center;margin-top:8px;
}
.bo:active{background:#f5f5f5;transform:scale(.98)}

/* ══ Parent Report ══ */
.rep-student-card{
    background:linear-gradient(135deg,#1a1a2e,#0F6E56);
    border-radius:18px;padding:18px;margin-bottom:16px;color:#fff;text-align:center;
}
.rsc-name{font-size:22px;font-weight:900;margin-bottom:6px}
.rsc-stats{display:flex;justify-content:center;gap:16px;font-size:14px;font-weight:900;opacity:.9}
.rep-section{
    background:#fff;border-radius:16px;padding:16px;margin-bottom:14px;
    border:1.5px solid #eee;
}
.rep-title{font-size:15px;font-weight:900;color:#333;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid #f0f0f0}
.rep-pct-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.rep-pct-num{font-size:26px;font-weight:900;color:var(--p);flex-shrink:0;min-width:50px}
.rep-pct-bar-wrap{flex:1;height:10px;background:#eee;border-radius:5px;overflow:hidden}
.rep-pct-bar{height:100%;border-radius:5px;transition:width .6s ease}
.rl-group{margin-bottom:10px}
.rl-label{font-size:12px;font-weight:900;margin-bottom:6px}
.rl-items{display:flex;flex-wrap:wrap;gap:6px;direction:rtl}
.rl-lk{
    font-size:18px;font-family:'Noto Naskh Arabic',serif;font-weight:700;
    padding:4px 10px;border-radius:8px;
}
.rl-green{background:#E8F5E9;color:#2E7D32}
.rl-orange{background:#FFF3E0;color:#E65100}
.rl-red{background:#FFEBEE;color:#C62828}
.rl-gray{background:#F5F5F5;color:#888}
.rl-empty{font-size:12px;color:#aaa}
.rep-rec{
    display:flex;gap:12px;align-items:flex-start;
    background:#FFF3E0;border:2px solid #FFCC80;border-radius:14px;
    padding:14px;margin-bottom:14px;
}
.rec-icon{font-size:28px;flex-shrink:0}
.rec-body{flex:1}
.rec-title{font-size:14px;font-weight:900;color:#E65100;margin-bottom:4px}
.rec-text{font-size:12px;color:#555;line-height:1.5}

/* Mission status in report */
.mission-status-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.msr-pct{font-size:22px;font-weight:900;color:#E65100;flex-shrink:0}
.msr-bar-wrap{flex:1;height:8px;background:#eee;border-radius:4px;overflow:hidden}
.msr-bar{height:100%;background:var(--mission-grad);border-radius:4px;transition:width .5s}
.mission-letters-status{display:flex;flex-wrap:wrap;gap:8px;direction:rtl;margin-bottom:8px}
.mls-item{
    display:flex;flex-direction:column;align-items:center;gap:2px;
    background:#f9f9f9;border:1.5px solid #eee;border-radius:10px;padding:6px 10px;
}
.mls-item.mls-done{background:#E8F5E9;border-color:#A5D6A7}
.mls-lk{font-size:20px;font-family:'Noto Naskh Arabic',serif;font-weight:700}
.mls-check{font-size:14px}
.mission-empty{font-size:13px;color:#aaa;text-align:center;padding:10px 0}

/* ══ Tasks grid (planning) ══ */
.tasks-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;direction:rtl}
.task-lk{background:#fff;border:2px solid #ddd;border-radius:8px;text-align:center;padding:8px 0;font-family:'Noto Naskh Arabic',serif;font-weight:700;cursor:pointer;transition:.2s;font-size:18px;color:#444}
.task-selected{background:var(--p);color:#fff;border-color:var(--p);transform:scale(1.1);box-shadow:0 3px 8px rgba(15,110,86,.3)}
@media(max-width:400px){.tasks-grid{grid-template-columns:repeat(5,1fr)}}

/* ══ بطاقة لوحة البطل في محور التقويم ══ */
.hero-board-card{
    background:linear-gradient(135deg,#EDE7F6,#E8EAF6);
    border:2px solid #D1C4E9;border-radius:18px;
    padding:16px 18px;display:flex;align-items:center;gap:14px;
    cursor:pointer;margin-top:14px;transition:.2s;
    box-shadow:0 3px 10px rgba(83,74,183,.1);
}
.hero-board-card:active{transform:scale(.98);background:#EDE7F6}
.hbc-left{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;
    justify-content:center;background:linear-gradient(135deg,#534AB7,#185FA5);flex-shrink:0}
.hbc-icon{font-size:28px}
.hbc-body{flex:1}
.hbc-title{font-size:16px;font-weight:900;color:#311B92;margin-bottom:3px}
.hbc-sub{font-size:12px;color:#7E57C2}
.hbc-arrow{font-size:22px;color:#9575CD;font-weight:900}

/* ══ لوحة البطل — شاشة s-hero ══ */
.hero-header-card{
    background:linear-gradient(135deg,#311B92,#534AB7);
    border-radius:18px;padding:18px;margin-bottom:12px;color:#fff;
}
.hhc-name{font-size:20px;font-weight:900;margin-bottom:10px;text-align:center}
.hhc-bar-wrap{height:10px;background:rgba(255,255,255,.2);border-radius:5px;overflow:hidden;margin-bottom:10px}
.hhc-bar{height:100%;background:linear-gradient(90deg,#F9A825,#fff);border-radius:5px;transition:width .8s ease}
.hhc-stats{display:flex;justify-content:space-around;font-size:13px;font-weight:900;
    background:rgba(255,255,255,.1);border-radius:12px;padding:8px;margin-bottom:8px}
.hhc-motiv{font-size:13px;color:rgba(255,255,255,.88);text-align:center;
    font-weight:700;line-height:1.5}

.hero-sep-note{
    background:#FFF8E1;border:1.5px solid #FFE082;border-radius:12px;
    padding:9px 12px;margin-bottom:12px;font-size:12px;color:#795548;font-weight:700;
    text-align:center;
}
.hero-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px;
}
@media(min-width:400px){.hero-grid{grid-template-columns:repeat(5,1fr)}}
.hero-card{
    border:2px solid #eee;border-radius:14px;padding:8px 4px;
    text-align:center;cursor:pointer;transition:.15s;
    display:flex;flex-direction:column;align-items:center;gap:3px;
}
.hero-card:active{transform:scale(.93)}
.hero-card-top{display:flex;align-items:center;justify-content:space-between;
    width:100%;padding:0 2px}
.hero-lk{font-size:22px;font-family:'Noto Naskh Arabic',serif;font-weight:900}
.hero-pct{font-size:10px;font-weight:900}
.hero-dots-row{display:flex;gap:1px;justify-content:center;flex-wrap:wrap}



/* ══════════════════════════════════════════════════
   FINAL — تحسينات النسخة النهائية
══════════════════════════════════════════════════ */
.saved-student-box{background:#fff;width:100%;max-width:400px;border-radius:22px;padding:20px;margin-bottom:14px;text-align:center;box-shadow:0 8px 26px rgba(0,0,0,.08);border:2px solid #C8E6C9}
.saved-title{font-size:14px;font-weight:900;color:#666;margin-bottom:6px}
.saved-name{font-size:30px;font-weight:900;color:var(--p);margin-bottom:12px}
.saved-new-btn{width:100%;margin-top:10px}
.final-tile{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.final-tile.selected{border-color:#0F6E56!important;box-shadow:0 10px 24px rgba(15,110,86,.22);transform:translateY(-4px) scale(1.04)}
.tile-hidden-final{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.final-drop.drag-over{background:#E8F5E9!important;border-color:#0F6E56!important;transform:scale(1.03)}
.final-holder{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:8px}
.final-holder .placed-tile{margin:0;background:#fff;border:2px solid #0F6E56;border-radius:14px;padding:7px 12px;font-size:28px;font-family:'Noto Naskh Arabic',serif;font-weight:700;color:#0F6E56}
.reading-control-box,.eval-control-box{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap;width:100%;max-width:430px;margin:12px auto;padding:0 12px}
.reading-control-box button,.eval-control-box button{flex:1;min-width:110px}
.hero-extra-summary{background:#fff;border-radius:18px;padding:14px;margin-bottom:12px;box-shadow:0 3px 12px rgba(0,0,0,.06);border:2px solid #E8F5E9}
.parent-final-extra{background:#fff;border-radius:20px;padding:16px;margin-bottom:14px;box-shadow:0 3px 12px rgba(0,0,0,.07);border:2px solid #E8F5E9}
.pfe-title{font-size:18px;font-weight:900;color:var(--p);margin-bottom:12px;text-align:center}
.pfe-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pfe-grid div{background:#F7FBF9;border-radius:14px;padding:12px;text-align:center}.pfe-grid b{display:block;font-size:26px;color:var(--accent)}.pfe-grid span{font-size:12px;font-weight:800;color:#666}
.pfe-rec{margin-top:12px;background:#FFF8E1;border:1px solid #FFE0B2;border-radius:14px;padding:12px;font-size:13px;line-height:1.7;color:#795548}


/* FINAL-1.1 إصلاحات الواجهة المطلوبة */
.home-footer-btns{
    display:grid!important;
    grid-template-columns:1fr 1fr 1fr;
    gap:8px!important;
}
.home-footer-btns button{
    min-width:0;
    padding:11px 6px!important;
    font-size:13px!important;
}
.pc-bar-wrap{
    max-width:100%;
}
.pc-bar{
    width:0%;
    max-width:100%;
}
.hero-extra-summary{
    min-height:unset!important;
    padding:12px 14px!important;
    margin-bottom:10px!important;
    display:block!important;
}
/* إخفاء زر التقويم من نافذة الحرف إذا بقي من الكود القديم */
#lp-ov button[onclick*="attemptEval"]{
    display:none!important;
}
.final-tile,.syl-tile{
    line-height:1.25!important;
}

#hero-body{
    padding-top:10px!important;
}


.home-footer-btns{
    display:grid!important;
    grid-template-columns:1fr 1fr 1fr;
    gap:8px!important;
}
.home-footer-btns button{
    min-width:0;
    padding:11px 6px!important;
    font-size:13px!important;
}
.hero-extra-summary{
    position:relative;
    min-height:118px!important;
    max-height:145px!important;
    padding:12px 16px!important;
    margin-bottom:12px!important;
    overflow:hidden;
}
.final-tile,.syl-tile{
    line-height:1.25!important;
}


/* DIAMOND 3: إخفاء زر اسم جديد من شاشة البداية فقط */
#s-entry 





/* DIAMOND 5 — إصلاح نهائي للوحة الحروف في مسار التدريب */
#s-letters .lgrid-main{
    width:100%!important;
    max-width:480px!important;
    margin:0 auto!important;
    padding:8px 10px 36px!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
    align-items:stretch!important;
}

#s-letters .lbtn-main{
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    aspect-ratio:1 / 1!important;
    border-radius:16px!important;
    padding:6px!important;
    gap:2px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
}

#s-letters .lbtn-char{
    font-size:clamp(22px,7vw,32px)!important;
    line-height:1!important;
}

#s-letters .lbtn-plant{
    font-size:12px!important;
    top:4px!important;
    right:5px!important;
}

#s-letters .lgrid-dots{
    max-width:100%!important;
    gap:2px!important;
    margin-top:3px!important;
}

#s-letters .lgrid-dot{
    width:5px!important;
    height:5px!important;
}

#s-letters .letters-hint,
#s-letters .academy-tip{
    max-width:480px!important;
}

/* جوالات صغيرة */
@media (max-width:390px){
    #s-letters .lgrid-main{
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
        gap:7px!important;
        padding-inline:8px!important;
    }
    #s-letters .lbtn-main{
        border-radius:14px!important;
        padding:5px!important;
    }
    #s-letters .lbtn-char{
        font-size:clamp(21px,7.5vw,29px)!important;
    }
    #s-letters .lgrid-dot{
        width:4.5px!important;
        height:4.5px!important;
    }
}

/* شاشات عريضة */
@media (min-width:700px){
    #s-letters .lgrid-main{
        grid-template-columns:repeat(5,minmax(0,1fr))!important;
        gap:10px!important;
        max-width:520px!important;
    }
}

/* ══════════════════════════════════════════════════
   عداد الزوار العام + لوحة إحصائيات الأكاديمية
══════════════════════════════════════════════════ */

/* العداد العام في صفحة الدخول */
.visitor-counter {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    background: linear-gradient(135deg, rgba(15,110,86,.12), rgba(24,95,165,.12));
    border: 1.5px solid rgba(15,110,86,.25);
    border-radius: 30px;
    padding: 9px 20px;
    margin: 10px auto 0;
    width: fit-content;
    max-width: 260px;
    animation: fadeInUp .5s ease;
}
.vc-icon { font-size: 18px; }
.vc-num {
    font-size: 22px;
    font-weight: 900;
    color: #0F6E56;
    direction: ltr;
    font-variant-numeric: tabular-nums;
}
.vc-txt {
    font-size: 13px;
    font-weight: 700;
    color: #555;
}

/* لوحة الإحصائيات السرية */
.ast-wrap {
    background: #fff;
    border-radius: 16px;
    border: 2px solid #e0e0e0;
    padding: 16px;
    margin-bottom: 16px;
}
.ast-title {
    font-size: 15px;
    font-weight: 900;
    color: #1a1a2e;
    margin-bottom: 14px;
    text-align: center;
    padding: 8px;
    background: linear-gradient(135deg, #1a1a2e, #185FA5);
    color: #fff;
    border-radius: 10px;
}
.ast-grid4 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    margin-bottom: 16px;
}
.ast-card {
    background: #f9f9f9;
    border-radius: 12px;
    padding: 12px 8px;
    text-align: center;
    border: 1.5px solid #eee;
}
.ast-big {
    font-size: 26px;
    font-weight: 900;
    color: #1a1a2e;
    direction: ltr;
}
.ast-lab {
    font-size: 11px;
    color: #888;
    font-weight: 700;
    margin-top: 3px;
}
.ast-sec-title {
    font-size: 13px;
    font-weight: 900;
    color: #444;
    margin: 14px 0 10px;
    padding-right: 4px;
}
/* الرسم البياني */
.ast-barchart {
    display: flex;
    align-items: flex-end;
    justify-content: space-around;
    gap: 4px;
    height: 100px;
    background: #f9f9f9;
    border-radius: 10px;
    padding: 10px 6px 4px;
    margin-bottom: 4px;
}
.ast-bc-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    flex: 1;
}
.ast-bc-num {
    font-size: 10px;
    font-weight: 900;
    color: #555;
    min-height: 14px;
}
.ast-bc-bar {
    width: 100%;
    max-width: 28px;
    border-radius: 4px 4px 0 0;
    min-height: 6px;
    transition: height .3s ease;
}
.ast-bc-lbl {
    font-size: 9px;
    color: #999;
    font-weight: 700;
}
/* الدول */
.ast-countries {
    display: flex;
    flex-direction: column;
    gap: 7px;
}
.ast-crow {
    display: flex;
    align-items: center;
    gap: 8px;
}
.ast-cflag { font-size: 18px; flex-shrink: 0; }
.ast-cname {
    font-size: 12px;
    font-weight: 700;
    color: #333;
    min-width: 80px;
    flex-shrink: 0;
}
.ast-cbar-w {
    flex: 1;
    height: 8px;
    background: #eee;
    border-radius: 4px;
    overflow: hidden;
}
.ast-cbar {
    height: 100%;
    background: linear-gradient(90deg, #0F6E56, #1D9E75);
    border-radius: 4px;
    transition: width .4s ease;
}
.ast-cnum {
    font-size: 12px;
    font-weight: 900;
    color: #0F6E56;
    min-width: 26px;
    text-align: left;
    direction: ltr;
}
.ast-footer {
    text-align: center;
    font-size: 10px;
    color: #bbb;
    margin-top: 12px;
}


/* ══════════════════════════════════════════════════
   زر التعليمات الصوتية — صوت بابا أحمد
   يظهر فوق الشاشات ولا يتداخل مع المحتوى
══════════════════════════════════════════════════ */
.instr-btn{
    position:fixed;
    left:calc(env(safe-area-inset-left,0px) + 14px);
    bottom:calc(env(safe-area-inset-bottom,0px) + 18px);
    width:54px;
    height:54px;
    border:none;
    border-radius:50%;
    background:linear-gradient(135deg,#0F6E56,#1D9E75);
    color:#fff;
    font-size:24px;
    font-weight:900;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 24px rgba(15,110,86,.35);
    z-index:10050;
    cursor:pointer;
    font-family:'Tajawal',sans-serif;
    transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.instr-btn:active{transform:scale(.94)}
.instr-btn.instr-playing{
    background:linear-gradient(135deg,#E65100,#F9A825);
    box-shadow:0 8px 26px rgba(230,81,0,.35);
}


/* ══════════════════════════════════════════════════
   PATCH 6.4 — بطاقة مؤشر الانتباه المبكر
══════════════════════════════════════════════════ */
.early-warning-card{
    background:#fff;
    border-radius:18px;
    padding:16px;
    margin:0 0 14px;
    box-shadow:0 4px 16px rgba(0,0,0,.08);
    border:2px solid #eee;
}
.early-warning-card.ew-safe{border-color:#81C784;background:linear-gradient(180deg,#fff,#F1F8E9)}
.early-warning-card.ew-warn{border-color:#F9A825;background:linear-gradient(180deg,#fff,#FFF8E1)}
.early-warning-card.ew-danger{border-color:#E57373;background:linear-gradient(180deg,#fff,#FFEBEE)}
.ew-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.ew-icon{font-size:34px;line-height:1}
.ew-label{font-size:13px;font-weight:900;color:#555;margin-bottom:2px}
.ew-status{font-size:21px;font-weight:900;color:#222}
.ew-desc{font-size:13px;color:#555;line-height:1.8;margin:8px 0 10px}
.ew-meta{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.ew-meta span{background:rgba(255,255,255,.75);border:1px solid rgba(0,0,0,.06);border-radius:10px;padding:6px 9px;font-size:11px;font-weight:900;color:#555}
.ew-subtitle{font-size:12px;font-weight:900;color:#666;margin-top:10px;margin-bottom:6px}
.ew-letters{display:flex;flex-wrap:wrap;gap:7px;direction:rtl}
.ew-letters span{font-family:'Noto Naskh Arabic',serif;font-size:22px;font-weight:900;background:#fff;border:1px solid #eee;border-radius:10px;padding:4px 11px;color:var(--accent)}
.ew-empty{font-size:12px;color:#888;background:#fff;border:1px dashed #ddd;border-radius:10px;padding:9px;text-align:center}


/* ══════════════════════════════════════════════════
   نافذة إحصائيات الأكاديمية السرية — خارج ولي الأمر
══════════════════════════════════════════════════ */
.admin-analytics-modal{
    position:fixed;
    top:0;left:0;right:0;bottom:0;
    z-index:20000;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    direction:rtl;
}
.aam-backdrop{
    position:absolute;
    top:0;left:0;right:0;bottom:0;
    background:rgba(10,22,40,.58);
    -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
}
.aam-panel{
    position:relative;
    width:100%;
    max-width:520px;
    max-height:88vh;
    background:#f0f7f5;
    border-radius:26px 26px 0 0;
    overflow:hidden;
    box-shadow:0 -14px 40px rgba(0,0,0,.28);
    animation:adminPanelUp .22s ease-out;
}
@keyframes adminPanelUp{from{transform:translateY(40px);opacity:.3}to{transform:translateY(0);opacity:1}}
.aam-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:16px 18px;
    background:linear-gradient(135deg,#0a1628,#0F6E56);
    color:#fff;
}
.aam-title{font-size:15px;font-weight:900}
.aam-close{
    width:36px;
    height:36px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,.18);
    color:#fff;
    font-size:26px;
    line-height:1;
    cursor:pointer;
    font-family:Arial,sans-serif;
}
.aam-body{
    max-height:calc(88vh - 68px);
    overflow-y:auto;
    padding:14px;
}


/* ══════════════════════════════════════════════════
   نافذة تحميل الأصوات — iOS Audio Pack
══════════════════════════════════════════════════ */
/* ══ شريط تفعيل الأصوات — شريط ثابت في أعلى الشاشة ══ */
.audio-modal{
    position:fixed;top:0;left:0;right:0;z-index:10000;
    background:linear-gradient(135deg,#0F6E56,#1D9E75);
    box-shadow:0 4px 18px rgba(15,110,86,.35);
    padding:12px 16px;
}
.audio-modal-content{
    width:100%;max-width:480px;margin:0 auto;
    display:flex;align-items:center;justify-content:space-between;gap:10px;
}
.audio-modal-right{
    display:flex;align-items:center;gap:10px;flex:1;min-width:0;
}
.audio-modal-icon{
    width:40px;height:40px;border-radius:12px;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;font-size:22px;
    background:rgba(255,255,255,.2);
}
.audio-modal-text{
    display:flex;flex-direction:column;gap:2px;min-width:0;
}
.audio-modal-text strong{
    font-size:14px;font-weight:900;color:#fff;line-height:1.3;
}
.audio-modal-text span{
    font-size:11px;font-weight:700;color:rgba(255,255,255,.82);line-height:1.4;
}
.audio-modal-actions{
    display:flex;align-items:center;gap:7px;flex-shrink:0;
}
.audio-progress-wrap{
    display:none;
}
.audio-progress-bar{height:100%;width:0%;background:#fff;border-radius:999px;transition:width .25s ease}
.audio-progress-text{font-size:11px;color:rgba(255,255,255,.8);font-weight:900;white-space:nowrap}
.audio-download-btn{
    border:none;border-radius:999px;padding:9px 16px;
    background:#fff;color:#0F6E56;
    font-family:'Tajawal',sans-serif;font-size:13px;font-weight:900;cursor:pointer;
    box-shadow:0 4px 12px rgba(0,0,0,.15);white-space:nowrap;
    touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.audio-download-btn:active{transform:scale(.96)}
.audio-download-btn:disabled{opacity:.72;cursor:wait;box-shadow:none}
.audio-skip-btn{
    background:transparent;border:1.5px solid rgba(255,255,255,.5);
    color:rgba(255,255,255,.9);font-size:12px;font-weight:800;
    font-family:'Tajawal',sans-serif;cursor:pointer;padding:7px 11px;
    border-radius:999px;white-space:nowrap;
    touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.audio-skip-btn:active{opacity:.7}




/* ══════════════════════════════════════════════════
   إصلاح حساسية اللمس على iOS / Safari
   يمنع الضغط المزدوج والزووم غير المقصود ويجعل الأزرار تستجيب من أول لمسة
══════════════════════════════════════════════════ */
html{
    -webkit-text-size-adjust:100%;
    touch-action:manipulation;
}
body{
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    user-select:none;
    overscroll-behavior:none;
}
.screen{
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
}
button,a,label,[onclick],.t-item,.path-card,.letter-card,.chal-btn,.spk-btn,.task-lk,.hero-card,.gender-label,.parent-entry-btn,.mini-link,.btn-primary,.btn-outline-green,.btn-outline-red,.mic-btn,.audio-download-btn,.audio-skip-btn{
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
    -webkit-touch-callout:none;
    user-select:none;
    -webkit-user-select:none;
    cursor:pointer;
}
button,.btn-primary,.btn-outline-green,.btn-outline-red,.audio-download-btn,.audio-skip-btn,.spk-btn,.chal-btn,.gender-label,.path-card,.parent-entry-btn{
    min-height:44px;
}
input,textarea{
    -webkit-user-select:text;
    user-select:text;
    touch-action:manipulation;
}
/* عناصر السحب فقط تحتاج منع سكرول اللمس أثناء السحب */
.syl-tile,.final-tile{
    touch-action:none!important;
}
@supports (-webkit-touch-callout:none){
    .spk-btn,.chal-btn,.path-card,.btn-primary,.btn-outline-green,.btn-outline-red{
        transition:transform .08s ease, opacity .08s ease;
    }
    .spk-btn:active,.chal-btn:active,.path-card:active,.btn-primary:active,.btn-outline-green:active,.btn-outline-red:active{
        transform:scale(.97);
    }
}
