/* ================================================================
   والیون پالس — لایهٔ نسخهٔ ۴
   گیمیفیکیشن، حساب، کیف پول، اشتراک‌گذاری و بازطراحی فراخوان‌ها
   پس از app.css بارگذاری می‌شود.
   ================================================================ */

/* ---------- ۱. نشان‌ها: نسخهٔ روشن و تیره ----------
   هر نشان دو فایل دارد؛ CSS نسخهٔ درست را نشان می‌دهد تا هم با تنظیم
   سیستم و هم با کلید دستی روشن/تیره هماهنگ بماند. نسبت ۱:۱ هرگز نمی‌شکند. */
.bimg{display:inline-block;position:relative;line-height:0;flex:0 0 auto;
  width:var(--bs,88px);height:var(--bs,88px)}
.bimg img{display:block;width:100%;height:100%;aspect-ratio:1/1;object-fit:contain}
.bimg .b-d{display:none}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .bimg .b-l{display:none}
  :root:not([data-theme="light"]) .bimg .b-d{display:block}
}
:root[data-theme="dark"] .bimg .b-l{display:none}
:root[data-theme="dark"] .bimg .b-d{display:block}

/* ---------- ۲. فراخوان‌ها ---------- */
.btn{position:relative;isolation:isolate;overflow:hidden;
  transition:transform .18s var(--ease), box-shadow .18s var(--ease),
             background .18s var(--ease), color .18s var(--ease), border-color .18s var(--ease)}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(1px) scale(.995)}
.btn:focus-visible{outline:none;box-shadow:var(--ring), var(--sh-2)}

/* فراخوان اصلی — همان جایی که می‌خواهیم انگشت برود */
.btn-hero{
  background:linear-gradient(180deg, var(--atlantic) 0%, #1A2740 100%);
  color:var(--porcelain);border:1px solid rgba(255,255,255,.10);
  box-shadow:0 1px 0 rgba(255,255,255,.14) inset,
             0 10px 22px -12px rgba(35,50,74,.62),
             0 2px 6px -2px rgba(35,50,74,.35);
  font-weight:800;letter-spacing:-.1px;gap:10px}
.btn-hero:hover{color:var(--porcelain);
  box-shadow:0 1px 0 rgba(255,255,255,.18) inset,
             0 16px 30px -14px rgba(35,50,74,.66),
             0 0 0 4px rgba(231,167,158,.22)}
.btn-hero::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;
  background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.16) 48%,transparent 62%);
  transform:translateX(-120%);transition:transform .62s var(--ease)}
.btn-hero:hover::after{transform:translateX(120%)}
.btn-hero .bh-ic{display:inline-flex;color:var(--peach)}
.btn-hero .bh-go{display:inline-flex;margin-inline-start:2px;opacity:.75;
  transition:transform .22s var(--ease), opacity .22s}
.btn-hero:hover .bh-go{transform:translateX(-5px);opacity:1}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .btn-hero{
    background:linear-gradient(180deg,#3A4D70 0%,#2A3B57 100%);
    border-color:rgba(255,255,255,.14);color:#F7F3EA}
}
:root[data-theme="dark"] .btn-hero{
  background:linear-gradient(180deg,#3A4D70 0%,#2A3B57 100%);
  border-color:rgba(255,255,255,.14);color:#F7F3EA}

/* دکمهٔ ثانویه — کم‌صداتر ولی خوانا در هر دو حالت */
.btn-ghost{background:var(--surface);color:var(--ink);border:1px solid var(--line);
  box-shadow:var(--sh-1);font-weight:700}
.btn-ghost:hover{background:var(--sunk);color:var(--ink);border-color:var(--indigo-300);
  box-shadow:var(--sh-2)}
.btn-quiet:hover{background:var(--sunk);color:var(--ink)}
.nav a.btn,.nav a.btn-hero{color:var(--porcelain)}
@media (prefers-reduced-motion:reduce){
  .btn,.btn::after,.btn-hero .bh-go{transition:none}
  .btn:hover{transform:none}
}

/* ---------- ۳. هیرو ---------- */
.hero-txt h1{letter-spacing:-.4px}
.hero-txt h1 .accent{position:relative;white-space:nowrap}
/* زیرخط تأکید: یک خط نازک مرجانی، نه یک لکهٔ پررنگ.
   در حالت تیره، پاستل کم‌رنگ به خاکستری می‌زند؛ خط نازکِ پررنگ در هر دو حالت
   عمدی و تمیز خوانده می‌شود. */
.hero-txt h1 .accent::after{content:"";position:absolute;inset-inline:0;bottom:-.06em;
  height:.11em;background:var(--coral);opacity:.9;border-radius:99px;z-index:-1}
.vprop{list-style:none;margin:18px 0 22px;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.vprop li{display:flex;flex-direction:column;gap:1px;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r-sm);padding:9px 14px;box-shadow:var(--sh-1)}
.vprop b{font-family:'Abar',inherit;font-size:.95rem;color:var(--ink)}
.vprop span{font-size:.78rem;color:var(--ink-3);line-height:1.6}

/* کارت نمونهٔ خروجی — یک تصمیم واقعی، نه تزئین */
.peek{position:absolute;inset-inline-start:-8px;bottom:-6px;width:min(300px,86%);
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r);
  box-shadow:var(--sh-3);padding:14px 15px;text-align:start}
.pk-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}
.pk-num b{font-family:'Abar',inherit;font-size:1.85rem;line-height:1;color:var(--ink)}
.pk-num span{font-size:.75rem;color:var(--ink-3);margin-inline-start:4px}
.pk-stage{font-size:.72rem;font-weight:800;padding:3px 10px;border-radius:var(--r-pill);
  background:var(--warn-bg);color:var(--warn)}
.pk-rows{display:grid;gap:7px}
.pk-row{display:grid;grid-template-columns:52px 1fr 26px;align-items:center;gap:8px}
.pk-nm{font-size:.75rem;color:var(--ink-2)}
.pk-bar{height:6px;border-radius:99px;background:var(--sunk);overflow:hidden}
.pk-bar i{display:block;height:100%;border-radius:99px}
.pk-row.bad  .pk-bar i{background:var(--crit)}
.pk-row.mid  .pk-bar i{background:var(--warn)}
.pk-row.good .pk-bar i{background:var(--ok)}
.pk-sc{font-size:.74rem;color:var(--ink-3);text-align:end}
.pk-note{display:flex;gap:6px;align-items:flex-start;margin:11px 0 0;padding-top:10px;
  border-top:1px dashed var(--line);font-size:.78rem;line-height:1.75;color:var(--ink-2)}
.pk-note svg{flex:0 0 auto;margin-top:3px;color:var(--coral)}
.pk-note b{color:var(--ink)}

/* ---------- ۴. منوی حساب ---------- */
.acct{position:relative}
.acct-menu{position:absolute;inset-inline-end:0;top:calc(100% + 8px);min-width:206px;z-index:60;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);
  box-shadow:var(--sh-3);padding:6px;display:grid}
