/* سئو ICSD — صفحه‌های سایت عمومی به‌جز صفحهٔ اصلی: ورود، تعرفه و خرید، بررسی رایگان، صفحه‌های متنی و خطا.
   روی base.css (و در صفحه‌های عمومی public.css) سوار می‌شود. همهٔ کلاس‌ها پیشوند w- دارند تا با
   صفحهٔ اصلی و پنل‌ها تداخل نکنند. هر صفحه یک عنصر پررنگ دارد و بقیه آرام است. */

/* ---------- مشترک ---------- */
.w-hp { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.w-lead { color: var(--ink-2); font-size: var(--fs-md); line-height: 2; max-inline-size: 62ch; margin-block-start: var(--s2); }
.w-code { direction: ltr; text-align: left; font-family: var(--font-mono); font-size: .85rem; line-height: 1.9; white-space: pre;
  background: var(--lapis-900); color: var(--lapis-100); border-radius: var(--r); padding: var(--s4) var(--s5); overflow-x: auto;
  margin: 0; max-inline-size: 100%; }
.w-code--wrap { white-space: pre-wrap; overflow-wrap: anywhere; }
.w-code code { background: none; padding: 0; font-size: inherit; color: inherit; border-radius: 0; }
.w-url { direction: ltr; unicode-bidi: isolate; font-family: var(--font-mono); font-size: .9em; overflow-wrap: anywhere; }

/* نقش کاشی (ستاره و چلیپا): هر ستاره یک صفحهٔ سایت است */
.w-tiles { display: block; inline-size: 100%; block-size: 100%; }
.w-tiles .t { fill: var(--lapis-800); stroke: var(--lapis-700); stroke-width: 1; }
.w-tiles .t--ok { fill: var(--firooze-600); stroke: none; }
.w-tiles .t--warn { fill: var(--saffron-500); stroke: none; }
.w-tiles .t--bad { fill: var(--lal-500); stroke: none; }
.w-tiles .t--ghost { fill: none; stroke: var(--lapis-500); stroke-width: 1.5; stroke-dasharray: 5 5; }
.w-tiles .t--one { fill: var(--one, var(--firooze-500)); stroke: none; }

/* ---------- ورود و ثبت‌نام ---------- */
.w-auth { min-block-size: 100dvh; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); background: var(--paper); }
.w-auth__main { display: flex; flex-direction: column; min-block-size: 100dvh; padding: var(--s5) var(--s5) var(--s4); }
.w-auth__box { inline-size: min(100%, 400px); margin: auto; padding-block: var(--s6); display: grid; gap: var(--s4); }
.w-auth__title { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-2xl); line-height: 1.6; color: var(--lapis-800); }
.w-auth__lead { color: var(--ink-2); line-height: 2; }
.w-auth__form { display: grid; gap: var(--s4); margin-block-start: var(--s2); }
.w-auth__alt { display: flex; flex-wrap: wrap; gap: var(--s2) var(--s5); font-size: var(--fs-sm); padding-block-start: var(--s4);
  border-block-start: 1px solid var(--line); color: var(--ink-3); }
.w-auth__foot { font-size: var(--fs-xs); color: var(--ink-3); text-align: center; }
.w-auth__foot a { color: inherit; }
.w-auth__who { display: flex; align-items: center; justify-content: space-between; gap: var(--s3); flex-wrap: wrap;
  padding: var(--s3) var(--s4); background: var(--mist); border-radius: var(--r); font-size: var(--fs-sm); }
.w-auth__who strong { font-size: var(--fs-md); font-variant-numeric: tabular-nums; letter-spacing: .04em; }
.w-auth__art { background: var(--lapis-900); display: flex; flex-direction: column; min-block-size: 0; }
.w-auth__lattice { flex: 1; min-block-size: 0; position: relative; overflow: hidden; }
.w-auth__lattice .w-tiles { position: absolute; inset: 0; }
.w-auth__motto { padding: var(--s6) var(--s7) var(--s7); border-block-start: 1px solid var(--lapis-700); color: #fff;
  font-family: var(--font-display); font-weight: 600; font-size: clamp(1.25rem, .9rem + 1.1vw, 1.75rem); line-height: 2; }
