/* [REVISION 02] أنماط إضافية معزولة (بادئة az-) — تُحمَّل فقط في الصفحات المستهدفة (الرئيسية، المسار، الدرس، النتيجة، المراجعة، التسجيل، المساعدة، التجربة).
   لا تُحمَّل في surah.php ولا في صفحات التسميع ولا الأسرة/المعلم. تعتمد متغيرات style.css (الألوان والظلال) فتحترم الثيم والوضع الداكن الموجود. */

/* ---- عام ---- */
.az-x{ font-size:22px; color:var(--muted2); background:none; border:0; padding:8px; margin:-8px; cursor:pointer; line-height:1; min-width:44px; min-height:44px; display:inline-flex; align-items:center; justify-content:center; text-decoration:none; }
.az-qcount{ font-weight:800; font-size:12px; color:var(--muted); white-space:nowrap; }
.az-link-sm{ font-weight:800; font-size:12px; color:var(--emerald); text-decoration:underline; white-space:nowrap; }
.az-sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.az-report{ text-align:center; margin:18px 0 90px; font-size:12px; }
.az-report a{ color:var(--muted); text-decoration:underline; }
body.az-busy .opt-btn, body.az-busy .btn{ opacity:.6; pointer-events:none; }
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{ outline:3px solid var(--gold); outline-offset:2px; border-radius:8px; }
.btn{ min-height:48px; }

