/* مجله: فهرست مقاله‌ها، صفحهٔ داخلی مقاله و اجزای محتوا. فقط توکن‌ها و فونت‌های موجود سایت را به کار می‌برد. */
:root{
  --read:#FFFFFF;--gt:#8A5A0B;--sumbg:#FFF6DF;
  --t-h1:clamp(28px,4.4vw,44px);--t-h2:clamp(22px,2.7vw,28px);--t-h3:20px;--t-body:18px;--t-sm:15.5px;--t-cap:14px;--t-lab:13px;
  --col:820px
}
:root[data-theme=dark]{--read:#0D1731;--gt:#E8BA55;--sumbg:#16213F}

/* ── بدنهٔ صفحه‌های مجله ── */
.pgbody main.pg{animation:pgin .28s var(--ease) both}
@keyframes pgin{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.pgbody main.pg{animation:none}}

/* ── فهرست مجله: کارت‌ها ── */
.hub-head{max-width:none}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:16px;margin-top:6px}
.mc{display:flex;flex-direction:column;gap:10px;padding:22px 22px 18px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}
.mc:hover{transform:translateY(-3px);border-color:var(--gold)}
.mc-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.badge{display:inline-flex;align-items:center;font-size:var(--t-lab);font-weight:800;line-height:1;padding:7px 12px;border-radius:999px;color:var(--gt);border:1px solid color-mix(in srgb,var(--gold) 55%,transparent);background:color-mix(in srgb,var(--gold2) 14%,transparent)}
.mc-cat{font-size:var(--t-lab);font-weight:700;color:var(--mut)}
.mc-start{font-size:var(--t-cap);font-weight:900;color:var(--gt)}
.mc h3{font-size:clamp(19px,2vw,22px);font-weight:900;line-height:1.7}
.mc p{color:var(--mut);font-size:var(--t-sm);font-weight:500;line-height:1.95;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mc-foot{margin-top:auto;padding-top:10px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:var(--t-cap);font-weight:700;color:var(--mut)}
.mc-go{display:inline-flex;align-items:center;gap:6px;font-weight:900;color:var(--ink)}
.mc-go svg{width:18px;height:18px;stroke:var(--gt);stroke-width:2.2;transition:transform .3s var(--ease)}
.mc:hover .mc-go svg{transform:translateX(-4px)}
.mc.feat{grid-column:1/-1;border-color:color-mix(in srgb,var(--gold) 55%,var(--line))}
.mc.feat h3{font-size:clamp(23px,3vw,32px)}
.mc.feat p{-webkit-line-clamp:4;max-width:70ch}
.hub-note{max-width:var(--col);margin:26px auto 0;text-align:center;color:var(--mut);font-size:var(--t-sm);font-weight:600}

/* ── سرصفحهٔ مقاله ── */
.art-head,.art,.series{max-width:var(--col);margin-inline:auto}
.art-head{margin-bottom:clamp(16px,2.6vw,26px)}
.ah-tags{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ah-cat{font-size:var(--t-cap);font-weight:700;color:var(--mut)}
.art-head h1{margin-top:14px;font-size:var(--t-h1);font-weight:900;line-height:1.6}
.art-head .lead{margin-top:12px;font-size:19px;line-height:2;color:var(--mut);font-weight:500}
.art-head .pg-meta{margin-top:10px}
.series{display:flex;gap:10px;align-items:flex-start;margin-top:16px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--card2);font-size:var(--t-sm);font-weight:600;color:var(--mut);line-height:1.9}
.series svg{flex:none;width:20px;height:20px;margin-top:5px;stroke:var(--gt);stroke-width:1.9}
.series b{color:var(--ink);font-weight:900;margin-inline-end:6px}
.series a{color:var(--gt);font-weight:900;border-bottom:1px solid color-mix(in srgb,var(--gold) 50%,transparent)}

/* ── سطح خوانش مقاله ── */
.art{background:var(--read);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:clamp(18px,4vw,44px);color:var(--ink);font-size:var(--t-body);line-height:2.05}
.art-body{margin-top:clamp(18px,3vw,30px)}
.as{margin-top:clamp(26px,4vw,40px);scroll-margin-top:0}
.as:first-child{margin-top:0}
.as h2{font-size:var(--t-h2);font-weight:900;line-height:1.6;padding-bottom:10px;margin-bottom:6px;border-bottom:1px solid var(--line)}
.as h3{font-size:var(--t-h3);font-weight:900;margin-top:22px}
.as p{margin-top:12px;font-weight:500}
.as a:not(.xl){color:var(--gt);font-weight:800;border-bottom:1px solid color-mix(in srgb,var(--gold) 45%,transparent)}
.as a:not(.xl):hover{border-bottom-color:var(--gold)}
.as ul{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.as ul:not(.chk) li{position:relative;padding-inline-start:26px;font-weight:500}
.as ul:not(.chk) li::before{content:"";position:absolute;inset-inline-start:3px;top:.95em;width:8px;height:8px;border-radius:2px;background:var(--gold);transform:rotate(45deg)}

/* خلاصه */
.sumbox{padding:18px 20px;border-radius:18px;background:var(--sumbg);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent)}
.sumbox>b{display:flex;align-items:center;gap:8px;font-size:17px;font-weight:900}
.sumbox>b svg{width:20px;height:20px;stroke:var(--gt);stroke-width:2.4}
.sumbox ul{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:8px;font-size:17px;line-height:1.95;font-weight:600}
.sumbox li{position:relative;padding-inline-start:24px}
.sumbox li::before{content:"";position:absolute;inset-inline-start:3px;top:.9em;width:8px;height:8px;border-radius:2px;background:var(--gold);transform:rotate(45deg)}

/* فهرست مطالب */
.toc{margin-top:16px;border:1px solid var(--line);border-radius:18px;padding:0 18px}
.toc summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none;padding:14px 0;font-weight:900;font-size:17px}
.toc summary::-webkit-details-marker{display:none}
.toc summary svg{width:20px;height:20px;stroke:var(--gt);stroke-width:2}
.toc summary::after{content:"+";margin-inline-start:auto;font-size:22px;font-weight:900;color:var(--gt);transition:transform .3s var(--ease)}
.toc[open] summary::after{transform:rotate(45deg)}
.toc ol{list-style:none;counter-reset:t;margin:0;padding:0 0 14px;display:grid;gap:2px}
.toc li{counter-increment:t}
.toc a{display:flex;gap:10px;align-items:baseline;padding:7px 8px;border-radius:10px;font-size:16.5px;font-weight:700;line-height:1.8;color:var(--mut);transition:background .2s,color .2s}
.toc a::before{content:counter(t,persian);flex:none;min-width:1.7em;font-weight:900;color:var(--gt)}
.toc a:hover,.toc a.on{background:color-mix(in srgb,var(--gold2) 16%,transparent);color:var(--ink)}

