@import url('https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;600;700;800&display=swap');

:root {
  --navy:#102a43;
  --navy-2:#173f5f;
  --blue:#1b8aa5;
  --blue-soft:#e8f5f8;
  --gold:#d6aa4a;
  --gold-soft:#fbf4df;
  --green:#238b65;
  --purple:#6f61a8;
  --ink:#17212b;
  --muted:#626f7c;
  --line:#e4e9ee;
  --surface:#ffffff;
  --background:#f5f8fa;
  --danger:#c43f4e;
  --shadow:0 16px 40px rgba(16,42,67,.08);
  --radius:22px;
  --font:'Tajawal', system-ui, sans-serif;
}

body[data-theme="plum"] {--navy:#33264d;--navy-2:#4d3b6b;--blue:#a45d78;--blue-soft:#f7edf2;--gold:#c69b55;--gold-soft:#fbf4e6;--green:#477d6b;--purple:#7861a8;--background:#faf7f9;}
body[data-theme="emerald"] {--navy:#153c36;--navy-2:#1f574e;--blue:#168b7d;--blue-soft:#e7f6f3;--gold:#c49a45;--gold-soft:#fbf4df;--green:#1f865b;--purple:#52758d;--background:#f3f8f6;}


:root{--hero-start:#071d31;--hero-mid:#0d304c;--hero-end:#17647a;--surface-raised:#fbfcfd;--page-tint:#eef4f7;--on-dark:#fff;--hero-muted:color-mix(in srgb,var(--blue-soft) 82%,white);--gold-light:color-mix(in srgb,var(--gold) 60%,white);--success-soft:color-mix(in srgb,var(--green) 9%,var(--surface));--danger-soft:color-mix(in srgb,var(--danger) 7%,var(--surface));--shadow:0 16px 40px color-mix(in srgb,var(--navy) 8%,transparent)}
body[data-theme="plum"]{--hero-start:#241b39;--hero-mid:#493150;--hero-end:#89506a;--surface:#fffafd;--surface-raised:#faf3f7;--page-tint:#f2e8ef;--ink:#302638;--muted:#756574;--line:#e5d7e0}
body[data-theme="emerald"]{--hero-start:#0d2b27;--hero-mid:#174b43;--hero-end:#21796a;--surface:#fbfffd;--surface-raised:#eff7f3;--page-tint:#e7f0eb;--ink:#19352d;--muted:#61776e;--line:#d6e5de}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--background);color:var(--ink);font-family:var(--font);min-height:100vh}
button,input,select{font:inherit}
button{cursor:pointer}
button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 28%, transparent);outline-offset:2px}
[hidden]{display:none!important}
svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.login-shell{display:grid;grid-template-columns:1.05fr .95fr;min-height:100vh;background:var(--surface)}
.login-visual{position:relative;overflow:hidden;display:grid;place-items:center;padding:8vw;background:linear-gradient(145deg,var(--navy),var(--navy-2) 60%,var(--hero-end));color:white;isolation:isolate}
.login-visual:before,.login-visual:after{content:"";position:absolute;border-radius:50%;filter:blur(1px);z-index:-1}
.login-visual:before{width:460px;height:460px;background:rgba(255,255,255,.05);top:-180px;right:-120px}
.login-visual:after{width:360px;height:360px;background:rgba(214,170,74,.12);bottom:-120px;left:-100px}
.visual-orbit{position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%}
.orbit-one{width:620px;height:620px}.orbit-two{width:820px;height:820px}
.brand-lockup{max-width:550px;text-align:right;position:relative}.brand-lockup h1{font-size:clamp(54px,6vw,86px);line-height:.95;margin:28px 0}.brand-lockup h1 span{color:var(--gold-light)}.brand-lockup>p:last-of-type{font-size:22px;line-height:1.8;color:#dfe9f0;max-width:470px}
.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,var(--blue),color-mix(in srgb,var(--blue) 80%,var(--surface)));color:#fff;font-size:25px;font-weight:800;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.brand-mark.large{width:72px;height:72px;border-radius:22px;font-size:38px;background:linear-gradient(145deg,var(--gold),var(--gold-light));color:var(--navy)}
.subject-pills{display:flex;gap:10px;margin-top:30px}.subject-pills>span{padding:9px 15px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);font-weight:600}
.login-panel{display:grid;place-items:center;padding:76px 7vw 60px;position:relative}.login-card{width:min(100%,470px)}.login-card h2{font-size:38px;margin:8px 0}.muted{color:var(--muted);margin:0 0 30px}.eyebrow{margin:0;color:var(--blue);font-weight:700;font-size:13px;letter-spacing:.05em}.eyebrow.light{color:var(--hero-muted)}.mobile-brand{display:none;align-items:center;gap:12px;margin-bottom:32px}.mobile-brand div:last-child{display:flex;flex-direction:column}.mobile-brand strong{font-size:20px}.mobile-brand small{color:var(--muted)}
.login-card form label{display:block;font-size:14px;font-weight:700;margin:18px 0 8px}.input-wrap{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:14px;padding:0 14px;background:var(--surface);transition:.2s}.input-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb,var(--blue) 12%, transparent)}.input-wrap svg{width:20px;color:var(--muted)}.input-wrap input{border:0;outline:0;padding:14px 0;width:100%;background:transparent}.password-toggle{width:34px!important;height:34px!important;font-size:13px}.form-error{color:var(--danger);font-size:13px;font-weight:600}.primary-button,.secondary-button{border:0;border-radius:13px;padding:12px 20px;font-weight:700;transition:.2s}.primary-button{color:white;background:linear-gradient(135deg,var(--blue),color-mix(in srgb,var(--blue) 75%,var(--navy)));box-shadow:0 8px 18px color-mix(in srgb,var(--blue) 20%,transparent)}.primary-button:hover{transform:translateY(-1px);filter:brightness(1.04)}.primary-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.wide{width:100%;display:flex;justify-content:center;gap:10px;margin-top:22px}.secondary-button{background:var(--blue-soft);color:var(--blue);border:1px solid color-mix(in srgb,var(--blue) 18%,white)}
.demo-divider{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:12px;margin:28px 0 18px}.demo-divider:before,.demo-divider:after{content:"";height:1px;background:var(--line);flex:1}.demo-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:320px;margin-inline:auto}.demo-button{border:1px solid var(--line);border-radius:15px;background:var(--surface);padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--ink);transition:.2s}.demo-button:hover{border-color:var(--blue);background:var(--blue-soft);transform:translateY(-2px)}.demo-button span{font-size:20px}.demo-button b{font-size:14px}.demo-button small{font-size:10px;color:var(--muted)}.role-symbol{display:grid!important;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--blue-soft);color:var(--blue);font-size:14px!important;font-weight:800}.privacy-note{text-align:center;color:var(--muted);font-size:11px;margin-top:20px}.theme-button,.language-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:9px 12px;border-radius:999px;font-weight:700;white-space:nowrap}.language-button{min-width:72px;color:var(--navy);border-color:color-mix(in srgb,var(--blue) 24%,var(--line));background:color-mix(in srgb,var(--surface) 86%,var(--blue-soft))}.login-controls{position:absolute;top:28px;left:34px;display:flex;align-items:center;gap:8px}.theme-dot{width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--navy) 50%,var(--gold) 50%)}