.w-auth__motto span { display: block; color: var(--firooze-200); }
@media (max-width: 860px) {
  .w-auth { grid-template-columns: 1fr; }
  .w-auth__art { display: none; }
  .w-auth__box { padding-block: var(--s5); }
}
.input.w-otp[dir] { text-align: center; font-family: var(--font); font-size: 1.7rem; font-weight: 700; letter-spacing: .45em;
  padding-inline: .45em 0; min-block-size: 3.8rem; font-variant-numeric: tabular-nums; }
.input.w-otp[dir]::placeholder { color: var(--line-strong); font-weight: 400; letter-spacing: .1em; }
.w-resend { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; font-size: var(--fs-sm); color: var(--ink-3); }
.w-resend .link-btn[disabled] { color: var(--ink-4); text-decoration: none; cursor: default; }
.w-testmode { border: 1px dashed var(--saffron-500); background: var(--saffron-50); border-radius: var(--r-lg);
  padding: var(--s4); display: grid; gap: var(--s2); color: #6b4300; font-size: var(--fs-sm); }
.w-testmode__tag { justify-self: start; background: var(--saffron-500); color: var(--lapis-900); font-weight: 700;
  font-size: var(--fs-xs); padding: .05rem .6rem; border-radius: 4px; }
.w-testmode__code { direction: ltr; text-align: center; font-size: 2rem; font-weight: 800; letter-spacing: .3em; padding-inline-start: .3em;
  color: var(--lapis-900); font-variant-numeric: tabular-nums; line-height: 1.5; background: var(--paper);
  border: 1px solid var(--saffron-200); border-radius: var(--r); }

/* ---------- تعرفه‌ها: جدول مقایسه ---------- */
.w-plans { padding-block: var(--s7) var(--s6); }
/* پایه (موبایل و مرورگر بدون subgrid): هر پلن یک ستون مستقل با برچسب هر ردیف کنار مقدارش */
.w-cmp { display: grid; gap: var(--s4); }
.w-cmp__labels { display: none; }
.w-plan { border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--paper); overflow: hidden; }
.w-plan--featured { border: 2px solid var(--lapis-600); }
.w-plan__head { display: grid; gap: var(--s2); padding: var(--s5); align-content: start; }
.w-plan__flag { justify-self: start; font-size: var(--fs-xs); font-weight: 700; padding: .05rem .7rem; border-radius: 99px;
  background: var(--saffron-500); color: var(--lapis-900); }