/* نکات و هشدارها */
.nt{display:flex;gap:14px;align-items:flex-start;margin-top:18px;padding:16px 18px;border-radius:16px;border:1px solid color-mix(in srgb,var(--c) 42%,transparent);background:color-mix(in srgb,var(--c) 10%,var(--read))}
.nt.tip{--c:var(--ok)}.nt.warn{--c:var(--bad)}.nt.tech{--c:var(--blue2)}
.nt-i{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:color-mix(in srgb,var(--c) 20%,transparent)}
.nt-i svg{width:22px;height:22px;stroke:var(--c);stroke-width:1.9}
.nt b{font-weight:900;font-size:17px}
.nt p{margin-top:2px;font-size:16.5px;line-height:1.95;color:var(--ink);font-weight:500}

/* جدول */
.rt-w{margin-top:14px;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.rt{width:100%;border-collapse:collapse;font-size:16px;line-height:1.9}
.rt th,.rt td{padding:12px 16px;text-align:right;vertical-align:top;border-bottom:1px solid var(--line)}
.rt th{font-weight:900;background:color-mix(in srgb,var(--gold2) 18%,transparent);font-size:15.5px}
.rt td:first-child{font-weight:800}
.rt tr:last-child td{border-bottom:0}
@media (max-width:700px){
  .rt-w{border:0;border-radius:0;overflow:visible}
  .rt,.rt tbody,.rt tr,.rt td{display:block;width:100%}
  .rt thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .rt tr{border:1px solid var(--line);border-radius:16px;margin-bottom:12px;overflow:hidden}
  .rt td{display:grid;grid-template-columns:6.4em 1fr;gap:10px;padding:10px 14px;font-size:16px}
  .rt td::before{content:attr(data-label);font-weight:900;font-size:var(--t-cap);color:var(--gt);padding-top:2px}
  .rt td:first-child{background:color-mix(in srgb,var(--gold2) 16%,transparent);font-weight:900}
}

/* مراحل شماره‌دار */
.as .steps{counter-reset:s;margin:14px 0 0;display:grid;gap:10px;list-style:none;padding:0}
.as .steps li{counter-increment:s;position:relative;display:grid;gap:2px;padding:14px 18px;padding-inline-start:64px;border-radius:16px;border:1px solid var(--line);background:color-mix(in srgb,var(--gold2) 7%,var(--read))}
.as .steps li::before{content:counter(s,persian);position:absolute;inset-inline-start:16px;top:14px;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(135deg,var(--gold2),#C98F2B);color:#2A1A00;font-weight:900;font-size:16px;line-height:1}
.as .steps li b{font-weight:900}
.as .steps li span{color:var(--mut);font-weight:500;font-size:16.5px;line-height:1.95}
.as .steps li b::first-letter{letter-spacing:0}

/* چک‌لیست تعاملی */
.chkbox{margin-top:16px;border:1px solid color-mix(in srgb,var(--gold) 40%,var(--line));border-radius:18px;padding:16px 16px 14px}
.chk-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.chk-h b{font-weight:900;font-size:17px}
.chk-n{font-size:var(--t-cap);font-weight:800;color:var(--gt)}
.chk-r{margin-inline-start:auto;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:12px;border:1px solid var(--line);font-size:var(--t-cap);font-weight:800;color:var(--mut)}
.chk-r svg{width:16px;height:16px;stroke:currentColor;stroke-width:2}
.chk-r:hover{color:var(--ink);border-color:var(--gold)}
.chk-bar{height:6px;border-radius:99px;background:var(--line);margin-top:12px;overflow:hidden}
.chk-bar i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--gold2),var(--gold));transition:width .35s var(--ease)}
.chk-hint{margin-top:8px!important;font-size:var(--t-cap)!important;color:var(--mut);font-weight:600!important;line-height:1.8!important}
.as ul.chk{display:grid;gap:8px;margin-top:12px}
.chk li{padding:0}
.chk label{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:14px;border:1px solid transparent;cursor:pointer;font-weight:500;font-size:17px;line-height:1.9;transition:background .2s,border-color .2s}
.chk label:hover{background:color-mix(in srgb,var(--gold2) 10%,transparent)}
.chk input{appearance:none;-webkit-appearance:none;flex:none;width:26px;height:26px;margin-top:3px;border:2px solid var(--gt);border-radius:8px;background:transparent;display:grid;place-content:center;cursor:pointer;transition:background .2s,border-color .2s}
.chk input::after{content:"";width:13px;height:7px;border:solid #2A1A00;border-width:0 0 3px 3px;transform:rotate(-45deg) scale(0);margin-top:-3px;transition:transform .18s var(--ease)}
.chk input:checked{background:var(--gold2);border-color:var(--gold)}
.chk input:checked::after{transform:rotate(-45deg) scale(1)}
.chk input:focus-visible{outline:3px solid var(--blue2);outline-offset:2px}
.chk li.done label{background:color-mix(in srgb,var(--ok) 9%,transparent)}
.chk li.done .tx{color:var(--mut)}

/* کارت لینک داخلی */
.xls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin-top:16px}
.xl{position:relative;display:grid;gap:2px;padding:14px 16px 14px 46px;border-radius:16px;border:1px solid var(--line);background:color-mix(in srgb,var(--gold2) 8%,var(--read));transition:transform .3s var(--ease),border-color .3s}
.xl:hover{transform:translateY(-2px);border-color:var(--gold)}
.xl-k{font-size:var(--t-lab);font-weight:800;color:var(--gt)}
.xl b{font-weight:900;font-size:17px;line-height:1.7;color:var(--ink)}
.xl-d{font-size:var(--t-cap);color:var(--mut);font-weight:600;line-height:1.8}
.xl svg{position:absolute;left:14px;top:50%;width:20px;height:20px;margin-top:-10px;stroke:var(--gt);stroke-width:2.2}