.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{position:fixed;right:0;top:0;bottom:0;width:270px;background:var(--navy);color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:30}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:3px 8px 30px}.sidebar-brand>div:nth-child(2){display:flex;flex-direction:column}.sidebar-brand strong{font-size:20px}.sidebar-brand small{color:var(--hero-muted)}.close-sidebar{display:none;margin-right:auto;border:0;background:transparent;color:white;font-size:26px}.sidebar nav{display:flex;flex-direction:column;gap:7px}.nav-item{display:flex;align-items:center;gap:13px;width:100%;border:0;border-radius:13px;padding:12px 14px;background:transparent;color:var(--hero-muted);text-align:right;font-weight:600}.nav-item svg{width:21px}.nav-item.active,.nav-item:hover{background:rgba(255,255,255,.1);color:#fff}.nav-item.active:before{content:"";width:4px;height:23px;background:var(--gold);border-radius:5px;position:absolute;right:0}.sidebar-goal{margin-top:auto;padding:18px;border-radius:17px;background:rgba(255,255,255,.07);display:flex;flex-direction:column;gap:6px}.sidebar-goal>span{color:var(--hero-muted);font-size:12px}.sidebar-goal strong{font-size:15px}.sidebar-goal strong b{color:var(--gold-light)}.sidebar-goal small{color:var(--hero-muted);font-size:11px}.mini-progress{height:6px;background:rgba(255,255,255,.12);border-radius:9px;overflow:hidden;margin:3px 0}.mini-progress i{display:block;width:60%;height:100%;background:var(--gold);border-radius:9px}.logout-button{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--hero-muted);padding:14px;margin-top:12px}.logout-button svg{width:20px}.sidebar-scrim{display:none}
.main-area{grid-column:2;padding:0 36px 30px;min-width:0}.topbar{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);margin-bottom:30px;padding:11px 0}.topbar-start{display:flex;align-items:center;gap:13px;min-width:0}.topbar-copy{min-width:0}.institution-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.academic-year{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--gold) 42%,var(--line));border-radius:999px;background:var(--gold-soft);color:#7e5d18;font-size:10px;font-weight:700}.year-pill{border-color:rgba(243,206,120,.4)!important;color:var(--gold-light)}.topbar p{margin:2px 0 0;color:var(--muted);font-size:11px}.topbar h2{margin:3px 0 0;font-size:21px}.topbar-actions{display:flex;align-items:center;gap:8px}.icon-button{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--line);background:var(--surface);border-radius:50%;color:var(--navy)}.icon-button svg{width:20px}.notification-button{position:relative}.notification-button i{position:absolute;top:-4px;right:-4px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:var(--danger);color:white;font-style:normal;font-size:10px;border:2px solid var(--background)}.profile-button{display:flex;align-items:center;gap:10px;border:0;background:transparent;text-align:right;color:var(--ink)}.profile-button>span:nth-child(2){display:flex;flex-direction:column}.profile-button small{color:var(--muted);font-size:11px}.avatar{display:grid!important;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-weight:800}.menu-button{display:none;border:0;background:transparent;font-size:24px;color:var(--navy)}
.popover{position:fixed;top:78px;left:40px;width:min(380px,calc(100vw - 30px));background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:10px;z-index:25}.popover-head{display:flex;justify-content:space-between;padding:10px}.popover-head button{border:0;background:transparent;color:var(--blue);font-size:12px}.popover article{display:flex;gap:12px;padding:13px;border-top:1px solid var(--line)}.popover article p,.popover article small{margin:2px 0;color:var(--muted);font-size:12px}.notice-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:12px}.notice-icon.blue{background:var(--blue-soft);color:var(--blue)}.notice-icon.gold{background:var(--gold-soft);color:#a37a20}
.page-section{display:none;animation:fade .3s ease}.page-section.active{display:block}@keyframes fade{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:none}}
.hero-card{min-height:270px;display:grid;grid-template-columns:1.5fr .8fr;align-items:center;overflow:hidden;position:relative;background:linear-gradient(120deg,var(--navy),var(--navy-2));color:#fff;border-radius:28px;padding:44px 50px;box-shadow:var(--shadow)}.hero-card:after{content:"";position:absolute;left:-80px;top:-150px;width:450px;height:450px;border-radius:50%;background:rgba(255,255,255,.05)}.hero-copy{position:relative;z-index:2}.hero-copy h1{font-size:clamp(28px,3.5vw,46px);line-height:1.3;margin:12px 0}.hero-copy h1 span{color:#f4ce78}.hero-copy p{color:#cbdce7;margin:0 0 24px;max-width:660px}.status-chip{display:inline-block;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.1);color:var(--gold-light);font-size:12px;font-weight:700}.hero-illustration{position:relative;height:200px;z-index:2}.book{position:absolute;width:150px;height:100px;border-radius:15px 15px 8px 8px;transform:skewY(-10deg) rotate(-9deg);box-shadow:0 14px 30px rgba(0,0,0,.2)}.book:after{content:"";position:absolute;inset:10px;background:repeating-linear-gradient(var(--surface) 0 3px,transparent 3px 14px);opacity:.4}.book-one{background:#f1c86d;left:50px;top:60px}.book-two{background:#77c5d3;left:115px;top:25px;transform:skewY(7deg) rotate(12deg)}.pencil{position:absolute;left:20px;top:20px;font-size:40px;color:#fff}.floating-score{position:absolute;left:0;bottom:20px;width:74px;height:74px;border-radius:20px;display:grid;place-items:center;background:var(--surface);color:var(--navy);transform:rotate(-8deg);box-shadow:0 14px 30px rgba(0,0,0,.16)}.floating-score b{font-size:21px;margin-bottom:-13px}.floating-score span{font-size:11px;color:var(--muted)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:20px 0}.stat-card{display:flex;align-items:center;gap:14px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 7px 22px color-mix(in srgb,var(--navy) 4%,transparent)}.stat-card>div{display:flex;flex-direction:column}.stat-card small{color:var(--muted)}.stat-card strong{font-size:25px;line-height:1.25}.stat-card p{margin:2px 0 0;color:var(--muted);font-size:11px}.positive{color:var(--green)!important}.stat-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:15px;font-weight:800;font-size:20px}.stat-icon.blue{background:var(--blue-soft);color:var(--blue)}.stat-icon.gold{background:var(--gold-soft);color:#b8861b}.stat-icon.green{background:#e8f5ef;color:var(--green)}.stat-icon.purple{background:#f0edfa;color:var(--purple)}
.content-grid{display:grid;grid-template-columns:1.65fr .85fr;gap:20px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 28px color-mix(in srgb,var(--navy) 4.5%,transparent);padding:24px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.section-heading h3{margin:4px 0 0}.text-button{border:0;background:transparent;color:var(--blue);font-weight:700;padding:5px}.text-button.danger{color:var(--danger)}.subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.subject-card{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:16px;text-align:right;transition:.2s}.subject-card:hover{transform:translateY(-3px);border-color:var(--subject);box-shadow:0 10px 25px color-mix(in srgb,var(--subject) 12%,transparent)}.subject-top{display:flex;justify-content:space-between;align-items:center}.subject-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:color-mix(in srgb,var(--subject) 12%,var(--surface));color:var(--subject);font-size:19px;font-weight:800}.subject-card h4{margin:14px 0 3px}.subject-card p{margin:0 0 12px;color:var(--muted);font-size:12px}.subject-progress{height:6px;background:var(--line);border-radius:8px;overflow:hidden}.subject-progress i{display:block;height:100%;border-radius:8px;background:var(--subject)}.percent{font-size:11px;font-weight:700;color:var(--subject)}
.week-badge{font-size:10px;padding:6px 8px;border-radius:999px;background:var(--gold-soft);color:#956e18}.week-row{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:15px 0 25px}.day{display:flex;flex-direction:column;align-items:center;gap:7px;color:var(--muted);font-size:10px}.day i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-style:normal;border:1px solid var(--line)}.day.done i{background:var(--blue);color:#fff;border-color:var(--blue)}.day.today i{border:2px solid var(--gold);color:#9a7019;font-weight:700}.daily-goal{display:flex;align-items:center;gap:18px;padding-top:20px;border-top:1px solid var(--line)}.daily-goal p,.daily-goal small{margin:3px 0;color:var(--muted);font-size:11px}.ring,.big-ring{--value:68;display:grid;place-items:center;position:relative;border-radius:50%;background:conic-gradient(var(--blue) calc(var(--value)*1%),var(--line) 0)}.ring{width:74px;height:74px;flex:none}.ring:after,.big-ring:after{content:"";position:absolute;border-radius:50%;background:var(--surface)}.ring:after{inset:8px}.ring span{z-index:1;font-weight:800;font-size:13px}
.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:10px 0 25px}.section-intro h1{font-size:34px;margin:6px 0}.section-intro p:not(.eyebrow){color:var(--muted);margin:0}.level-legend{display:flex;gap:14px;color:var(--muted);font-size:12px}.level-legend span{display:flex;align-items:center;gap:5px}.level-legend i{width:8px;height:8px;border-radius:50%}.level-legend .easy{background:var(--green)}.level-legend .medium{background:var(--gold)}.level-legend .hard{background:var(--purple)}
.practice-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.setup-panel h3{font-size:15px;margin:10px 0 14px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:30px}.subject-choice,.level-choice{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:15px;text-align:center;transition:.2s}.subject-choice.active,.level-choice.active{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--blue) 10%,transparent)}.subject-choice span,.level-choice>span{font-size:25px}.subject-choice b,.subject-choice small,.level-choice b,.level-choice small{display:block}.subject-choice small,.level-choice small{color:var(--muted);font-size:11px;margin-top:3px}.level-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.recommendation-card{background:linear-gradient(145deg,var(--navy),var(--navy-2));color:#fff;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.recommendation-label{padding:6px 9px;background:rgba(255,255,255,.1);border-radius:999px;color:var(--gold-light);font-size:10px}.recommendation-icon{display:grid;place-items:center;width:70px;height:70px;border-radius:22px;background:rgba(255,255,255,.1);font-size:33px;color:var(--gold-light);margin:25px}.recommendation-card h3{font-size:24px;margin:0}.recommendation-card p{color:var(--hero-muted)}.skill-meter{width:100%;margin:12px 0 20px}.skill-meter span{display:block;height:7px;background:rgba(255,255,255,.12);border-radius:8px;overflow:hidden}.skill-meter i{display:block;height:100%;background:var(--gold)}.skill-meter small{display:block;margin-top:7px;color:var(--hero-muted)}.recommendation-card .secondary-button{background:var(--surface);color:var(--navy)}
.quiz-card{max-width:850px;margin:auto}.quiz-head{display:flex;justify-content:space-between;align-items:center}.subject-chip{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--blue-soft);color:var(--blue);font-size:11px;font-weight:700}.quiz-head h3{margin:8px 0}.quiz-count{font-size:16px;color:var(--muted)}.quiz-count b{font-size:28px;color:var(--ink)}.quiz-progress{height:7px;background:var(--line);border-radius:9px;overflow:hidden;margin:15px 0 35px}.quiz-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--gold));width:20%;transition:.3s}.question-body{max-width:680px;margin:auto}.question-label{color:var(--muted);font-size:12px}.question-body h2{font-size:26px;line-height:1.6;margin:10px 0 22px}.answer-choices{display:grid;gap:11px}.answer-button{display:flex;align-items:center;gap:13px;text-align:right;border:1px solid var(--line);background:var(--surface);border-radius:15px;padding:14px;color:var(--ink)}.answer-button span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--background);font-weight:700}.answer-button:hover{border-color:var(--blue)}.answer-button.correct{border-color:var(--green);background:var(--success-soft)}.answer-button.wrong{border-color:var(--danger);background:var(--danger-soft)}.answer-button:disabled{cursor:default}.answer-feedback{margin-top:15px;border-radius:14px;padding:13px;font-weight:600}.answer-feedback.success{background:var(--success-soft);color:var(--green)}.answer-feedback.error{background:var(--danger-soft);color:var(--danger)}.quiz-actions{display:flex;justify-content:space-between;align-items:center;margin-top:35px;padding-top:18px;border-top:1px solid var(--line)}.result-card{max-width:650px;margin:auto;text-align:center;padding:45px}.result-badge{font-size:54px}.result-card h2{font-size:34px;margin:8px}.result-card>p:not(.eyebrow){color:var(--muted)}.result-score{display:flex;flex-direction:column;margin:25px}.result-score strong{font-size:46px;color:var(--blue)}.result-score span{color:var(--muted)}.result-actions{display:flex;justify-content:center;gap:12px}
.question-tools{display:flex;align-items:center;justify-content:space-between;gap:12px}.eliminate-button{border:1px solid color-mix(in srgb,var(--gold) 45%,var(--line));background:var(--gold-soft);color:#8c671a;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:700}.eliminate-button:disabled{opacity:.45;cursor:not-allowed}.answer-button{transition:.2s}.answer-button.eliminated{opacity:.26;transform:scale(.98);text-decoration:line-through;pointer-events:none}.fill-answer{display:grid;grid-template-columns:1fr auto;gap:10px}.fill-answer input{border:1px solid var(--line);border-radius:15px;padding:14px;background:var(--surface);color:var(--ink);font-size:17px}.fill-answer input:focus{border-color:var(--blue);outline:3px solid color-mix(in srgb,var(--blue) 12%,transparent)}.fill-answer button{margin:0}
.reading-passage{margin:12px 0 22px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--blue) 24%,var(--line));border-left:4px solid var(--blue);border-radius:16px;background:linear-gradient(135deg,var(--blue-soft),var(--surface));color:var(--navy);font-size:17px;line-height:1.85;text-align:left}.english-quiz #questionText,.english-quiz .answer-button,.english-quiz .fill-answer{direction:ltr;text-align:left}.english-quiz .answer-button{justify-content:flex-start}.english-quiz .fill-answer input{direction:ltr;text-align:left}
.progress-summary{display:grid;grid-template-columns:1.3fr .7fr;gap:20px;margin-bottom:20px}.mastery-panel{display:flex;align-items:center;gap:30px}.big-ring{width:150px;height:150px;flex:none}.big-ring:after{inset:13px}.big-ring strong,.big-ring span{z-index:1;position:absolute}.big-ring strong{font-size:30px;margin-top:-18px}.big-ring span{font-size:10px;color:var(--muted);margin-top:28px}.mastery-panel h2{margin:5px 0}.mastery-panel p:not(.eyebrow),.mastery-panel small{color:var(--muted)}.xp-bar{height:7px;background:var(--line);border-radius:8px;overflow:hidden}.xp-bar i{display:block;height:100%;background:var(--gold)}.badges{display:flex;gap:12px;margin:18px 0}.badges span{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:var(--gold-soft);font-size:25px}.badges-panel p{color:var(--muted);font-size:12px}.updated-label{font-size:11px;color:var(--green)}.skills-table{display:grid;gap:10px}.skill-row{display:grid;grid-template-columns:180px 1fr 52px 110px;gap:18px;align-items:center;padding:13px;border-radius:13px;background:var(--background)}.skill-name{display:flex;align-items:center;gap:10px}.skill-name span{font-size:19px}.skill-track{height:8px;background:var(--line);border-radius:10px;overflow:hidden}.skill-track i{display:block;height:100%;background:var(--skill);border-radius:10px}.skill-status{font-size:11px;padding:5px 8px;border-radius:999px;text-align:center;background:color-mix(in srgb,var(--skill) 12%,var(--surface));color:var(--skill);font-weight:600}
.teacher-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:20px}.teacher-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.compact-search{border:1px solid var(--line);border-radius:999px;padding:8px 12px;max-width:160px}.student-roster{display:grid;gap:8px}.student-row{display:grid;grid-template-columns:1fr 100px 90px;gap:12px;align-items:center;padding:12px;border-radius:14px;background:var(--background)}.student-cell{display:flex;align-items:center;gap:10px}.student-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--blue-soft);color:var(--blue);font-weight:700}.student-row small{color:var(--muted)}.alert-status{color:var(--danger);font-size:11px;font-weight:700}.good-status{color:var(--green);font-size:11px;font-weight:700}.curriculum-panel>p:not(.eyebrow){color:var(--muted);font-size:13px}.curriculum-panel form label:not(.upload-zone){display:grid;gap:5px;margin:12px 0;font-size:12px;font-weight:700}.curriculum-panel select,.curriculum-panel input{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px;background:var(--surface)}.upload-zone{display:flex;flex-direction:column;align-items:center;border:1.5px dashed color-mix(in srgb,var(--blue) 40%,var(--line));border-radius:15px;padding:18px;background:var(--blue-soft);color:var(--blue);cursor:pointer}.upload-zone span{font-size:26px}.upload-zone small{color:var(--muted)}.uploaded-units{display:grid;gap:7px;margin-top:15px}.uploaded-unit{display:flex;justify-content:space-between;padding:9px;background:var(--background);border-radius:10px;font-size:11px}.uploaded-unit b{color:var(--green)}.source-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px;margin:15px 0;border:1px solid color-mix(in srgb,var(--green) 24%,var(--line));border-radius:14px;background:var(--success-soft)}.source-card>div{display:flex;flex-direction:column}.source-card small{color:var(--muted);font-size:10px}.source-icon{font-size:24px}.source-ready{font-size:10px;color:var(--green);font-weight:700}
footer{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;padding:35px 4px 0}
.toast{position:fixed;right:50%;bottom:25px;transform:translate(50%,30px);background:var(--navy);color:white;border-radius:999px;padding:11px 18px;z-index:100;opacity:0;pointer-events:none;transition:.25s;box-shadow:var(--shadow);font-size:13px}.toast.show{opacity:1;transform:translate(50%,0)}