/* ---- لوحة اليوم (home) ---- */
.az-greet{ display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.az-greet-name{ font-weight:800; font-size:18px; margin:0; }
.az-greet-sub{ margin:2px 0 0; font-size:13px; color:var(--muted); }
.az-step-card{ padding:20px 18px; border:2px solid var(--emerald); }
.az-step-eyebrow{ margin:0 0 4px; font-size:12px; font-weight:800; color:var(--emerald); }
.az-step-title{ font-size:22px; font-weight:800; margin:0 0 14px; line-height:1.5; color:var(--ink); }
.az-stages{ list-style:none; margin:0 0 16px; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:6px; }
.az-stage{ display:flex; flex-direction:column; align-items:center; gap:6px; text-align:center; font-size:10.5px; font-weight:700; line-height:1.4; color:var(--muted2); position:relative; padding:0 2px; }
.az-dot{ width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:800; border:2px solid var(--line); background:var(--card-bg); }
.az-stage.az-done{ color:var(--emerald-dark); }
.az-stage.az-done .az-dot{ background:var(--emerald); border-color:var(--emerald); color:#fff; }
.az-stage.az-now{ color:var(--ink); }
.az-stage.az-now .az-dot{ border-color:var(--gold); background:var(--gold-soft); color:var(--ink); box-shadow:0 0 0 3px rgba(218,182,70,.25); }
.az-cta{ width:100%; font-size:17px; padding:16px; }
.az-step-sub{ margin:12px 0 0; font-size:13px; line-height:1.8; }
.az-goal{ margin-top:16px; padding-top:14px; border-top:1px dashed var(--line); font-size:13px; }
.az-goal .bar{ margin-top:8px; }
.az-goal-done{ margin-top:16px; }
.az-review{ display:flex; margin-top:14px; text-decoration:none; align-items:center; justify-content:space-between; gap:10px; }
.az-review strong{ display:block; font-size:15px; }
.az-rev-sub{ display:block; margin-top:4px; font-size:12px; }
.az-review-none{ display:block; }
.az-go{ font-size:22px; color:var(--emerald); }

/* ---- النتيجة ---- */
.az-score{ margin:0 0 18px; }
.az-score-main{ display:flex; align-items:baseline; justify-content:center; gap:8px; margin-bottom:10px; }
.az-score-main strong{ font-size:44px; font-weight:800; color:var(--emerald); line-height:1; }
.az-score-main span{ font-size:14px; color:var(--muted); }
.az-rewards{ margin-bottom:16px; }
.az-h3{ font-size:14px; font-weight:800; margin:0 0 10px; text-align:right; color:var(--ink); }
.az-star{ background:none; border:0; padding:4px 3px; font-size:28px; line-height:1; color:#E7E2D3; cursor:pointer; min-width:44px; min-height:44px; }

/* ---- المساعدة ---- */
.az-fieldset{ border:1px solid var(--line); border-radius:var(--radius-md); padding:12px 14px; margin:0 0 6px; }
.az-legend{ font-weight:800; font-size:13px; color:var(--ink); padding:0 4px; margin-bottom:6px; }
.az-radio{ display:flex; align-items:center; gap:10px; padding:10px 4px; font-size:14px; min-height:44px; cursor:pointer; }
.az-radio input{ width:20px; height:20px; accent-color:var(--emerald); }

/* ---- المسار ---- */
.az-here{ display:flex; align-items:center; justify-content:space-between; gap:12px; text-decoration:none; border:2px solid var(--emerald); margin-bottom:16px; }
.az-here small{ display:block; color:var(--muted); font-size:12px; margin-top:3px; }
.az-pathlist{ list-style:none; padding:0; margin:0; }
.az-snode{ display:flex; align-items:center; gap:14px; padding:12px 14px; margin-bottom:10px; border-radius:var(--radius-lg); border:1.5px solid var(--line); background:var(--card-bg); text-decoration:none; color:var(--ink); min-height:68px; }
.az-snode .az-nico{ flex:0 0 46px; height:46px; border-radius:16px; display:flex; align-items:center; justify-content:center; font-size:20px; font-weight:800; border:2px solid; }
.az-snode .az-nbody{ flex:1; min-width:0; }
.az-snode .az-nname{ font-family:'Amiri Quran',serif; font-size:20px; font-weight:800; line-height:1.4; margin:0; }
.az-snode .az-nstate{ font-size:12px; margin:2px 0 0; color:var(--muted); line-height:1.6; }
.az-snode.az-completed .az-nico{ background:linear-gradient(150deg,var(--emerald-light),var(--emerald-dark)); border-color:var(--emerald-dark); color:#fff; }
.az-snode.az-current{ border-color:var(--gold); box-shadow:0 0 0 3px rgba(218,182,70,.22); }
.az-snode.az-current .az-nico{ background:linear-gradient(150deg,var(--gold-light),var(--gold)); border-color:#a9862f; color:#241a05; }
.az-snode.az-available .az-nico{ background:var(--gold-soft); border-color:var(--gold); color:var(--ink); }
.az-snode.az-locked, .az-snode.az-soon{ background:transparent; border-style:dashed; opacity:.85; }
.az-snode.az-locked .az-nico, .az-snode.az-soon .az-nico{ background:var(--card-bg); border-color:var(--line); color:var(--muted2); }
.az-snode.az-locked .az-nname, .az-snode.az-soon .az-nname{ color:var(--muted); }
.az-snode .az-nstars{ color:#C9A34E; letter-spacing:2px; font-size:13px; }
.az-stage-title{ font-size:13px; font-weight:800; color:var(--emerald); margin:18px 0 10px; display:flex; align-items:center; gap:8px; }
.az-stage-title::after{ content:""; flex:1; height:1px; background:var(--line); }

/* ---- التسجيل (خطوات) ---- */
.az-stepper-label{ text-align:center; font-size:13px; font-weight:800; color:var(--emerald); margin:0 0 10px; }
.az-stepper-label small{ display:block; font-weight:600; color:var(--muted); font-size:11px; margin-top:2px; }

/* ---- لوحة التجربة (إدارة) ---- */
.az-kpis{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-bottom:14px; }
.az-kpi{ padding:14px; text-align:center; }
.az-kpi strong{ display:block; font-size:26px; color:var(--emerald); }
.az-kpi span{ font-size:11px; color:var(--muted); }
.az-table{ width:100%; border-collapse:collapse; font-size:12px; }
.az-table th, .az-table td{ padding:8px 6px; border-bottom:1px solid var(--line); text-align:right; }

@media (max-width:359px){
  .az-step-title{ font-size:19px; }
  .az-stage{ font-size:9.5px; }
  .az-dot{ width:26px; height:26px; }
}
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
}