/* پرسش‌ها داخل مقاله */
.art .faqs{margin-top:12px}
.art .faqs details{background:transparent}
.art .faqs summary{font-size:17px}
.art .faqs details p{font-size:16.5px;line-height:1.95;margin:0 0 14px}

/* منابع */
.srcs ul{margin-top:10px}
.srcs li{font-size:16px;line-height:1.9}
.srcs li span{color:var(--mut)}
.src-note{font-size:var(--t-sm);color:var(--mut);font-weight:600;line-height:1.95}

/* مقالات مرتبط و فراخوان */
.pgbody .rel-sec,.pgbody .cta-box{max-width:var(--col)}
.rel-sec>h2{font-size:var(--t-h2)}
.rel-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr))}
.rel{padding:16px 16px 16px 44px}
.rel-k{font-size:var(--t-lab)!important;color:var(--gt)!important}
.rel b{font-size:17px}
.cta-box{margin-top:clamp(22px,3.6vw,38px)!important}

@media (max-width:600px){
  :root{--t-body:17.5px}
  .art{border-radius:20px}
  .art-head .lead{font-size:17.5px}
  .sumbox ul{font-size:16.5px}
  .chk label{font-size:16.5px}
  .toc a{font-size:16px}
}
@media print{.art{box-shadow:none;border-color:#999}}