@media (max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid,.practice-layout,.teacher-grid{grid-template-columns:1fr}.recommendation-card{min-height:320px}.progress-summary{grid-template-columns:1fr}.subject-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:820px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-panel{padding:75px 22px 30px}.mobile-brand{display:flex}.app-shell{display:block}.sidebar{transform:translateX(110%);transition:.25s}.sidebar.open{transform:none}.sidebar.open+.sidebar-scrim{display:block;position:fixed;inset:0;background:color-mix(in srgb,var(--navy) 50%,transparent);z-index:29}.close-sidebar{display:block}.main-area{padding:0 18px 25px}.menu-button{display:block}.topbar{height:75px;margin-bottom:20px}.topbar h2{font-size:18px}.hero-card{grid-template-columns:1fr;padding:28px;min-height:auto}.hero-illustration{display:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}.subject-grid{grid-template-columns:repeat(3,1fr)}.section-intro{align-items:flex-start;flex-direction:column}.teacher-kpis{grid-template-columns:1fr}.popover{left:15px;top:70px}.desktop-only{display:none!important}.topbar .theme-button{width:42px;height:42px;padding:0;justify-content:center}.skill-row{grid-template-columns:1fr 55px}.skill-track{grid-column:1/-1;grid-row:2}.skill-status{display:none}}
@media (max-width:540px){.login-card h2{font-size:30px}.theme-button.floating{top:18px;left:18px;width:auto;height:auto;padding:8px 11px}.demo-actions{gap:6px}.demo-button small{display:none}.main-area{padding:0 13px 25px}.topbar-actions{gap:5px}.profile-button{padding:0}.hero-card{border-radius:21px;padding:24px 20px}.hero-copy h1{font-size:27px}.hero-copy p{font-size:13px}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:13px;gap:9px;min-width:0}.stat-icon{width:38px;height:38px;border-radius:12px}.stat-card strong{font-size:19px}.stat-card p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:105px}.panel{padding:18px;border-radius:18px}.subject-grid{grid-template-columns:1fr}.subject-card{display:grid;grid-template-columns:1fr 1.8fr;align-items:center}.subject-card h4,.subject-card p{grid-column:2}.subject-card .subject-progress{grid-column:1/-1}.choice-grid,.level-choices{grid-template-columns:1fr}.subject-choice,.level-choice{text-align:right;display:grid;grid-template-columns:45px 1fr;align-items:center}.subject-choice span,.level-choice>span{grid-row:1/3}.result-actions{flex-direction:column}.result-actions button{width:100%}.mastery-panel{flex-direction:column;text-align:center}.level-legend{flex-wrap:wrap}.student-row{grid-template-columns:1fr 65px}.student-row>span:last-child{display:none}.week-row{gap:2px}.day i{width:26px;height:26px}.section-intro h1{font-size:28px}.quiz-card{padding:17px}.question-body h2{font-size:21px}.footer{flex-direction:column}.teacher-grid{gap:14px}}
@media (max-width:540px){.question-tools{align-items:flex-start;flex-direction:column}.fill-answer{grid-template-columns:1fr}.fill-answer button{width:100%}}
@media (min-width:1101px){.subject-grid,.choice-grid{grid-template-columns:repeat(4,1fr)}}
@media (min-width:541px) and (max-width:1100px){.subject-grid,.choice-grid{grid-template-columns:repeat(2,1fr)}}