.acct-menu[hidden]{display:none}
.am-name{padding:8px 12px 9px;font-size:.8rem;color:var(--ink-3);
  border-bottom:1px solid var(--line-2);margin-bottom:4px}
.acct-menu a{display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:10px;
  font-size:.88rem;color:var(--ink);font-weight:600}
.acct-menu a:hover{background:var(--sunk);color:var(--ink)}
.acct-menu a svg{color:var(--ink-3)}
.am-out{margin-top:4px;border-top:1px solid var(--line-2)}
.am-out,.am-out svg{color:var(--crit)}

/* ---------- ۵. افزودن به صفحهٔ خانه ---------- */
.pwa-prompt,.pwa-ios{position:fixed;z-index:120;inset-inline:12px;bottom:12px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r);
  box-shadow:var(--sh-3);padding:14px 16px;max-width:520px;margin-inline:auto;
  animation:pwaUp .34s var(--ease)}
.pwa-prompt[hidden],.pwa-ios[hidden]{display:none}
@keyframes pwaUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.pwa-prompt{display:flex;align-items:center;gap:13px;flex-wrap:wrap}
.pwa-ic{border-radius:12px;flex:0 0 auto}
.pwa-txt{flex:1 1 200px;min-width:0}
.pwa-txt b{display:block;font-size:.94rem;font-family:'Abar',inherit}
.pwa-txt span{display:block;font-size:.79rem;color:var(--ink-3);line-height:1.7}
.pwa-btns{display:flex;gap:8px;flex:0 0 auto}
.pwa-ios{padding-block:18px}
.pwa-ios b{display:block;margin-bottom:8px;font-family:'Abar',inherit}
.pwa-ios ol{margin:0;padding-inline-start:20px;font-size:.85rem;line-height:2;color:var(--ink-2)}
.pwa-x{position:absolute;inset-inline-start:10px;top:10px;background:none;border:0;cursor:pointer;
  color:var(--ink-3);padding:4px;border-radius:8px}
.pwa-x:hover{background:var(--sunk);color:var(--ink)}
body.has-mcta .pwa-prompt,body.has-mcta .pwa-ios{bottom:calc(12px + 68px)}

/* ---------- ۶. قطعه‌های مشترک ---------- */
.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  flex-wrap:wrap;margin:6px 0 22px}
.page-head h1{font-size:clamp(24px,2.4vw + 14px,38px)}
.page-head p{margin:8px 0 0;max-width:62ch}
.cardt{display:flex;align-items:center;gap:9px;font-size:1.02rem;margin:0 0 12px}
.cardt svg{color:var(--indigo)}
.card-pad + .card-pad{margin-top:16px}
.fam-tag{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.2px;
  color:var(--ink-3);background:var(--sunk);border-radius:var(--r-pill);padding:3px 11px;
  margin-bottom:8px}
.center-t{text-align:center}
.mono-num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
.bar{height:8px;border-radius:99px;background:var(--sunk);overflow:hidden}
.bar.lg{height:11px}
.bar i{display:block;height:100%;border-radius:99px;background:var(--indigo);
  transition:width .9s var(--ease)}
.opt{font-weight:400;font-size:.76rem;color:var(--ink-3)}
.hint{display:block;margin-top:5px;font-size:.77rem;color:var(--ink-3);line-height:1.7}
.fineprint{font-size:.79rem;color:var(--ink-3);line-height:1.95;margin-top:16px}
.lnk{display:inline-flex;align-items:center;gap:5px;font-weight:700;font-size:.86rem;
  color:var(--indigo)}
.lnk:hover{color:var(--indigo-700)}
.empty-mini{text-align:center;padding:22px 6px;color:var(--ink-3)}
.empty-mini svg{color:var(--indigo-300);margin-bottom:8px}
.empty-mini p{font-size:.86rem;line-height:1.9;max-width:34ch;margin:0 auto 14px}
.empty-band{display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  background:var(--sunk);border:1px dashed var(--line);border-radius:var(--r);padding:16px 18px;
  margin-bottom:18px}
.empty-band > svg{color:var(--indigo-300);flex:0 0 auto}
.empty-band b{display:block;font-size:.94rem}
.empty-band p{margin:3px 0 0;font-size:.83rem;color:var(--ink-3)}
.empty-band .btn{margin-inline-start:auto}
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;
  margin:16px 0}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);
  padding:15px 16px;box-shadow:var(--sh-1)}
.stat b{display:block;font-family:'Abar',inherit;font-size:1.5rem;line-height:1.2;color:var(--ink)}
.stat span{display:block;font-size:.78rem;color:var(--ink-3);margin-top:3px;line-height:1.6}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 26px}
.inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}
.inline-form .inp{flex:1 1 200px;min-width:0}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.chk{display:flex;gap:11px;align-items:flex-start;padding:11px 0;cursor:pointer}
.chk + .chk{border-top:1px solid var(--line-2)}
.chk input{margin-top:5px;width:17px;height:17px;accent-color:var(--indigo);flex:0 0 auto}
.chk b{display:block;font-size:.9rem;font-weight:700}
.chk em{display:block;font-style:normal;font-size:.79rem;color:var(--ink-3);line-height:1.75;
  margin-top:2px}
.chk.sm b{font-size:.85rem}
.danger-zone{background:var(--sunk)}
.timeline{list-style:none;margin:0;padding:0}
.timeline li{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid var(--line-2)}
.timeline li:last-child{border-bottom:0}
.tl-dot{width:9px;height:9px;border-radius:50%;background:var(--periwinkle);
  margin-top:8px;flex:0 0 auto;box-shadow:0 0 0 4px var(--sunk)}