.w-plan__flag--mine { background: var(--firooze-50); color: var(--firooze-700); border: 1px solid var(--firooze-200); }
.w-plan__name { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-xl); line-height: 1.6; color: var(--lapis-800); }
.w-plan__desc { color: var(--ink-3); font-size: var(--fs-sm); line-height: 1.8; }
.w-plan__price { display: flex; align-items: baseline; gap: .5rem; flex-wrap: wrap; margin-block: var(--s2); }
.w-plan__price strong { font-size: 1.75rem; font-weight: 800; color: var(--lapis-800); line-height: 1.3; }
.w-plan__price span { font-size: var(--fs-sm); color: var(--ink-3); }
.w-plan--featured .w-plan__head { background: var(--lapis-800); color: #fff; }
.w-plan--featured .w-plan__name, .w-plan--featured .w-plan__price strong { color: #fff; }
.w-plan--featured .w-plan__desc, .w-plan--featured .w-plan__price span { color: var(--lapis-200); }
.w-plan--featured .w-plan__head .btn { border-color: #fff; }
.w-plan__specs { margin: 0; }
.w-plan__spec { display: flex; align-items: center; justify-content: space-between; gap: var(--s4); padding: .7rem var(--s5);
  border-block-start: 1px solid var(--line); min-block-size: 3rem; }
.w-plan__spec dt { color: var(--ink-3); font-size: var(--fs-sm); }
.w-plan__spec dd { font-weight: 700; color: var(--lapis-800); text-align: end; display: inline-flex; align-items: center; gap: .4rem; }
.w-plan__spec--off dd, .w-plan__spec--no dd { color: var(--ink-4); font-weight: 500; }
.w-plan__spec--yes .ic { color: var(--good); inline-size: 1.3em; block-size: 1.3em; }
.w-plan__spec--no .ic { color: var(--line-strong); }
.w-plan__extra:not(:empty) { padding: var(--s4) var(--s5); border-block-start: 1px solid var(--line); font-size: var(--fs-sm); color: var(--ink-2); }
.w-plan__extra ul { display: grid; gap: .35rem; }
.w-plan__extra li { display: flex; gap: .5rem; align-items: flex-start; line-height: 1.8; }
.w-plan__extra .ic { color: var(--firooze-600); margin-block-start: .3em; }
.w-cmp__note { margin-block-start: var(--s4); font-size: var(--fs-sm); color: var(--ink-3); }

@media (min-width: 921px) {
  @supports not (grid-template-rows: subgrid) {
    .w-cmp { grid-template-columns: repeat(var(--plans), minmax(0, 1fr)); align-items: start; }
  }
  @supports (grid-template-rows: subgrid) {
    /* جدول واقعی: ستون برچسب + یک ستون برای هر پلن؛ ردیف‌ها با subgrid هم‌تراز می‌شوند */
    .w-cmp { gap: 0; grid-template-columns: minmax(190px, 1.2fr) repeat(var(--plans), minmax(0, 1fr));
      grid-template-rows: auto repeat(var(--rows), auto) auto; }
    .w-cmp__labels, .w-plan { display: grid; grid-row: 1 / -1; grid-template-rows: subgrid; }
    .w-plan { border: 0; border-radius: 0; background: none; overflow: visible; }
    .w-plan--featured { border: 2px solid var(--lapis-600); border-radius: var(--r-lg); background: var(--paper); overflow: hidden; }
    .w-plan__head { grid-template-rows: 1.7rem auto 1fr auto auto; padding: var(--s5) var(--s4); text-align: center; justify-items: center; }
    .w-plan__flag { grid-row: 1; justify-self: center; }
    .w-plan__name { grid-row: 2; }
    .w-plan__desc { grid-row: 3; max-inline-size: 22ch; }
    .w-plan__price { grid-row: 4; justify-content: center; flex-direction: column; align-items: center; gap: 0; }
    .w-plan__head .btn { grid-row: 5; inline-size: 100%; }
    .w-plan__specs { display: grid; grid-row: 2 / span var(--rows); grid-template-rows: subgrid; }
    .w-plan__spec { justify-content: center; padding: .7rem var(--s3); min-block-size: 3.6rem; }
    .w-plan__spec dt { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .w-plan__spec dd { text-align: center; }
    .w-plan__spec--yes dd span, .w-plan__spec--no dd span { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden;
      clip-path: inset(50%); white-space: nowrap; }
    .w-plan__extra { grid-row: -2; }
    .w-plan__extra:not(:empty) { padding-inline: var(--s4); }
    .w-cmp__corner { padding: var(--s5) var(--s4) var(--s5) 0; display: flex; align-items: flex-end; color: var(--ink-3);
      font-size: var(--fs-sm); line-height: 1.9; padding-inline: 0 var(--s5); }
    .w-cmp__label { display: grid; align-content: center; gap: .1rem; padding: .7rem 0; padding-inline-end: var(--s4);
      border-block-start: 1px solid var(--line); font-weight: 600; color: var(--ink); min-block-size: 3.6rem; }
    .w-cmp__label small { font-weight: 400; font-size: var(--fs-xs); color: var(--ink-3); line-height: 1.6; }
  }
}

/* تخفیف مدت */
.w-dur { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: var(--s6) var(--s7); align-items: start; }
.w-dur .section__head { margin-block-end: 0; }
.w-dur__table { background: var(--paper); border: 1px solid var(--line); border-radius: var(--r-lg); overflow: hidden; }
.w-dur__table .table th { background: none; position: static; }
.w-dur__table .table thead th { font-size: var(--fs-sm); color: var(--lapis-800); font-weight: 700; }
.w-dur__table .table tbody th { font-weight: 600; color: var(--ink); font-size: var(--fs-sm); white-space: normal;
  border-block-end: 1px solid var(--line); }
.w-dur__table .table tbody tr:last-child th { border-block-end: 0; }
.w-dur__table .table td { font-size: var(--fs-base); font-weight: 600; color: var(--lapis-800); font-variant-numeric: normal; }
.w-dur__table .table tbody tr:hover td { background: none; }
.w-dur__table .badge { margin-inline-start: .3rem; }
.w-dur__foot { padding: var(--s3) var(--s4); border-block-start: 1px solid var(--line); font-size: var(--fs-xs); color: var(--ink-3); }
@media (max-width: 860px) {
  .w-dur { grid-template-columns: 1fr; }
  .w-dur__table .table th, .w-dur__table .table td { padding-inline: .5rem; }
  .w-dur__table .table th:first-child { padding-inline-start: .8rem; }
  .w-dur__table .table td { font-size: var(--fs-sm); }
  .w-dur__table .badge { display: block; inline-size: max-content; margin: .2rem 0 0; }
}

/* پرسش‌های پرتکرار */
.w-faq { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: var(--s6) var(--s7); align-items: start; }
.w-faq__intro { position: sticky; inset-block-start: 96px; display: grid; gap: var(--s3); color: var(--ink-2); }
.w-faq__item { border-block-start: 1px solid var(--line); }
.w-faq__item:last-child { border-block-end: 1px solid var(--line); }
.w-faq__item > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between;
  gap: var(--s4); padding: var(--s4) 0; font-weight: 700; font-size: var(--fs-md); color: var(--lapis-800); line-height: 1.8; }
.w-faq__item > summary::-webkit-details-marker { display: none; }
.w-faq__item > summary:hover { color: var(--lapis-600); }
.w-faq__item > summary .ic { color: var(--ink-4); transition: transform .2s var(--ease); }
.w-faq__item[open] > summary .ic { transform: rotate(45deg); color: var(--lapis-600); }
.w-faq__item .prose { padding-block-end: var(--s5); }
@media (max-width: 860px) { .w-faq { grid-template-columns: 1fr; } .w-faq__intro { position: static; } }

/* دعوت پایانی آرام (یک ردیف مرزدار) */
.w-next { display: flex; align-items: center; justify-content: space-between; gap: var(--s4) var(--s6); flex-wrap: wrap;
  padding: var(--s5) var(--s6); border: 1px solid var(--line-strong); border-radius: var(--r-lg); background: var(--paper); }
.w-next__title { font-weight: 800; font-size: var(--fs-lg); color: var(--lapis-800); line-height: 1.7; }
.w-next p { color: var(--ink-2); }
@media (max-width: 640px) { .w-next { padding: var(--s5); } .w-next .btn { inline-size: 100%; } }

/* ---------- خرید اشتراک ---------- */
.w-buy { padding-block: var(--s6) 0; display: grid; gap: var(--s5); }
.w-buy__title { font-family: var(--font-display); font-weight: 700; font-size: clamp(1.5rem, 1.2rem + 1.4vw, 2.1rem); line-height: 1.6;
  color: var(--lapis-800); }
.w-buy__grid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: var(--s6); align-items: start; }
.w-buy__main { display: grid; gap: var(--s4); }
.w-buy__form { display: grid; gap: var(--s4); }
.w-buy__h { font-size: var(--fs-md); font-weight: 700; color: var(--lapis-800); }
.w-opts { border: 1px solid var(--line-strong); border-radius: var(--r-lg); background: var(--paper); padding: 0; margin: 0;
  overflow: hidden; min-inline-size: 0; }
.w-opt { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 0 var(--s4); align-items: center; padding: var(--s4) var(--s5);
  border-block-end: 1px solid var(--line); border-inline-start: 4px solid transparent; cursor: pointer; }
.w-opt:last-child { border-block-end: 0; }
.w-opt:hover { background: var(--lapis-50); }
.w-opt:has(input:checked) { background: var(--lapis-50); border-inline-start-color: var(--lapis-600); }
.w-opt:has(input:focus-visible) { box-shadow: inset var(--focus); }
.w-opt input { inline-size: 1.2rem; block-size: 1.2rem; accent-color: var(--lapis-600); margin: 0; grid-row: 1 / span 2; }
.w-opt__name { font-weight: 700; color: var(--lapis-800); display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.w-opt__per { grid-column: 2; font-size: var(--fs-sm); color: var(--ink-3); }
.w-opt__total { grid-column: 3; grid-row: 1 / span 2; text-align: end; display: grid; justify-items: end; line-height: 1.5; }
.w-opt__total strong { font-size: var(--fs-md); font-weight: 800; color: var(--lapis-800); font-variant-numeric: tabular-nums; white-space: nowrap; }
.w-opt__total s { font-size: var(--fs-xs); color: var(--ink-4); font-variant-numeric: tabular-nums; }
.w-opt--static { cursor: default; grid-template-columns: minmax(0, 1fr) auto; border-inline-start: 0; }
.w-opt--static:hover { background: none; }
.w-opt--static .w-opt__per { grid-column: 1; }
.w-opt--static .w-opt__total { grid-column: 2; }
.w-buy__pay { display: flex; align-items: center; gap: var(--s3) var(--s4); flex-wrap: wrap; }
.w-buy__side .kv { grid-template-columns: 1fr auto; }
.w-buy__side .kv dd { text-align: end; font-weight: 600; color: var(--lapis-800); }
.w-buy__side .kv dd.is-off { color: var(--ink-4); font-weight: 400; }
.w-offline { display: grid; gap: var(--s3); }
.w-offline__text { line-height: 2; color: var(--ink); }
@media (max-width: 860px) {
  .w-buy__grid { grid-template-columns: 1fr; }
  .w-opt { padding-inline: var(--s4); }
  .w-buy__pay .btn { inline-size: 100%; }
}

/* نتیجهٔ پرداخت */
.w-pay { padding-block: var(--s7) 0; }
.w-pay__card { border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--paper); overflow: hidden; }
.w-pay__top { display: grid; justify-items: center; gap: var(--s3); text-align: center; padding: var(--s6) var(--s5) var(--s5); }
.w-pay__mark { inline-size: 72px; block-size: 72px; display: grid; place-items: center; border-radius: var(--r-tile); transform: rotate(45deg);
  background: var(--firooze-50); color: var(--firooze-700); margin-block: var(--s3); }
.w-pay__mark .ic { transform: rotate(-45deg); inline-size: 32px; block-size: 32px; }
.w-pay__mark--bad { background: var(--lal-50); color: var(--lal-700); }
.w-pay__title { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-xl); color: var(--lapis-800); line-height: 1.6; }
.w-pay__top p { color: var(--ink-2); max-inline-size: 48ch; }
.w-pay__facts { border-block-start: 1px solid var(--line); padding: var(--s5) var(--s6); }
.w-pay__facts .kv { grid-template-columns: 1fr auto; gap: .7rem var(--s5); font-size: var(--fs-base); }
.w-pay__facts .kv dd { text-align: end; font-weight: 700; color: var(--lapis-800); }
.w-pay__facts .kv dd.ltr { text-align: start; }  /* در جهت چپ‌به‌راست، start همان لبهٔ پایانی ردیف‌های دیگر است */
.w-pay__actions { display: flex; gap: var(--s3); flex-wrap: wrap; justify-content: center; padding: var(--s5); border-block-start: 1px solid var(--line);
  background: var(--mist); }
@media (max-width: 640px) { .w-pay__facts { padding-inline: var(--s4); } .w-pay__actions .btn { inline-size: 100%; } }

/* ---------- بررسی رایگان: فرم ---------- */
.w-check { padding-block: var(--s7) 0; display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: var(--s7); align-items: start; }
.w-check__title { font-family: var(--font-display); font-weight: 700; font-size: clamp(1.6rem, 1.2rem + 1.8vw, 2.4rem); line-height: 1.6;
  color: var(--lapis-800); text-wrap: balance; }
.w-check__form { display: grid; gap: var(--s3); margin-block-start: var(--s5); }
.w-check__row { display: flex; gap: var(--s2); }
.w-check__row .input { flex: 1; min-inline-size: 0; }
.w-check__notes { display: grid; gap: .4rem; font-size: var(--fs-sm); color: var(--ink-3); margin-block-start: var(--s2); }
.w-check__notes li { display: flex; gap: .5rem; align-items: flex-start; }
.w-check__notes .ic { margin-block-start: .3em; color: var(--firooze-600); }
.w-check__side { border-inline-start: 1px solid var(--line); padding-inline-start: var(--s6); display: grid; gap: var(--s3); }
.w-check__side h2 { font-size: var(--fs-md); font-weight: 700; color: var(--lapis-800); }
.w-check__cats { display: grid; gap: 0; }
.w-check__cats li { display: flex; align-items: center; gap: .7rem; padding: .55rem 0; border-block-end: 1px solid var(--line); color: var(--ink-2); }
.w-check__cats li:last-child { border-block-end: 0; }
.w-check__cats li::before { content: ""; inline-size: .6rem; block-size: .6rem; background: var(--firooze-500); transform: rotate(45deg);
  border-radius: 2px; flex: none; }
@media (max-width: 860px) {
  .w-check { grid-template-columns: 1fr; gap: var(--s6); padding-block-start: var(--s6); }
  .w-check__side { border-inline-start: 0; padding-inline-start: 0; border-block-start: 1px solid var(--line); padding-block-start: var(--s5); }
}
@media (max-width: 520px) { .w-check__row { flex-direction: column; } }

/* ---------- بررسی رایگان: نتیجه ---------- */
.w-res__head { padding-block: var(--s6) var(--s5); border-block-end: 1px solid var(--line); background: var(--mist); }
.w-res__title { font-family: var(--font-display); font-weight: 700; font-size: clamp(1.4rem, 1.1rem + 1.4vw, 2rem); line-height: 1.7;
  color: var(--lapis-800); overflow-wrap: anywhere; }
.w-res__meta { display: flex; flex-wrap: wrap; gap: .3rem var(--s4); font-size: var(--fs-sm); color: var(--ink-3); margin-block-start: var(--s2);
  align-items: center; }
.w-res__meta .w-url { max-inline-size: 100%; }
.w-res__hero { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--s5) var(--s7); align-items: center; padding-block: var(--s6); }
.w-res__verdict { font-size: var(--fs-xl); font-weight: 800; color: var(--lapis-800); line-height: 1.7; }
.w-res__sum { display: grid; gap: var(--s3); max-inline-size: 60ch; }
.w-res__counts { display: flex; flex-wrap: wrap; gap: var(--s2); }
.w-res__one { display: flex; gap: .6rem; align-items: flex-start; color: var(--ink-2); font-size: var(--fs-sm); }
.w-res__one .ic { margin-block-start: .35em; color: var(--lapis-500); }
.w-res__cta { display: flex; gap: var(--s3); flex-wrap: wrap; align-items: center; margin-block-start: var(--s2); }
.w-res__grid { display: grid; grid-template-columns: minmax(0, 1.9fr) minmax(0, 1fr); gap: var(--s6); align-items: start; }
.w-res__side { display: grid; gap: var(--s5); position: sticky; inset-block-start: 88px; }
.w-res__h { font-size: var(--fs-lg); font-weight: 800; color: var(--lapis-800); margin-block-end: var(--s3); }
.w-sevgroup + .w-sevgroup { margin-block-start: var(--s5); }
.w-sevgroup__head { display: flex; align-items: center; gap: var(--s3); margin-block-end: var(--s2); color: var(--ink-3); font-size: var(--fs-sm); }
.w-find { border: 1px solid var(--line); border-radius: var(--r); background: var(--paper); }
.w-find + .w-find { margin-block-start: var(--s2); }
.w-find > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: var(--s3); padding: var(--s3) var(--s4);
  font-weight: 700; color: var(--lapis-800); line-height: 1.8; }