/* Professional institutional refresh */
:root{--shadow:0 18px 48px color-mix(in srgb,var(--navy) 10%,transparent);--shadow-soft:0 8px 24px color-mix(in srgb,var(--navy) 6%,transparent);--radius:20px}
[hidden]{display:none!important}
body{background:radial-gradient(circle at 92% 0,color-mix(in srgb,var(--blue) 8%,transparent),transparent 34%),var(--background)}
.sidebar{background:linear-gradient(180deg,var(--hero-start) 0%,var(--navy) 56%,var(--hero-start) 100%)}
.sidebar-brand{padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.09)}
.main-area{background:linear-gradient(180deg,rgba(255,255,255,.28),transparent 240px)}
.topbar{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--background) 88%,transparent);backdrop-filter:blur(16px);border-bottom-color:color-mix(in srgb,var(--line) 78%,transparent)}
.institution-name{display:block;color:var(--navy);font-size:12px;font-weight:800;letter-spacing:.01em;line-height:1.4}
.hero-card{grid-template-columns:1.45fr .72fr;gap:38px;background:linear-gradient(125deg,var(--hero-start),var(--navy) 48%,var(--navy-2));border-radius:26px;padding:42px 46px;box-shadow:0 22px 55px color-mix(in srgb,var(--navy) 18%,transparent)}
.hero-card:after{background:rgba(255,255,255,.045)}
.hero-insight{position:relative;z-index:2;padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:rgba(255,255,255,.08);backdrop-filter:blur(12px);box-shadow:inset 0 1px rgba(255,255,255,.1)}
.insight-head{display:flex;align-items:center;justify-content:space-between;color:#cbdce7;font-size:12px}.insight-head b{color:var(--gold-light)}
.insight-score{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:20px 0 10px}.insight-score strong{font-size:42px;line-height:1}.insight-score span{font-size:12px;color:#cbdce7}
.insight-progress{height:7px;background:rgba(255,255,255,.14);border-radius:999px;overflow:hidden}.insight-progress i{display:block;width:72%;height:100%;background:linear-gradient(90deg,var(--blue-soft),var(--gold-light));border-radius:inherit}
.insight-list{display:grid;gap:9px;margin-top:20px;color:var(--hero-muted);font-size:12px}.insight-list span{display:flex;align-items:center;gap:8px}.insight-list i{width:7px;height:7px;border-radius:50%;background:var(--gold-light);box-shadow:0 0 0 4px rgba(243,206,120,.1)}
.stat-card{background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface) 96%,var(--blue-soft)));box-shadow:var(--shadow-soft)}
.panel{background:color-mix(in srgb,var(--surface) 97%,var(--blue-soft));border-color:color-mix(in srgb,var(--line) 86%,var(--blue));box-shadow:var(--shadow-soft)}
.subject-card{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--subject) 3%,var(--surface)));border-radius:17px;padding:17px}.subject-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--subject);opacity:.7}
.quiz-card{border-top:4px solid var(--blue)}
.management-label{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);font-size:13px;font-weight:800;color:var(--navy)}
.source-card.featured-source{border-color:color-mix(in srgb,var(--blue) 28%,var(--line));background:linear-gradient(135deg,var(--blue-soft),var(--surface))}
.permission-note{display:flex;align-items:center;gap:12px;margin-top:18px;padding:14px;border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line));border-radius:14px;background:var(--gold-soft)}.permission-note>span{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:11px;background:var(--surface);color:var(--green);font-weight:800}.permission-note div{display:flex;flex-direction:column}.permission-note small{color:var(--muted)}
.site-footer{align-items:flex-end;border-top:1px solid var(--line);margin-top:32px;padding:24px 4px 0}.site-footer>div{display:flex;flex-direction:column;gap:4px}.site-footer .credits{text-align:left;gap:3px}
.login-credits{display:grid;gap:3px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;text-align:center}

html[dir="ltr"] .sidebar{right:auto;left:0}
html[dir="ltr"] .nav-item{text-align:left}
html[dir="ltr"] .nav-item.active:before{right:auto;left:0}
html[dir="ltr"] .profile-button,html[dir="ltr"] .subject-card,html[dir="ltr"] .answer-button{text-align:left}
html[dir="ltr"] .close-sidebar{margin-right:0;margin-left:auto}
html[dir="ltr"] .popover{left:auto;right:40px}
html[dir="ltr"] .site-footer .credits{text-align:right}
html[dir="ltr"] .subject-card:before{inset:0 0 0 auto}
html[dir="ltr"] .login-controls{left:auto;right:34px}

@media (max-width:820px){.hero-insight{display:none}.institution-name{font-size:10px;max-width:340px}.site-footer{align-items:flex-start;flex-direction:column;gap:14px}.site-footer .credits{text-align:right}.topbar{min-height:92px;height:auto;background:color-mix(in srgb,var(--background) 94%,transparent)}html[dir="ltr"] .sidebar{transform:translateX(-110%)}html[dir="ltr"] .sidebar.open{transform:none}html[dir="ltr"] .popover{right:15px;left:auto}}

@media (max-width:540px){.login-controls{top:16px;left:16px;right:16px;justify-content:space-between}.login-controls .theme-button{width:auto;height:auto;padding:8px 10px}.topbar{min-height:100px}.topbar-start{gap:7px}.institution-row{align-items:flex-start;flex-direction:column;gap:3px}.institution-name{max-width:175px;white-space:normal}.academic-year{font-size:9px;padding:3px 7px}.topbar p{display:none}.topbar h2{font-size:15px;margin-top:5px}.topbar-actions{gap:4px}.topbar-actions .theme-button{display:none}.topbar-actions .language-button{min-width:52px;padding:8px;font-size:11px}.topbar-actions .icon-button,.topbar-actions .avatar{width:38px;height:38px}.menu-button{font-size:20px}.login-panel{padding-top:86px}}