.timeline b{display:block;font-size:.9rem}
.timeline span{display:block;margin-top:2px}

/* ---------- ۷. ورود ---------- */
.auth-card{max-width:430px;margin-inline:auto}
.auth-head{text-align:center;margin-bottom:20px}
.auth-head h1{font-size:clamp(21px,1.8vw + 14px,27px);margin-bottom:7px}
.auth-head p{margin:0;font-size:.88rem;line-height:1.85}
.auth-foot{text-align:center;font-size:.83rem;color:var(--ink-3);margin-top:18px;line-height:1.9}
.otp-inp{text-align:center;font-size:1.6rem;letter-spacing:.55em;padding-inline:12px;
  font-family:'Abar',inherit;font-weight:700}
.otp-inp::placeholder{letter-spacing:.35em;opacity:.35}
.resend-row{text-align:center;margin-top:10px}
.or{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--ink-3);font-size:.8rem}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
.ref-banner{display:flex;gap:12px;align-items:flex-start;background:var(--mint);
  color:var(--atlantic);border-radius:var(--r);padding:14px 16px;margin-bottom:16px;
  max-width:430px;margin-inline:auto}
.ref-banner svg{flex:0 0 auto;margin-top:2px}
.ref-banner b{font-weight:800}
.ref-banner span{display:block;font-size:.82rem;line-height:1.8;margin-top:3px;opacity:.88}
.welcome-card{display:flex;gap:14px;align-items:flex-start;background:var(--periwinkle);
  color:var(--atlantic);border-radius:var(--r-lg);padding:18px 20px;margin-bottom:22px}
.wc-ic{flex:0 0 auto;margin-top:2px}
.welcome-card h2{font-size:1.15rem;margin-bottom:5px}
.welcome-card p{margin:0;font-size:.87rem;line-height:1.9;opacity:.9}

/* ---------- ۸. پروفایل ---------- */
.prof-meter{margin-bottom:16px}
.pm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  flex-wrap:wrap;margin-bottom:11px}
.pm-head b{font-size:.98rem}
.pm-head p{margin:4px 0 0;max-width:58ch}
.pm-pts{flex:0 0 auto;font-size:.78rem;font-weight:800;color:var(--ok);
  background:var(--ok-bg);border-radius:var(--r-pill);padding:4px 12px}

/* ---------- ۹. داشبورد ---------- */
.dash-hi{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;
  flex-wrap:wrap;margin:6px 0 24px}
