/* rieltor-AI · публичные страницы для поиска (30.09.2026, чат «СЕО»): описания инструментов и статьи.
   Ставится ПОСЛЕ /assets/rai-moi.css и /assets/fonts.css. Слой «Моё» не правится: здесь только правила под классами pub-…
   и ни одного своего цвета — цвет берётся токеном слоя (var(--rai-…)) или color-mix от него. Так страницы идут за слоем,
   когда «Карточка» меняет палитру, а помощник цвета (скрипты/палитра-слоя.mjs) не находит чужих цветов.
   Страницы без скриптов: разметка читается поисковиком как есть, раскрытие вопросов — <details>.
   Движение: только цвет, рамка, тень и transform, 150–300 мс; при prefers-reduced-motion выключено. */

.pub{margin:0;background:var(--rai-bg);color:var(--rai-fg);font-size:17px;line-height:1.7;min-height:100vh;min-height:100dvh;overflow-x:hidden;position:relative}
.pub::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(56vw 56vw at -6vw -10vw,color-mix(in srgb,var(--rai-brand) 14%,transparent),transparent 62%),
    radial-gradient(44vw 44vw at 106vw 30vh,color-mix(in srgb,var(--rai-cyan) 8%,transparent),transparent 62%),
    radial-gradient(38vw 38vw at 40vw 108vh,color-mix(in srgb,var(--rai-magenta) 6%,transparent),transparent 62%)}
.pub *,.pub *::before,.pub *::after{box-sizing:border-box}
.pub a{color:var(--rai-cyan-soft);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--rai-cyan-soft) 40%,transparent);text-underline-offset:3px;
  transition:color var(--rai-dur) var(--rai-ease),text-decoration-color var(--rai-dur) var(--rai-ease)}
.pub a:hover{color:var(--rai-fg);text-decoration-color:var(--rai-cyan-soft)}
.pub a:focus-visible,.pub summary:focus-visible{outline:2px solid var(--rai-cyan);outline-offset:3px;border-radius:6px}

