/* tools/pro-page.css — общий стандарт страниц PRO-инструментов (решение владельца 2026-10-27):
   нижняя панель запуска (templates/tools/_pro_launch.html). Подключают все 10 страниц после своих стилей.
   Только токены base.css; тёмная по умолчанию, светлая — html.light. Без inline-стилей. */

/* ── нижняя панель запуска: слева текст по верху, справа карточка входа (гость) или кнопка (вошедший) ── */
.pl-launch {
  display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: var(--space-lg) var(--space-2xl); align-items: start;
  margin-top: var(--space-xl); padding: var(--space-lg); border-radius: var(--radius-sm);
  background: var(--bg-input); border: 1px solid var(--border);
}
.pl-launch [hidden] { display: none; }
.pl-info { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-xs); min-width: 0; }
.pl-info-main { margin: 0; font-size: var(--fs-lg); color: var(--text); line-height: 1.4; font-variant-numeric: tabular-nums; }
.pl-info-main b { font-weight: 700; }
.pl-info-main:empty { display: none; }
.pl-info-sub { margin: 0; font-size: var(--fs-sm); color: var(--text-dim); line-height: 1.5; max-width: 560px; }
.pl-info-sub:empty { display: none; }
.pl-info-warn { color: var(--yellow); }
.pl-info > .btn { margin-top: var(--space-sm); min-width: 240px; min-height: 48px; justify-content: center; }
.pl-info .pos-linkbtn { font-size: var(--fs-sm); }
.pl-side { min-width: 0; }
.pl-reg { display: flex; flex-direction: column; align-items: stretch; gap: var(--space-sm); }
.pl-reg .btn { justify-content: center; }
.pl-captcha { margin: var(--space-sm) 0 0; font-size: var(--fs-xs); color: var(--text-muted); }
.pl-captcha a { color: inherit; }

/* вошедший: слева смета и баланс, справа — кнопки по низу */
.pl-launch--user { grid-template-columns: minmax(0, 1fr) auto; align-items: end; }
.pl-launch--user .pl-info { align-items: stretch; }
.pl-launch--user .pl-side { display: flex; flex-direction: column; align-items: flex-end; gap: var(--space-sm); }
.pl-launch--user .pl-side .btn { min-width: 240px; min-height: 48px; justify-content: center; }
.pl-launch--user .pl-side .pos-check-line { font-size: var(--fs-sm); }
.pl-launch .pos-sum-list { font-size: var(--fs-sm); }
.pl-launch .pos-sum-row > span:first-child { min-width: 0; }
.pl-launch .pos-sum-row > b { white-space: nowrap; }
.pl-launch .pos-sum-row--total > span:first-child { color: var(--text); font-weight: 600; }
.pl-launch .sem-help { margin: 0; }
.pl-bal { display: flex; gap: var(--space-lg); flex-wrap: wrap; align-items: center; font-size: var(--fs-sm); color: var(--text-dim); }
.pl-bal:empty { display: none; }
.pl-bal b { color: var(--text); font-variant-numeric: tabular-nums; }

@media (max-width: 900px) {
  .pl-launch { grid-template-columns: minmax(0, 1fr) minmax(0, 340px); gap: var(--space-lg); }
}
/* узкий экран: колонки в столбик — текст и кнопка, под ними карточка входа */
@media (max-width: 640px) {
  .pl-launch, .pl-launch--user { grid-template-columns: minmax(0, 1fr); padding: var(--space-md); }
  .pl-info > .btn, .pl-launch--user .pl-side .btn { width: 100%; min-width: 0; }
  .pl-launch--user .pl-side { align-items: stretch; }
}
/* вошедший без суммы: остаток квоты обычной строкой */
.pl-info-main--sm { font-size: var(--fs-md); color: var(--text-dim); }
.pl-info-main--sm b { color: var(--text); font-weight: 600; }