.dash-hi h1{font-size:clamp(24px,2.4vw + 14px,36px)}
.dash-hi p{margin:8px 0 0;max-width:56ch}
.dash-cta{display:flex;gap:10px;flex-wrap:wrap}
.dash-grid{display:grid;gap:16px;grid-template-columns:1fr;align-items:start}
@media (min-width:900px){
  .dash-grid{grid-template-columns:1.45fr 1fr}
  .dash-depth {grid-column:1;grid-row:1 / span 2}
  .dash-score {grid-column:2;grid-row:1}
  .dash-growth{grid-column:2;grid-row:2}
  .dash-pulse {grid-column:1 / -1}
  .dash-wallet{grid-column:1 / -1}
  .dash-plan  {grid-column:1 / -1}
}
.dd-top{display:flex;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.dd-top > div:nth-child(2){flex:1 1 160px;min-width:0}
.dd-top h2{font-size:1.22rem;margin-bottom:3px}
.dd-top p{margin:0;max-width:44ch}
.dd-pts{text-align:center;flex:0 0 auto;background:var(--sunk);border-radius:var(--r-sm);
  padding:9px 15px}
.dd-pts b{display:block;font-family:'Abar',inherit;font-size:1.45rem;line-height:1.2}
.dd-pts span{display:block;font-size:.72rem;color:var(--ink-3)}
.dd-next{margin:10px 0 0;font-size:.86rem;color:var(--ink-2)}
.sugg{margin-top:18px;padding-top:16px;border-top:1px solid var(--line-2)}
.sugg h3{font-size:.95rem;margin-bottom:10px}
.sugg-row{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:var(--r-sm);
  background:var(--sunk);margin-bottom:8px;transition:background .16s, transform .16s var(--ease)}
.sugg-row:hover{background:var(--indigo-050);transform:translateX(-3px)}
.sr-ic{flex:0 0 auto;color:var(--indigo);display:inline-flex}
.sr-txt{flex:1;min-width:0}
.sr-txt b{display:block;font-size:.88rem;color:var(--ink)}
.sr-txt em{display:block;font-style:normal;font-size:.77rem;color:var(--ink-3);
  line-height:1.7;margin-top:1px}
.sr-pts{flex:0 0 auto;font-size:.78rem;font-weight:800;color:var(--ok);
  background:var(--ok-bg);border-radius:var(--r-pill);padding:3px 10px}
.ds-num{display:flex;align-items:baseline;gap:6px;margin:2px 0 8px}
.ds-num b{font-family:'Abar',inherit;font-size:2.6rem;line-height:1}
.ds-num span{font-size:.82rem;color:var(--ink-3)}
.stage-pill.sm{font-size:.76rem;padding:4px 12px}
.ds-weak{margin:14px 0;padding:12px 14px;background:var(--sunk);border-radius:var(--r-sm)}
.ds-weak .lbl{display:block;font-size:.73rem;color:var(--ink-3);margin-bottom:3px}
.ds-weak b{display:block;font-size:.9rem;line-height:1.6}
.ds-weak span{display:block;font-size:.8rem;color:var(--crit);margin-top:3px}
.dg-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.dg-row h2{font-size:1.1rem;margin-bottom:3px}
.dg-row p{margin:0;max-width:40ch}
.gate{margin-top:14px;padding:12px 14px;background:var(--sunk);border-radius:var(--r-sm);
  border-inline-start:3px solid var(--periwinkle)}
.gate .lbl{display:block;font-size:.74rem;color:var(--ink-3);margin-bottom:4px}
.gate p{margin:0;font-size:.85rem;line-height:1.85}
.dp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  flex-wrap:wrap;margin-bottom:14px}
.dp-head h2{font-size:1.1rem}
.dw-amt{display:flex;align-items:baseline;gap:6px;margin:2px 0 6px}
.dw-amt b{font-family:'Abar',inherit;font-size:2rem;line-height:1}
.dw-amt span{font-size:.82rem;color:var(--ink-3)}
.dw-ref{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.dw-ref div{background:var(--sunk);border-radius:var(--r-sm);padding:10px 12px}
.dw-ref b{display:block;font-family:'Abar',inherit;font-size:1.25rem;line-height:1.2}
.dw-ref span{display:block;font-size:.73rem;color:var(--ink-3);line-height:1.6;margin-top:2px}
.dw-goal{font-size:.83rem;color:var(--ink-2);margin:0 0 12px}
.dw-btns{display:flex;gap:9px;flex-wrap:wrap}

/* برنامهٔ اقدام */
.plan-list{list-style:none;margin:0 0 16px;padding:0}
.plan-list li{display:flex;gap:11px;align-items:flex-start;padding:11px 0;
  border-bottom:1px solid var(--line-2)}
.plan-list li:last-child{border-bottom:0}
.plan-list li.done .pl-body b{text-decoration:line-through;color:var(--ink-3)}
.pl-form{flex:0 0 auto;margin-top:2px}
.pl-check{width:22px;height:22px;border-radius:7px;border:1.75px solid var(--line);
  background:var(--surface);cursor:pointer;display:flex;align-items:center;justify-content:center;
  color:transparent;padding:0;transition:all .16s}
.pl-check:hover{border-color:var(--indigo-300)}
.plan-list li.done .pl-check{background:var(--ok);border-color:var(--ok);color:#fff}
.pl-body{flex:1;min-width:0}
.pl-body b{display:block;font-size:.9rem;line-height:1.7;font-weight:600}
.pl-meta{display:block;font-size:.76rem;color:var(--ink-3);margin-top:3px}
.hz{display:inline-block;font-size:.7rem;font-weight:800;padding:2px 9px;
  border-radius:var(--r-pill);background:var(--sunk);color:var(--ink-2)}
.hz-30{background:var(--peach);color:var(--atlantic)}
.hz-60{background:var(--periwinkle);color:var(--atlantic)}
.hz-90{background:var(--mint);color:var(--atlantic)}
.plan-add{display:flex;gap:9px;flex-wrap:wrap;padding-top:14px;border-top:1px dashed var(--line)}
.plan-add .inp{flex:1 1 240px;min-width:0}
.plan-add .inp-sm{flex:0 1 130px}

/* ---------- ۱۰. نوار نبض ---------- */
.pulse-strip{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(88px,1fr))}
.pulse-strip.wide{grid-template-columns:repeat(auto-fit,minmax(104px,1fr))}
.ps-item{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;
  padding:12px 6px;border-radius:var(--r-sm);background:var(--sunk);
  transition:background .16s, transform .16s var(--ease)}
a.ps-item:hover{background:var(--indigo-050);transform:translateY(-2px)}
.ps-fa{font-size:.78rem;font-weight:700;color:var(--ink);line-height:1.5}
.ps-tier{font-size:.71rem;color:var(--ink-3)}
.ps-item.is-locked,.ps-item.is-in_progress{opacity:.62}
.ps-item.is-earned .ps-tier{color:var(--ok);font-weight:700}
.ps-item.is-needs_renewal .ps-tier{color:var(--warn);font-weight:700}
.near-band{display:flex;gap:9px;align-items:flex-start;margin-top:16px;padding:12px 14px;
  background:var(--warn-bg);border-radius:var(--r-sm);font-size:.84rem;line-height:1.85;
  color:var(--warn)}
.near-band svg{flex:0 0 auto;margin-top:3px}

/* ---------- ۱۱. گالری نشان ---------- */
.fam-sec{margin-bottom:34px}
.fam-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  flex-wrap:wrap;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.fam-head h2{font-size:1.32rem;margin-bottom:4px}
.fam-head p{margin:0;max-width:66ch;font-size:.87rem}
.fam-badge{flex:0 0 auto;font-size:.8rem;font-weight:800;background:var(--sunk);
  border-radius:var(--r-pill);padding:5px 14px;color:var(--ink-2)}
.ladder{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(168px,1fr))}
.ladder.dim{opacity:.55}
.lad-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r);
  padding:16px 13px;box-shadow:var(--sh-1)}
.lad-item.locked{background:var(--sunk);box-shadow:none}
.lad-item.locked .bimg{opacity:.55}
.lad-item.cur{border-color:var(--periwinkle);box-shadow:var(--sh-2)}
.lad-item b{font-family:'Abar',inherit;font-size:1rem;margin-top:4px}
.lad-req{font-size:.74rem;color:var(--ink-3)}
.lad-now{font-size:.7rem;font-weight:800;background:var(--periwinkle);color:var(--atlantic);
  border-radius:var(--r-pill);padding:2px 10px}
.lad-lede{font-size:.77rem;color:var(--ink-3);line-height:1.75;margin:4px 0 0}
.lad-item.special{border-style:dashed}
.badge-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.bcard{display:flex;gap:14px;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r);padding:16px;box-shadow:var(--sh-1);scroll-margin-top:90px}
.bcard.is-locked,.bcard.is-in_progress{background:var(--sunk);box-shadow:none}
.bcard.is-locked .bimg,.bcard.is-in_progress .bimg{opacity:.6}
.bc-body{flex:1;min-width:0}
.bc-body h3{font-size:1rem;margin-bottom:6px}
.tier{display:inline-block;font-size:.72rem;font-weight:800;border-radius:var(--r-pill);
  padding:3px 11px;margin-bottom:8px}