/* Distinct academic-support login experience */
.login-shell{position:relative;grid-template-columns:1.08fr .92fr;background:var(--page-tint)}
.login-visual{padding:7vw;background:linear-gradient(150deg,var(--hero-start) 0%,var(--hero-mid) 52%,var(--hero-end) 100%)}
.login-visual:before{width:520px;height:520px;background:rgba(255,255,255,.055);top:-210px;right:-150px}
.login-visual:after{width:430px;height:430px;background:color-mix(in srgb,var(--gold) 13%,transparent);bottom:-190px;left:-130px}
.brand-lockup{max-width:590px}.brand-lockup .eyebrow{display:inline-flex;padding:7px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.07)}
.brand-lockup h1{margin:22px 0 14px;font-size:clamp(35px,4vw,56px);line-height:1.2}.brand-lockup>p:last-of-type{font-size:20px}
.login-panel{padding:88px 6vw 54px;background:radial-gradient(circle at 15% 8%,color-mix(in srgb,var(--blue) 10%,transparent),transparent 28%),linear-gradient(180deg,var(--background),var(--page-tint))}
.login-card{width:min(100%,500px);padding:34px 36px 28px;border:1px solid color-mix(in srgb,var(--navy) 9%,transparent);border-radius:28px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 26px 70px color-mix(in srgb,var(--navy) 12%,transparent)}
.login-card-heading{display:flex;align-items:center;gap:9px}.heading-line{display:block;width:28px;height:3px;border-radius:99px;background:var(--gold)}
.login-card h2{font-size:34px;margin:9px 0 5px}.login-card .muted{margin-bottom:22px}
.login-card form label{margin-top:15px}.login-card .input-wrap{min-height:52px;border-color:var(--line);background:var(--surface-raised)}.login-card .input-wrap:focus-within{background:var(--surface)}
.login-card .primary-button.wide{min-height:50px;border-radius:15px}
.login-card .demo-divider{margin:23px 0 15px}.login-card .demo-button{min-height:88px;border-radius:16px;background:var(--surface-raised)}.login-card .demo-button:hover{background:var(--blue-soft)}
.login-controls{z-index:6}.mobile-login-hero{display:none}
.logo-crop{position:relative;overflow:hidden;aspect-ratio:2.45/1;border-radius:18px;background:var(--surface);box-shadow:0 10px 28px color-mix(in srgb,var(--navy) 14%,transparent)}
.logo-crop img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.login-brand-logo{width:min(100%,430px);margin-bottom:22px;border:1px solid rgba(255,255,255,.16)}
.sidebar-logo-lockup{display:flex;min-width:0;flex:1;flex-direction:column;gap:7px}.sidebar-logo-lockup small{color:var(--hero-muted);font-size:11px;font-weight:700}.sidebar-logo{width:180px;max-width:100%;border-radius:13px;box-shadow:none}
.overview-brand-logo{width:min(34vw,360px);min-width:280px;border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 34px rgba(0,0,0,.18)}
.mobile-brand-logo{width:190px;flex:none;border-radius:14px;box-shadow:0 10px 25px color-mix(in srgb,var(--navy) 22%,transparent)}

@media (max-width:820px){
  .login-shell{display:block;min-height:100vh;background:linear-gradient(180deg,var(--hero-mid) 0 340px,var(--page-tint) 340px 100%)}
  .login-visual{display:none}
  .mobile-login-hero{display:block;position:relative;min-height:350px;padding:82px 24px 76px;overflow:hidden;color:#fff;background:linear-gradient(150deg,var(--hero-start) 0%,var(--hero-mid) 58%,var(--hero-end) 100%)}
  .mobile-login-hero:before,.mobile-login-hero:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.09);border-radius:50%;pointer-events:none}
  .mobile-login-hero:before{width:360px;height:360px;top:-190px;left:-120px}.mobile-login-hero:after{width:280px;height:280px;bottom:-185px;right:-90px;background:color-mix(in srgb,var(--gold) 8%,transparent)}
  .mobile-school-line{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12);font-size:13px;font-weight:700;line-height:1.6}
  .mobile-school-line>span:first-child{max-width:62%}.mobile-year{flex:none;padding:5px 9px;border:1px solid rgba(243,206,120,.35);border-radius:999px;color:var(--gold-light);background:color-mix(in srgb,var(--gold) 9%,transparent);font-size:10px;white-space:nowrap}
  .mobile-platform-lockup{position:relative;z-index:1;display:flex;align-items:center;gap:15px;margin-top:28px}.brand-mark.mobile-large{width:62px;height:62px;border-radius:19px;font-size:29px;background:linear-gradient(145deg,var(--gold),var(--gold-light));color:var(--navy)}
  .mobile-platform-lockup>div:last-child{display:flex;flex-direction:column}.mobile-platform-lockup strong{font-size:30px;line-height:1.25}.mobile-platform-lockup span{color:var(--hero-muted);font-size:14px;font-weight:600}
  .mobile-login-hero>p{position:relative;z-index:1;max-width:510px;margin:18px 0 0;color:var(--hero-muted);font-size:13px;line-height:1.8}
  .login-panel{display:block;padding:0 16px 28px;background:transparent}
  .login-card{position:relative;width:min(100%,560px);margin:-48px auto 0;padding:27px 24px 24px;border-radius:25px;box-shadow:0 24px 60px color-mix(in srgb,var(--navy) 18%,transparent)}
  .mobile-brand{display:none}
  .login-controls{position:absolute;top:18px;left:18px;right:18px;justify-content:space-between}
  .login-controls .theme-button,.login-controls .language-button{height:40px;border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(12px)}
  .login-controls .theme-dot{box-shadow:0 0 0 2px rgba(255,255,255,.18)}
  html[dir="ltr"] .login-controls{left:18px;right:18px}
}

@media (max-width:540px){
  .mobile-login-hero{min-height:330px;padding:76px 18px 70px}
  .mobile-school-line{font-size:11px}.mobile-school-line>span:first-child{max-width:58%}.mobile-year{font-size:9px;padding:4px 7px}
  .mobile-platform-lockup{margin-top:24px;align-items:flex-start;flex-direction:column}.mobile-brand-logo{width:210px}.mobile-platform-lockup strong{font-size:25px}.mobile-platform-lockup span{font-size:13px}.mobile-login-hero>p{font-size:12px;margin-top:14px}
  .login-panel{padding:0 12px 24px}.login-card{margin-top:-42px;padding:24px 20px 21px;border-radius:23px}.login-card h2{font-size:28px}.login-card .muted{font-size:13px;margin-bottom:18px}
  .login-card form label{font-size:13px;margin-top:13px}.login-card .input-wrap{min-height:49px}.login-card .primary-button.wide{min-height:48px;margin-top:18px}
  .login-card .demo-actions{gap:7px}.login-card .demo-button{min-height:78px;padding:9px 5px}.login-card .role-symbol{width:31px;height:31px}.login-card .demo-button b{font-size:13px}.login-card .privacy-note{margin-top:16px}.login-card .login-credits{margin-top:12px;padding-top:12px}
}

