:root{
--em-navy:#22324a;--em-blue:#1768a9;--em-blue-strong:#115b96;--em-blue-soft:#eef6fc;
--em-green:#2f8f68;--em-green-strong:#257957;--em-green-soft:#edf8f2;
--em-bg:#f4f8fc;--em-card:#fff;--em-border:#dce7f1;--em-muted:#718096;--em-text:#334155;
--em-shadow:0 22px 70px rgba(32,65,103,.11);--em-shadow-soft:0 12px 36px rgba(32,65,103,.075)
}
.em-subject-page{min-height:calc(100vh - 90px);padding:34px 0 82px;color:var(--em-text);background:radial-gradient(circle at 8% 5%,rgba(23,104,169,.08),transparent 25%),radial-gradient(circle at 92% 18%,rgba(47,143,104,.07),transparent 23%),var(--em-bg)}
.em-shell{width:min(1160px,calc(100% - 36px));margin-inline:auto}
.em-back{margin-bottom:16px}.em-back a{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 13px;border:1px solid rgba(23,104,169,.13);border-radius:999px;background:rgba(255,255,255,.86);color:var(--em-blue);text-decoration:none;font-size:13px;font-weight:850;box-shadow:0 7px 22px rgba(32,65,103,.05);transition:.18s ease}
.em-back a:hover{transform:translateY(-1px);border-color:rgba(23,104,169,.3);box-shadow:0 10px 28px rgba(32,65,103,.09)}
.em-hero{position:relative;overflow:hidden;border:1px solid var(--em-border);border-radius:28px;background:#fff;box-shadow:var(--em-shadow)}
.em-hero:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--em-blue),#41a5df 48%,var(--em-green))}
.em-hero-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;padding:clamp(34px,5vw,62px) clamp(22px,5vw,70px) 42px;text-align:center}
.em-level-badge{display:inline-flex;align-items:center;justify-content:center;min-width:72px;min-height:38px;margin-bottom:14px;padding:0 18px;border:1px solid rgba(23,104,169,.15);border-radius:999px;background:var(--em-blue-soft);color:var(--em-blue);font-size:14px;font-weight:900}
.em-eyebrow{display:inline-block;margin-bottom:8px;color:var(--em-blue);font-size:11px;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.em-hero h1{margin:0;color:var(--em-navy);font-family:Cairo,Tajawal,system-ui,sans-serif;font-size:clamp(40px,6vw,66px);font-weight:900;line-height:1.05;letter-spacing:-.045em}
.em-hero-description{max-width:650px;margin:16px auto 0;color:var(--em-muted);font-size:clamp(15px,1.7vw,18px);line-height:1.75}
.em-cover-stage{width:min(100%,360px);margin:30px auto 24px;display:grid;place-items:center}
.em-cover-frame{width:min(100%,310px);aspect-ratio:210/297;display:grid;place-items:center;overflow:hidden;padding:10px;border:1px solid rgba(34,50,74,.11);border-radius:18px;background:#fff;box-shadow:0 26px 56px rgba(32,65,103,.18),0 5px 14px rgba(32,65,103,.09)}
.em-cover-frame>img{width:100%;height:100%;display:block;object-fit:contain;border-radius:10px;background:#fff}
.em-cover-fallback{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:13px;border-radius:11px;color:var(--em-blue);background:linear-gradient(145deg,#f6fbff,#edf5fb);text-align:center}
.em-cover-fallback span{font-size:52px}.em-cover-fallback strong{max-width:85%;color:var(--em-navy);font-size:20px}
.em-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:9px}.em-stat{display:inline-flex;align-items:baseline;gap:6px;min-height:36px;padding:7px 13px;border:1px solid var(--em-border);border-radius:999px;background:#fff;color:var(--em-muted);font-size:12px;font-weight:750}.em-stat strong{color:var(--em-navy);font-size:14px}.em-stat-ready{border-color:rgba(47,143,104,.15);background:var(--em-green-soft)}.em-stat-ready strong,.em-stat-ready span{color:var(--em-green-strong)}
.em-course{margin-top:24px;padding:clamp(22px,4vw,36px);border:1px solid var(--em-border);border-radius:26px;background:var(--em-card);box-shadow:var(--em-shadow-soft)}
.em-course-header{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:24px}.em-course-header h2{margin:0;color:var(--em-navy);font-size:clamp(25px,3vw,34px);line-height:1.2;letter-spacing:-.025em}.em-course-header p{max-width:680px;margin:8px 0 0;color:var(--em-muted);font-size:14px;line-height:1.65}
.em-course-count{flex:0 0 auto;min-width:92px;padding:12px 15px;border:1px solid rgba(23,104,169,.1);border-radius:16px;background:var(--em-blue-soft);text-align:center}.em-course-count strong,.em-course-count span{display:block}.em-course-count strong{color:var(--em-blue);font-size:24px;line-height:1}.em-course-count span{margin-top:5px;color:#5f7690;font-size:11px;font-weight:800}
.em-units{display:grid;gap:15px}
.em-unit{overflow:hidden;border:1px solid var(--em-border);border-radius:18px;background:#fff;box-shadow:0 5px 18px rgba(32,65,103,.035);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.em-unit:hover{border-color:rgba(23,104,169,.22);box-shadow:0 12px 30px rgba(32,65,103,.075)}.em-unit.is-open{border-color:rgba(23,104,169,.24);box-shadow:0 13px 34px rgba(32,65,103,.08)}
.em-unit-toggle{width:100%;min-height:82px;display:grid;grid-template-columns:52px minmax(0,1fr) 42px;align-items:center;gap:13px;padding:13px 17px;border:0;background:linear-gradient(180deg,#fbfdff,#f7fbfe);color:inherit;text-align:inherit;cursor:pointer}.em-unit.is-open>.em-unit-toggle{background:linear-gradient(180deg,#f5faff,#eff7fd)}
.em-unit-number{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#e5f3ff;color:var(--em-blue);font-size:14px;font-weight:950}
.em-unit-copy,.em-discipline-copy,.em-capsule-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.em-unit-copy strong{overflow:hidden;color:var(--em-navy);font-size:18px;font-weight:900;line-height:1.3;text-overflow:ellipsis}.em-unit-copy small,.em-discipline-copy small,.em-capsule-copy small{color:var(--em-muted);font-size:11px;font-weight:700}
.em-chevron{width:34px;height:34px;display:grid;place-items:center;justify-self:end;border-radius:11px;color:#7a8ea4;font-size:24px;transition:transform .22s ease,background .18s ease,color .18s ease}.em-unit.is-open>.em-unit-toggle .em-chevron{transform:rotate(180deg);color:var(--em-blue)}
.em-unit-content[hidden],.em-discipline-content[hidden]{display:none}.em-unit-inner{padding:14px;border-top:1px solid #edf3f7;background:#fff}
.em-disciplines{display:grid;gap:11px}.em-discipline{overflow:hidden;border:1px solid #e2ece7;border-radius:15px;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}.em-discipline:hover,.em-discipline.is-open{border-color:rgba(47,143,104,.26)}.em-discipline.is-open{box-shadow:0 9px 24px rgba(47,143,104,.06)}
.em-discipline-toggle{width:100%;min-height:67px;display:grid;grid-template-columns:42px minmax(0,1fr) 38px;align-items:center;gap:12px;padding:10px 13px;border:0;background:#fbfefc;color:inherit;text-align:inherit;cursor:pointer}.em-discipline.is-open>.em-discipline-toggle{background:linear-gradient(180deg,#f5fcf8,#f0f9f4)}
.em-discipline-number{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:var(--em-green-soft);color:var(--em-green-strong);font-size:13px;font-weight:950}.em-discipline-copy strong{color:var(--em-navy);font-size:15px;font-weight:900}.em-discipline.is-open>.em-discipline-toggle .em-chevron-discipline{transform:rotate(180deg);color:var(--em-green)}
.em-discipline-inner{padding:8px 13px 13px;border-top:1px solid #edf4f0;background:#fff}
.em-capsules{display:grid;gap:8px}.em-capsule{min-height:74px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e8eef4;border-radius:13px;background:#fff;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.em-capsule.has-content:hover{transform:translateY(-1px);border-color:rgba(23,104,169,.22);box-shadow:0 8px 22px rgba(32,65,103,.07)}
.em-capsule-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:#edf5fb;color:var(--em-blue);font-size:15px}.em-capsule.is-pending .em-capsule-icon{background:#f2f4f7;color:#8695a6}.em-capsule-copy strong{overflow:hidden;color:var(--em-navy);font-size:14px;font-weight:900;line-height:1.35;text-overflow:ellipsis}
.em-open{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 15px;border-radius:11px;background:linear-gradient(180deg,#1d73b5,var(--em-blue));color:#fff;text-decoration:none;font-size:12px;font-weight:900;box-shadow:0 7px 16px rgba(23,104,169,.17);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.em-open:hover{transform:translateY(-2px);background:linear-gradient(180deg,var(--em-blue),var(--em-blue-strong));box-shadow:0 10px 21px rgba(23,104,169,.24)}.em-open-disabled{background:#eef1f4;color:#8a98a8;box-shadow:none;cursor:default}
.em-empty{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px dashed #d8e3ec;border-radius:14px;background:#f8fbfd}.em-empty-main{padding:24px}.em-empty-small{padding:14px}.em-empty-icon{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:12px;background:#edf5fb;color:var(--em-blue);font-size:18px;font-weight:900}.em-empty strong{display:block;color:var(--em-navy);font-size:14px}.em-empty p{margin:4px 0 0;color:var(--em-muted);font-size:12px;line-height:1.55}
html[dir=rtl] .em-unit-toggle,html[dir=rtl] .em-discipline-toggle,html[dir=rtl] .em-capsule{text-align:right}
@media(max-width:760px){
.em-subject-page{padding:24px 0 55px}.em-shell{width:min(100% - 24px,1160px)}.em-hero{border-radius:22px}.em-hero-content{padding:32px 18px 30px}.em-cover-stage{width:min(100%,320px);margin-top:25px}.em-cover-frame{width:min(82vw,275px)}.em-course{margin-top:17px;padding:20px 13px;border-radius:21px}.em-course-header{align-items:flex-start}.em-course-count{min-width:76px;padding:10px 11px}.em-unit-toggle{grid-template-columns:46px minmax(0,1fr) 32px;min-height:76px;padding:11px}.em-unit-number{width:41px;height:41px;border-radius:12px}.em-unit-copy strong{font-size:16px}.em-unit-inner{padding:10px}.em-discipline-toggle{grid-template-columns:38px minmax(0,1fr) 28px;padding:10px}.em-discipline-number{width:33px;height:33px}.em-discipline-inner{padding:7px 9px 10px}.em-capsule{grid-template-columns:38px minmax(0,1fr);padding:11px}.em-capsule-icon{width:34px;height:34px}.em-open{grid-column:2;width:100%;margin-top:2px}}
@media(max-width:520px){.em-course-header{display:block}.em-course-count{width:fit-content;min-width:0;margin-top:14px;display:inline-flex;align-items:baseline;gap:6px;padding:8px 12px;border-radius:999px}.em-course-count strong,.em-course-count span{display:inline;margin:0}.em-stats{gap:7px}.em-stat{padding:6px 10px}}
@media(prefers-reduced-motion:reduce){.em-back a,.em-unit,.em-discipline,.em-capsule,.em-open,.em-chevron{transition:none!important}}