.tier-awake{background:var(--sky);color:var(--atlantic)}
.tier-balanced{background:var(--mint);color:var(--atlantic)}
.tier-powerful{background:var(--lemon);color:var(--atlantic)}
.tier-none{background:var(--sunk);color:var(--ink-3)}
.bc-lede{font-size:.82rem;color:var(--ink-2);line-height:1.8;margin:0 0 10px}
.bc-bar{display:flex;align-items:center;gap:9px;margin-bottom:9px}
.bc-bar .bar{flex:1}
.bc-bar span{font-size:.75rem;color:var(--ink-3);flex:0 0 auto}
.bc-next{font-size:.8rem;color:var(--ink-2);line-height:1.8;margin:0}
.bc-next.ok{color:var(--ok)}
.bc-warn{display:flex;gap:6px;align-items:center;font-size:.79rem;color:var(--warn);margin:8px 0 0}
.share-band{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
  background:var(--periwinkle);color:var(--atlantic);border-radius:var(--r-lg);padding:20px 24px}
.share-band h3{font-size:1.12rem;margin-bottom:5px}
.share-band p{margin:0;color:var(--atlantic);opacity:.82;font-size:.86rem}

/* ---------- ۱۲. نشان‌های صفحهٔ اصلی ---------- */
.pulse-showcase{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  margin-bottom:16px}
.psc{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r);
  padding:18px 14px;box-shadow:var(--sh-1);transition:transform .2s var(--ease), box-shadow .2s}
.psc:hover{transform:translateY(-3px);box-shadow:var(--sh-2)}
.psc b{font-family:'Abar',inherit;font-size:1rem;margin-top:5px}
.psc span{font-size:.79rem;color:var(--ink-3);line-height:1.8}
.growth-band{margin-top:30px;background:var(--sunk);border-radius:var(--r-lg);padding:24px}
.gb-head{text-align:center;margin-bottom:18px}
.gb-head h3{font-size:1.22rem;margin-bottom:6px}
.gb-head p{margin:0 auto;max-width:60ch;font-size:.87rem}
.gb-row{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.gb-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;
  background:var(--surface);border-radius:var(--r);padding:15px 12px}
.gb-item b{font-family:'Abar',inherit;font-size:.95rem;margin-top:4px}
.gb-item span{font-size:.74rem;color:var(--ink-3);line-height:1.7}

/* ---------- ۱۳. نشان تازه و جایزه ---------- */
.fresh-band{background:linear-gradient(135deg,var(--mint),var(--periwinkle));
  color:var(--atlantic);border-radius:var(--r-lg);padding:20px 22px;margin-bottom:20px}
.fb-head{display:flex;gap:11px;align-items:flex-start;margin-bottom:14px}
.fb-head b{display:block;font-size:1.02rem;font-family:'Abar',inherit}
.fb-head span{display:block;font-size:.83rem;opacity:.82;line-height:1.75;margin-top:2px}
.fb-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:12px}
.fb-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;
  background:rgba(255,255,255,.62);border-radius:var(--r-sm);padding:12px 14px;min-width:104px}
.fb-item b{font-size:.83rem}
.fb-item span{font-size:.73rem;opacity:.75}
.fresh-band .lnk{color:var(--atlantic)}
.award{display:flex;gap:20px;align-items:center;flex-wrap:wrap;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:22px 24px;margin-bottom:20px;box-shadow:var(--sh-2)}
.award-badge{flex:0 0 auto;line-height:0}
.award > div{flex:1 1 260px;min-width:0}
.award h2{font-size:1.35rem;margin-bottom:8px}
.aw-sub{font-size:.86rem;font-weight:600;color:var(--ink-3);margin-inline-start:6px}
.award p{font-size:.9rem;line-height:1.95;color:var(--ink-2)}
.award .acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}

/* ---------- ۱۴. تحلیل هوشمند ---------- */
.ai-panel .ai-headline{font-family:'Abar',inherit;font-size:clamp(17px,1.1vw + 13px,22px);
  line-height:1.65;color:var(--ink);margin:2px 0 16px;padding-inline-start:14px;
  border-inline-start:3px solid var(--coral)}
.ai-read p{font-size:.94rem;line-height:2.05;color:var(--ink-2)}
.ai-h{font-size:1.02rem;margin:22px 0 12px;padding-top:16px;border-top:1px solid var(--line-2)}
.ai-roots{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.root{background:var(--sunk);border-radius:var(--r-sm);padding:15px 16px}
.root h4{font-size:.95rem;margin:0 0 8px;font-family:'Abar',inherit}
.root p{font-size:.83rem;line-height:1.85;margin:0 0 6px;color:var(--ink-2)}
.root p:last-child{margin-bottom:0}
.root b{color:var(--ink-3);font-weight:700}
.rt-co{color:var(--crit)}
.rt-co b{color:var(--crit)}
.ai-prio{display:grid;gap:12px}
.prio{display:flex;gap:13px;align-items:flex-start;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r-sm);padding:15px 16px;flex-wrap:wrap}
.prio .hz{flex:0 0 auto;margin-top:2px}
.pr-body{flex:1 1 220px;min-width:0}
.pr-body b{display:block;font-size:.94rem;line-height:1.75;margin-bottom:7px}
.pr-body p{font-size:.82rem;line-height:1.8;margin:0 0 3px;color:var(--ink-2)}
.pr-body .k{color:var(--ink-3);font-weight:700}
.ai-watch{margin:0;padding-inline-start:20px}
.ai-watch li{font-size:.87rem;line-height:1.95;color:var(--ink-2);margin-bottom:5px}
.ai-q{display:flex;gap:12px;align-items:flex-start;background:var(--lemon);color:var(--atlantic);
  border-radius:var(--r);padding:16px 18px;margin-top:20px}
.ai-q svg{flex:0 0 auto;margin-top:2px}
.ai-q .lbl{display:block;font-size:.75rem;opacity:.72;margin-bottom:4px}
.ai-q b{font-size:.96rem;line-height:1.85;font-family:'Abar',inherit}
.ai-caveat{display:flex;gap:7px;align-items:flex-start;font-size:.79rem;color:var(--ink-3);
  line-height:1.85;margin:18px 0 0;padding-top:14px;border-top:1px dashed var(--line)}
.ai-caveat svg{flex:0 0 auto;margin-top:3px}
.ai-cta{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.ai-cta img{flex:0 1 300px;width:300px;border-radius:var(--r);border:1px solid var(--line)}
.ai-cta > div{flex:1 1 280px;min-width:0}
.ai-cta p{font-size:.92rem;line-height:2}
.ai-cta form{margin:14px 0 10px}
.ai-off{padding:6px 0}

/* ---------- ۱۵. اشتراک‌گذاری ---------- */
.share-grid{display:grid;gap:20px;grid-template-columns:1fr;align-items:start}
@media (min-width:760px){.share-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}}
.sg-preview{background:var(--sunk);border-radius:var(--r);padding:14px;
  display:flex;align-items:center;justify-content:center}