/* «Сколько проверок бесплатно» — карточки тарифов под формой */
.pl-plans { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-md); }
.pl-plan { display: flex; flex-direction: column; gap: var(--space-2xs); padding: var(--space-lg); border-radius: var(--radius); border: 1px solid var(--border); background: var(--bg-card); }
.light .pl-plan { border-color: transparent; box-shadow: var(--shadow-sm); }
.pl-plan-n { font-size: var(--fs-sm); font-weight: 600; color: var(--text-dim); }
.pl-plan-v { font-family: var(--font-heading); font-size: calc(var(--fs-base) + 13px); font-weight: 700; color: var(--text); line-height: 1.1; font-variant-numeric: tabular-nums; }
.pl-plan-d { font-size: var(--fs-sm); color: var(--text-dim); line-height: 1.45; }
.pl-plans-foot { margin: var(--space-md) 0 0; font-size: var(--fs-md); color: var(--text-dim); line-height: 1.6; }
.pl-plans-foot b { color: var(--text); font-weight: 600; }
@media (max-width: 900px) { .pl-plans { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-sm); } }
html.light .pl-info-warn { color: color-mix(in srgb, var(--yellow) 65%, var(--text)); }
/* в карточке-колонке с gap (cs-form: коммерциализация, подсказки, кластеризация) — тот же ритм, что у остальных */
.cs-form > .pl-launch { margin-top: calc(var(--space-xl) - var(--space-lg)); }
.cs-form > .pl-captcha { margin-top: calc(var(--space-sm) - var(--space-lg)); }
.pl-reg .sem-guest-t, .pl-reg .cs-est-cap { margin: 0; font-size: var(--fs-sm); color: var(--text-dim); line-height: 1.5; }
.pl-reg .pos-linkbtn { align-self: center; font-size: var(--fs-sm); }
/* вошедший: смета не растягивается на всю ширину — суммы рядом с подписями */
.pl-launch--user .pl-info { max-width: 640px; }
.pl-launch .cs-est-meta { justify-content: flex-start; }

/* ── шапка: крошки, H1, подзаголовок, три тезиса с галочкой (templates/tools/_pro_head.html) ── */
.pl-head { margin-bottom: var(--space-lg); }
.pl-head .pos-page-title { margin: 0; line-height: 1.2; }
.pl-head .pos-page-sub { max-width: 860px; line-height: 1.5; }
.pl-theses { display: flex; flex-wrap: wrap; gap: var(--space-xs) var(--space-lg); margin: var(--space-sm) 0 0; padding: 0; list-style: none; }
.pl-theses li { display: inline-flex; align-items: center; gap: var(--space-xs); font-size: var(--fs-sm); color: var(--text-dim); }
.pl-theses svg { color: var(--accent); flex-shrink: 0; }

/* ── контейнер: одна ширина и поля у всех 10 страниц (tool_base — main.tool-page, «Семантика» — div.layout) ── */
.tool-page.pl-page, .layout.pl-page { max-width: 1200px; margin: 0 auto; padding: var(--space-xl) 28px var(--space-4xl); box-sizing: border-box; }
.pl-page .pos-crumbs { margin-bottom: var(--space-sm); }
.pl-page .sem-tabs { margin-bottom: var(--space-xl); }
.pl-page .tool-input-card { padding: var(--space-xl); margin-bottom: var(--space-xl); }
@media (max-width: 900px) {
  .pl-theses { flex-direction: column; gap: var(--space-2xs); }
}
@media (max-width: 768px) {
  .tool-page.pl-page, .layout.pl-page { padding: var(--space-lg) var(--space-lg) var(--space-4xl); }
  .pl-page .tool-input-card { padding: var(--space-lg); }
}

/* ── SEO-текст под формой: одна ширина колонки на всех 10 страницах; карточки «Проверить сайт» и «Похожие» — во всю ширину ── */
.pl-page :is(.tool-guide, .tool-terms, .tool-faq, .tool-more), .pl-page .sem-seo { max-width: 860px; }
.pl-page .tool-cta { margin-top: var(--space-3xl); }
.pl-page .sem-seo + .tool-others { margin-top: var(--space-3xl); }
