/* DartPro — قالب راست‌چین
   جمع‌آوری شده توسط بابک آقایی */

@font-face{
  font-family:"Vazirmatn";
  src:url("/fonts/Vazirmatn.woff2") format("woff2 supports variations"),
      url("/fonts/Vazirmatn.woff2") format("woff2-variations");
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
}


:root{
  --bg:#0e1117; --bg2:#161b26; --card:#1a2130; --line:#2a3444;
  --tx:#e6edf6; --tx2:#9fb0c6; --tx3:#6b7c94;
  --ac:#4ade80; --ac2:#22c55e;
  --pr:#22c55e; --prt:#eab308; --mod:#3b82f6; --ad:#a855f7; --pk:#f97316; --gap:#94a3b8;
  --warn:#f59e0b; --dngr:#ef4444;
  --r:14px; --w:themeWidth;
}
@media (prefers-color-scheme: light){
  :root{ --bg:#fbfcfe; --bg2:#f2f5f9; --card:#ffffff; --line:#e2e8f0;
         --tx:#0f172a; --tx2:#475569; --tx3:#94a3b8; }
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  background:var(--bg); color:var(--tx); direction:rtl;
  font-family:"Vazirmatn","Segoe UI",Tahoma,system-ui,-apple-system,sans-serif;
  font-variation-settings:"wght" 400;
  font-size:17px; line-height:2; text-align:right;
  font-feature-settings:"ss01","kern"; -webkit-font-smoothing:antialiased;
}

/* ---------- Header ---------- */
header{
  position:sticky; top:0; z-index:60;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--line);
}
.hwrap{max-width:1180px;margin:0 auto;padding:.75rem 1.25rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:.55rem;font-weight:800;font-variation-settings:"wght" 800;font-size:1.2rem;color:var(--tx);text-decoration:none;white-space:nowrap}
.brand span{color:var(--ac)}
.hnav{display:flex;gap:.35rem;flex-wrap:wrap;margin-inline-start:auto}
.hnav a{color:var(--tx2);text-decoration:none;font-size:.86rem;padding:.4rem .7rem;border-radius:8px;transition:.15s}
.hnav a:hover{color:var(--tx);background:var(--bg2)}

/* ---------- Search ---------- */
.searchbox{position:relative;width:min(320px,100%)}
#q{
  width:100%;padding:.55rem .9rem;border-radius:10px;
  border:1px solid var(--line);background:var(--bg2);color:var(--tx);
  font-family:inherit;font-size:.9rem
}
#q:focus{outline:2px solid var(--ac);outline-offset:1px}
#res{
  position:absolute;top:calc(100% + .4rem);inset-inline:0;max-height:60vh;overflow:auto;
  background:var(--card);border:1px solid var(--line);border-radius:12px;
  box-shadow:0 20px 50px rgba(0,0,0,.4);display:none;z-index:70
}
#res.on{display:block}
#res a{display:block;padding:.6rem .85rem;border-bottom:1px solid var(--line);text-decoration:none;color:var(--tx);font-size:.88rem;line-height:1.6}
#res a:last-child{border-bottom:0}
#res a:hover{background:var(--bg2)}
#res .rc{display:block;font-size:.74rem;color:var(--tx3);margin-top:.15rem}
#res .empty{padding:.9rem;color:var(--tx3);font-size:.86rem;text-align:center}

/* ---------- Layout ---------- */
.wrap{max-width:1180px;margin:0 auto;padding:2rem 1.25rem 5rem}
.layout{display:grid;grid-template-columns:1fr 260px;gap:2.5rem;align-items:start}
@media(max-width:1000px){ .layout{grid-template-columns:1fr} aside{display:none} }

aside{position:sticky;top:76px;font-size:.85rem}
aside h4{font-size:.75rem;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.7rem}
aside ol{list-style:none;border-inline-start:2px solid var(--line);padding-inline-start:.85rem}
aside li{margin:.3rem 0}
aside a{color:var(--tx2);text-decoration:none;line-height:1.55;display:block;transition:.15s}
aside a:hover{color:var(--ac)}

/* ---------- Article ---------- */
article{min-width:0}
h1{font-size:2.05rem;line-height:1.45;margin:.4rem 0 1rem;font-weight:800;font-variation-settings:"wght" 800;letter-spacing:-.01em}
h2{font-size:1.4rem;margin:2.6rem 0 .9rem;padding-bottom:.45rem;border-bottom:1px solid var(--line);font-weight:700;font-variation-settings:"wght" 700}
h3{font-size:1.12rem;margin:1.8rem 0 .6rem;font-weight:650;font-variation-settings:"wght" 650;color:var(--tx)}
p{margin:.95rem 0}
a{color:var(--ac);text-decoration:none;border-bottom:1px solid transparent;transition:.15s}
a:hover{border-bottom-color:var(--ac)}
strong{font-weight:700;font-variation-settings:"wght" 700;color:var(--tx)}
hr{border:0;border-top:1px solid var(--line);margin:2.2rem 0}
ul,ol{margin:.95rem 0;padding-inline-start:1.5rem}
li{margin:.42rem 0}

/* اولین پاراگراف = پاسخ مستقیم */
.lede{
  font-size:1.12rem;line-height:1.95;background:var(--bg2);
  border-inline-start:4px solid var(--ac);
  padding:1.15rem 1.35rem;border-radius:0 var(--r) var(--r) 0;margin:1.4rem 0 2rem
}