/* Official Itqan foundation: subject → cycle → grade → track */
.itqan-overview{position:relative;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:210px;padding:36px 40px;overflow:hidden;border-radius:26px;background:linear-gradient(128deg,var(--hero-start) 0%,var(--hero-mid) 57%,var(--hero-end) 100%);color:#fff;box-shadow:0 22px 55px color-mix(in srgb,var(--navy) 18%,transparent)}
.itqan-overview:before{content:"";position:absolute;width:380px;height:380px;inset:-230px auto auto -80px;border:1px solid rgba(255,255,255,.1);border-radius:50%;box-shadow:0 0 0 56px rgba(255,255,255,.025),0 0 0 112px rgba(255,255,255,.018)}
.itqan-overview:after{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:linear-gradient(180deg,var(--gold),var(--gold-light))}
.overview-brand,.overview-focus{position:relative;z-index:1}.overview-kicker{display:inline-flex;padding:7px 11px;border:1px solid rgba(243,206,120,.35);border-radius:999px;background:color-mix(in srgb,var(--gold) 10%,transparent);color:var(--gold-light);font-size:12px;font-weight:700}.overview-title-row{display:flex;align-items:center;gap:20px;margin-top:20px}.overview-mark{width:66px;height:66px;border-radius:20px;background:linear-gradient(145deg,var(--gold),var(--gold-light));color:var(--navy);font-size:32px}.overview-title-row h1{margin:0;font-size:36px;line-height:1.15}.overview-title-row p{margin:8px 0 0;color:var(--hero-muted);font-size:17px}.overview-focus{display:flex;flex-direction:column;align-items:flex-start;min-width:270px;padding:22px 24px;border:1px solid rgba(255,255,255,.15);border-radius:19px;background:rgba(255,255,255,.075);backdrop-filter:blur(12px)}.overview-focus span{color:#9fc7d4;font-size:12px}.overview-focus strong{margin:5px 0 18px;color:#fff;font-size:19px}.overview-focus small{padding-top:13px;width:100%;border-top:1px solid rgba(255,255,255,.12);color:var(--gold-light)}
.platform-stats{margin-top:18px;margin-bottom:18px}.platform-stats .stat-card{min-height:105px}.platform-stats .stat-card:nth-child(2){border-color:color-mix(in srgb,var(--gold) 30%,var(--line))}
.pathway-panel{padding:30px}.pathway-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding-bottom:26px;border-bottom:1px solid var(--line)}.pathway-heading h2{margin:5px 0 7px;font-size:27px;color:var(--navy)}.pathway-heading p:not(.eyebrow){margin:0;color:var(--muted)}.pathway-steps{display:flex;align-items:flex-start;gap:0;margin:0;padding:0;list-style:none;direction:rtl}.pathway-steps li{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;min-width:74px;color:#98a3ad;font-size:11px}.pathway-steps li:not(:last-child):after{content:"";position:absolute;top:15px;right:calc(50% + 16px);width:calc(100% - 32px);height:2px;background:var(--line)}.pathway-steps span{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:var(--surface);font-weight:800}.pathway-steps li.active span{border-color:var(--blue);background:var(--blue-soft);color:var(--blue);box-shadow:0 0 0 5px color-mix(in srgb,var(--blue) 8%,transparent)}.pathway-steps li.done{color:var(--green)}.pathway-steps li.done span{border-color:var(--green);background:var(--green);color:#fff}.pathway-steps li.done:not(:last-child):after{background:color-mix(in srgb,var(--green) 55%,var(--line))}
.pathway-stage{display:grid;gap:0}.pathway-block{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--line);animation:pathReveal .28s ease}.pathway-block:last-child{border-bottom:0}@keyframes pathReveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}.block-title{display:flex;align-items:flex-start;gap:12px;padding-top:4px}.block-title>span{display:grid;place-items:center;flex:none;width:37px;height:37px;border-radius:11px;background:var(--navy);color:var(--gold-light);font-size:12px;font-weight:800}.block-title>div{display:flex;flex-direction:column;gap:4px}.block-title b{color:var(--navy)}.block-title small{color:var(--muted);line-height:1.5}
.official-subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.official-subject{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:13px;min-height:108px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);text-align:right;transition:.2s;overflow:hidden}.official-subject:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:var(--choice-color);opacity:.35}.official-subject:hover,.official-subject.active{transform:translateY(-2px);border-color:var(--choice-color);box-shadow:0 12px 28px color-mix(in srgb,var(--choice-color) 12%,transparent)}.official-subject.active{background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--choice-color) 8%,var(--surface)))}.official-subject.active:after{height:5px;opacity:1}.official-subject.arabic{--choice-color:var(--purple)}.official-subject.english{--choice-color:var(--blue)}.official-subject.mathematics{--choice-color:color-mix(in srgb,var(--gold) 80%,var(--ink))}.subject-glyph{grid-row:1/3;display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:color-mix(in srgb,var(--choice-color) 12%,var(--surface));color:var(--choice-color);font-size:23px;font-weight:800}.official-subject b{font-size:16px}.official-subject small{color:var(--muted);font-size:12px}
.cycle-grid,.track-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.cycle-choice,.track-choice{display:flex;align-items:center;gap:14px;min-height:88px;padding:16px 18px;border:1px solid var(--line);border-radius:17px;background:var(--surface);color:var(--ink);text-align:right;transition:.2s}.cycle-choice:hover,.cycle-choice.active,.track-choice:hover,.track-choice.active,.grade-choice:hover,.grade-choice.active{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 8%,transparent)}.cycle-number,.track-choice>span{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:14px;background:var(--navy);color:var(--gold-light);font-weight:800}.cycle-choice>div,.track-choice>div{display:flex;flex-direction:column;gap:4px}.cycle-choice small,.track-choice small{color:var(--muted)}.grade-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.grade-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:92px;padding:13px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);transition:.2s}.grade-choice span{color:var(--blue);font-size:26px;font-weight:800}.grade-choice b{font-size:13px}.track-choice>span{font-size:19px}.track-choice.active>span,.cycle-choice.active .cycle-number{background:var(--blue);color:#fff}
.pathway-summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:4px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--green) 30%,var(--line));border-radius:18px;background:linear-gradient(135deg,var(--success-soft),var(--surface));transition:.25s}.pathway-summary.confirmed{box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 15%,transparent);transform:translateY(-2px)}.summary-check{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:var(--green);color:#fff;font-size:21px;font-weight:800}.pathway-summary>div:nth-child(2){display:flex;flex-direction:column;gap:3px}.pathway-summary span{color:var(--green);font-size:11px;font-weight:800}.pathway-summary strong{font-size:15px;color:var(--navy)}.pathway-summary small{color:var(--muted)}
html[dir="ltr"] .pathway-steps{direction:ltr}html[dir="ltr"] .pathway-steps li:not(:last-child):after{right:auto;left:calc(50% + 16px)}html[dir="ltr"] .official-subject,html[dir="ltr"] .cycle-choice,html[dir="ltr"] .track-choice{text-align:left}html[dir="ltr"] .itqan-overview:after{left:auto;right:0}

@media (max-width:1050px){.pathway-heading{align-items:flex-start;flex-direction:column}.pathway-steps{align-self:stretch;justify-content:center}.pathway-block{grid-template-columns:1fr}.official-subject-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.itqan-overview{align-items:flex-start;flex-direction:column;padding:28px;min-height:auto}.overview-focus{width:100%;min-width:0}.overview-title-row{align-items:flex-start;flex-direction:column}.overview-brand-logo{width:min(100%,390px);min-width:0}.official-subject-grid{grid-template-columns:1fr}.cycle-grid,.track-grid{grid-template-columns:1fr}.grade-grid{grid-template-columns:repeat(2,1fr)}.pathway-summary{grid-template-columns:auto 1fr}.pathway-summary .primary-button{grid-column:1/-1;width:100%}}
@media (max-width:540px){.itqan-overview{padding:24px 20px;border-radius:21px}.overview-kicker{font-size:10px}.overview-title-row{gap:12px;margin-top:17px}.overview-mark{width:56px;height:56px;border-radius:17px;font-size:27px}.overview-title-row h1{font-size:29px}.overview-title-row p{font-size:14px}.overview-focus{padding:16px 18px}.platform-stats .stat-card{min-height:98px}.pathway-panel{padding:19px 16px}.pathway-heading h2{font-size:23px}.pathway-heading p:not(.eyebrow){font-size:14px}.pathway-steps{width:100%;overflow:hidden}.pathway-steps li{min-width:25%;font-size:10px}.pathway-steps li:not(:last-child):after{width:calc(100% - 26px);right:calc(50% + 13px)}html[dir="ltr"] .pathway-steps li:not(:last-child):after{right:auto;left:calc(50% + 13px)}.pathway-steps span{width:27px;height:27px}.pathway-block{gap:15px;padding:22px 0}.block-title>span{width:34px;height:34px}.official-subject{min-height:94px;padding:14px}.cycle-choice,.track-choice{min-height:78px;padding:13px}.grade-choice{min-height:82px}.pathway-summary{padding:15px}.pathway-summary strong{font-size:13px}.pathway-summary small{font-size:11px}}

.question-editor{margin-bottom:24px}.question-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.question-editor label{display:grid;gap:8px;margin:12px 0}.question-editor input,.question-editor select,.question-editor textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:var(--surface);color:var(--navy)}.question-editor textarea{min-height:90px;resize:vertical}#questionFormError{color:var(--danger)}#teacherQuestionsList{margin-top:20px}.question-editor .source-card{flex-wrap:wrap}@media(max-width:600px){.question-fields{grid-template-columns:1fr}}