.sg-preview img{width:100%;height:auto;border-radius:var(--r-sm);box-shadow:var(--sh-2);
  background:var(--porcelain)}
.sg-side{display:flex;flex-direction:column;gap:13px}
.fmt-row{display:flex;gap:8px;flex-wrap:wrap;background:var(--sunk);border-radius:var(--r-pill);
  padding:5px}
.fmt{flex:1 1 auto;border:0;background:transparent;cursor:pointer;font:inherit;font-size:.82rem;
  font-weight:700;color:var(--ink-3);padding:8px 12px;border-radius:var(--r-pill);
  transition:background .16s, color .16s}
.fmt:hover{color:var(--ink)}
.fmt.on{background:var(--surface);color:var(--ink);box-shadow:var(--sh-1)}
.share-btns{display:flex;gap:9px;flex-wrap:wrap}
.sbtn{display:inline-flex;align-items:center;gap:7px;font-size:.84rem;font-weight:700;
  padding:9px 15px;border-radius:var(--r-pill);border:1px solid var(--line);
  background:var(--surface);color:var(--ink);cursor:pointer;font-family:inherit;
  transition:transform .16s var(--ease), box-shadow .16s, border-color .16s, color .16s}
.sbtn:hover{transform:translateY(-1px);box-shadow:var(--sh-2);color:var(--ink)}
.sbtn.linkedin:hover,.sbtn.li:hover{border-color:#0A66C2;color:#0A66C2}
.sbtn.telegram:hover,.sbtn.tg:hover{border-color:#229ED9;color:#229ED9}
.sbtn.whatsapp:hover,.sbtn.wa:hover{border-color:#25D366;color:#1DA851}
.sbtn.x:hover{border-color:var(--ink);color:var(--ink)}
.sbtn.native{display:none}
.can-share .sbtn.native{display:inline-flex}
.copybox{display:flex;gap:9px;flex-wrap:wrap}
.copybox .inp{flex:1 1 220px;min-width:0;font-size:.85rem}

/* ---------- ۱۶. دعوت ---------- */
.rules{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  margin-bottom:20px}
.rule{display:flex;gap:12px;align-items:flex-start;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r);padding:16px;box-shadow:var(--sh-1)}
.rn{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:var(--periwinkle);
  color:var(--atlantic);display:flex;align-items:center;justify-content:center;
  font-family:'Abar',inherit;font-weight:800;font-size:.92rem}
.rule b{display:block;font-size:.93rem;margin-bottom:5px}
.rule p{margin:0;font-size:.82rem;line-height:1.85;color:var(--ink-3)}
.ref-list{list-style:none;margin:0;padding:0}
.ref-list li{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:11px 0;
  border-bottom:1px solid var(--line-2)}
.ref-list li:last-child{border-bottom:0}
.rl-name{flex:1 1 130px;font-size:.89rem;font-weight:600}
.rl-state{font-size:.77rem;border-radius:var(--r-pill);padding:3px 11px;
  background:var(--sunk);color:var(--ink-3)}
.rl-state.st-qualified{background:var(--ok-bg);color:var(--ok);font-weight:700}
.rl-amt{font-size:.82rem;color:var(--ink-2);min-width:88px;text-align:end}

/* ---------- ۱۷. کیف پول ---------- */
.wallet-hero{background:var(--atlantic);color:var(--porcelain);border-radius:var(--r-lg);
  padding:26px 28px;margin-bottom:18px}
.wallet-hero .lbl{font-size:.8rem;opacity:.72}
.wh-amt{display:flex;align-items:baseline;gap:8px;margin:6px 0 8px}
.wh-amt b{font-family:'Abar',inherit;font-size:clamp(30px,4vw + 16px,46px);line-height:1}
.wh-amt span{font-size:.9rem;opacity:.72}
.wallet-hero p{color:var(--porcelain);opacity:.82;font-size:.87rem;line-height:1.9;
  max-width:56ch;margin-bottom:16px}
.wh-btns{display:flex;gap:10px;flex-wrap:wrap}
.wallet-hero .btn-hero{background:var(--porcelain);color:var(--atlantic);
  border-color:transparent;box-shadow:var(--sh-2)}
.wallet-hero .btn-hero:hover{color:var(--atlantic)}
.wallet-hero .btn-hero .bh-ic{color:var(--orange-ink)}
.wallet-hero .btn-ghost{background:transparent;color:var(--porcelain);
  border-color:rgba(250,247,240,.32)}
.wallet-hero .btn-ghost:hover{background:rgba(250,247,240,.10);color:var(--porcelain);
  border-color:rgba(250,247,240,.5)}
.wlog{list-style:none;margin:0;padding:0}
.wlog li{display:flex;gap:12px;align-items:center;padding:12px 0;
  border-bottom:1px solid var(--line-2)}
.wlog li:last-child{border-bottom:0}
.wlog li.expired{opacity:.5}
.wl-ic{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:flex;
  align-items:center;justify-content:center}
.wl-ic.in{background:var(--ok-bg);color:var(--ok)}
.wl-ic.out{background:var(--sunk);color:var(--ink-3)}
.wl-body{flex:1;min-width:0}
.wl-body b{display:block;font-size:.88rem;font-weight:600;line-height:1.7}
.wl-amt{flex:0 0 auto;font-size:.88rem;font-weight:800}
.wl-amt.in{color:var(--ok)}
.wl-amt.out{color:var(--ink-3)}

/* ---------- ۱۸. قیمت ---------- */
.seats-band{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);
  padding:16px 20px;margin-bottom:24px;box-shadow:var(--sh-1)}
.sb-txt{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  flex-wrap:wrap;margin-bottom:10px}
.sb-txt b{font-size:1rem}
.sb-txt span{font-size:.8rem;color:var(--ink-3)}
.plans{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(272px,1fr));
  align-items:stretch;margin-bottom:26px}