/* ---------- Tables ---------- */
.tw{overflow-x:auto;margin:1.5rem 0;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:min(560px,100%)}
th,td{padding:.7rem .9rem;text-align:right;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--bg2);font-weight:700;font-variation-settings:"wght" 700;font-size:.86rem;white-space:nowrap;position:sticky;top:0}
tbody tr:last-child td{border-bottom:0}
tbody tr:hover{background:color-mix(in srgb,var(--ac) 5%,transparent)}

/* ---------- Blockquote ---------- */
blockquote{
  margin:1.5rem 0;padding:1rem 1.25rem;background:var(--bg2);
  border-inline-start:4px solid var(--mod);border-radius:0 var(--r) var(--r) 0;color:var(--tx2)
}
blockquote strong{color:var(--tx)}
blockquote p:first-child{margin-top:0} blockquote p:last-child{margin-bottom:0}
blockquote:has(> p:first-child > strong:first-child) { border-inline-start-color:var(--ac) }

/* ---------- Code ---------- */
code{
  background:var(--bg2);padding:.13em .45em;border-radius:6px;
  font-family:"JetBrains Mono",ui-monospace,"Cascadia Code",Consolas,monospace;
  font-size:.85em;direction:ltr;display:inline-block
}
pre{background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.2rem;overflow-x:auto;margin:1.4rem 0;direction:ltr;text-align:left}
pre code{background:none;padding:0;font-size:.86rem;line-height:1.75}

/* ---------- Evidence badges ---------- */
.ev{
  display:inline-block;padding:.1em .5em;border-radius:6px;font-size:.76em;
  font-weight:700;direction:ltr;white-space:nowrap;border:1px solid transparent
}
.ev-PR{background:color-mix(in srgb,var(--pr) 16%,transparent);color:var(--pr);border-color:color-mix(in srgb,var(--pr) 35%,transparent)}
.ev-PRT{background:color-mix(in srgb,var(--prt) 16%,transparent);color:var(--prt);border-color:color-mix(in srgb,var(--prt) 35%,transparent)}
.ev-MOD{background:color-mix(in srgb,var(--mod) 16%,transparent);color:var(--mod);border-color:color-mix(in srgb,var(--mod) 35%,transparent)}
.ev-AD{background:color-mix(in srgb,var(--ad) 16%,transparent);color:var(--ad);border-color:color-mix(in srgb,var(--ad) 35%,transparent)}
.ev-PK{background:color-mix(in srgb,var(--pk) 16%,transparent);color:var(--pk);border-color:color-mix(in srgb,var(--pk) 35%,transparent)}
.ev-GAP{background:color-mix(in srgb,var(--gap) 16%,transparent);color:var(--gap);border-color:color-mix(in srgb,var(--gap) 35%,transparent)}

/* ---------- Meta bar ---------- */
.meta{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;font-size:.8rem;color:var(--tx3);margin-bottom:1.2rem}
.chip{background:var(--bg2);border:1px solid var(--line);padding:.22rem .6rem;border-radius:999px;color:var(--tx2)}
.chip.c{color:var(--ac);border-color:color-mix(in srgb,var(--ac) 40%,transparent)}

/* ---------- Medical notice ---------- */
.med{
  background:color-mix(in srgb,var(--dngr) 9%,transparent);
  border:1px solid color-mix(in srgb,var(--dngr) 32%,transparent);
  border-radius:var(--r);padding:1rem 1.25rem;margin:1.4rem 0
}
.med strong{color:var(--dngr)}

/* ---------- Cards / index ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:1rem;margin:1.5rem 0}
.card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--r);
  padding:1.15rem 1.25rem;transition:.18s;text-decoration:none;color:inherit;display:block
}
.card:hover{border-color:var(--ac);transform:translateY(-2px);box-shadow:0 10px 30px rgba(0,0,0,.22)}
.card h3{margin:.15rem 0 .4rem;font-size:1.02rem;line-height:1.6}
.card p{font-size:.85rem;color:var(--tx2);margin:0;line-height:1.75}
.card .n{font-size:.74rem;color:var(--tx3);font-weight:700;direction:ltr}
.card:hover{border-bottom:1px solid var(--ac)}

.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.85rem;margin:1.8rem 0}
.stat{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1rem;text-align:center}
.stat b{display:block;font-size:1.7rem;color:var(--ac);line-height:1.3}
.stat span{font-size:.8rem;color:var(--tx2)}

/* ---------- Footer / nav ---------- */
.pnav{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);flex-wrap:wrap}
.pnav a{font-size:.88rem;color:var(--tx2);max-width:46%}
.pnav a:hover{color:var(--ac)}
footer{border-top:1px solid var(--line);margin-top:4rem;padding:2rem 1.25rem;text-align:center;color:var(--tx3);font-size:.85rem}
footer a{color:var(--tx2)}

/* ---------- Misc ---------- */
.crumb{font-size:.82rem;color:var(--tx3);margin-bottom:.6rem}
.crumb a{color:var(--tx2)}
.mathblk{overflow-x:auto;direction:ltr;text-align:center;background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);padding:1rem;margin:1.4rem 0}
mjx-container{direction:ltr}
::selection{background:color-mix(in srgb,var(--ac) 30%,transparent)}
@media(max-width:640px){
  body{font-size:16px;line-height:1.9}
  h1{font-size:1.6rem} h2{font-size:1.22rem}
  .wrap{padding:1.25rem .9rem 3rem}
  .hwrap{padding:.6rem .9rem} .hnav{display:none}
  .searchbox{width:100%;order:3}
  table{font-size:.85rem} th,td{padding:.55rem .6rem}
}
@media print{
  header,aside,.pnav,.searchbox,footer{display:none}
  body{background:#fff;color:#000;font-size:11pt}
  .tw{border:1px solid #ccc}
}
