/* =========================================================
   رحلة القارئة الذكية — هوية بصرية دافئة من كتب الأطفال
   ========================================================= */

:root{
  --paper:#FFF7EC;
  --card:#FFFFFF;
  --ink:#2E2A4F;
  --coral:#FF7A59;
  --coral-d:#E9603D;
  --sun:#FFC94A;
  --mint:#2BB3A3;
  --mint-d:#177A6E;
  --amber:#E9A23B;
  --amber-d:#8A5A12;
  --grape:#6B4E9B;
  --sky:#DCEEFF;
  --sticker:0 6px 0 rgba(46,42,79,.12);
  --r:24px;
}

*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%}

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'IBM Plex Sans Arabic',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:18px;
  line-height:1.7;
  overflow-x:hidden;
  min-height:100vh;
}

h1,h2,h3,h4,.font-display{font-family:'Baloo Bhaijaan 2','IBM Plex Sans Arabic',system-ui,sans-serif;line-height:1.35;margin:0}

p{margin:0 0 10px}

button{font-family:inherit;font-size:inherit}

.is-hidden{display:none !important}
[hidden]{display:none !important}

.muted{color:#6E6A88;font-size:15px}
.center-row{display:flex;justify-content:flex-start;margin-top:14px}
.ico{flex:0 0 auto}

/* ---------- خلفية ورقية وزخارف ---------- */
.paper-tex{
  position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.045;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/></filter><rect width='140' height='140' filter='url(%23n)'/></svg>");
}

.deco-sun{
  position:fixed;top:-70px;inset-inline-end:-70px;width:210px;height:210px;border-radius:50%;
  background:radial-gradient(circle at 50% 50%, #FFE9A8 0 42%, #FFC94A 42% 100%);
  border:3px solid var(--ink);opacity:.5;z-index:0;pointer-events:none;
}

.deco-cloud{
  position:fixed;z-index:0;pointer-events:none;opacity:.55;
  width:120px;height:44px;border-radius:60px;background:#fff;border:3px solid var(--ink);
}
.deco-cloud::before,
.deco-cloud::after{
  content:"";position:absolute;background:#fff;border:3px solid var(--ink);border-radius:50%;
}
.deco-cloud::before{width:52px;height:52px;top:-30px;inset-inline-start:16px}
.deco-cloud::after{width:38px;height:38px;top:-20px;inset-inline-start:62px}
.cloud-a{top:132px;inset-inline-start:6%}
.cloud-b{top:300px;inset-inline-end:9%;transform:scale(.78)}

@media (max-width:820px){
  .deco-cloud{display:none}
  .deco-sun{width:150px;height:150px;top:-56px;inset-inline-end:-56px;opacity:.42}
}

/* ---------- الهيكل العام ---------- */
.app{
  position:relative;z-index:1;max-width:1120px;margin:0 auto;
  padding:16px 16px 132px;
}
@media (min-width:820px){ .app{padding:24px 24px 136px} }

.topbar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  flex-wrap:wrap;margin-bottom:16px;
}
.brand{display:flex;flex-direction:column;line-height:1.25}
.brand-title{
  font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:800;font-size:22px;color:var(--grape);
}
.brand-sub{font-size:14px;color:#6E6A88}

/* ---------- البطاقات ---------- */
.card{
  background:var(--card);
  border:3px solid var(--ink);
  border-radius:var(--r);
  box-shadow:var(--sticker);
  padding:20px;
}
@media (min-width:820px){ .card{padding:26px} }

/* ---------- الأزرار ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:48px;padding:11px 22px;border-radius:18px;
  border:3px solid var(--ink);background:#fff;color:var(--ink);
  font-family:'Baloo Bhaijaan 2',sans-serif;font-size:18px;font-weight:700;
  box-shadow:0 5px 0 rgba(46,42,79,.15);
  cursor:pointer;user-select:none;-webkit-user-select:none;
  -webkit-tap-highlight-color:transparent;
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease;
}
.btn:hover{background:#FFF3E6}
.btn:active{transform:translateY(4px);box-shadow:0 1px 0 rgba(46,42,79,.15)}
.btn:focus-visible{outline:3px dashed var(--grape);outline-offset:3px}
.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none;background:#F1EEE7}
.btn-primary{background:var(--coral);color:#fff;border-color:var(--ink)}
.btn-primary:hover{background:var(--coral-d);color:#fff}
.btn-soft{background:var(--sky);color:var(--ink)}
.btn-soft:hover{background:#C9E4FF}
.btn-ghost{background:transparent;box-shadow:none;border-style:dashed;font-weight:600;font-size:16px;min-height:44px}
.btn-ghost:hover{background:#fff}
.btn-danger{background:#FFE1E1;color:#8A2C2C;border-color:#8A2C2C}
.btn-danger:hover{background:#FFD1D1}
.btn-sm{min-height:44px;padding:8px 16px;font-size:16px}
.btn-lg{min-height:58px;font-size:21px;padding:14px 32px}

.icon-btn{
  width:46px;height:46px;border-radius:14px;border:3px solid var(--ink);
  background:#fff;color:var(--ink);font-size:20px;font-weight:700;
  display:grid;place-items:center;cursor:pointer;user-select:none;
  box-shadow:0 4px 0 rgba(46,42,79,.15);
  transition:transform .18s ease, box-shadow .18s ease;
}
.icon-btn:active{transform:translateY(3px);box-shadow:none}
.icon-btn:focus-visible{outline:3px dashed var(--grape);outline-offset:3px}

/* ---------- الشاشة الرئيسية ---------- */
.hero{display:grid;grid-template-columns:1fr;gap:20px}
@media (min-width:880px){
  .hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:28px;padding:32px}
}
.app-title{
  font-size:clamp(30px,7.6vw,48px);color:var(--grape);margin-bottom:8px;
}
.hero-lead{font-size:19px;color:#423E63;margin-bottom:12px}
.byline{
  font-size:16px;color:var(--ink);background:#FFF3E6;border:3px dashed rgba(46,42,79,.35);
  border-radius:18px;padding:10px 14px;margin-bottom:16px;line-height:1.6;
}
.steps{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:12px}
.steps li{display:flex;gap:10px;align-items:flex-start;font-size:17px}
.step-num{
  flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:var(--sky);
  border:3px solid var(--ink);display:grid;place-items:center;
  font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:800;font-size:16px;
}
.best{
  margin-top:14px;font-weight:600;font-size:16px;color:var(--mint-d);
  background:#E3F6F3;border:3px solid var(--mint);border-radius:18px;padding:10px 14px;
}
.hero-art{display:flex;justify-content:center;align-items:center}
.hero-art img{
  width:min(340px,74vw);height:auto;display:block;
  filter:drop-shadow(0 6px 0 rgba(46,42,79,.12));
  animation:floaty 4.4s ease-in-out infinite;
}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}

/* ---------- شريط التقدم ---------- */
.quiz-bar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  flex-wrap:wrap;margin-bottom:14px;
}
.progress{display:flex;gap:9px;align-items:center}
.dot{
  width:16px;height:16px;border-radius:50%;border:3px solid var(--ink);background:#fff;
  transition:background-color .22s ease, transform .22s ease;
}
.dot.is-done{background:var(--mint)}
.dot.is-active{background:var(--sun);transform:scale(1.22)}
.q-counter{font-size:16px;font-weight:600;color:#5B577A}

/* ---------- شبكة الاختبار ---------- */
.quiz-grid{display:grid;grid-template-columns:1fr;gap:18px;align-items:start}
@media (min-width:900px){
  .quiz-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:22px}
}
@media (min-width:900px) and (min-height:780px){
  .story-card{position:sticky;top:16px}
}

