/* ══════════════════════════════════════════════════════════════════════
   sawab-luxe.css — «صُوَّاب · ليل العُلا»
   طبقة تصميم فوق الثيم القائم: تُحمَّل بعد كل الأنماط ولا تمسّ المنطق.
   الذهب يبقى ذهب الهوية (#BA9863) ويُضاء بدرجة شمبانيا، والمؤشرات تأخذ
   ألوان أحجار كريمة: يشم للقبول · ياقوت أزرق للإسناد · مرجان للإعادة.
   حذف هذا الملف وسكربت sawab-luxe.js (وسطرَي تحميلهما) يُرجع الواجهة كما كانت.
   ══════════════════════════════════════════════════════════════════════ */

/* ── الرموز: المظهر الليلي ── */
:root{
  --canvas:#120F0C;
  --panel:rgba(33,28,23,.78);
  --panel-solid:#1E1A16;
  --soft:#1F1B17;
  --seg-bg:rgba(255,248,235,.03);
  --field-bg:#1B1713;
  --thead-bg:#1E1A15;
  --row-hover:rgba(226,196,138,.05);
  --track:rgba(255,244,224,.07);
  --head-bg:rgba(18,15,12,.72);

  --ink:#F8F2E7;
  --ink-2:#D6CBB9;
  --ink-3:#988D7E;
  --line:rgba(232,206,160,.09);
  --line-strong:rgba(232,206,160,.17);

  --gold:#E3C58D;
  --gold-deep:#BA9863;
  --gold-tint:rgba(227,197,141,.08);
  --gold-line:rgba(227,197,141,.26);
  --gold-ring:rgba(227,197,141,.24);

  --rail-bg:#0D0B09;
  --rail-active:linear-gradient(90deg,rgba(227,197,141,.02),rgba(227,197,141,.16));
  --hero-bg:linear-gradient(135deg,rgba(43,36,28,.92) 0%,rgba(34,28,22,.92) 60%,rgba(54,42,28,.92) 100%);
  --hero-bg-solid:#211B15;
  --hero-line:rgba(227,197,141,.22);

  --ok:#7ED3A9;  --ok-tint:rgba(126,211,169,.10); --ok-line:rgba(126,211,169,.28);
  --bad:#F2906F; --bad-tint:rgba(242,144,111,.10); --bad-line:rgba(242,144,111,.28);

  /* ألوان المؤشرات — تقرؤها app.js عند التحميل (CAT · SEQ) */
  --c1:#6FCFA0; --c2:#88B2F0; --c3:#EF8B69; --c4:#9E9282; --seq:#DDBE85;

  /* ألوان أحجار البلاطات */
  --gem-gold:#E3C58D; --gem-jade:#6FCFA0; --gem-sapph:#88B2F0; --gem-amber:#F3BC6B;
  --lx-gold-grad:linear-gradient(135deg,#F6E2B5 0%,#E3C58D 38%,#BA9863 72%,#8E7145 100%);
  --lx-glow:0 0 0 1px rgba(227,197,141,.08),0 24px 60px -34px rgba(0,0,0,.9),0 2px 0 rgba(255,244,224,.03) inset;
  --lx-ease:cubic-bezier(.22,1,.36,1);
  --r-lg:20px; --r-sm:12px;
}

/* ── المظهر النهاري: عاج وذهب ── */
html[data-theme="light"]{
  --canvas:#F6F1E8;
  --panel:rgba(255,255,255,.82);
  --panel-solid:#FFFFFF;
  --soft:#FBF8F2;
  --seg-bg:rgba(255,255,255,.7);
  --field-bg:#FFFFFF;
  --track:#EEE6D8;
  --head-bg:rgba(246,241,232,.78);
  --ink:#231F1B;
  --ink-2:#564E45;
  --ink-3:#8A7F72;
  --line:rgba(120,92,50,.12);
  --line-strong:rgba(120,92,50,.22);
  --gold:#B48E55;
  --gold-deep:#8C6C3E;
  --gold-tint:rgba(186,152,99,.09);
  --gold-line:rgba(186,152,99,.30);
  --rail-bg:#221D18;
  --hero-bg:linear-gradient(135deg,#FFFFFF 0%,#FBF5EA 60%,#F5EAD6 100%);
  --hero-bg-solid:#FFFDF8;
  --ok:#2F8F62; --ok-tint:rgba(47,143,98,.08); --ok-line:rgba(47,143,98,.24);
  --bad:#C0573A; --bad-tint:rgba(192,87,58,.08); --bad-line:rgba(192,87,58,.24);
  --c1:#3FA674; --c2:#4C7FCB; --c3:#D36B48; --c4:#A19582; --seq:#BF9A5E;
  --gem-gold:#B48E55; --gem-jade:#3FA674; --gem-sapph:#4C7FCB; --gem-amber:#D9952F;
  --lx-gold-grad:linear-gradient(135deg,#D9B77A 0%,#B48E55 50%,#7E5F33 100%);
  --lx-glow:0 1px 2px rgba(60,44,20,.05),0 18px 40px -26px rgba(60,44,20,.35);
}

/* ══════════ الخلفية: شفق ذهبي يتنفّس + حُبيبات ══════════ */
body{background:var(--canvas)}
#app{position:relative;isolation:isolate}
#app::before{
  content:"";position:fixed;inset:-20%;z-index:-2;pointer-events:none;
  background:
    radial-gradient(38% 30% at 78% 8%, rgba(227,197,141,.16), transparent 70%),
    radial-gradient(30% 26% at 18% 92%, rgba(111,207,160,.07), transparent 70%),
    radial-gradient(34% 30% at 8% 18%, rgba(136,178,240,.06), transparent 70%);
  animation:lx-drift 36s ease-in-out infinite alternate;
}
html[data-theme="light"] #app::before{opacity:.75}
#app::after{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.05;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
@keyframes lx-drift{
  0%{transform:translate3d(0,0,0) scale(1)}
  100%{transform:translate3d(-3%,2%,0) scale(1.06)}
}
main{background:transparent}
html:not([data-theme="light"]) body{background-image:none}

/* ══════════ الشريط الجانبي ══════════ */
.rail{
  background:linear-gradient(180deg,#110E0B 0%,#0B0907 100%);
  border-inline-start:1px solid rgba(227,197,141,.10);
}
.rail::before{
  content:"";position:absolute;inset:0 0 auto 0;height:220px;pointer-events:none;z-index:1;
  background:radial-gradient(80% 100% at 70% 0%,rgba(227,197,141,.14),transparent 70%);
}
.brand{border-bottom-color:rgba(227,197,141,.10)}
.brand .mark{filter:drop-shadow(0 6px 18px rgba(227,197,141,.35));border-radius:10px}
.brand h1{
  background:linear-gradient(90deg,#FFF6E3,#E3C58D);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.nav{gap:4px}
.nav a{
  border:1px solid transparent;
  transition:background .3s var(--lx-ease),color .2s,border-color .3s,transform .3s var(--lx-ease);
}
.nav a:hover{transform:translateX(-3px);background:rgba(255,244,224,.04);border-color:rgba(227,197,141,.08)}
.nav a.on{
  background:linear-gradient(270deg,rgba(227,197,141,.20),rgba(227,197,141,.04));
  border-color:rgba(227,197,141,.22);
  box-shadow:0 10px 30px -18px rgba(227,197,141,.55),inset 0 1px 0 rgba(255,244,224,.06);
}
.nav a.on::before{
  width:3px;top:8px;bottom:8px;background:var(--lx-gold-grad);
  box-shadow:0 0 14px 2px rgba(227,197,141,.55);
}
.nav a.on .ic{
  color:#1A140D;opacity:1;border-radius:7px;background:var(--lx-gold-grad);
  box-shadow:0 4px 14px -4px rgba(227,197,141,.7);
}
.nav a .ic{width:26px;height:26px;border-radius:7px;transition:background .3s,color .3s}
.nav a .ic svg{width:16px;height:16px}
.me{background:transparent;border-top-color:rgba(227,197,141,.10)}

/* ══════════ الترويسة ══════════ */
.head{
  background:var(--head-bg);backdrop-filter:blur(18px) saturate(1.3);-webkit-backdrop-filter:blur(18px) saturate(1.3);
  border-bottom:1px solid transparent;
  border-image:linear-gradient(90deg,transparent,rgba(227,197,141,.28),transparent) 1;
}
.head h2{
  font-size:26px;
  background:linear-gradient(90deg,var(--ink) 0%,var(--ink) 55%,var(--gold) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.seg{border-color:var(--line-strong);border-radius:999px;padding:4px;backdrop-filter:blur(8px)}
.seg button{border-radius:999px;padding:7px 16px;transition:background .3s var(--lx-ease),color .2s,box-shadow .3s}
.seg button.on{
  background:var(--lx-gold-grad);color:#1A140D;font-weight:700;
  box-shadow:0 6px 18px -8px rgba(227,197,141,.75),inset 0 1px 0 rgba(255,255,255,.35);
}
.btn{border-radius:var(--r-sm);transition:background .25s,border-color .25s,transform .2s var(--lx-ease),box-shadow .25s}
.btn:not(.ghost){
  background:var(--lx-gold-grad);border-color:transparent;color:#1A140D;
  box-shadow:0 10px 24px -14px rgba(227,197,141,.8),inset 0 1px 0 rgba(255,255,255,.3);
}
.btn:not(.ghost):hover{transform:translateY(-1px);box-shadow:0 14px 30px -14px rgba(227,197,141,.95),inset 0 1px 0 rgba(255,255,255,.35)}
.btn.ghost{backdrop-filter:blur(8px)}
.who-filter{border-radius:999px}

/* ══════════ البطاقات: زجاج داكن بإطار ذهبي متدرّج + بقعة ضوء تتبع المؤشر ══════════ */
.card{
  background:var(--panel);
  border:1px solid var(--line);
  box-shadow:var(--lx-glow);
  backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);
  overflow:hidden;
  transition:transform .45s var(--lx-ease),box-shadow .45s var(--lx-ease),border-color .3s;
}
.card::before{                       /* إطار متدرّج رفيع */
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;
  background:linear-gradient(160deg,rgba(255,236,200,.22),rgba(227,197,141,.04) 40%,rgba(227,197,141,0) 60%,rgba(227,197,141,.14));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
}
.card::after{                        /* بقعة الضوء */
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(227,197,141,.10),transparent 45%);
  transition:opacity .4s;
}
.card:hover::after{opacity:1}
.card::before,.card::after,.card.tile::before,.card.tile::after{
  width:auto;height:auto;inset:0;transform:none;border:0;margin:0;box-shadow:none;clip-path:none
}
.card > *{position:relative;z-index:1}
.card > .tablebtn{position:absolute;z-index:2;border-radius:999px;backdrop-filter:blur(6px)}
.card h3{font-size:17.5px}

/* ══════════ البطل: مؤشر نسبة القبول ══════════ */
.card.hero{
  padding:32px 34px;gap:40px;
  background:
    radial-gradient(60% 120% at 100% 0%,rgba(227,197,141,.16),transparent 60%),
    var(--hero-bg);
  border-color:var(--hero-line);
}
.card.hero .big{font-size:30px;letter-spacing:-.005em}
.card.hero .big b{
  background:var(--lx-gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
  font-weight:700;
}
#gauge{position:relative;flex:none;display:grid;place-items:center}
#gauge::before{                      /* هالة خلف الحلقة */
  content:"";position:absolute;inset:6px;border-radius:50%;
  background:radial-gradient(circle,rgba(227,197,141,.22),transparent 68%);filter:blur(10px);
  animation:lx-breathe 4.5s ease-in-out infinite;
}
#gauge svg{position:relative;filter:drop-shadow(0 0 10px rgba(227,197,141,.28))}
#gauge text:first-of-type{font-family:"El Messiri",serif}
@keyframes lx-breathe{0%,100%{opacity:.7;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}

.stack{height:12px;gap:3px;background:transparent;border-radius:999px;margin:20px 0 14px}
.stack i{
  border-radius:999px;position:relative;overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28);
  transform-origin:right center;animation:lx-grow 1.1s var(--lx-ease) both;
}
.stack i::after{                     /* لمعة تعبر الشريط */
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
  transform:translateX(120%);animation:lx-sheen 3.8s 1.2s ease-in-out infinite;
}
.stack i:nth-child(2){animation-delay:.08s}
.stack i:nth-child(3){animation-delay:.16s}
@keyframes lx-grow{from{transform:scaleX(0);opacity:.2}}
@keyframes lx-sheen{0%{transform:translateX(120%)}45%,100%{transform:translateX(-120%)}}
.keys span{
  padding:5px 12px 5px 10px;border-radius:999px;background:rgba(255,244,224,.04);
  border:1px solid var(--line);color:var(--ink-2);
}
html[data-theme="light"] .keys span{background:rgba(255,255,255,.7)}
.keys .dot{width:8px;height:8px;border-radius:50%}

/* ══════════ البلاطات: أوسمة بألوان الأحجار ══════════ */
#tiles{gap:16px}
.card.tile{padding:20px 22px 18px;--gem:var(--gem-gold)}
#tiles .tile:nth-child(1){--gem:var(--gem-gold)}
#tiles .tile:nth-child(2){--gem:var(--gem-sapph)}
#tiles .tile:nth-child(3){--gem:var(--gem-jade)}
#tiles .tile:nth-child(4){--gem:var(--gem-amber)}
.card.tile.accent{background:var(--panel);border-color:var(--line)}
.card.tile:hover{transform:translateY(-4px);box-shadow:var(--lx-glow),0 30px 60px -36px color-mix(in srgb,var(--gem) 70%,transparent)}
.tile .lx-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.tile .k{font-size:12.5px;font-weight:500;color:var(--ink-2)}
.tile .lx-ic{
  width:38px;height:38px;flex:none;border-radius:12px;display:grid;place-items:center;
  color:var(--gem);
  background:color-mix(in srgb,var(--gem) 13%,transparent);
  border:1px solid color-mix(in srgb,var(--gem) 32%,transparent);
  box-shadow:0 8px 20px -12px var(--gem),inset 0 1px 0 rgba(255,255,255,.08);
}
.tile .lx-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.tile .v{
  font-size:38px;font-weight:700;margin-top:12px;line-height:1.1;
  background:linear-gradient(180deg,var(--ink) 30%,color-mix(in srgb,var(--gem) 70%,var(--ink)));
  -webkit-background-clip:text;background-clip:text;color:transparent;
  font-variant-numeric:tabular-nums;
}
.tile .d{font-size:11.5px;margin-top:6px;color:var(--ink-3)}
.tile .lx-meter{margin-top:14px;height:6px;border-radius:999px;background:var(--track);overflow:hidden}
.tile .lx-meter i{
  display:block;height:100%;width:var(--p,0%);border-radius:inherit;
  background:linear-gradient(90deg,color-mix(in srgb,var(--gem) 55%,transparent),var(--gem));
  box-shadow:0 0 12px var(--gem);
  transition:width 1.2s var(--lx-ease);
}
.tile .lx-pct{float:left;font-size:11px;font-weight:700;color:var(--gem);margin-top:6px;font-variant-numeric:tabular-nums}
.tile .d.up{color:var(--ok)} .tile .d.down{color:var(--bad)}

/* ══════════ الرسوم ══════════ */
svg .bar{transition:filter .25s,opacity .25s;filter:drop-shadow(0 0 6px rgba(227,197,141,.18))}
svg .bar:hover{filter:drop-shadow(0 0 10px rgba(227,197,141,.55)) brightness(1.12)}
svg .lbl{fill:var(--ink-2)}
svg .val{fill:var(--ink);font-weight:700}
svg .axis{fill:var(--ink-3)}
svg .grid-line{stroke:var(--line);stroke-dasharray:3 5}
.bar-row .tr{height:8px;border-radius:999px}
.bar-row .tr i{border-radius:999px;background:var(--lx-gold-grad);box-shadow:0 0 10px rgba(227,197,141,.35)}

/* ══════════ التنبيهات · الحبوب · الجداول ══════════ */
.alert{border-radius:16px;backdrop-filter:blur(10px)}
.pill{border-radius:999px}
.me .p-role{background:var(--lx-gold-grad);color:#1A140D;border:0;font-weight:700}
.scroll thead th{backdrop-filter:blur(10px)}
table tbody tr{transition:background .2s}
#tip{
  border-radius:12px;backdrop-filter:blur(14px);
  box-shadow:0 18px 40px -18px rgba(0,0,0,.8),0 0 0 1px rgba(227,197,141,.18);
}

/* ══════════ دخول المشاهد: صعودٌ متتابع ══════════ */
.lx-enter .card{animation:lx-rise .7s var(--lx-ease) backwards}
.lx-enter .grid > .card:nth-child(2){animation-delay:.06s}
.lx-enter .grid > .card:nth-child(3){animation-delay:.12s}
.lx-enter .grid > .card:nth-child(4){animation-delay:.18s}
.lx-enter section:nth-of-type(2) .card{animation-delay:.1s}
.lx-enter section:nth-of-type(2) .card:nth-child(2){animation-delay:.16s}
.lx-enter section:nth-of-type(2) .card:nth-child(3){animation-delay:.22s}
.lx-enter section:nth-of-type(2) .card:nth-child(4){animation-delay:.28s}
@keyframes lx-rise{from{opacity:0;transform:translateY(12px)}}   /* بلا filter: تمويه بطاقة السجل الكبيرة مكلف */


/* ══════════ بوابة الدخول: بطاقة زجاجية بإطارٍ ذهبي متوهّج ══════════ */
.gate-main{
  background:linear-gradient(180deg,rgba(40,33,26,.72),rgba(24,20,16,.78));
  backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3);
  border:1px solid rgba(227,197,141,.16);
  box-shadow:0 40px 90px -40px rgba(0,0,0,.9),0 0 0 1px rgba(227,197,141,.05),0 0 80px -30px rgba(227,197,141,.25);
  animation:lx-rise .9s .15s var(--lx-ease) backwards;
}
html[data-theme="light"] .gate-main{
  background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(251,246,236,.9));
  box-shadow:0 40px 80px -40px rgba(90,64,24,.45),0 0 0 1px rgba(186,152,99,.12);
}
.gate-main h2{background:var(--lx-gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.gate-main .btn{position:relative;overflow:hidden;min-height:50px;font-size:15px}
.gate-main .btn::after{
  content:"";position:absolute;inset:0;transform:translateX(130%);
  background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);
}
.gate-main .btn:hover::after{transform:translateX(-130%);transition:transform .9s var(--lx-ease)}
.gate-aside{animation:lx-rise .9s var(--lx-ease) backwards}

/* ══════════ الحقول ══════════ */
input[type=text],input[type=password],input[type=search],input[type=date],select{
  border-radius:var(--r-sm);min-height:46px;
  transition:border-color .25s,box-shadow .25s,background .25s;
}
input[type=text]:hover,input[type=password]:hover,input[type=search]:hover,select:hover{border-color:var(--gold-line)}
input:focus,select:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 4px var(--gold-ring),0 10px 30px -18px rgba(227,197,141,.7);
}
::selection{background:rgba(227,197,141,.35);color:inherit}
*{scrollbar-color:rgba(227,197,141,.28) transparent}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(227,197,141,.4),rgba(186,152,99,.25));border-radius:9px}

/* ══════════ الجداول: رأس ذهبي ومؤشّر صفّ ══════════ */
.scroll{border-radius:16px;border-color:var(--line-strong);background:rgba(255,248,235,.015)}
thead th{
  background:linear-gradient(180deg,var(--thead-bg),color-mix(in srgb,var(--thead-bg) 85%,#000));
  color:var(--gold);font-size:12px;letter-spacing:.04em;
  border-bottom:1px solid var(--gold-line);
}
html[data-theme="light"] thead th{background:#F7F0E3;color:var(--gold-deep)}
tbody tr{position:relative}
tbody tr:hover td{background:var(--row-hover)}
tbody tr:hover td:first-child{box-shadow:inset -3px 0 0 var(--gold)}

/* ══════════ الشارات · التنبيهات · الفلاتر · الفراغ ══════════ */
.pill{padding:4px 12px;font-size:12px;backdrop-filter:blur(6px)}
.p-ok{box-shadow:0 0 14px -6px var(--ok)}
.p-bad,.p-sys{box-shadow:0 0 14px -6px var(--bad)}
.alert{
  border:1px solid var(--gold-line);
  background:linear-gradient(135deg,rgba(227,197,141,.10),rgba(227,197,141,.02));
  box-shadow:var(--lx-glow);
}
.alert .ic{
  background:var(--lx-gold-grad);color:#1A140D;border-radius:12px;
  box-shadow:0 8px 20px -10px rgba(227,197,141,.8);
}
.filterbar{
  border-radius:var(--r-lg);border:1px solid var(--line-strong);
  background:var(--panel);backdrop-filter:blur(14px);box-shadow:var(--lx-glow);
}
.fchips .chip,.fchips span{border-radius:999px}
.empty .ic{opacity:.85;filter:drop-shadow(0 0 12px rgba(227,197,141,.4))}

/* ══════════ إتاحة الوصول: أحجام النص ومساحات اللمس ══════════ */
.tile .d,.th-sub,.build-line,.credit-line,.keys{font-size:12px}
.seg button{min-height:38px}
.nav a{min-height:44px}
.btn.sm{min-height:38px}
.nav a:focus-visible,.seg button:focus-visible,.btn:focus-visible{
  outline:2px solid var(--gold);outline-offset:3px;box-shadow:0 0 0 6px var(--gold-ring)
}
@media (max-width:760px){
  .seg button,.btn.sm,.tablebtn{min-height:44px}
  input[type=text],input[type=password],input[type=search],select{font-size:16px}
}

/* ══════════ الجوال ══════════ */
@media (max-width:760px){
  .card.hero{padding:22px 20px;gap:20px}
  .card.hero .big{font-size:22px}
  .tile .v{font-size:32px}
  .head h2{font-size:21px}
  .nav a:hover{transform:none}
}

/* ══════════ تقليل الحركة ══════════ */
@media (prefers-reduced-motion:reduce){
  .gate-main,.gate-aside,.gate-main .btn::after,
  #app::before,#gauge::before,.stack i,.stack i::after,.lx-enter .card{animation:none!important}
  .card,.nav a,.tile .lx-meter i{transition:none!important}
}

/* ══════════ الطباعة: لا زجاج ولا توهّج ══════════ */
@media print{
  #app::before,#app::after,.card::before,.card::after,#gauge::before{display:none!important}
  .card{backdrop-filter:none!important;box-shadow:none!important;background:#fff!important}
  .tile .v,.card.hero .big b,.head h2{-webkit-text-fill-color:currentColor;color:#000!important;background:none!important}
}

/* ══════════════════════════════════════════════════════════════════════
   سلّم الأحجام المكبَّر — مولَّد آليًا من كل قاعدة font-size في index.html
   (خارج الطباعة) بخريطة واحدة: 11→13.5 · 12→14 · 13→15 · 14→16 · 19→21.5 · 28→30.
   المراجعة على شاشة 1920px: أغلب النص كان 12–13px وجداول السجل 11px.
   ══════════════════════════════════════════════════════════════════════ */
body{font-size:16px}
.gate-brand h1{font-size:26px}
.gate-brand p{font-size:14px}
.lead-lg{font-size:31px}
.points li{font-size:15px}
.tick{font-size:13.5px}
.foot-note{font-size:13.5px}
.gate-main h2{font-size:30px}
.gate-main .lead{font-size:15px}
.field label{font-size:14px}
.reveal{font-size:14px}
.btn{font-size:16px}
.btn.sm{font-size:14px}
.note-box,.warnbox{font-size:14px}
.cmd{font-size:14px}
.err{font-size:15px}
.brand h1{font-size:19px}
.brand p{font-size:13px}
.nav a{font-size:15px}
.nav .sep{font-size:13px}
.me .nm{font-size:15px}
.build-line{font-size:13px}
.credit-line{font-size:13px}
.head h2{font-size:26px}
.head p{font-size:15px}
.seg button{font-size:14px}
.who-filter{font-size:14px}
.card h3{font-size:19px}
.card .hint{font-size:14px}
.tablebtn{font-size:13.5px}
.card.hero .big{font-size:30px}
.card.hero .sub{font-size:15px}
.keys{font-size:14px}
.gauge .v{font-size:33px}
.gauge .v small{font-size:13px}
.tile .k{font-size:14px}
.tile .v{font-size:32px}
.tile .d{font-size:13.5px}
.bar-row{font-size:14px}
table{font-size:15px}
thead th{font-size:14px}
.th-sub{font-size:13px}
.logbar input[type=search]{font-size:15px}
.sel-info{font-size:14px}
.inline-form label{font-size:14px}
.pill{font-size:13.5px}
.rep-kicker{font-size:12px}
.rep-bar-period{font-size:21.5px}
.rep-h{font-size:21.5px}
.rep-no{font-size:15px}
.rep-org{font-size:19px}
.rep-org-sub{font-size:14px}
.rep-title{font-size:41px}
.rep-title-sub{font-size:16px}
.rep-meta-c .k{font-size:13.5px}
.rep-meta-c .v{font-size:15px}
.rep-cover-foot{font-size:13.5px}
.rep-prose{font-size:16.5px}
.rep-kpi-c .k{font-size:14px}
.rep-kpi-c .v{font-size:30px}
.rep-kpi-c .p{font-size:13.5px}
.rep-d{font-size:14px}
.rep-legend{font-size:14px}
.rep-dec .t{font-size:17.5px}
.rep-dec .why{font-size:15px}
.rep-dec-meta{font-size:14px}
.rep-dec-meta .k{font-size:13.5px}
.rep-def dd{font-size:15px}
.rep-f{font-size:13.5px}
.rep-limits{font-size:15px}
.foot{font-size:13.5px}
@media (max-width:620px){
  .card .hint{font-size:14px}
  .gauge .v{font-size:30px}
  .keys{font-size:14px}
  .rep-prose{font-size:16px}
  table{font-size:14px}
  .foot{font-size:13.5px}
}
@media (max-width:900px){
  .gt-org{font-size:14px}
  .chip{font-size:13px}
}
@media (max-width:620px){
  .alula-ar{font-size:24px}
  .gate-word .tagpro{font-size:12px}
  .gate-desc{font-size:15px}
  .gs-v{font-size:21.5px}
  .gs-k{font-size:13.5px}
  .cp-n{font-size:16px}
}
.gt-org{font-size:15px}
.gt-sys{font-size:12px}
.chip{font-size:13.5px}
.alula-ar{font-size:30px}
.alula-en{font-size:12px}
.gate-kick{font-size:14px}
.gate-desc{font-size:16px}
.gs-v{font-size:26px}
.gs-k{font-size:13.5px}
.feat .t{font-size:16px}
.feat .d{font-size:14px}
.gate-credit{font-size:13.5px}
.gate-kicker{font-size:12px}
.gate-main h2{font-size:30px}
.gate-note div{font-size:14px}
.gf-left{font-size:13.5px}
.gf-in .cp-k{font-size:12px}
.gf-in .cp-n{font-size:16px}
@media (max-width:900px){
  .gf-left{font-size:13px}
  .gf-in .cp-n{font-size:15px}
}
.cp-k{font-size:12px}
.cp-n{font-size:17.5px}
.cp-c{font-size:13px}
.rail .credit-line .cp-k{font-size:12px}
.rail .credit-line .cp-n{font-size:14px}
.fb-f label{font-size:13.5px}
.fb-f input,.fb-f select{font-size:15px}
.fchip{font-size:14px}
.fchip button{font-size:16.5px}
.fchips .fcount{font-size:14px}
.empty{font-size:15px}
.empty b{font-size:19px}
.brand p{font-size:13.5px}
.nav .sep{font-size:13.5px}
.build-line{font-size:13.5px}
.rail .credit-line .cp-k{font-size:12px}
.rail .credit-line .cp-n{font-size:14px}
.me-actions .btn{font-size:14px}
.tile .d,.foot,.gs-k{font-size:14px}
.th-sub{font-size:13.5px}
.rep-meta-c .k{font-size:13.5px}
.chip{font-size:14px}
.gf-in .cp-k{font-size:12px}
.gf-left{font-size:13.5px}
.fb-f label{font-size:13.5px}
.card .hint{font-size:15px}
table{font-size:15px}
.rep-kpi-c .k{font-size:14px}
.rep-kpi-c .p{font-size:14px}
@media screen{
  body{font-size:16.5px}
  .gt-org{font-size:16.5px}
  .alula-ar{font-size:26px}
  .gate-word .tagpro{font-size:12px}
  .gate-head{font-size:30px}
  .gate-desc{font-size:16px}
  .gs-v{font-size:24px}
  .gs-k{font-size:13.5px}
  .feat .t{font-size:14px}
  .feat .d{font-size:13.5px}
  .gate-main h2{font-size:33px}
  .brand h1{font-size:19px}
  .head h2{font-size:30px}
  .card h3{font-size:21.5px}
  .card.hero .big{font-size:30px}
  .gauge .v{font-size:37px}
  .tile .v{font-size:38px}
  .tile .k{font-size:15px}
}
@media(max-width:1100px){
  .gate-head{font-size:26px}
  .gate-word h1{font-size:39px}
}
@media(max-width:900px){
  .head h2{font-size:24px}
  .card.hero .big{font-size:26px}
}
@media(max-width:560px){
  .gt-org{font-size:14px}
  .chip{font-size:13px}
  .alula-ar{font-size:24px}
  .gate-word h1{font-size:37px}
  .gate-head{font-size:26px}
  .gate-desc{font-size:15px}
  .gs-v{font-size:19px}
  .gs-k{font-size:13px}
  .feat .t{font-size:13.5px}
  .feat .d{font-size:13px}
  .tile .v{font-size:30px}
  .tile .d{font-size:13px}
  .gauge .v{font-size:30px}
  .card.hero .big{font-size:24px}
  .head h2{font-size:21.5px}
}
@media screen{
  .alula-ar{font-size:30px}
  .alula-en{font-size:12px}
  .heritage-caption{font-size:14px}
}
@media(max-width:1100px){
  .alula-ar{font-size:26px}
  .alula-en{font-size:12px}
}
@media(max-width:900px){
  .alula-ar{font-size:30px}
}
@media(max-width:560px){
  .alula-ar{font-size:24px}
  .alula-en{font-size:12px}
  .heritage-caption{font-size:13px}
}
@media screen{
  .alula-ar{font-size:26px}
  .heritage-caption{font-size:13.5px}
}
@media(max-width:560px){
  .alula-ar{font-size:24px}
  .heritage-caption{font-size:13.5px}
}
.fb-f input[type=date],input[type=date]{font-size:15px}
.gate-word .tagpro{font-size:12px}
.gate-kick{font-size:15px}
.gate-desc{font-size:17.5px}
.gs-v{font-size:30px}
.gs-k{font-size:14px}
.feat .t{font-size:15px}
.feat .d{font-size:14px}
.alula-ar{font-size:30px}
.gate-main h2{font-size:40px}
.gate-main .lead{font-size:16px}
.field label{font-size:15px}
.field input{font-size:16.5px}
#in-go{font-size:17.5px}
.gate-note div{font-size:14px}
.chip{font-size:14px}
.alula-en{font-size:12px}
.heritage-caption{font-size:14px}
.gate-word .tagpro{font-size:12px}
.gate-kick{font-size:15px}
.gate-desc{font-size:17.5px}
.gs-v{font-size:32px}
.gs-k{font-size:14px}
.feat .t{font-size:16px}
.feat .d{font-size:15px}
.gate-kicker{font-size:12px}
.gate-main .lead{font-size:16px}
.field label{font-size:14px}
.gate input[type=text],.gate input[type=password]{font-size:17.5px}
.reveal{font-size:14px}
#in-go{font-size:17.5px}
.gate-note div{font-size:14px}
@media (max-width:900px){
  .gate-desc{font-size:16.5px}
  .gs-v{font-size:30px}
}
.brand h1{font-size:17.5px}
.rep-state b{font-size:19px}
.rep-state span{font-size:15px}
.rep-thresh{font-size:14px}
.rep-sign .n{font-size:19px}
.rep-sign .r{font-size:14px}
.rep-sign .ver{font-size:13.5px}
.rep-sign .h{font-size:13.5px}
.rep-sign-note{font-size:13.5px}
.rep-colophon{font-size:13.5px}
.rep-rule-cap{font-size:13px}
.sigpad-msg{font-size:14px}
.sigpad-prev .k{font-size:13.5px}
.empty b{font-size:17.5px}
.empty p{font-size:15px}
.empty .hintline{font-size:14px}
tr.empty-row td{font-size:15px}
tr.empty-row b{font-size:17.5px}
.statebar{font-size:15px}
.statebar .sb-btn{font-size:14px}
.rep-scope .k{font-size:13.5px}
.rep-scope select{font-size:15px}
.rep-scope-note{font-size:14px}
#gauge .empty b{font-size:15px}
#gauge .empty p{font-size:13.5px}
.wz-head h3{font-size:24px}
.wz-steps li{font-size:15px}
.wz-steps li b{font-size:14px}
.wz-pane h4{font-size:21.5px}
.wz-presets button{font-size:14px}
.wz-row label{font-size:14px}
.wz-row input{font-size:16px}
.wz-note{font-size:14px}
.wz-msg{font-size:15px}
.wz-pane #rep-scope-of{font-size:16px}
.wz-sum dt{font-size:13.5px}
.wz-sum dd{font-size:16px}
.axis{font-size:13.5px}
.lbl{font-size:13.5px}
.val{font-size:13.5px}
#tip{font-size:14px}
.alert .ic{font-size:19px}
.alert b{font-size:16px}
.alert p{font-size:14px}
.ext-steps{font-size:15px}
.ext-steps code,.ext-dl code{font-size:14px}
.token-out .val{font-size:14px}
.seqn{font-size:12px}
.noact-tag{font-size:13.5px}
.rnd,.amd,.rty{font-size:12px}
.ok-msg{font-size:14px}
.rep-def dd .src{font-size:13.5px}
.rep-dec-n{font-size:14px}
.ext-m-ic{font-size:24px}
.ext-m-card h3{font-size:19px}
.ext-m-sub{font-size:15px}
.ext-m-list li{font-size:15px}
.ext-m-steps{font-size:14px}

/* ══════════════════════════════════════════════════════════════════════
   الطباعة — سلّم أحجام ثابت فوق خط «علم» الرسمي (مفروضٌ في index.html)
   الخط لا يُمسّ هنا: نضبط الحجم والوزن والسطر والأرقام فقط، ولا نصّ عربي تحت 14px.
   ══════════════════════════════════════════════════════════════════════ */
:root{
  --fs-xs:14px; --fs-sm:15px; --fs-ui:15px; --fs-body:16px; --fs-lead:18px;
  --fs-h3:21px; --fs-h2:30px; --fs-display:36px; --fs-kpi:46px;
}
body{font-size:var(--fs-body);line-height:1.7;
  -moz-osx-font-smoothing:grayscale}
h1,h2,h3,h4,.head h2,.card h3,.card.hero .big,.rep-title,.rep-h,.rep-org,.rep-dec .t,.rep-bar-period,.empty b{
  font-weight:700;letter-spacing:0;text-wrap:balance
}
.head h2{font-size:var(--fs-h2);line-height:1.25}
.head p{font-size:var(--fs-sm)}
.card h3{font-size:var(--fs-h3);line-height:1.35}
.card .hint{font-size:var(--fs-sm);line-height:1.8;text-wrap:pretty}
.card.hero .big{font-size:var(--fs-display);line-height:1.35}
.card.hero .big b{font-variant-numeric:tabular-nums}
.card.hero .sub{font-size:var(--fs-ui)}
.nav a{font-size:var(--fs-ui)}
.brand h1{font-size:18px}

/* الأرقام: أرقام جدولية — لا تهتزّ أثناء العدّ */
.tile .v,.rep-kpi-c .v,#gauge text,.gs-v,td.num,.num,.lx-pct{
  font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em
}
.tile .v{font-size:var(--fs-kpi)}
.tile .k{font-size:var(--fs-sm);font-weight:500}
table{font-size:var(--fs-sm)}
thead th{font-size:var(--fs-xs);font-weight:600}

/* أرضية الحجم: كل نصٍّ عربي يُقرأ ≥ 14px (مراجعة شاشة 1920px) */
.tick,.foot-note,.brand p,.nav .sep,.build-line,.credit-line,.tablebtn,.gauge .v small,.tile .d,.th-sub,
.pill,.rep-kicker,.rep-meta-c .k,.rep-cover-foot,.rep-kpi-c .p,.rep-dec-meta .k,.rep-f,.foot,.chip,.gs-k,
.gf-left,.cp-c,.fb-f label,.rep-sign .ver,.rep-sign .h,.rep-sign-note,.rep-colophon,.rep-rule-cap,
.sigpad-prev .k,.rep-scope .k,#gauge .empty p,.wz-sum dt,.noact-tag,.rep-def dd .src,.gate-credit{
  font-size:var(--fs-xs)
}
svg .axis,svg .lbl,svg .val{font-size:14px}
svg .val{font-size:14.5px}
/* شارات لاتينية زخرفية وعدّادات ضيّقة: 12px حدٌّ أدنى */
.cp-k,.gf-in .cp-k,.rail .credit-line .cp-k,.alula-en,.gate-kicker,.gate-word .tagpro,.gt-sys,.seqn,.rnd,.amd,.rty{
  font-size:12px
}
.nav .sep,.rep-kicker,.rep-meta-c .k,.rep-dec-meta .k{letter-spacing:.08em}

/* ══════════════════════════════════════════════════════════════════════
   التقرير التنفيذي — وثيقة رسمية فاخرة
   ══════════════════════════════════════════════════════════════════════ */
html body #v-report .rep-bar-period{font-size:22px}
html body #v-report .rep-meta-c .k{font-size:14px}
html body #v-report .rep-cover .rep-title{
  line-height:1.25;
  background:linear-gradient(180deg,#FFF6E0 0%,#E3C58D 55%,#B48E55 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 6px 24px rgba(227,197,141,.25));
}
html body #v-report .rep-cover .rep-title-sub{font-size:var(--fs-lead);line-height:1.8}
html body #v-report .rep-org{font-size:20px}
html body #v-report .rep-meta-c .v{font-size:var(--fs-ui);font-weight:500}
html body #v-report .rep-h{font-size:clamp(20px,2vw,24px);gap:14px;margin-bottom:8px}
html body #v-report .rep-no{
  width:36px;height:36px;font-weight:700;font-size:var(--fs-ui);
  background:var(--lx-gold-grad);color:#1A140D;border:0;
  box-shadow:0 8px 20px -10px rgba(186,152,99,.8),inset 0 1px 0 rgba(255,255,255,.35);
}
html body #v-report .rep-prose{font-size:16px;line-height:2;max-width:72ch;text-wrap:pretty}
html body #v-report .rep-prose b{font-weight:600}
html body #v-report .rep-kpi{gap:14px}
html body #v-report .rep-kpi-c{
  position:relative;border-radius:14px;padding:18px 18px 16px;overflow:hidden;
  background:linear-gradient(180deg,color-mix(in srgb,var(--gold) 6%,var(--soft)),var(--soft));
}
html body #v-report .rep-kpi-c::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--lx-gold-grad)}
html body #v-report .rep-kpi-c .k{font-size:var(--fs-sm);font-weight:500}
html body #v-report .rep-kpi-c .v{font-size:32px;margin-top:6px}
html body #v-report .rep-dec{
  border-radius:14px;border-inline-start-width:4px;
  border-image:none;padding:18px 20px;
  background:linear-gradient(90deg,var(--soft),color-mix(in srgb,var(--gold) 5%,var(--soft)));
  transition:transform .35s var(--lx-ease),box-shadow .35s var(--lx-ease);
}
html body #v-report .rep-dec:hover{transform:translateX(-3px);box-shadow:0 18px 40px -28px rgba(120,90,40,.55)}
html body #v-report .rep-dec .t{font-size:19px}
html body #v-report .rep-dec .why{font-size:var(--fs-ui);line-height:1.9}
html body #v-report .rep-dec-meta{font-size:var(--fs-sm)}
html body #v-report .rep-def dd,html body #v-report .rep-limits{font-size:var(--fs-ui)}
html body #v-report thead th{
  background:linear-gradient(180deg,#2E261D,#211B15)!important;color:#F1DDB0!important;
  border-bottom:2px solid #B48E55!important;font-size:var(--fs-xs)
}
html body #v-report tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--gold) 4%,transparent)}

/* ══════════ طباعة الوثيقة (PDF): أحجام بالنقاط وحبر بلا تأثيرات ══════════ */
@media print{
  body{font-size:10.5pt;line-height:1.75}
  html body #v-report .rep-cover .rep-title{-webkit-text-fill-color:#E9CF98;color:#E9CF98!important;background:none!important;filter:none!important;font-size:34pt}
  html body #v-report .rep-h{font-size:15pt}
  html body #v-report .rep-prose{font-size:11pt;line-height:1.9;max-width:none}
  html body #v-report .rep-kpi-c{background:#fff!important;border-color:#D9CCB4!important}
  html body #v-report .rep-kpi-c .v{font-size:20pt}
  html body #v-report .rep-dec{background:#fff!important;transform:none!important;box-shadow:none!important}
  html body #v-report .rep-dec .t{font-size:12.5pt}
  html body #v-report .rep-dec .why,html body #v-report .rep-def dd,html body #v-report .rep-limits{font-size:10pt}
  html body #v-report .rep-no{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  html body #v-report thead th{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:8.5pt}
  html body #v-report tbody td{font-size:9pt}
}

/* ══════════ المراجعة الشاملة — بقايا الأحجام الصغيرة (ui-pro.css وطبقات التقرير) ══════════ */
#log td.form-cell .insp{font-size:14px}
#log .dt-k{font-size:13px;line-height:22px;padding:0 8px}
#log .seqn,.seqn{font-size:13px}
.tile .lx-pct{font-size:13px}
html body #v-report .rep-cover .rep-meta-c .k{font-size:14px}
html body #v-report .rep-cover .rep-cover-foot,html body #v-report .rep-cover .rep-cover-foot span{font-size:14px}
html body #v-report .rep-org small{font-size:14px}
@media (max-width:760px){
  .head h2{font-size:24px}
  .card.hero .big{font-size:26px}
  .tile .v{font-size:38px}
  .card h3{font-size:19px}
}

/* ══════════════════════════════════════════════════════════════════════
   مقاس الأنظمة الرسمية — الجولة 4
   ١) أحجام أساسية كبوابات الحكومة: نص 16px · قائمة 16px · عناوين الأقسام 15px.
   ٢) الشاشات الواسعة تكبّر الواجهة كلّها بنسبة واحدة (zoom) بدل أن يبقى النص
      صغيرًا وسط فراغ: 1680px+ ×1.1 · 2000px+ ×1.2 · 2400px+ ×1.3.
      المقاس يُطبَّق على #app و .gate فقط؛ #tip خارجهما فلا ينزاح موضعه.
      ارتفاع الشريط الجانبي يُقسَم على النسبة كي لا يتجاوز الشاشة.
   ══════════════════════════════════════════════════════════════════════ */
.nav a{font-size:16px;min-height:46px}
.nav .sep{font-size:13.5px}
.brand h1{font-size:19px}
.brand p{font-size:13.5px}
.head p{font-size:15px}
.seg button{font-size:15px}
.who-filter,#who-filter{font-size:15px}
.btn.sm{font-size:15px}
.me .nm{font-size:15.5px}
.rep-kicker,html body #v-report .rep-kicker{font-size:14px}
.rep-bar-period,html body #v-report .rep-bar-period{font-size:22px}

:root{--z:1}
@media (min-width:1680px){:root{--z:1.1}}
@media (min-width:2000px){:root{--z:1.2}}
@media (min-width:2400px){:root{--z:1.3}}
@media (min-width:1680px){
  #app,.gate{zoom:var(--z)}
  #app{min-height:calc(100dvh / var(--z))}
  .rail{height:calc(100dvh / var(--z))}
  .gate{inset:0;width:calc(100vw / var(--z));height:calc(100dvh / var(--z))}
  .scroll:has(> table > #log){max-height:calc(100dvh / var(--z) - 260px)}
}
@media print{#app,.gate{zoom:1!important}}
/* الطباعة لا تنتظر الحركة: من يضغط «تصدير PDF» فور فتح التقرير كان يحصل على صفحاتٍ فارغة
   لأن البطاقات ما تزال في بداية حركة الدخول (opacity:0). */
@media print{
  *,*::before,*::after{animation:none!important;transition:none!important}
  .card,.rep-sec{opacity:1!important;transform:none!important;filter:none!important}
}

/* ══════════════════════════════════════════════════════════════════════
   الوثيقة التنفيذية — طباعة رسمية (PDF)
   ورق أبيض A4 · غلاف العُلا الداكن · ترويسة جارية وترقيم «صفحة س من ص»
   الأقسام تنساب بفاصل ذهبي بدل أن يبدأ كلٌّ منها ورقةً تترك نصفها فارغًا.
   ══════════════════════════════════════════════════════════════════════ */
@page{
  size:A4;margin:20mm 0 20mm;
  @top-right{content:"منصة صُوَّاب للمعتمدين · تقرير أداء الاعتماد";font:500 8.5pt Elm,Tajawal,sans-serif;color:#8E7145;margin-inline:16mm;vertical-align:bottom;padding-bottom:4mm}
  @top-left{content:var(--rep-ref,"");font:8pt Elm,Tajawal,sans-serif;color:#8A8078;margin-inline:16mm;vertical-align:bottom;padding-bottom:4mm}
  @bottom-right{content:"داخلي — للتداول ضمن الهيئة";font:8pt Elm,Tajawal,sans-serif;color:#5E564C;margin-inline:16mm;vertical-align:top;padding-top:5mm}
  @bottom-left{content:"صفحة " counter(page) " من " counter(pages);font:600 8.5pt Elm,Tajawal,sans-serif;color:#2B231B;margin-inline:16mm;vertical-align:top;padding-top:5mm}
}
@page rep-cover{margin:0;@top-right{content:none}@top-left{content:none}@bottom-right{content:none}@bottom-left{content:none}}
@media print{
  html,body,#v-report{background:#fff!important}
  html body #v-report .card.rep-sec:not(.rep-cover){
    background:#fff!important;padding:0 16mm!important;break-before:auto!important;
    margin-top:9mm!important;padding-top:7mm!important;border-top:.6pt solid #D9C6A0!important
  }
  html body #v-report .rep-cover + .rep-sec{border-top:0!important;margin-top:0!important;padding-top:0!important}
  /* عنوان القسم: رقم في وسام ذهبي، والعنوان، وخطّ ذهبي رفيع يمتدّ تحته */
  html body #v-report .rep-h{font-size:16pt;color:#1E1914;padding-bottom:3mm;margin-bottom:4mm;
    border-bottom:1.2pt solid #B48E55;break-after:avoid}
  html body #v-report .rep-no{width:9mm;height:9mm;font-size:11pt;
    background:linear-gradient(135deg,#E9CF98,#B48E55)!important;color:#1A140D!important}
  html body #v-report .rep-h + .hint,html body #v-report .rep-sec > .hint{font-size:9.5pt;color:#7A7168}
  /* المتن */
  html body #v-report .rep-prose{font-size:11.5pt;line-height:1.95;color:#2A2520}
  html body #v-report .rep-prose p{margin:0 0 3.5mm}
  html body #v-report .rep-prose b{color:#1A140D}
  /* بطاقات القرارات: ورق أبيض بحافة ذهبية */
  html body #v-report .rep-dec{background:#fff!important;border:.6pt solid #E6D9C2!important;
    border-inline-start:3pt solid #B48E55!important;border-radius:3mm!important;padding:4mm 5mm!important;margin-bottom:3mm}
  html body #v-report .rep-dec .t{font-size:12.5pt;color:#1E1914}
  html body #v-report .rep-dec .why{font-size:10.5pt;color:#3E3730}
  html body #v-report .rep-dec-meta{font-size:9.5pt}
  /* المؤشرات */
  html body #v-report .rep-kpi-c{background:#FBF8F2!important;border:.6pt solid #E6D9C2!important}
  html body #v-report .rep-kpi-c::before{background:linear-gradient(90deg,#E9CF98,#B48E55)!important}
  html body #v-report .rep-kpi-c .v{font-size:20pt;color:#1E1914}
  /* الجداول: رأس بنّي داكن بحرفٍ ذهبي، وصفوف متناوبة هادئة */
  html body #v-report table{font-size:9.5pt!important}
  html body #v-report thead th{background:#2B231B!important;color:#EBD3A0!important;font-size:8.8pt!important;
    border-bottom:1.2pt solid #B48E55!important;padding:2.4mm 2mm!important}
  html body #v-report tbody td{padding:2.2mm 2mm!important;border-bottom:.4pt solid #ECE3D3!important;color:#2A2520}
  html body #v-report tbody tr:nth-child(even) td{background:#FBF7F0!important}
  html body #v-report .rep-def dd,html body #v-report .rep-limits{font-size:10.5pt;line-height:1.85}
  html body #v-report .rep-def dt{font-size:11pt}
  /* الغلاف */
  html body #v-report .rep-cover .rep-title-sub{font-size:13pt!important;color:#CBBEA8!important}
  html body #v-report .rep-cover .rep-org{font-size:17pt}
  html body #v-report .rep-cover .rep-meta-c .k{font-size:9.5pt!important}
  html body #v-report .rep-cover .rep-meta-c .v{font-size:11pt!important}
  html body #v-report .rep-cover .rep-cover-foot,html body #v-report .rep-cover .rep-cover-foot span{font-size:9.5pt!important}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
@media print{
  /* الفاصل الذهبي داخل هوامش النص، لا من حافة الورقة إلى حافتها */
  html body #v-report .card.rep-sec:not(.rep-cover){
    border-top:0!important;
    background:#fff linear-gradient(#D9C6A0,#D9C6A0) no-repeat top center / calc(100% - 32mm) .6pt!important
  }
  html body #v-report #rep-s2{background-image:none!important;margin-top:0!important;padding-top:0!important}
  /* العنوان لا يبقى وحيدًا أسفل الورقة: يلتصق بوصفه وبأول كتلة بعده */
  html body #v-report .rep-h,html body #v-report .rep-h + .hint,html body #v-report .rep-h + p{break-after:avoid!important}
  html body #v-report .rep-h + .hint + *,html body #v-report .rep-h + p + *{break-before:avoid!important}
}

/* ══════════════════════════════════════════════════════════════════════
   الجولة 7 — من مكتبة 21st.dev (أُعيد بناؤها بـ CSS خالص؛ المنصّة بلا React)
   • Corner Frame — kevingirelli (MIT): أقواس زوايا ذهبية كإطار الختم الرسمي
   • Shine Border — Dillion Verma / Magic UI (MIT): ضوءٌ ذهبي يطوف حول بطاقة المؤشر الرئيسي
   ══════════════════════════════════════════════════════════════════════ */
:root{--cf-len:16px;--cf-w:1.6px;--cf-gap:9px;--cf-c:rgba(227,197,141,.75)}
html[data-theme="light"]{--cf-c:rgba(150,112,58,.8)}

/* ── إطار الزوايا: ثماني خطوط قصيرة ترسم أربعة أقواس ── */
#tiles .card.tile::before,
.rep-kpi-c::after,
.gate-main .lx-cf{
  content:"";position:absolute;inset:var(--cf-gap);pointer-events:none;z-index:2;
  padding:0;border:0;border-radius:0;transform:none;width:auto;height:auto;
  -webkit-mask:none;mask:none;
  background:
    linear-gradient(var(--cf-c),var(--cf-c)) top right    / var(--cf-len) var(--cf-w) no-repeat,
    linear-gradient(var(--cf-c),var(--cf-c)) top right    / var(--cf-w) var(--cf-len) no-repeat,
    linear-gradient(var(--cf-c),var(--cf-c)) top left     / var(--cf-len) var(--cf-w) no-repeat,
    linear-gradient(var(--cf-c),var(--cf-c)) top left     / var(--cf-w) var(--cf-len) no-repeat,
    linear-gradient(var(--cf-c),var(--cf-c)) bottom right / var(--cf-len) var(--cf-w) no-repeat,
    linear-gradient(var(--cf-c),var(--cf-c)) bottom right / var(--cf-w) var(--cf-len) no-repeat,
    linear-gradient(var(--cf-c),var(--cf-c)) bottom left  / var(--cf-len) var(--cf-w) no-repeat,
    linear-gradient(var(--cf-c),var(--cf-c)) bottom left  / var(--cf-w) var(--cf-len) no-repeat;
  transition:inset .45s var(--lx-ease),background-size .45s var(--lx-ease),opacity .3s;
}
/* البلاطة: لون القوس من حجرها، والأقواس تتّسع وتقترب من الحافة عند الوقوف */
#tiles .card.tile{--cf-c:color-mix(in srgb,var(--gem) 80%,transparent)}
#tiles .card.tile:hover{--cf-len:26px}
#tiles .card.tile:hover::before{inset:6px}

/* ── الضوء الطائف حول البطاقة الرئيسية ── */
@property --lx-beam{syntax:'<angle>';inherits:false;initial-value:0deg}
.card.hero::before{
  content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;pointer-events:none;z-index:3;
  background:conic-gradient(from var(--lx-beam),
    transparent 0deg, transparent 250deg,
    rgba(227,197,141,.15) 290deg, #F6E2B5 330deg, #E3C58D 345deg, transparent 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
  animation:lx-beam 9s linear infinite;
}
@keyframes lx-beam{to{--lx-beam:360deg}}
.card.hero{border-color:rgba(227,197,141,.14)}

/* ── بوابة الدخول: بطاقة الدخول داخل إطار الختم ── */
.gate-main{position:relative}
.gate-main .lx-cf{--cf-len:22px;--cf-gap:12px}

/* ── التقرير: بطاقات المؤشرات بإطار الزوايا على الشاشة والورق ── */
.rep-kpi-c{position:relative}
.rep-kpi-c::after{--cf-len:12px;--cf-gap:6px;--cf-c:rgba(180,142,85,.85)}

@media (prefers-reduced-motion:reduce){.card.hero::before{animation:none;--lx-beam:300deg}}
@media print{
  .card.hero::before{display:none!important}
  html body #v-report .rep-kpi-c::after{--cf-c:#B48E55}
}
