/* ═══════════════ Zoon Home Sections — عرض الأقسام ═══════════════
   RTL · ألوان زون · أصناف zhs-* ليتعامل معها الوضع الليلي. */

.zhs-partners, .zhs-stats-bar, .zhs-testi {
    font-family: 'Tajawal', sans-serif;
    direction: rtl;
}
.zhs-sec-title {
    text-align: center; font-size: 26px; font-weight: 800;
    color: #0b234a; margin: 0 0 28px;
}
.zhs-sec-sub { text-align: center; color: #40516b; font-size: 18px; margin: -16px 0 28px; }

/* ───────── الشركاء ───────── */
.zhs-partners { padding: 48px 16px; }
.zhs-partners-grid {
    display: grid;
    grid-template-columns: repeat(var(--zhs-cols, 5), 1fr);
    gap: 18px; max-width: 1150px; margin: 0 auto;
}
.zhs-logo-item {
    display: flex; align-items: center; justify-content: center;
    background: #fff; border: 1.5px solid #dceef5; border-radius: 18px;
    padding: 24px 20px; min-height: 120px;
    box-shadow: 0 2px 10px rgba(13,143,201,0.06);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.zhs-logo-item:hover {
    transform: translateY(-4px); border-color: #19c6dd;
    box-shadow: 0 10px 26px rgba(13,143,201,0.16);
}
.zhs-logo-img { max-width: 100%; max-height: 84px; width: auto; object-fit: contain; display: block; }
.zhs-logo-link { display: flex; align-items: center; justify-content: center; width: 100%; }

/* شريط متحرّك */
.zhs-marquee { overflow: hidden; max-width: 1200px; margin: 0 auto;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
            mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.zhs-marquee-track { display: flex; gap: 18px; width: max-content; animation: zhs-scroll var(--zhs-speed,40s) linear infinite; }
@keyframes zhs-scroll { from { transform: translateX(0);} to { transform: translateX(50%);} }
.zhs-marquee .zhs-logo-item { flex: 0 0 auto; width: 180px; }

/* ───────── الأرقام ───────── */
.zhs-stats-bar {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px;
    max-width: 1000px; margin: 0 auto; padding: 30px 16px;
}
.zhs-stat {
    background: #fff; border: 1.5px solid #dceef5; border-radius: 18px;
    padding: 24px 14px; text-align: center;
}
.zhs-stat-num { font-size: 38px; font-weight: 800; color: #0077c8; line-height: 1.1; }
.zhs-stat-label { margin-top: 8px; font-size: 15px; font-weight: 600; color: #40516b; }

/* ───────── الآراء ───────── */
.zhs-testi { padding: 48px 16px; }
.zhs-testi-grid {
    display: flex; flex-wrap: wrap; justify-content: center;
    gap: 20px; max-width: 1100px; margin: 0 auto;
}
.zhs-testi-grid .zhs-testi-card { flex: 0 1 340px; }

/* شريط الآراء المتحرّك */
.zhs-testi-marquee .zhs-marquee-track { align-items: stretch; }
.zhs-testi-marquee .zhs-testi-card {
    flex: 0 0 auto; width: 360px;
}
.zhs-testi-card {
    background: #fff; border: 1.5px solid #dceef5; border-radius: 20px;
    padding: 26px 22px; display: flex; flex-direction: column; gap: 14px;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.zhs-testi-card:hover { transform: translateY(-4px); border-color: #19c6dd; box-shadow: 0 10px 26px rgba(13,143,201,0.14); }
.zhs-testi-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.zhs-testi-stars { color: #f5b301; font-size: 18px; letter-spacing: 2px; }
.zhs-testi-score {
    font-size: 13px; font-weight: 800; color: #16A34A;
    background: #e8f7ee; border: 1px solid #b9e6c8; border-radius: 999px; padding: 3px 12px;
}
.zhs-testi-text { color: #334155; font-size: 15.5px; line-height: 1.8; margin: 0; flex: 1; }
.zhs-testi-who { display: flex; align-items: center; gap: 12px; }
.zhs-testi-avatar {
    width: 46px; height: 46px; flex: 0 0 auto;
    display: flex; align-items: center; justify-content: center;
    background: #19c6dd; color: #fff; border-radius: 50%;
    font-weight: 800; font-size: 18px; overflow: hidden;
}
.zhs-testi-avatar.zhs-has-img { background: transparent; }
.zhs-testi-avatar img { width: 100%; height: 100%; object-fit: cover; }
.zhs-testi-meta strong { display: block; color: #0b234a; font-size: 15px; }
.zhs-testi-meta small { color: #64748b; font-size: 13px; }

/* ───────── ملاحظات/أقفال ───────── */
.zhs-empty-note {
    max-width: 700px; margin: 0 auto; padding: 18px 22px;
    background: #eafbff; border: 1.5px dashed #9fd3ec; border-radius: 14px;
    color: #0b234a; text-align: center; font-family: 'Tajawal', sans-serif;
}
.zhs-empty-note a { color: #0077c8; font-weight: 700; }
.zhs-locked {
    padding: 16px 20px; background: #fef3c7; border: 1.5px solid #fcd34d;
    border-radius: 12px; color: #92400e; font-family: 'Tajawal', sans-serif; text-align: center;
}

/* ───────── استجابة ───────── */
@media (max-width: 900px) {
    .zhs-partners-grid { grid-template-columns: repeat(3, 1fr); }
    .zhs-testi-grid .zhs-testi-card { flex-basis: 100%; max-width: 420px; }
}
@media (max-width: 560px) {
    .zhs-partners-grid { grid-template-columns: repeat(2, 1fr); }
    .zhs-stats-bar { grid-template-columns: repeat(2, 1fr); }
    .zhs-sec-title { font-size: 21px; }
    .zhs-stat-num { font-size: 30px; }
}

/* ═══════════════ الوضع الليلي ═══════════════ */
html[data-theme="dark"] .zhs-sec-title { color: #cfe8ff; }
html[data-theme="dark"] .zhs-sec-sub,
html[data-theme="dark"] .zhs-stat-label,
html[data-theme="dark"] .zhs-testi-text { color: #b9c8da; }
html[data-theme="dark"] .zhs-logo-item,
html[data-theme="dark"] .zhs-stat,
html[data-theme="dark"] .zhs-testi-card { background: #161D28; border-color: #2A3547; }
html[data-theme="dark"] .zhs-logo-item:hover,
html[data-theme="dark"] .zhs-testi-card:hover { border-color: #19c6dd; }
html[data-theme="dark"] .zhs-stat-num { color: #5cc6e8; }
html[data-theme="dark"] .zhs-testi-meta strong { color: #cfe8ff; }
html[data-theme="dark"] .zhs-testi-meta small { color: #8aa0b6; }
html[data-theme="dark"] .zhs-empty-note { background: #161D28; border-color: #2A3547; color: #cfe8ff; }

/* ═══════════════ بطاقات المسارات (v1.2.0) ═══════════════ */

.zhs-tracks { max-width: 1080px; margin-inline: auto; }

.zhs-tracks-grid {
    display: grid;
    /* minmax(0,1fr) لا 1fr: الأخيرة min-width:auto فيتمدّد العمود بمحتواه */
    grid-template-columns: repeat(var(--zhs-tcols, 3), minmax(0, 1fr));
    gap: 20px;
    margin-top: 26px;
}

.zhs-track {
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border: 1.5px solid #dceef5;
    border-radius: 18px;
    overflow: hidden;
    transition: transform .15s ease, border-color .15s ease;
}
.zhs-track:hover { transform: translateY(-3px); border-color: #19c6dd; }

/* بطاقة بلا زرّ: تبقى واضحة لكن أقلّ إلحاحاً بصرياً */
.zhs-track-muted { background: #f7fbfd; }
.zhs-track-muted:hover { transform: none; border-color: #dceef5; }

.zhs-track-img { aspect-ratio: 16 / 9; overflow: hidden; background: #eafbff; }
.zhs-track-img img { width: 100%; height: 100%; object-fit: cover; display: block; }

.zhs-track-body { display: flex; flex-direction: column; flex: 1 1 auto; padding: 22px 20px; }

.zhs-track-badge {
    align-self: flex-start;
    padding: 4px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
    margin-block-end: 12px;
    background: rgba(11, 35, 74, 0.08);
    color: #0b234a;
}
.zhs-badge-soon { background: #fdf0d5; color: #8a5a00; }
.zhs-badge-new  { background: #d9f7e6; color: #0a6b3d; }
.zhs-badge-live { background: #fde3e3; color: #97231f; }

.zhs-track-title { margin: 0 0 10px; font-size: 21px; color: #0077c8; }
.zhs-track-desc  { margin: 0 0 12px; font-size: 15px; line-height: 1.9; color: #40516b; }

.zhs-track-meta {
    margin: 0 0 18px;
    font-size: 13.5px;
    color: #6b7c94;
    line-height: 1.8;
}

/* الزرّ يُدفع لأسفل البطاقة فتتساوى أطوال الأزرار مهما اختلفت النصوص */
.zhs-track-btn {
    margin-block-start: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 22px;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none !important;
    border: 2px solid transparent;
    transition: transform .15s ease, background-color .15s ease, border-color .15s ease;
}
.zhs-track-btn:hover { transform: translateY(-2px); }
.zhs-track-btn:focus-visible { outline: 3px solid #19c6dd; outline-offset: 3px; }

.zhs-track-btn-link,
.zhs-track-btn-link:link,
.zhs-track-btn-link:visited,
.zhs-track-btn-link:hover,
.zhs-track-btn-link:focus,
.zhs-track-btn-link:active {
    background: #19c6dd;
    color: #06243f !important;
}
.zhs-track-btn-link:hover { background: #14b4c9; }

.zhs-track-btn-wa,
.zhs-track-btn-wa:link,
.zhs-track-btn-wa:visited,
.zhs-track-btn-wa:hover,
.zhs-track-btn-wa:focus,
.zhs-track-btn-wa:active {
    background: transparent;
    color: #0b234a !important;
    border-color: rgba(11, 35, 74, 0.28);
}
.zhs-track-btn-wa:hover { background: rgba(37, 211, 102, 0.12); border-color: #25d366; }

.zhs-track-wa-ic { font-size: 17px; line-height: 1; }

@media (max-width: 900px) {
    .zhs-tracks-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
    .zhs-tracks-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    .zhs-track, .zhs-track-btn { transition: none !important; }
    .zhs-track:hover, .zhs-track-btn:hover { transform: none !important; }
}

/* ── الوضع الليلي ── */
html[data-theme="dark"] .zhs-track { background: #161D28; border-color: #2A3547; }
html[data-theme="dark"] .zhs-track-muted { background: #131A24; }
html[data-theme="dark"] .zhs-track-img { background: #11171F; }
html[data-theme="dark"] .zhs-track-title { color: #5CC6E8; }
html[data-theme="dark"] .zhs-track-desc { color: #B9C4D4; }
html[data-theme="dark"] .zhs-track-meta { color: #8E9BAD; }
html[data-theme="dark"] .zhs-track-badge { background: rgba(230,234,242,0.10); color: #E6EAF2; }
html[data-theme="dark"] .zhs-badge-soon { background: rgba(245,194,66,0.18); color: #F5C242; }
html[data-theme="dark"] .zhs-badge-new  { background: rgba(29,158,117,0.20); color: #5DCAA5; }
html[data-theme="dark"] .zhs-badge-live { background: rgba(226,75,74,0.20); color: #F09595; }
html[data-theme="dark"] .zhs-track-btn-wa,
html[data-theme="dark"] .zhs-track-btn-wa:link,
html[data-theme="dark"] .zhs-track-btn-wa:visited,
html[data-theme="dark"] .zhs-track-btn-wa:hover,
html[data-theme="dark"] .zhs-track-btn-wa:focus,
html[data-theme="dark"] .zhs-track-btn-wa:active {
    color: #E6EAF2 !important;
    border-color: rgba(230, 234, 242, 0.32);
}

/* ═══════════════ الأسئلة الشائعة (v1.3.0) ═══════════════ */

.zhs-faqs { max-width: 820px; margin-inline: auto; }

.zhs-faq-list { margin-top: 24px; display: flex; flex-direction: column; gap: 12px; }

.zhs-faq-item {
    background: #ffffff;
    border: 1.5px solid #dceef5;
    border-radius: 14px;
    overflow: hidden;
    transition: border-color .15s ease;
}
.zhs-faq-item[open] { border-color: #bfe3ef; }

.zhs-faq-q {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 18px 22px;
    cursor: pointer;
    font-size: 17px;
    font-weight: 700;
    color: #0b234a;
    list-style: none;
}
.zhs-faq-q::-webkit-details-marker { display: none; }

.zhs-faq-icon {
    flex: 0 0 auto;
    inline-size: 26px;
    block-size: 26px;
    border-radius: 50%;
    background: #eafbff;
    color: #0077c8;
    font-size: 20px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform .2s ease, background-color .2s ease;
}
.zhs-faq-item[open] .zhs-faq-icon { transform: rotate(45deg); background: #0077c8; color: #fff; }

.zhs-faq-a {
    padding: 0 22px 20px;
    font-size: 15.5px;
    line-height: 2;
    color: #40516b;
}

html[data-theme="dark"] .zhs-faq-item { background: #161D28; border-color: #2A3547; }
html[data-theme="dark"] .zhs-faq-item[open] { border-color: #34506b; }
html[data-theme="dark"] .zhs-faq-q { color: #E6EAF2; }
html[data-theme="dark"] .zhs-faq-icon { background: #223042; color: #5CC6E8; }
html[data-theme="dark"] .zhs-faq-item[open] .zhs-faq-icon { background: #0077c8; color: #fff; }
html[data-theme="dark"] .zhs-faq-a { color: #B9C4D4; }

/* ═══════════════ البطاقة المميّزة — التجربة المجانية ═══════════════ */

.zhs-track-featured {
    border-color: #19c6dd;
    box-shadow: 0 0 0 3px rgba(25, 198, 221, 0.18), 0 10px 30px rgba(25, 198, 221, 0.22);
    position: relative;
    animation: zhs-feat-pulse 2.4s ease-in-out infinite;
}
@keyframes zhs-feat-pulse {
    0%, 100% { box-shadow: 0 0 0 3px rgba(25,198,221,0.18), 0 10px 30px rgba(25,198,221,0.20); }
    50%      { box-shadow: 0 0 0 5px rgba(25,198,221,0.28), 0 14px 38px rgba(25,198,221,0.34); }
}
.zhs-track-featured:hover { transform: translateY(-4px); }

/* شريط علوي متحرّك يلفت النظر */
.zhs-track-featured::before {
    content: "";
    position: absolute;
    inset-block-start: 0;
    inset-inline: 0;
    block-size: 4px;
    background: linear-gradient(90deg, #19c6dd, #0077c8, #19c6dd);
    background-size: 200% 100%;
    animation: zhs-feat-sheen 2.5s linear infinite;
    z-index: 2;
}
@keyframes zhs-feat-sheen {
    from { background-position: 200% 0; }
    to   { background-position: -200% 0; }
}

.zhs-track-featured .zhs-track-btn-link {
    background: linear-gradient(90deg, #19c6dd, #0aa9c4);
    box-shadow: 0 6px 18px rgba(25, 198, 221, 0.4);
}

@media (prefers-reduced-motion: reduce) {
    .zhs-track-featured { animation: none; }
    .zhs-track-featured::before { animation: none; }
}

html[data-theme="dark"] .zhs-track-featured { border-color: #19c6dd; }

/* ═══════════════ الفوتر — تنظيم كامل (كان يعتمد على Spectra الافتراضي) ═══════════════ */

.za-editor-footer .wp-block-columns {
    gap: 30px;
    align-items: flex-start;
}

.za-editor-footer .za-footer-col,
.za-editor-footer .za-footer-brand { padding-block: 8px; }

/* العناوين: محاذاة يمين موحّدة بدل التوسيط المبعثر */
.za-editor-footer .uagb-heading-text {
    color: #ffffff !important;
    font-size: 18px !important;
    margin-block-end: 6px !important;
    text-align: start !important;
    padding-inline: 0 !important;
}

/* القوائم: بلا حشوة يمنى غريبة، مسافات منتظمة */
.za-editor-footer .wp-block-list {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}
.za-editor-footer .wp-block-list li {
    margin: 0 0 10px !important;
    text-align: start;
}
.za-editor-footer .wp-block-list a,
.za-editor-footer .wp-block-list a:link,
.za-editor-footer .wp-block-list a:visited {
    color: rgba(255, 255, 255, 0.82) !important;
    text-decoration: none !important;
    font-size: 15px;
    transition: color .15s ease;
}
.za-editor-footer .wp-block-list a:hover { color: #19c6dd !important; }
.za-editor-footer .wp-block-list code { background: transparent !important; color: rgba(255,255,255,0.82) !important; }

/* وسم «تبدأ قريباً»: واضح أنه غير قابل للنقر */
.za-editor-footer .za-footer-soon {
    display: inline-block;
    color: rgba(255, 255, 255, 0.5) !important;
    font-size: 15px;
    cursor: default;
}

/* عمود العلامة */
.za-editor-footer .za-footer-brand p {
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 14.5px;
    line-height: 2;
    text-align: start !important;
}
.za-editor-footer .za-footer-brand img { margin-block: 0 14px !important; }

/* شريط الحقوق السفلي */
.za-editor-footer .za-footer-bottom {
    color: rgba(255, 255, 255, 0.55) !important;
    font-size: 13px;
    padding-block-start: 24px;
    margin-block-start: 20px;
    border-block-start: 1px solid rgba(255, 255, 255, 0.12);
}

@media (max-width: 768px) {
    .za-editor-footer .wp-block-columns { gap: 24px; }
    .za-editor-footer .uagb-heading-text { text-align: center !important; }
    .za-editor-footer .wp-block-list li { text-align: center; }
    .za-editor-footer .za-footer-brand p { text-align: center !important; }
}

/* ═══════════════ بطاقات صفحة الدورات (v1.4.0) ═══════════════
   بطاقة عريضة أفقية: صورة على اليمين ومحتوى على اليسار (RTL)، وتنهار
   عمودياً على الجوال. layout="grid" يعيدها لشبكة عمودية كالمسارات. */

.zhs-courses {
    font-family: 'Tajawal', sans-serif;
    direction: rtl;
    max-width: 1120px;
    margin-inline: auto;
    padding: 40px 16px;
}

.zhs-courses-grid { display: grid; gap: 22px; margin-top: 26px; }
.zhs-courses-wide .zhs-courses-grid { grid-template-columns: minmax(0, 1fr); }
.zhs-courses-grid > * { min-width: 0; }

.zhs-course {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 24px;
    background: #ffffff;
    border: 1.5px solid #dceef5;
    border-radius: 20px;
    overflow: hidden;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.zhs-course:hover { transform: translateY(-3px); border-color: #9fdcee; box-shadow: 0 14px 32px rgba(11,35,74,.10); }
.zhs-course-st-soon { background: #fffdf8; border-color: #f0e3c6; }
.zhs-course-st-soon:hover { border-color: #e5c274; box-shadow: 0 14px 32px rgba(138, 90, 0, .10); }
.zhs-course-st-soon .zhs-course-media { background: linear-gradient(160deg, #fdf6e6, #fffdf8); }

.zhs-course-muted { background: #f7fbfd; }
.zhs-course-muted:hover { transform: none; border-color: #dceef5; box-shadow: none; }

/* الصورة تُعرض كاملة بلا قصّ (الملصقات عندنا طولية) — contain داخل إطار
   بخلفية لطيفة. fit="cover" في الشورت كود يعيد السلوك القديم عند الحاجة. */
.zhs-course-media {
    position: relative;
    background: linear-gradient(160deg, #eafbff, #f6fdff);
    display: flex; align-items: center; justify-content: center;
    padding: 14px;
}
.zhs-course-media img {
    inline-size: 100%;
    block-size: auto;
    max-block-size: 340px;
    object-fit: contain;
    border-radius: 12px;
    display: block;
}

/* نمط القصّ الاختياري */
.zhs-fit-cover .zhs-course-media { padding: 0; min-block-size: 210px; }
.zhs-fit-cover .zhs-course-media img {
    block-size: 100%; max-block-size: none; object-fit: cover; border-radius: 0;
}
.zhs-course-noimg { font-size: 54px; opacity: .55; }

.zhs-course-body {
    display: flex; flex-direction: column;
    padding: 26px 4px 26px 26px;
}

.zhs-course-badge {
    align-self: flex-start;
    display: inline-flex; align-items: center; gap: 8px;
    padding: 6px 15px 6px 13px;
    border-radius: 999px;
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: .2px;
    margin-block-end: 14px;
    border: 1px solid transparent;
    background: rgba(11, 35, 74, 0.07);
    color: #0b234a;
}
/* النقطة الدالّة قبل النصّ — تميّز الحالات حتى لمن لا يميّز الألوان */
.zhs-course-badge::before {
    content: '';
    inline-size: 8px; block-size: 8px;
    border-radius: 50%;
    background: currentColor;
    flex: 0 0 auto;
}

/* 🟢 متاح الآن — أخضر بنبض حيّ */
.zhs-course-badge.zhs-badge-new {
    background: linear-gradient(135deg, #e3fbef, #d0f5e2);
    color: #06603a;
    border-color: #a7e8c8;
    box-shadow: 0 2px 10px rgba(10, 107, 61, .12);
}
.zhs-course-badge.zhs-badge-new::before {
    background: #10b981;
    box-shadow: 0 0 0 0 rgba(16, 185, 129, .65);
    animation: zhs-pulse 2s ease-out infinite;
}

/* 🟡 تبدأ قريباً — كهرماني هادئ بلا نبض (حالة انتظار لا دعوة) */
.zhs-course-badge.zhs-badge-soon {
    background: #fdf3dd;
    color: #8a5a00;
    border-color: #f0d9a4;
}
.zhs-course-badge.zhs-badge-soon::before { background: #d99b0b; }

/* 🔴 مباشر — أحمر بنبض أسرع */
.zhs-course-badge.zhs-badge-live {
    background: #fde7e6;
    color: #97231f;
    border-color: #f4b9b6;
}
.zhs-course-badge.zhs-badge-live::before {
    background: #e0403a;
    box-shadow: 0 0 0 0 rgba(224, 64, 58, .6);
    animation: zhs-pulse 1.4s ease-out infinite;
}

/* بلا لون — رمادي محايد */
.zhs-course-badge.zhs-badge-none { background: rgba(11, 35, 74, 0.07); color: #40516b; border-color: #dceef5; }
.zhs-course-badge.zhs-badge-none::before { background: #8a9ab0; }

@keyframes zhs-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(16, 185, 129, .6); }
    70%  { box-shadow: 0 0 0 7px rgba(16, 185, 129, 0); }
    100% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }
}

.zhs-course-title { margin: 0 0 12px; font-size: 25px; line-height: 1.5; color: #0077c8; font-weight: 800; }
.zhs-course-title::after {
    content: '';
    display: block;
    inline-size: 54px; block-size: 3px;
    margin-block-start: 9px;
    border-radius: 3px;
    background: linear-gradient(90deg, #19c6dd, #0077c8);
    transition: inline-size .25s ease;
}
.zhs-course:hover .zhs-course-title::after { inline-size: 92px; }
.zhs-course-st-soon .zhs-course-title { color: #0b234a; }
.zhs-course-st-soon .zhs-course-title::after { background: linear-gradient(90deg, #f0c05a, #d99b0b); }
.zhs-course-desc  { margin: 0 0 14px; font-size: 16px; line-height: 1.95; color: #40516b; }

.zhs-course-meta {
    list-style: none; margin: 0 0 22px; padding: 0;
    display: flex; flex-wrap: wrap; gap: 9px 10px;
}
.zhs-course-meta li {
    display: inline-flex; align-items: center; gap: 7px;
    font-size: 13.5px; font-weight: 600; color: #0b234a;
    background: linear-gradient(180deg, #f7fdff, #eaf7fc);
    border: 1px solid #cfe9f4;
    border-radius: 999px; padding: 6px 14px 6px 12px;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.zhs-course:hover .zhs-course-meta li { border-color: #9fdcee; box-shadow: 0 3px 10px rgba(25,198,221,.14); }
.zhs-meta-ic {
    display: inline-flex; align-items: center; justify-content: center;
    inline-size: 17px; block-size: 17px; border-radius: 50%;
    background: #19c6dd; color: #06243f;
    font-size: 11px; font-weight: 900; line-height: 1;
}

/* عنصر واحد = جملة تسويقية ⇒ شريط بوميض يمرّ فوقه */
.zhs-course-tagline {
    position: relative;
    display: flex; align-items: center; gap: 10px;
    margin: 0 0 22px; padding: 11px 16px;
    border-radius: 14px;
    font-size: 14.5px; font-weight: 700; line-height: 1.7;
    color: #06456b;
    background: linear-gradient(120deg, #eafaff 0%, #f4fbfe 50%, #eafaff 100%);
    border: 1px solid #bfe8f5;
    overflow: hidden;
    isolation: isolate;
}
.zhs-course-tagline::after {          /* الوميض المتحرك */
    content: '';
    position: absolute; inset-block: 0; inset-inline-start: -60%;
    inline-size: 55%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.85), transparent);
    transform: skewX(-18deg);
    animation: zhs-sheen 3.6s ease-in-out infinite;
    z-index: -1;
}
.zhs-tagline-ic {
    flex: 0 0 auto;
    display: inline-flex; align-items: center; justify-content: center;
    inline-size: 26px; block-size: 26px; border-radius: 9px;
    background: linear-gradient(135deg, #19c6dd, #0077c8);
    color: #fff; font-size: 14px;
    box-shadow: 0 3px 9px rgba(25,198,221,.35);
}
.zhs-tagline-tx { position: relative; z-index: 1; }

.zhs-course-st-soon .zhs-course-tagline {
    color: #7a5200;
    background: linear-gradient(120deg, #fff7e6 0%, #fffdf7 50%, #fff7e6 100%);
    border-color: #f0dcac;
}
.zhs-course-st-soon .zhs-tagline-ic { background: linear-gradient(135deg, #f0c05a, #d99b0b); box-shadow: 0 3px 9px rgba(217,155,11,.32); }

@keyframes zhs-sheen {
    0%   { inset-inline-start: -60%; }
    55%  { inset-inline-start: 115%; }
    100% { inset-inline-start: 115%; }
}

.zhs-course-btn {
    margin-block-start: auto;
    align-self: flex-start;
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    padding: 13px 30px;
    border-radius: 12px;
    font-size: 16.5px; font-weight: 700;
    text-decoration: none !important;
    border: 2px solid transparent;
    transition: transform .15s ease, background .15s ease;
}
.zhs-course-btn:hover { transform: translateY(-2px); }
.zhs-course-btn:focus-visible { outline: 3px solid #19c6dd; outline-offset: 3px; }

.zhs-course-btn-link,
.zhs-course-btn-link:link,
.zhs-course-btn-link:visited,
.zhs-course-btn-link:hover,
.zhs-course-btn-link:focus,
.zhs-course-btn-link:active {
    background: linear-gradient(135deg, #22d0e6, #0aa9c4);
    color: #052436 !important;
    box-shadow: 0 6px 16px rgba(25, 198, 221, .30);
}
.zhs-course-btn-link:hover { background: linear-gradient(135deg, #19c6dd, #0796af); box-shadow: 0 9px 22px rgba(25, 198, 221, .38); }

/* حالة «تبدأ قريباً»: زرّ ثانوي كهرماني — لا يزاحم زرّ الدورة المتاحة */
.zhs-course-st-soon .zhs-course-btn-link,
.zhs-course-st-soon .zhs-course-btn-link:link,
.zhs-course-st-soon .zhs-course-btn-link:visited,
.zhs-course-st-soon .zhs-course-btn-link:hover,
.zhs-course-st-soon .zhs-course-btn-link:focus,
.zhs-course-st-soon .zhs-course-btn-link:active {
    background: #fff;
    color: #7a5200 !important;
    border-color: #e5c274;
    box-shadow: 0 4px 12px rgba(217, 155, 11, .16);
}
.zhs-course-st-soon .zhs-course-btn-link:hover { background: #fff8e8; border-color: #d99b0b; }

.zhs-course-btn-wa,
.zhs-course-btn-wa:link,
.zhs-course-btn-wa:visited,
.zhs-course-btn-wa:hover,
.zhs-course-btn-wa:focus,
.zhs-course-btn-wa:active {
    background: transparent; color: #0b234a !important;
    border-color: rgba(11, 35, 74, 0.28);
}
.zhs-course-btn-wa:hover { background: rgba(37, 211, 102, 0.12); border-color: #25d366; }
.zhs-course-wa-ic { font-size: 17px; line-height: 1; }

.zhs-course-featured {
    border-color: #19c6dd;
    box-shadow: 0 0 0 3px rgba(25, 198, 221, 0.18), 0 10px 30px rgba(25, 198, 221, 0.22);
}
.zhs-course-featured .zhs-course-btn-link { background: linear-gradient(90deg, #19c6dd, #0aa9c4); }

/* شبكة عمودية اختيارية (layout="grid") */
.zhs-courses-grid-mode .zhs-courses-grid {
    grid-template-columns: repeat(var(--zhs-ccols, 2), minmax(0, 1fr));
}
.zhs-courses-grid-mode .zhs-course { grid-template-columns: minmax(0, 1fr); gap: 0; }
.zhs-courses-grid-mode.zhs-fit-cover .zhs-course-media { aspect-ratio: 16 / 9; min-block-size: 0; }
.zhs-courses-grid-mode .zhs-course-body { padding: 24px 22px; }

@media (max-width: 860px) {
    .zhs-courses { padding: 28px 12px; }
    .zhs-course { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .zhs-course-media { padding: 12px 12px 0; }
    .zhs-course-media img { max-block-size: 58vh; }
    .zhs-fit-cover .zhs-course-media { aspect-ratio: 16 / 9; min-block-size: 0; padding: 0; }
    .zhs-course-body { padding: 20px 18px; }
    .zhs-course-title { font-size: 22px; }
    .zhs-course-desc { font-size: 15.5px; line-height: 1.85; }
    .zhs-course-btn { align-self: stretch; padding: 14px 20px; }
}

@media (prefers-reduced-motion: reduce) {
    .zhs-course, .zhs-course-btn, .zhs-course-meta li, .zhs-course-title::after { transition: none !important; }
    .zhs-course:hover, .zhs-course-btn:hover { transform: none !important; }
    .zhs-course-tagline::after, .zhs-course-badge::before { animation: none !important; }
}

/* ── الوضع الليلي ── */
html[data-theme="dark"] .zhs-course { background: #161D28; border-color: #2A3547; }
html[data-theme="dark"] .zhs-course-muted { background: #131A24; }
html[data-theme="dark"] .zhs-course-media { background: #11171F; }
html[data-theme="dark"] .zhs-course-title { color: #5CC6E8; }
html[data-theme="dark"] .zhs-course-desc { color: #B9C4D4; }
html[data-theme="dark"] .zhs-course-meta li { color: #B9C4D4; background: #1B2432; border-color: #2A3547; }
html[data-theme="dark"] .zhs-course-badge { background: rgba(230,234,242,0.10); color: #E6EAF2; }
html[data-theme="dark"] .zhs-course-btn-wa,
html[data-theme="dark"] .zhs-course-btn-wa:link,
html[data-theme="dark"] .zhs-course-btn-wa:visited,
html[data-theme="dark"] .zhs-course-btn-wa:hover,
html[data-theme="dark"] .zhs-course-btn-wa:focus,
html[data-theme="dark"] .zhs-course-btn-wa:active {
    color: #E6EAF2 !important; border-color: rgba(230, 234, 242, 0.32);
}

/* ── الوضع الليلي: وسوم/رقائق/شريط الوميض (v1.4.2) ── */
html[data-theme="dark"] .zhs-course-media { background: linear-gradient(160deg, #10161E, #131A24); }
html[data-theme="dark"] .zhs-course-badge.zhs-badge-new  { background: rgba(16,185,129,.14); color: #6ee7b7; border-color: rgba(16,185,129,.34); box-shadow: none; }
html[data-theme="dark"] .zhs-course-badge.zhs-badge-soon { background: rgba(217,155,11,.14); color: #f4c86a; border-color: rgba(217,155,11,.34); }
html[data-theme="dark"] .zhs-course-badge.zhs-badge-live { background: rgba(224,64,58,.14); color: #f7a6a2; border-color: rgba(224,64,58,.34); }
html[data-theme="dark"] .zhs-course-badge.zhs-badge-none { background: rgba(230,234,242,.08); color: #B9C4D4; border-color: #2A3547; }
html[data-theme="dark"] .zhs-course-meta li { background: #1B2432; border-color: #2A3547; color: #DCE4EF; }
html[data-theme="dark"] .zhs-meta-ic { background: #19c6dd; color: #06243f; }
html[data-theme="dark"] .zhs-course-tagline {
    color: #CFE9F4;
    background: linear-gradient(120deg, #17222E 0%, #1B2836 50%, #17222E 100%);
    border-color: #2A3547;
}
html[data-theme="dark"] .zhs-course-tagline::after { background: linear-gradient(90deg, transparent, rgba(255,255,255,.10), transparent); }
html[data-theme="dark"] .zhs-course-st-soon { background: #1A1810; border-color: #3A3320; }
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-media { background: linear-gradient(160deg, #191509, #1A1810); }
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-title { color: #E6EAF2; }
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-tagline { color: #F4C86A; background: linear-gradient(120deg, #221D0E 0%, #2A2413 50%, #221D0E 100%); border-color: #3A3320; }
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-btn-link,
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-btn-link:link,
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-btn-link:visited,
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-btn-link:hover,
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-btn-link:focus,
html[data-theme="dark"] .zhs-course-st-soon .zhs-course-btn-link:active {
    background: transparent; color: #F4C86A !important; border-color: rgba(244,200,106,.42); box-shadow: none;
}