.math5-pilot{margin-bottom:24px;padding:24px}.math5-pilot input{padding:10px;border:1px solid var(--line);border-radius:8px;max-width:100%}.math5-pilot button{margin:5px}.pilot-support{padding:16px;margin:16px 0;background:var(--surface-raised);border-radius:12px}.pilot-table-wrap{overflow-x:auto}.pilot-table{width:100%;border-collapse:collapse}.pilot-table th,.pilot-table td{text-align:right;padding:12px;border-bottom:1px solid var(--line)}.pilot-table th{background:var(--navy);color:white}#pilotAnswers{display:flex;flex-wrap:wrap;gap:8px}#pilotFeedback{padding:12px}#pilotSession{padding:20px;background:var(--surface-raised);border-radius:12px}

#pilotAnswers button{touch-action:manipulation;min-height:48px;cursor:pointer}#pilotAnswers button.pilot-selected{outline:3px solid var(--blue);background:var(--blue-soft)}#pilotAnswers button:disabled{cursor:default}#pilotNext{touch-action:manipulation}

#studentRegisterForm{display:grid;gap:12px;margin-top:18px}#studentRegisterForm label{display:grid;gap:6px}#studentRegisterForm input,#studentRegisterForm select{padding:12px;border:1px solid var(--line);border-radius:10px;width:100%}#accountMessage{line-height:1.6}

.english-quiz #answerFeedback{direction:ltr;text-align:left}

/* English text keeps its punctuation at the end in both training views. */
#pilotTopic[dir="ltr"],#pilotPassage[dir="ltr"],#pilotQuestion[dir="ltr"],#pilotFeedback[dir="ltr"],#pilotAnswers[dir="ltr"] button,#pilotAnswers[dir="ltr"] input{direction:ltr;unicode-bidi:isolate;text-align:left}
#questionText[dir="ltr"],#questionPassage[dir="ltr"],#answerChoices[dir="ltr"] .answer-button,#answerFeedback[dir="ltr"]{direction:ltr;unicode-bidi:isolate;text-align:left}

/* Full platform name above the logo, with no repeated caption below it. */
.platform-brand-title{margin:0;font-size:clamp(24px,3vw,36px);line-height:1.5;overflow-wrap:anywhere}
.brand-lockup h1{line-height:1.5;overflow-wrap:anywhere}
.mobile-platform-lockup strong{line-height:1.5;overflow-wrap:anywhere}

/* Clear, scrollable navigation on all screen sizes. */
.sidebar{overflow-y:auto}.sidebar nav{padding:16px 0;flex-shrink:0}.nav-item{color:var(--hero-muted);position:relative;min-height:48px;font-size:15px;line-height:1.5}.nav-item[hidden]{display:none!important}.nav-marker{width:21px;text-align:center;color:var(--gold);font-size:24px}.nav-item.active{background:var(--navy-2);box-shadow:inset 0 0 0 1px #ffffff22}.sidebar-goal{margin-top:20px;flex-shrink:0}

/* Clear, grouped main navigation */
.nav-heading{font-size:17px;font-weight:800;color:#fff;padding:0 12px}.nav-help{font-size:12px;color:var(--hero-muted);margin:5px 12px 14px}.nav-group{font-size:12px;color:var(--gold-light);margin:18px 0 7px;padding-top:14px;border-top:1px solid #ffffff20}.nav-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}.nav-copy b{font-size:14px}.nav-copy small{font-size:11px;font-weight:400;color:var(--hero-muted);line-height:1.6}.nav-symbol{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:8px;background:#ffffff12;color:var(--gold-light);font-size:18px}.nav-arrow{font-size:22px;color:var(--hero-muted)}.nav-item{padding:11px 10px;gap:9px;min-height:64px}.nav-item:focus-visible{outline:2px solid var(--gold-light);outline-offset:2px}.nav-item.active:before{height:34px}.nav-item.active .nav-symbol{background:var(--gold);color:var(--navy)}.nav-item.active .nav-copy small{color:#fff}.sidebar-brand{flex-shrink:0}.menu-button span{font-size:11px;font-weight:700}.menu-button{align-items:center;gap:6px;width:auto;white-space:nowrap;padding:8px}.sidebar-goal{margin-top:16px}.nav-heading[hidden]{display:none!important}@media(max-width:820px){.menu-button{display:flex}.sidebar{width:min(310px,90vw);padding-top:16px}.sidebar-brand{padding-bottom:12px}.topbar-start{gap:8px}.topbar .institution-name{font-size:9px}.topbar h2{font-size:15px}}

.math-visual-panel{margin:16px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);direction:rtl}.math-visual-panel[hidden]{display:none}.math-visual-panel table{width:100%;border-collapse:collapse}.math-visual-panel th,.math-visual-panel td{border:1px solid var(--line);padding:14px;text-align:center}.math-visual-panel caption{font-weight:700;padding:8px}.math-visual-panel svg{display:block;width:100%;max-width:460px;margin:auto;direction:ltr;font-size:20px;fill:var(--navy)}.math-visual-panel small{display:block;text-align:center;color:var(--muted)}.math-visual-panel label{display:block;margin-top:16px;font-size:14px;line-height:1.8}.math-visual-panel textarea{display:block;width:100%;box-sizing:border-box;margin-top:8px;padding:12px;border:1px solid #aabfcf;border-radius:8px;font:inherit;resize:vertical}
/* Account and class administration */
.assignment-panel{padding:24px;margin-bottom:24px}.assignment-panel h3{margin:4px 0 10px}.assignment-panel p{line-height:1.9;color:var(--muted)}.assignment-panel>label{display:block;margin:18px 0;font-weight:700}.assignment-panel select{padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font:inherit;color:var(--text,var(--navy));min-width:0}.assignment-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.assignment-panel>button{margin-top:18px}.assignment-panel[hidden],.sidebar-goal[hidden],.notification-button[hidden],.mastery-panel[hidden],.teacher-kpis[hidden],.roster-panel[hidden]{display:none!important}#studentRegisterForm{border-top:1px solid var(--line);padding-top:20px;margin-top:18px}#studentRegisterForm label{display:block;margin-top:12px;font-weight:600}#studentRegisterForm input,#studentRegisterForm select,#studentRegisterForm textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:var(--surface);color:var(--text,var(--navy))}#studentRegisterForm small{display:block;color:var(--muted);margin-top:5px;line-height:1.7}#studentRegisterForm textarea{min-height:100px}#accountMessage{line-height:1.8}#accountSummary{border-inline-start:4px solid var(--gold,#d9b66a)}@media(max-width:600px){.assignment-row{grid-template-columns:1fr 1fr}.assignment-panel{padding:18px}.assignment-panel select{width:100%}}

.account-home{padding:22px 26px;margin-bottom:22px;border-inline-start:4px solid var(--gold,#dab66b)}.account-home h3{margin:4px 0 8px;font-size:22px}.account-home p{line-height:1.8}.account-home[hidden]{display:none!important}

.exam-math{direction:ltr;unicode-bidi:isolate;display:inline math;font-family:"Cambria Math","STIX Two Math",serif;font-size:1.15em;margin:.12em .15em;vertical-align:middle}.exam-math mfrac{font-size:1.05em}.answer-button{min-height:64px}.exam-answer{padding:12px 0;font-size:1.15em}.exam-solution p{margin:8px 0;line-height:2}.exam-solution{font-weight:400}.exam-answer,.exam-solution{overflow-wrap:anywhere}
.english-mock-panel{background:var(--surface);padding:24px;border-radius:20px;max-width:950px;margin:20px auto}.english-mock-panel fieldset{border:1px solid var(--line);border-radius:12px;padding:20px;margin:24px 0}.english-mock-panel legend{font-weight:700;color:var(--navy)}.mock-passage{white-space:pre-line;line-height:1.9;background:var(--surface-raised);padding:18px;border-radius:10px}.mock-question{margin:20px 0}.mock-question label{display:inline-flex;gap:6px;align-items:center;margin:6px 18px 6px 0}.english-mock-panel textarea{display:block;width:100%;box-sizing:border-box;margin:10px 0 20px;padding:12px;border:1px solid var(--line);border-radius:8px}.mock-picture{font-size:55px;text-align:center;background:var(--success-soft);padding:20px;border-radius:12px}@media print{body *{visibility:hidden}.english-mock-panel,.english-mock-panel *{visibility:visible}.english-mock-panel{position:absolute;top:0;left:0;width:100%;padding:0}.english-mock-panel button{display:none}.english-mock-panel fieldset{break-inside:avoid}.english-mock-panel details{display:none}}
.eot-model-picker{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised)}.eot-model-picker select{display:block;width:100%;margin:12px 0}.eot-picture-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.eot-picture-gallery img{width:100%;height:100px;object-fit:contain}.eot-picture-gallery strong{display:block;text-align:center}.mock-question select{min-width:180px;max-width:100%;padding:8px}@media(max-width:600px){.eot-picture-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.english-mock-panel{padding:14px}.english-mock-panel fieldset{padding:12px}}@media print{.english-mock-panel{font-size:12px;box-sizing:border-box}.eot-picture-gallery{grid-template-columns:repeat(5,minmax(0,1fr))}.english-mock-panel form>div[role=status]{display:none}}
body[data-account-role="teacher"] #practiceSetup,body[data-account-role="admin"] #practiceSetup,body[data-account-role="teacher"] #quizCard,body[data-account-role="admin"] #quizCard,body[data-account-role="teacher"] #quizResult,body[data-account-role="admin"] #quizResult,body[data-account-role="teacher"] .english-mock-panel,body[data-account-role="admin"] .english-mock-panel,body[data-account-role="teacher"] .eot-model-picker,body[data-account-role="admin"] .eot-model-picker{display:none!important}.role-staff-home{padding:24px;margin:20px 0}.role-staff-home button{display:block;width:100%;text-align:start;margin-top:14px}body[data-account-role="student"] #teacherProgressView,body[data-account-role="student"] #pilotTeacherArea,body[data-account-role="teacher"] #curriculumForm{display:none!important}

.register-class-picker{display:grid;gap:12px}.register-class-picker fieldset{border:1px solid var(--line);border-radius:12px;padding:12px}.register-class-picker .section-option{display:inline-flex!important;align-items:center;gap:8px;margin:8px!important;padding:8px;background:var(--blue-soft);border-radius:8px}.register-class-picker input[type=checkbox]{width:auto!important;margin:0!important}

.answer-button.answer-selected,.pilot-selected{border-color:var(--blue);background:var(--blue-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--blue) 20%,transparent)}#confirmChoice,#pilotSubmit{margin-top:14px}

/* Keep complete mathematical expressions isolated on Arabic and English screens. */
.exam-math-wrap{display:inline-block;direction:ltr;unicode-bidi:isolate;max-width:100%;vertical-align:middle;white-space:nowrap}.exam-math{direction:ltr!important;unicode-bidi:isolate;display:inline-block;line-height:1.5;overflow-wrap:normal;word-break:normal}.exam-math msup{font-size:1em}.math-quiz #questionText,.math-quiz #answerChoices,.math-quiz #answerFeedback{direction:ltr;text-align:left}.math-quiz .answer-button{direction:ltr;text-align:left}.math-quiz .exam-answer,.math-quiz .exam-solution p{direction:ltr;text-align:left}.quiz-count{direction:ltr;unicode-bidi:isolate}
/* Exam catalog */
.exam-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.exam-filters label{display:grid;gap:8px}.exam-filters select{width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink)}.exam-model-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.exam-model-list>p{grid-column:1/-1}.exam-model-card{border:1px solid var(--line);border-radius:16px;padding:18px;background:var(--surface-raised)}.exam-model-card h3{margin-top:0}.exam-model-card button{width:100%}#examModelPanel[hidden]{display:none}#examModelPanel .mock-question label{display:flex;align-items:center;gap:10px}#examModelPanel fieldset{min-width:0}#examModelPanel input[type=text]{max-width:100%;padding:12px;border:1px solid var(--line);border-radius:10px}@media(max-width:600px){.exam-filters{grid-template-columns:1fr}}@media print{#examCatalog{display:none!important}#examModelPanel{box-shadow:none}}

.exam-picture-symbol{font-size:4rem;line-height:1.4}.mock-question textarea{display:block;width:100%;min-height:90px;margin:8px 0}.mock-question .math-visual-panel{max-width:520px;margin:12px auto}.mock-question small{display:block;color:var(--muted)}.mock-question p{white-space:pre-line}

.teacher-bank-practice{margin-top:24px;padding:18px;border:2px solid var(--blue);border-radius:16px;background:var(--blue-soft)}.teacher-bank-practice p{font-size:14px;line-height:1.8}
.admin-followup{padding:24px;margin:20px 0}.admin-followup label{display:block;margin:14px 0}.admin-followup select,.admin-followup input,.admin-followup textarea{width:100%;box-sizing:border-box}.admin-followup-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.admin-followup-metrics article{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--blue-soft)}.admin-followup-metrics strong{display:block;margin-top:8px;font-size:21px}.admin-followup-note{border:1px solid var(--line);border-radius:14px;padding:16px;margin:14px 0;overflow-wrap:anywhere}.admin-followup-note p{white-space:pre-wrap}.admin-followup-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.admin-followup form{border-top:1px solid var(--line);padding-top:16px}