.w-find > summary::-webkit-details-marker { display: none; }
.w-find > summary .w-find__title { flex: 1; min-inline-size: 0; }
.w-find > summary .ic { color: var(--ink-4); transition: transform .2s var(--ease); }
.w-find[open] > summary .ic { transform: rotate(180deg); }
.w-find__mark { inline-size: .7rem; block-size: .7rem; border-radius: 2px; transform: rotate(45deg); flex: none; background: var(--ink-4);
  margin-inline: .2rem; }
.w-find--critical .w-find__mark { background: var(--lal-500); } .w-find--high .w-find__mark { background: #e8762b; }
.w-find--medium .w-find__mark { background: var(--saffron-500); } .w-find--low .w-find__mark { background: var(--lapis-500); }
.w-find__count { font-size: var(--fs-xs); font-weight: 600; color: var(--ink-3); background: var(--mist); border-radius: 99px; padding: 0 .55rem; }
.w-find__body { padding: 0 var(--s4) var(--s4); display: grid; gap: var(--s3); border-block-start: 1px solid var(--line); padding-block-start: var(--s3); }
.w-find__body h4 { font-size: var(--fs-xs); font-weight: 700; color: var(--ink-3); margin-block-end: .15rem; }
.w-find__body p { color: var(--ink-2); line-height: 1.9; }
.w-find__fix { border-inline-start: 3px solid var(--firooze-500); padding-inline-start: var(--s3); }
.w-find__ev { background: var(--mist); border-radius: var(--r-sm); padding: var(--s2) var(--s3); font-size: var(--fs-sm); display: grid; gap: .25rem; }
.w-find__ev + .w-find__ev { margin-block-start: var(--s2); }
.w-find__ev div { display: flex; gap: .6rem; flex-wrap: wrap; }
.w-find__ev dt { color: var(--ink-3); flex: none; }
.w-find__ev dd { min-inline-size: 0; overflow-wrap: anywhere; color: var(--ink); }
.w-facts { display: grid; gap: 0; }
.w-facts > div { padding: .7rem 0; border-block-end: 1px solid var(--line); display: grid; gap: .15rem; }
.w-facts > div:last-child { border-block-end: 0; padding-block-end: 0; }
.w-facts > div:first-child { padding-block-start: 0; }
.w-facts dt { font-size: var(--fs-xs); color: var(--ink-3); display: flex; justify-content: space-between; gap: var(--s3); }
.w-facts dd { color: var(--ink); overflow-wrap: anywhere; line-height: 1.8; font-size: var(--fs-sm); }
@media (max-width: 900px) {
  .w-res__grid { grid-template-columns: 1fr; }
  .w-res__side { position: static; }
}
@media (max-width: 640px) {
  .w-res__hero { grid-template-columns: 1fr; justify-items: center; text-align: center; padding-block: var(--s5); }
  .w-res__counts, .w-res__cta { justify-content: center; }
  .w-res__one { text-align: start; }
  .w-res__cta .btn { inline-size: 100%; }
}

/* دعوت به بررسی کل سایت: یک کاشی روشن میان کاشی‌های هنوز بررسی‌نشده */
.w-whole { margin-block-start: var(--s7); background: var(--lapis-900); color: var(--lapis-100); border-radius: var(--r-lg); overflow: hidden;
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; }
.w-whole__text { padding: var(--s7) var(--s6); display: grid; gap: var(--s3); }
.w-whole__title { font-family: var(--font-display); font-weight: 700; font-size: clamp(1.4rem, 1.1rem + 1.2vw, 1.9rem); line-height: 1.8; color: #fff; }
.w-whole__text p { line-height: 2; max-inline-size: 46ch; }
.w-whole__text .btn { justify-self: start; margin-block-start: var(--s2); }
.w-whole__art { align-self: stretch; display: grid; align-items: center; padding: var(--s5); border-inline-start: 1px solid var(--lapis-700); }
.w-whole__art .w-tiles { block-size: auto; }
.w-whole--good { --one: var(--good); } .w-whole--ok { --one: var(--saffron-500); } .w-whole--bad { --one: var(--lal-500); }
.w-whole__cap { font-size: var(--fs-xs); color: var(--lapis-200); text-align: center; margin-block-start: var(--s3); }
@media (max-width: 860px) {
  .w-whole { grid-template-columns: 1fr; }
  .w-whole__art { border-inline-start: 0; border-block-end: 1px solid var(--lapis-700); grid-row: 1; padding: var(--s4); }
  .w-whole__text { padding: var(--s5); }
  .w-whole__text .btn { inline-size: 100%; }
}
.w-again { margin-block-start: var(--s6); display: grid; gap: var(--s3); }
.w-again__form { display: flex; gap: var(--s2); max-inline-size: 560px; }
.w-again__form .input { flex: 1; min-inline-size: 0; }
@media (max-width: 520px) { .w-again__form { flex-direction: column; } }

/* ---------- صفحه‌های متنی ---------- */
.w-doc { display: grid; grid-template-columns: 200px minmax(0, 72ch); gap: var(--s7); align-items: start; }
.w-doc__toc { position: sticky; inset-block-start: 96px; display: grid; gap: .5rem; font-size: var(--fs-sm); border-inline-start: 2px solid var(--line);
  padding-inline-start: var(--s4); }
.w-doc__toc a { color: var(--ink-3); text-decoration: none; line-height: 1.7; }
.w-doc__toc a:hover { color: var(--lapis-600); }
.w-doc__toc-title { font-weight: 700; color: var(--ink-2); font-size: var(--fs-xs); }
.w-doc__body.prose { max-inline-size: none; }
.w-doc__body h2 { font-size: var(--fs-lg); font-weight: 800; color: var(--lapis-800); line-height: 1.7; margin-block-start: 2.2em;
  scroll-margin-block-start: 96px; }
.w-doc__body h2:first-child { margin-block-start: 0; }
.w-doc__body .w-code { margin-block: 1em; }
.w-doc__updated { font-size: var(--fs-sm); color: var(--ink-3); margin-block-start: var(--s2); }
.w-doc__body .w-callout { border: 1px solid var(--line); border-inline-start: 4px solid var(--firooze-500); border-radius: var(--r);
  padding: var(--s4) var(--s5); background: var(--paper); color: var(--ink); }
.w-doc__body .table-wrap { border: 1px solid var(--line); border-radius: var(--r); background: var(--paper); }
.w-doc__body .table th { position: static; }
.w-doc__body .table td { vertical-align: top; line-height: 1.9; }
@media (max-width: 860px) {
  .w-doc { grid-template-columns: 1fr; gap: var(--s5); }
  .w-doc__toc { position: static; border-inline-start: 0; padding-inline-start: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
  .w-doc__toc-title { inline-size: 100%; }
  .w-doc__toc a { border: 1px solid var(--line-strong); border-radius: 99px; padding: .1rem .7rem; background: var(--paper); }
}

/* تماس */
.w-contact { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--s7); align-items: start; }
.w-contact__list { display: grid; gap: 0; border-block-start: 1px solid var(--line); }
.w-contact__row { display: grid; grid-template-columns: 2.6rem minmax(0, 1fr); gap: var(--s4); align-items: center; padding: var(--s4) 0;
  border-block-end: 1px solid var(--line); }
.w-contact__ic { inline-size: 2.6rem; block-size: 2.6rem; display: grid; place-items: center; background: var(--lapis-50); color: var(--lapis-600);
  border-radius: var(--r-tile); }
.w-contact__label { font-size: var(--fs-xs); color: var(--ink-3); }
.w-contact__value { font-size: var(--fs-md); font-weight: 700; color: var(--lapis-800); overflow-wrap: anywhere; }
.w-contact__value a { color: inherit; text-decoration: none; } .w-contact__value a:hover { text-decoration: underline; }
.w-contact__value--text { font-weight: 500; font-size: var(--fs-base); line-height: 1.9; color: var(--ink); }
.w-contact__social { display: flex; gap: var(--s2); flex-wrap: wrap; }
.w-contact__aside .panel__body { display: grid; gap: var(--s2); }
.w-contact__aside .panel__body + .panel__body { border-block-start: 1px solid var(--line); }
.w-contact__aside h2 { font-size: var(--fs-md); font-weight: 700; color: var(--lapis-800); }
@media (max-width: 860px) { .w-contact { grid-template-columns: 1fr; gap: var(--s5); } }

/* ---------- صفحه‌های خطا ---------- */
.w-err { min-block-size: 100dvh; display: grid; place-items: center; padding: var(--s5); background: var(--mist); }
.w-err__card { inline-size: min(100%, 460px); background: var(--paper); border: 1px solid var(--line); border-radius: var(--r-lg);
  padding: var(--s6); display: grid; gap: var(--s3); justify-items: center; text-align: center; }
.w-err__art { inline-size: 150px; block-size: 150px; background: var(--lapis-900); border-radius: var(--r-lg); padding: 10px; margin-block: var(--s3); }
.w-err__code { font-size: var(--fs-sm); font-weight: 700; color: var(--ink-4); letter-spacing: .2em; padding-inline-start: .2em; }
.w-err__title { font-family: var(--font-display); font-weight: 700; font-size: var(--fs-xl); color: var(--lapis-800); line-height: 1.6; }
.w-err__card p { color: var(--ink-2); max-inline-size: 38ch; }
.w-err__actions { display: flex; gap: var(--s2); flex-wrap: wrap; justify-content: center; margin-block-start: var(--s3); }