.plan{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:24px 22px;box-shadow:var(--sh-1);
  display:flex;flex-direction:column}
.plan.best{border-color:var(--periwinkle);box-shadow:var(--sh-3)}
.plan.sold{opacity:.62}
.plan-flag{position:absolute;top:-11px;inset-inline-start:22px;font-size:.72rem;font-weight:800;
  background:var(--coral);color:var(--atlantic);border-radius:var(--r-pill);padding:4px 13px}
.plan h2{font-size:1.2rem;margin-bottom:5px}
.plan-lede{font-size:.84rem;color:var(--ink-3);line-height:1.8;margin:0 0 16px}
.plan-price{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;margin-bottom:6px}
.plan-price b{font-family:'Abar',inherit;font-size:1.9rem;line-height:1;color:var(--ink)}
.plan-price b.free{color:var(--ok)}
.plan-price span{font-size:.82rem;color:var(--ink-3)}
.plan-price s{font-size:.84rem;color:var(--ink-3);opacity:.72}
.plan-badge{display:inline-block;align-self:flex-start;font-size:.73rem;font-weight:700;
  background:var(--sunk);color:var(--ink-2);border-radius:var(--r-pill);padding:3px 11px;
  margin-bottom:16px}
.plan-feats{list-style:none;margin:0 0 20px;padding:0;flex:1}
.plan-feats li{display:flex;gap:8px;align-items:flex-start;font-size:.85rem;line-height:1.8;
  margin-bottom:9px;color:var(--ink-2)}
.plan-feats svg{flex:0 0 auto;margin-top:5px;color:var(--ok)}
.plan-note{display:block;font-size:.74rem;color:var(--ink-3);text-align:center;margin-top:8px;
  line-height:1.7}
.ladder-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:6px;
  grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.ladder-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;
  background:var(--sunk);border-radius:var(--r-xs);padding:8px 12px;font-size:.79rem}
.ladder-list li.now{background:var(--mint);color:var(--atlantic);font-weight:700}
.ln{color:var(--ink-3)}
.ladder-list li.now .ln{color:var(--atlantic);opacity:.8}
.faq-i{border-bottom:1px solid var(--line)}
.faq-i summary{cursor:pointer;padding:15px 0;font-weight:700;font-size:.96rem;list-style:none}
.faq-i summary::-webkit-details-marker{display:none}
.faq-i summary::after{content:"+";float:left;color:var(--ink-3);font-weight:400;font-size:1.2rem}
.faq-i[open] summary::after{content:"−"}
.faq-i p{margin:0 0 16px;font-size:.88rem;line-height:2;color:var(--ink-2)}

/* ---------- ۱۹. صفحهٔ تأیید عمومی ---------- */
.verify-hero{display:flex;gap:24px;align-items:center;flex-wrap:wrap;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:28px;margin:10px 0 20px;box-shadow:var(--sh-2)}
.vh-badge{flex:0 0 auto;line-height:0}
.verify-hero > div{flex:1 1 260px;min-width:0}
.verify-hero h1{font-size:clamp(22px,2.2vw + 13px,34px);margin:6px 0 8px}
.vh-who{font-size:1.02rem;margin:0 0 8px}
.vh-lede{font-size:.9rem;line-height:1.95;color:var(--ink-2);margin-bottom:14px}
.valid-pill{display:inline-flex;align-items:center;gap:6px;font-size:.79rem;font-weight:700;
  border-radius:var(--r-pill);padding:5px 13px}
.valid-pill.ok{background:var(--ok-bg);color:var(--ok)}
.valid-pill.old{background:var(--sunk);color:var(--ink-3)}

/* ---------- ۲۰. اصلاح‌های حالت تیره ---------- */
:root[data-theme="dark"] .brand .mark,
:root[data-theme="dark"] .brand .mark svg{color:var(--porcelain)}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .brand .mark,
  :root:not([data-theme="light"]) .brand .mark svg{color:var(--porcelain)}
}
/* قاعدهٔ برند: روی هر پاستل، متن تیره */
.fresh-band,.share-band,.ai-q,.welcome-card,.ref-banner,.plan-flag,
.hz-30,.hz-60,.hz-90,.tier-awake,.tier-balanced,.tier-powerful,
.ladder-list li.now,.rn,.lad-now{color:var(--atlantic)}
.fresh-band h3,.share-band h3,.welcome-card h2,.ai-q b,.fresh-band b,
.welcome-card p,.ref-banner span{color:var(--atlantic)}
:root[data-theme="dark"] .wallet-hero{background:#101A2A}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .wallet-hero{background:#101A2A}
}
:root[data-theme="dark"] .fmt.on{background:var(--indigo-100)}
:root[data-theme="dark"] .fb-item{background:rgba(20,30,46,.22)}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .fb-item{background:rgba(20,30,46,.22)}
}
:root[data-theme="dark"] .pl-check{background:var(--sunk)}
:root[data-theme="dark"] .sg-preview img{background:var(--porcelain)}