/* Native form surfaces inherit the chosen theme across all screens. */
input,select,textarea{color:var(--ink);accent-color:var(--blue)}
#studentRegisterForm input,#studentRegisterForm select,.exam-filters select,.question-editor input,.question-editor select,.question-editor textarea,.assignment-row select,.admin-followup input,.admin-followup select,.admin-followup textarea{background:var(--surface-raised);color:var(--ink);border-color:var(--line)}
.input-wrap input{background:transparent}

body{--hero-muted:color-mix(in srgb,var(--blue-soft) 82%,white);--gold-light:color-mix(in srgb,var(--gold) 60%,white);--success-soft:color-mix(in srgb,var(--green) 9%,var(--surface));--danger-soft:color-mix(in srgb,var(--danger) 7%,var(--surface));--shadow:0 16px 40px color-mix(in srgb,var(--navy) 8%,transparent)}

#pilotLessonField{display:grid;gap:8px;margin:16px 0;max-width:100%;font-weight:700}#pilotLessonField[hidden]{display:none}#pilotLesson{width:100%;max-width:540px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised);color:var(--ink);font:inherit}

#subjectChoices{grid-template-columns:minmax(0,1fr)}

.login-card .demo-actions{max-width:520px}.login-card .demo-button small{display:block;white-space:normal;line-height:1.6}.manager-account-form{display:grid;gap:10px;padding:16px 0;border-bottom:1px solid var(--line)}.manager-account-form input,.manager-account-form select{width:100%;max-width:100%}

.print-model-link{display:inline-block;text-decoration:none;margin:12px 10px;cursor:pointer}@media print{.print-model-link{display:none!important}}

.math-question-line{display:block;max-width:100%;margin:8px 0;line-height:1.9;unicode-bidi:isolate}.math-question-line[dir="ltr"]{direction:ltr!important;text-align:center;overflow-x:auto}.math-question-line[dir="rtl"]{direction:rtl!important;text-align:right}.math-question-line .exam-math{max-width:100%}

.attempt-confirm{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:#102a43aa}.attempt-confirm-card{width:min(100%,440px);padding:25px;border-radius:18px;border:1px solid var(--line);background:var(--surface,#fff);color:var(--ink,#142c43);box-shadow:0 20px 60px #0004;direction:rtl}.attempt-confirm-card p{line-height:1.9;margin:0 0 20px}.attempt-confirm-card button{display:block;width:100%;margin-top:12px}

.admin-followup form input,.admin-followup form select,.admin-followup form textarea{min-height:48px;padding:12px;font-size:16px;border:1px solid var(--line);border-radius:12px}.admin-followup form textarea{min-height:110px}.admin-followup .question-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-followup form button[type=submit]{min-height:48px;width:100%}#adminFollowFormStatus{font-weight:700;white-space:pre-line;scroll-margin-block:120px}#adminFollowSelectedTeacher{padding:12px;border-radius:10px;background:var(--blue-soft)}@media(max-width:650px){.admin-followup{padding:16px}.admin-followup .question-fields{grid-template-columns:1fr;gap:0}}

/* Keep the academic year together in RTL and narrow layouts. */
.subject-pills{flex-wrap:wrap}
.subject-pills>.year-pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;flex-shrink:0}
.year-pill bdi,.mobile-year bdi,.academic-year bdi{direction:ltr;unicode-bidi:isolate;white-space:nowrap;display:inline-block}
html[dir="ltr"] .brand-lockup,html[dir="ltr"] .login-card,html[dir="ltr"] .login-card label,html[dir="ltr"] .source-card,html[dir="ltr"] .section-intro,html[dir="ltr"] .pathway-summary{text-align:left}

.registration-message{padding:12px;border:1px solid #b22222;border-radius:10px;background:var(--surface);color:#a11b1b;line-height:1.7}.registration-message[hidden]{display:none}