/* ── шапка ── */
.pub-top{position:sticky;top:0;z-index:5;border-bottom:1px solid var(--rai-line);
  background:color-mix(in srgb,var(--rai-bg) 82%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.pub-top__in{max-width:960px;margin:0 auto;padding:0 20px;min-height:60px;display:flex;align-items:center;gap:8px 22px;flex-wrap:wrap}
.pub-brand{font-weight:600;font-size:16px;color:var(--rai-fg)!important;text-decoration:none!important;letter-spacing:-.01em;display:inline-flex;align-items:center;min-height:44px}
.pub-brand span{color:var(--rai-brand-ico)}
.pub-nav{display:flex;align-items:center;gap:4px 18px;flex-wrap:wrap;margin-left:auto}
.pub-nav a{font-size:14px;color:var(--rai-fg2);text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.pub-nav a:hover{color:var(--rai-fg)}
.pub-nav .rai-btn{color:var(--rai-cyan-soft);font-size:13px;min-height:40px}
.pub-nav .rai-btn:hover{color:var(--rai-cyan-soft)}

/* ── колонка ── */
.pub-wrap{max-width:760px;margin:0 auto;padding:36px 20px 72px}
.pub-wrap--wide{max-width:960px}
.pub-crumbs{font-size:13px;color:var(--rai-caption);margin:0 0 28px;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:4px 8px}
.pub-crumbs li+li::before{content:"/";margin-right:8px;color:var(--rai-none)}
.pub-crumbs a{color:var(--rai-fg3);text-decoration:none}
.pub-crumbs a:hover{color:var(--rai-fg)}

/* ── заголовки и текст ── */
.pub h1{margin:10px 0 18px;font-size:clamp(30px,5.2vw,46px);line-height:1.13;font-weight:600;letter-spacing:-.022em;color:var(--rai-fg);overflow-wrap:break-word}
.pub h2{margin:52px 0 14px;font-size:clamp(22px,3.4vw,28px);line-height:1.22;font-weight:600;letter-spacing:-.015em;color:var(--rai-fg)}
.pub h3{margin:28px 0 8px;font-size:18px;line-height:1.3;font-weight:600;color:var(--rai-fg)}
.pub p{margin:0 0 18px;color:var(--rai-fg2)}
.pub strong{color:var(--rai-fg);font-weight:600}
.pub ul,.pub ol{margin:0 0 20px;padding-left:22px;color:var(--rai-fg2)}
.pub li{margin:0 0 8px}
.pub li::marker{color:var(--rai-brand-ico)}
.pub-lead{font-size:clamp(18px,2.4vw,21px);line-height:1.6;color:var(--rai-fg2);margin:0 0 26px}
.pub-meta{font-size:13px;color:var(--rai-caption);margin:0 0 24px;display:flex;flex-wrap:wrap;gap:4px 14px}
.pub-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin:8px 0 8px}
.pub-actions .rai-btn{height:48px;padding:0 24px;font-size:15px;text-decoration:none}
.pub-actions .rai-btn:hover{color:var(--rai-cyan-soft)}
.pub-small{font-size:13.5px;color:var(--rai-caption);margin:10px 0 0}

/* ── карточки, шаги, сетки ── */
.pub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:0 0 26px}
.pub-card{padding:18px 18px 16px}
.pub-card h3{margin:0 0 6px;font-size:16px}
.pub-card p{margin:0;font-size:15px;line-height:1.55;color:var(--rai-fg3)}
.pub-steps{list-style:none;padding:0;margin:0 0 26px;counter-reset:pub-step}
.pub-steps li{position:relative;margin:0 0 14px;padding:2px 0 2px 52px;counter-increment:pub-step;min-height:38px}
.pub-steps li::before{content:counter(pub-step);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;color:var(--rai-cyan-soft);
  border:1px solid color-mix(in srgb,var(--rai-cyan) 45%,transparent);background:color-mix(in srgb,var(--rai-cyan) 12%,transparent)}
.pub-steps strong{display:block;margin-bottom:2px}
.pub-list-plain{list-style:none;padding:0}
.pub-list-plain li{padding-left:0}

/* ── врезки ── */
.pub-note{margin:30px 0;padding:18px 20px;border-radius:var(--rai-radius-sm);border:1px solid color-mix(in srgb,var(--rai-warn) 40%,transparent);background:color-mix(in srgb,var(--rai-warn) 7%,transparent)}
.pub-note h3{margin:0 0 8px;font-size:15px;color:var(--rai-warn)}
.pub-note p,.pub-note li{color:var(--rai-fg2);font-size:15.5px}
.pub-note p:last-child,.pub-note ul:last-child{margin-bottom:0}
.pub-pillar{margin:30px 0;padding:20px 22px;border-radius:var(--rai-radius);border:1px solid color-mix(in srgb,var(--rai-brand) 28%,transparent);background:color-mix(in srgb,var(--rai-brand) 7%,transparent);box-shadow:var(--rai-glow-brand)}
.pub-pillar p{margin:0;color:var(--rai-fg)}
.pub-example{margin:26px 0;padding:18px 20px;border-radius:var(--rai-radius-sm);border:1px dashed var(--rai-line-strong)}
.pub-example .rai-cap{display:block;margin-bottom:10px}
.pub-example p:last-child{margin-bottom:0}
.pub-dialog{margin:0 0 18px;padding:0;list-style:none}
.pub-dialog li{margin:0 0 10px;padding:10px 14px;border-radius:var(--rai-radius-sm);border:1px solid var(--rai-line);font-size:15.5px}
.pub-dialog li b{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:500;color:var(--rai-cap);margin-bottom:3px}
.pub-dialog li.is-you{border-color:color-mix(in srgb,var(--rai-cyan) 30%,transparent);background:color-mix(in srgb,var(--rai-cyan) 6%,transparent)}
.pub-table{margin:6px 0 20px}
.pub-table .rai-table{font-size:14.5px}
.pub-table .rai-table td,.pub-table .rai-table th{padding:10px 8px}
.pub-table tr.is-off td{color:var(--rai-caption);text-decoration:line-through;text-decoration-color:var(--rai-none)}
.pub-table .rai-table th{white-space:normal;letter-spacing:.08em}
@media (max-width:560px){.pub-table .rai-table{font-size:14px}.pub-table .rai-table td,.pub-table .rai-table th{padding:9px 4px}}

/* ── вопросы ── */
.pub-faq{margin:0 0 26px;border-top:1px solid var(--rai-line)}
.pub-faq details{border-bottom:1px solid var(--rai-line)}
.pub-faq summary{list-style:none;cursor:pointer;padding:16px 34px 16px 0;font-size:17px;font-weight:500;color:var(--rai-fg);position:relative;min-height:44px}
.pub-faq summary::-webkit-details-marker{display:none}
.pub-faq summary::after{content:"+";position:absolute;right:4px;top:12px;font-size:22px;line-height:1;color:var(--rai-brand-ico);transition:transform var(--rai-dur) var(--rai-ease)}
.pub-faq details[open] summary::after{transform:rotate(45deg)}
.pub-faq details>*:not(summary){margin-top:0}
.pub-faq details p{padding:0 0 16px;margin:0;color:var(--rai-fg2)}

/* ── призыв, связанное, подвал ── */
.pub-cta{margin:56px 0 0;padding:26px 24px;text-align:center}
.pub-cta h2{margin:0 0 8px;font-size:clamp(21px,3vw,26px)}
.pub-cta p{margin:0 auto 18px;max-width:520px;color:var(--rai-fg3)}
.pub-cta .rai-btn{height:48px;padding:0 26px;font-size:15px;text-decoration:none}
.pub-cta .rai-btn:hover{color:var(--rai-cyan-soft)}
.pub-related{list-style:none;padding:0;margin:0 0 26px;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.pub-related li{margin:0}
.pub-related a{display:block;padding:14px 16px;border-radius:var(--rai-radius-sm);border:1px solid var(--rai-line);text-decoration:none;color:var(--rai-fg);font-size:15px;
  transition:border-color var(--rai-dur) var(--rai-ease),box-shadow var(--rai-dur) var(--rai-ease)}
.pub-related a:hover{border-color:color-mix(in srgb,var(--rai-brand) 45%,transparent);box-shadow:var(--rai-glow-brand);color:var(--rai-fg)}
.pub-related small{display:block;margin-top:3px;font-size:13px;color:var(--rai-caption)}
.pub-foot{border-top:1px solid var(--rai-line);padding:28px 20px 44px;font-size:14px;color:var(--rai-caption)}
.pub-foot__in{max-width:960px;margin:0 auto;display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center}
.pub-foot a{color:var(--rai-fg3);text-decoration:none}
.pub-foot a:hover{color:var(--rai-fg)}
.pub-foot__sig{margin-left:auto}

@media (max-width:560px){
  .pub{font-size:16.5px}
  .pub-wrap{padding:26px 18px 56px}
  .pub-top__in{padding:0 14px;gap:0 12px}
  .pub-nav{gap:0 12px}
  .pub-nav a.pub-nav__hide{display:none}
  .pub h2{margin-top:42px}
  .pub-steps li{padding-left:46px}
  .pub-cta{padding:22px 16px}
  .pub-foot__sig{margin-left:0;width:100%}
}
@media (prefers-reduced-motion:reduce){
  .pub a,.pub-faq summary::after,.pub-related a{transition:none}
}
@media print{
  .pub-top,.pub-cta,.pub-foot,.pub-related{display:none}
  .pub::before{display:none}
}