/* ---------- ۲۱. ریسپانسیو ---------- */
@media (max-width:1024px){
  .peek{position:static;width:100%;margin-top:16px;box-shadow:var(--sh-2)}
}
@media (max-width:760px){
  .vprop{gap:8px}
  .vprop li{flex:1 1 calc(50% - 4px);padding:8px 11px}
  .dash-hi,.page-head{flex-direction:column;align-items:stretch}
  .dash-cta{width:100%}
  .dash-cta .btn{flex:1 1 auto;justify-content:center}
  .award{padding:18px}
  .award-badge .bimg{--bs:96px}
  .verify-hero{padding:20px;gap:16px}
  .vh-badge .bimg{--bs:120px}
  .fmt-row{width:100%}
  .plan-add .inp,.plan-add .inp-sm{flex:1 1 100%}
  .plan-add .btn{width:100%;justify-content:center}
  .ai-cta img{flex:1 1 100%;width:100%}
  .share-band,.cta-band{flex-direction:column;align-items:stretch;text-align:start}
  .share-band .btn,.cta-band .btn{width:100%;justify-content:center}
  .pwa-prompt{flex-direction:column;align-items:stretch;text-align:start}
  .pwa-btns{width:100%}
  .pwa-btns .btn{flex:1;justify-content:center}
  .prio{flex-direction:column}
  .prio form,.prio .btn{width:100%;justify-content:center}
  .empty-band .btn{margin-inline-start:0;width:100%;justify-content:center}
}
@media (max-width:480px){
  .vprop li{flex:1 1 100%}
  .pulse-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pulse-strip .bimg{--bs:56px}
  .ps-fa{font-size:.72rem}
  .dw-ref{grid-template-columns:1fr}
  .ladder{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lad-lede{display:none}
  .ladder .bimg{--bs:64px}
  .bcard{flex-direction:column;align-items:center;text-align:center}
  .bc-bar{justify-content:center}
  .rl-amt{min-width:0;margin-inline-start:auto}
  .rules{grid-template-columns:1fr}
}
@media (max-width:380px){
  .pulse-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ================================================================
   §نسخهٔ ۴٫۱ — نگارش، فوتر آیکنی، تیم، توقف، تحلیل تدریجی
   ================================================================ */

/* هر جمله یک سطر؛ شکست سطر تمیز */
p, .lede, li{text-wrap:pretty}
h1, h2, h3{text-wrap:balance}
.lede .ln{display:block}
.lede .ln + .ln{margin-top:4px}

/* فوتر: لینک آیکنی، بدون زیرخط */
.foot .foot-links a{display:inline-flex;align-items:center;gap:9px;text-decoration:none;
  padding:3px 0;transition:transform .16s var(--ease), color .16s}
.foot .foot-links a svg{opacity:.55;flex:0 0 auto}
.foot .foot-links a:hover{transform:translateX(-3px)}
.foot .foot-links a:hover svg{opacity:1}
.foot .foot-links li{margin-bottom:2px}

/* کارت تیم: تخصص‌های بولت‌دار آیکنی و لینک‌های آیکنی */
.tskills{list-style:none;margin:10px 0 12px;padding:0;display:grid;gap:7px}
.tskills li{display:flex;align-items:flex-start;gap:9px;font-size:.85rem;line-height:1.75;
  color:var(--ink-2)}
.ts-ic{flex:0 0 auto;width:26px;height:26px;border-radius:8px;background:var(--sunk);
  color:var(--indigo);display:inline-flex;align-items:center;justify-content:center;margin-top:1px}
.tlinks .tlink{display:inline-flex;align-items:center;gap:7px;font-size:.8rem;font-weight:600;
  padding:6px 13px;border-radius:var(--r-pill);border:1px solid var(--line);
  background:var(--surface);color:var(--ink);text-decoration:none}
.tlinks .tlink:hover{background:var(--periwinkle);color:var(--atlantic);border-color:transparent}
.tlinks .tlink svg{opacity:.7}

/* نوار توقف پذیرش و فرم کد */
.paused-band{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:20px 22px;margin-bottom:24px;box-shadow:var(--sh-2);scroll-margin-top:90px}
.pb-head{display:flex;gap:13px;align-items:flex-start;margin-bottom:14px}
.pb-head > svg{flex:0 0 auto;color:var(--warn);margin-top:3px}
.pb-head b{display:block;font-size:1rem;margin-bottom:4px}
.pb-head p{margin:0;font-size:.87rem;line-height:1.9;color:var(--ink-2);max-width:70ch}
.code-form{display:flex;gap:10px;flex-wrap:wrap}
.code-form .inp{flex:1 1 220px;min-width:0;text-align:center;letter-spacing:.14em;
  font-weight:700;text-transform:uppercase}

/* تحلیل تدریجی */
.ai-progress{display:flex;gap:14px;align-items:flex-start;background:var(--sunk);
  border-radius:var(--r);padding:18px 20px}
.ai-spin{flex:0 0 auto;width:44px;height:44px;border-radius:50%;background:var(--surface);
  display:flex;align-items:center;justify-content:center;color:var(--indigo);
  animation:aiPulse 1.6s ease-in-out infinite}
@keyframes aiPulse{0%,100%{box-shadow:0 0 0 0 rgba(189,199,234,.55)}50%{box-shadow:0 0 0 10px rgba(189,199,234,0)}}
@media (prefers-reduced-motion:reduce){.ai-spin{animation:none}}
.ai-progress b{display:block;font-size:.95rem;margin-bottom:4px}
.ai-dgrid{display:grid;gap:10px;margin-top:6px}
.ai-dcard{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);
  overflow:hidden}
.ai-dcard summary{display:flex;align-items:center;gap:10px;padding:13px 15px;cursor:pointer;
  list-style:none;flex-wrap:wrap}
.ai-dcard summary::-webkit-details-marker{display:none}
.ai-dcard summary .ic{flex:0 0 auto;width:30px;height:30px;border-radius:9px;background:var(--sunk);
  color:var(--indigo);display:inline-flex;align-items:center;justify-content:center}
.ai-dcard summary .ttl{font-weight:800;font-size:.9rem;flex:0 0 auto}
.ai-dcard summary .hl{font-size:.84rem;color:var(--ink-2);flex:1 1 200px;min-width:0;line-height:1.7}
.ai-dcard[open] summary{border-bottom:1px solid var(--line-2);background:var(--sunk)}
.ai-dbody{padding:14px 16px}
.ai-dbody p{font-size:.86rem;line-height:1.95;color:var(--ink-2);margin:0 0 8px}
.ai-dbody .k-line b{color:var(--ink-3);font-weight:700}
.ai-dact{margin-top:10px;padding:12px 14px;background:var(--sunk);border-radius:var(--r-xs);
  border-inline-start:3px solid var(--coral)}
.ai-dact b{display:block;font-size:.87rem;line-height:1.8}
.ai-dact span{display:block;font-size:.77rem;color:var(--ink-3);margin:3px 0 9px;line-height:1.7}

@media (max-width:640px){
  .code-form .btn{width:100%;justify-content:center}
  .ai-dcard summary .hl{flex-basis:100%}
}

/* ---------- ۲۲. چاپ ---------- */
@media print{
  .pwa-prompt,.pwa-ios,.acct,.share-panel,.fresh-band,.toast-host{display:none}
  .award{box-shadow:none;border:1px solid #ccc}
  .ai-panel{page-break-inside:avoid}
  .bimg .b-d{display:none}
  .bimg .b-l{display:block}
}