/* ---------- بطاقة القصة ---------- */
.story-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.story-title{font-size:23px;color:var(--grape);flex:1 1 auto;min-width:0}
.story-illo{width:104px;height:auto;flex:0 0 auto;display:block;filter:drop-shadow(0 5px 0 rgba(46,42,79,.10))}
@media (max-width:420px){ .story-illo{width:78px} }

.story-text{
  background:var(--sky);
  border:3px solid var(--ink);
  border-radius:20px;
  padding:16px;
  font-size:21px;
  line-height:1.95;
  color:var(--ink);
}
@media (max-width:420px){ .story-text{font-size:19px;padding:13px} }

.sentence{
  display:inline-block;background:none;border:0;padding:2px 4px;margin:0 0 2px;
  font:inherit;color:inherit;line-height:inherit;text-align:start;
  border-radius:9px;cursor:default;
  transition:background-color .18s ease;
}
.sentence[disabled]{opacity:1;color:inherit}
.story-text.is-tappable .sentence{
  cursor:pointer;
  text-decoration:underline dashed rgba(107,78,155,.65);
  text-underline-offset:6px;
}
.story-text.is-tappable .sentence:hover{background:#fff}
.story-text.is-tappable .sentence:focus-visible{outline:3px dashed var(--grape);outline-offset:3px}
.sentence.is-reading{background:#FFE9A8}
.sentence.is-right{background:#BEEBE5;text-decoration:none}
.sentence.is-wrongpick{background:#FBE6C4}

.story-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.story-fig{
  margin:16px 0 0;display:flex;align-items:center;gap:10px;
  border-top:3px dashed rgba(46,42,79,.22);padding-top:12px;
}
.story-fig img{width:96px;height:auto;flex:0 0 auto;display:block}
.story-fig figcaption{font-size:14px;color:#6E6A88}

/* ---------- بطاقة السؤال ---------- */
.q-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.q-badge{
  font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:700;font-size:15px;
  background:var(--sky);border:3px solid var(--ink);border-radius:999px;padding:3px 12px;
}
.q-tag{
  font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:700;font-size:15px;
  background:#FFE9A8;border:3px solid var(--ink);border-radius:999px;padding:3px 12px;
}
.q-prompt{font-size:20px;font-weight:600;line-height:1.65;margin-bottom:16px}

/* الاختيار من متعدد */
.options{display:flex;flex-direction:column;gap:11px}
.option{
  display:flex;gap:12px;align-items:flex-start;width:100%;text-align:start;
  background:#fff;border:3px solid var(--ink);border-radius:18px;padding:13px 15px;
  box-shadow:0 4px 0 rgba(46,42,79,.10);
  font-family:inherit;font-size:18px;font-weight:500;color:var(--ink);
  cursor:pointer;min-height:56px;user-select:none;-webkit-user-select:none;
  -webkit-tap-highlight-color:transparent;
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}
.option:hover{background:#FFF3E6}
.option:active{transform:translateY(3px);box-shadow:none}
.option:focus-visible{outline:3px dashed var(--grape);outline-offset:3px}
.option:disabled{cursor:default}
.option.is-correct{background:#E3F6F3;border-color:var(--mint)}
.option.is-wrong{background:#FDF1DE;border-color:var(--amber)}
.opt-letter{
  flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:var(--sun);
  border:3px solid var(--ink);display:grid;place-items:center;
  font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:800;font-size:16px;
}
.opt-text{flex:1 1 auto;padding-top:2px}

/* الوصل */
.match-hint{
  background:#FFF3E6;border:3px dashed rgba(46,42,79,.3);border-radius:16px;
  padding:10px 14px;font-size:16px;font-weight:600;margin-bottom:14px;
}
.match-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:700px){ .match-grid{grid-template-columns:1fr 1fr;gap:14px} }
.match-col-title{
  font-size:16px;color:var(--grape);margin-bottom:8px;
}
.match-list{display:flex;flex-direction:column;gap:10px}
.match-item{
  --pair:var(--grape);
  display:flex;align-items:center;gap:10px;width:100%;text-align:start;
  background:#fff;border:3px solid var(--ink);border-radius:16px;padding:11px 13px;
  box-shadow:0 4px 0 rgba(46,42,79,.10);
  font-family:inherit;font-size:17px;font-weight:600;color:var(--ink);
  cursor:pointer;min-height:52px;user-select:none;-webkit-user-select:none;
  -webkit-tap-highlight-color:transparent;
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}
.match-item:hover{background:#FFF7EE}
.match-item:active{transform:translateY(3px);box-shadow:none}
.match-item:focus-visible{outline:3px dashed var(--grape);outline-offset:3px}
.match-item.word{font-family:'Baloo Bhaijaan 2',sans-serif;font-size:19px}
.match-item.is-selected{background:#FFEFE9;border-color:var(--coral)}
.match-item.is-linked{border-color:var(--pair);background:#FBFAFF}
.match-item.is-correct{background:#E3F6F3;border-color:var(--mint)}
.match-item.is-wrong{background:#FDF1DE;border-color:var(--amber)}
.mi-text{flex:1 1 auto}
.mi-badge{
  flex:0 0 auto;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:800;font-size:15px;color:#fff;
  background:var(--pair);border:3px solid var(--ink);opacity:0;transition:opacity .18s ease;
}
.mi-badge.is-on{opacity:1}
.mi-tag{
  flex:0 0 auto;font-size:13px;font-weight:700;border-radius:999px;padding:1px 9px;
  border:2px solid var(--ink);font-family:'Baloo Bhaijaan 2',sans-serif;
}
.tag-mean{background:var(--sky)}
.tag-opp{background:#FFE9A8}

/* الترتيب */
.order-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.order-item{
  display:flex;align-items:center;gap:10px;
  background:#fff;border:3px solid var(--ink);border-radius:18px;padding:9px 11px;
  box-shadow:0 4px 0 rgba(46,42,79,.10);
  transition:background-color .2s ease, border-color .2s ease;
}
.order-item.is-correct{background:#E3F6F3;border-color:var(--mint)}
.order-item.is-wrong{background:#FDF1DE;border-color:var(--amber)}
.order-num{
  flex:0 0 auto;width:32px;height:32px;border-radius:50%;background:var(--sun);
  border:3px solid var(--ink);display:grid;place-items:center;
  font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:800;font-size:15px;
}
.order-text{flex:1 1 auto;font-size:16px;line-height:1.6;min-width:0}
.order-btns{flex:0 0 auto;display:flex;gap:6px}
.mini{
  width:46px;height:46px;border-radius:14px;border:3px solid var(--ink);background:var(--sky);
  color:var(--ink);display:grid;place-items:center;cursor:pointer;
  box-shadow:0 3px 0 rgba(46,42,79,.15);user-select:none;-webkit-user-select:none;
  -webkit-tap-highlight-color:transparent;
  transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.mini:hover{background:#C9E4FF}
.mini:active{transform:translateY(3px);box-shadow:none}
.mini:focus-visible{outline:3px dashed var(--grape);outline-offset:3px}
.mini.is-dim{opacity:.35}

/* التغذية الراجعة */
.feedback{
  margin-top:16px;border:3px solid;border-radius:18px;padding:13px 15px;
  display:flex;gap:11px;align-items:flex-start;font-weight:600;font-size:17px;line-height:1.65;
  animation:fbIn .26s ease-out both;
}
@keyframes fbIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.feedback.good{background:#E3F6F3;border-color:var(--mint);color:#12574F}
.feedback.hint{background:#FDF3E2;border-color:var(--amber);color:var(--amber-d)}
.fb-icon{
  flex:0 0 auto;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  font-weight:800;font-size:17px;color:#fff;background:var(--mint);border:3px solid var(--ink);
}
.feedback.hint .fb-icon{background:var(--amber)}
.fb-list{margin:8px 0 0;padding-inline-start:20px;font-weight:500}

.q-foot{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap}

/* ---------- شاشة النتيجة ---------- */
.result-card{
  max-width:720px;margin:0 auto;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:6px;
}
.result-owl{
  width:min(200px,52vw);height:auto;display:block;
  filter:drop-shadow(0 6px 0 rgba(46,42,79,.12));
  animation:popIn .5s cubic-bezier(.2,1.3,.5,1) both;
}
@keyframes popIn{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}
.result-title{font-size:28px;color:var(--grape);margin-top:6px}
.stars{display:flex;gap:6px;justify-content:center;margin:8px 0 4px}
.stars svg{color:#E7E3D8}
.stars svg.is-on{color:var(--sun);animation:starPop .45s cubic-bezier(.2,1.4,.5,1) both}
@keyframes starPop{from{opacity:0;transform:scale(.4) rotate(-25deg)}to{opacity:1;transform:scale(1) rotate(0)}}
.percent{
  font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:800;font-size:44px;color:var(--coral);
  line-height:1.2;margin:4px 0 0;
}
.score-line{font-size:18px;font-weight:600;margin:0}
.msg{
  font-size:19px;font-weight:600;background:#FFF3E6;border:3px dashed rgba(46,42,79,.3);
  border-radius:18px;padding:12px 16px;margin:12px 0 0;max-width:560px;
}
.sign{font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:700;color:var(--grape);font-size:18px;margin:6px 0 0}
.save-note{font-size:15px;color:#8A5A12;background:#FDF3E2;border:3px solid var(--amber);border-radius:14px;padding:8px 12px}
.result-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:14px}

.review{width:100%;text-align:start;margin-top:22px;border-top:3px dashed rgba(46,42,79,.25);padding-top:16px}
.review-title{font-size:20px;color:var(--grape);margin-bottom:10px}
.review-row{
  display:flex;gap:11px;align-items:flex-start;border:3px solid var(--ink);border-radius:16px;
  padding:10px 13px;margin-bottom:9px;background:#fff;
}
.review-row.ok{background:#E3F6F3;border-color:var(--mint)}
.review-row.no{background:#FDF3E2;border-color:var(--amber)}
.review-mark{
  flex:0 0 auto;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  color:#fff;font-weight:800;background:var(--mint);border:3px solid var(--ink);font-size:15px;
}
.review-row.no .review-mark{background:var(--amber)}
.review-label{font-weight:700;margin:0;font-size:17px}
.review-note{font-size:15px;font-weight:500;margin:2px 0 0;line-height:1.6}

/* ---------- نور المرشدة ---------- */
.noor{
  position:fixed;bottom:10px;inset-inline-end:10px;width:78px;z-index:40;pointer-events:none;
  filter:drop-shadow(0 6px 0 rgba(46,42,79,.12));
}
@media (min-width:820px){ .noor{width:100px;bottom:14px;inset-inline-end:16px} }
.noor img{width:100%;display:block;animation:noorIdle 3.6s ease-in-out infinite}
@keyframes noorIdle{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(-2.5deg)}}
.noor.is-happy img{animation:noorFlap .55s ease-in-out 2}
@keyframes noorFlap{0%,100%{transform:translateY(0) rotate(0) scale(1)}50%{transform:translateY(-13px) rotate(7deg) scale(1.09)}}
.noor.is-soft img{animation:noorTilt 1.1s ease-in-out 1}
@keyframes noorTilt{0%,100%{transform:rotate(0)}30%{transform:rotate(-10deg)}70%{transform:rotate(7deg)}}

@media (prefers-reduced-motion: reduce){
  .noor img,.hero-art img,.result-owl{animation:none !important}
  .stars svg.is-on{animation:none !important}
  .feedback{animation:none !important}
  *{transition-duration:.01ms !important}
}

/* ---------- لوحة المعلمة ---------- */
.overlay{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:16px;overflow-y:auto}
.overlay-scrim{position:fixed;inset:0;background:rgba(46,42,79,.45);backdrop-filter:blur(3px)}
.overlay-panel{
  position:relative;width:min(880px,100%);margin:24px 0;max-height:none;
  animation:panelIn .26s ease-out both;
}
@keyframes panelIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.overlay-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.overlay-head h2{font-size:24px;color:var(--grape)}
.notice{
  background:#FFF3E6;border:3px dashed rgba(46,42,79,.3);border-radius:18px;padding:12px 15px;
  font-size:15.5px;line-height:1.7;margin-bottom:16px;
}
.notice p{margin:0 0 8px}
.notice p:last-child{margin-bottom:0}
.stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.stat{
  flex:1 1 150px;background:var(--sky);border:3px solid var(--ink);border-radius:18px;
  padding:10px 14px;display:flex;flex-direction:column;align-items:center;
}
.stat-num{font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:800;font-size:28px;color:var(--grape);line-height:1.2}
.stat-lbl{font-size:14px;font-weight:600;color:#423E63;text-align:center}
.table-wrap{overflow-x:auto;border:3px solid var(--ink);border-radius:18px;background:#fff}
.tbl{width:100%;border-collapse:collapse;font-size:16px;min-width:520px}
.tbl th,.tbl td{padding:10px 12px;text-align:start;border-bottom:2px solid rgba(46,42,79,.14);vertical-align:top}
.tbl th{background:var(--sky);font-family:'Baloo Bhaijaan 2',sans-serif;font-weight:700;font-size:15px}
.tbl tr:last-child td{border-bottom:0}
.ok-note{color:var(--mint-d);font-weight:700}
.empty-state{
  text-align:center;padding:28px 16px;border:3px dashed rgba(46,42,79,.35);border-radius:18px;background:#fff;
}
.empty-title{font-family:'Baloo Bhaijaan 2',sans-serif;font-size:22px;font-weight:800;color:var(--grape);margin-bottom:6px}
.empty-sub{font-size:16px;color:#5B577A;margin:0}
.overlay-foot{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}

body.no-scroll{overflow:hidden}

/* ---------- الطباعة ---------- */
#printRoot{display:none}
@media print{
  body{background:#fff !important;color:#000 !important;font-size:12.5pt;line-height:1.6}
  body > *:not(#printRoot){display:none !important}
  #printRoot{display:block !important}
  .p-title{font-family:'Baloo Bhaijaan 2',sans-serif;font-size:20pt;margin:0 0 4pt;color:#2E2A4F}
  .p-sub{font-size:11pt;color:#444;margin:0 0 12pt}
  .p-note{border:1.5pt dashed #555;border-radius:8pt;padding:8pt 10pt;font-size:10.5pt;margin:0 0 12pt}
  .p-stats{display:flex;gap:10pt;margin:0 0 12pt}
  .p-stat{border:1.5pt solid #333;border-radius:8pt;padding:6pt 10pt;font-size:11pt}
  table{width:100%;border-collapse:collapse;font-size:11pt}
  th,td{border:1pt solid #555;padding:5pt 6pt;text-align:right}
  th{background:#eee}
  .p-sign{margin-top:16pt;font-size:12pt;font-weight:bold}
  .p-cert{text-align:center;border:3pt solid #2E2A4F;border-radius:14pt;padding:26pt 20pt}
  .p-cert-stars{font-size:26pt;color:#E9A23B;letter-spacing:4pt;margin:8pt 0}
  .p-cert-line{font-size:12pt;margin:6pt 0}
  .p-dots{border-bottom:1.5pt dotted #333;display:inline-block;min-width:180pt}
  @page{margin:14mm}
}