/* ============================================================
   public.css — публичные SSR-статьи (SEO). Светлая тема, mobile-first,
   читабельная типографика. Бренд #2dd4bf. Скоуп .article-body.
   ============================================================ */
:root{
  --brand:#2dd4bf;--brand-2:#14b8a6;--brand-ink:#062a26;
  --ink:#16181d;--ink-soft:#41454f;--ink-mut:#6b7280;
  --bg:#ffffff;--panel:#f6f8fa;--border:#e6e8ee;
  --ok:#1a7f37;--ok-bg:#eaf6ec;--warn:#b3631a;--warn-bg:#fdf2e7;--danger:#b42318;--danger-bg:#fdecec;
  --sans:-apple-system,system-ui,"Segoe UI",Roboto,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;}
body.public{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;}

/* header */
.site-head{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:12px 16px;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--border);}
.site-head .brand{font-weight:800;font-size:15px;color:var(--ink);text-decoration:none;letter-spacing:-.01em;}
.site-head .head-cta{font:700 13px var(--sans);background:var(--brand);color:var(--brand-ink);padding:9px 14px;border-radius:10px;text-decoration:none;white-space:nowrap;}

/* layout */
.article-wrap{max-width:720px;margin:0 auto;padding:20px 16px 64px;}
.legal-wrap h1{font-size:1.55rem;line-height:1.25;font-weight:800;letter-spacing:-.01em;margin:8px 0 18px;}
ol.legal{margin:0;padding-left:22px;}
ol.legal li{margin:0 0 14px;line-height:1.6;font-size:15px;}
.crumbs{font-size:13px;color:var(--ink-mut);margin:0 0 14px;line-height:1.5;}
.crumbs a{color:var(--ink-mut);text-decoration:none;}
.crumbs a:hover{text-decoration:underline;}
.crumbs-sep{margin:0 7px;opacity:.55;}
.crumbs-cur{color:var(--ink-soft);}
.article h1{font-size:1.85rem;line-height:1.2;font-weight:800;letter-spacing:-.02em;margin:8px 0 10px;}
.article-meta{color:var(--ink-mut);font-size:13.5px;display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border);}

/* body typography */
.article-body{font-size:17px;}
.article-body h2{font-size:1.4rem;font-weight:800;letter-spacing:-.01em;margin:34px 0 12px;}
.article-body h3{font-size:1.15rem;font-weight:700;margin:24px 0 8px;}
.article-body p{margin:0 0 16px;}
.article-body a{color:var(--brand-2);}
.article-body ul,.article-body ol{margin:0 0 16px;padding-left:22px;}
.article-body li{margin:6px 0;}
.article-body img{max-width:100%;height:auto;border-radius:12px;}
.article-body strong{font-weight:700;}
.article-body blockquote{margin:16px 0;padding:10px 14px;background:var(--panel);border-left:3px solid var(--brand);border-radius:8px;color:var(--ink-soft);}
.article-body hr{border:none;border-top:1px solid var(--border);margin:28px 0;}
.article-body figure{margin:18px 0;}
.article-body figcaption{font-size:13px;color:var(--ink-mut);margin-top:6px;text-align:center;}

/* таблицы норм — ОБЯЗАТЕЛЬНО overflow-x на мобиле (узкие экраны) */
.article-body .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 18px;border:1px solid var(--border);border-radius:12px;}
.article-body table{border-collapse:collapse;width:100%;min-width:480px;font-size:14.5px;}
.article-body th{background:var(--brand);color:var(--brand-ink);font-weight:700;text-align:left;padding:11px 12px;white-space:nowrap;}
.article-body td{padding:10px 12px;border-top:1px solid var(--border);}
.article-body tbody tr:nth-child(even){background:var(--panel);}

/* ---- компоненты шорткодов ---- */
.btn-primary{display:inline-block;background:var(--brand);color:var(--brand-ink);font-weight:700;padding:13px 20px;border-radius:12px;text-decoration:none;border:none;cursor:pointer;}
.btn-primary:hover{background:var(--brand-2);}
.cta{margin:22px 0;}
.cta--inline{padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:14px;text-align:center;}

.service-promo,.lead-capture{margin:24px 0;padding:18px;background:var(--panel);border:1px solid var(--border);border-radius:16px;}
.service-promo h3,.lead-capture h3{margin:0 0 8px;font-size:1.15rem;}
.service-promo ul{margin:10px 0 14px;padding-left:20px;}
.service-promo li{margin:6px 0;}
.service-promo .btn-primary,.lead-capture .btn-primary{margin-top:6px;}
.micro{font-size:12.5px;color:var(--ink-mut);margin:10px 0 0;}

/* онко (YMYL): спокойный doctor-direct callout (не алармизм) + нейтральная подпись в шапке/подвале */
.doctor-cta{margin:22px 0;padding:16px 18px;background:rgba(45,212,191,.08);border:1px solid var(--brand);border-radius:16px;}
.doctor-cta p{margin:0;font-size:15px;line-height:1.55;}
.doctor-cta .micro{margin-top:8px;}
/* кросс-линк на генеалогию (наследств. факторы риска) */
.family-tree-cta{margin:22px 0;padding:16px 18px;background:var(--panel);border:1px solid var(--border);border-radius:16px;}
.family-tree-cta p{margin:0 0 10px;font-size:15px;line-height:1.55;}
.family-tree-cta .ft-cta{display:inline-block;color:var(--brand-2);font-weight:700;text-decoration:none;}
.site-head .head-note,.foot-note{font-size:13px;color:var(--ink-soft);}

/* reference scale */
.ref-scale{margin:20px 0;padding:16px;border:1px solid var(--border);border-radius:16px;background:#fff;}
.ref-scale .rs-title{font-weight:800;margin-bottom:10px;}
.ref-scale .rs-row{display:flex;align-items:center;gap:10px;margin:8px 0;flex-wrap:wrap;}
.ref-scale .rs-sex{flex:0 0 88px;font-size:13px;color:var(--ink-mut);font-weight:600;}
.ref-scale .rs-zones{display:flex;flex:1;min-width:220px;border-radius:8px;overflow:hidden;border:1px solid var(--border);font-size:12.5px;font-weight:600;}
.ref-scale .rs-zones>span{padding:7px 8px;text-align:center;flex:1;white-space:nowrap;}
.ref-scale .rs-lo{background:var(--danger-bg);color:var(--danger);}
.ref-scale .rs-ok{background:var(--ok-bg);color:var(--ok);flex:1.4;}
.ref-scale .rs-hi{background:var(--warn-bg);color:var(--warn);}
.ref-scale .rs-cta{display:inline-block;margin-top:10px;color:var(--brand-2);font-weight:700;text-decoration:none;}
.ref-scale .rs-disc{font-size:12px;color:var(--ink-mut);margin:8px 0 0;}
/* узкие экраны (<380px): метка пола на отдельную строку, шкала во всю ширину */
@media (max-width:380px){
  .ref-scale .rs-sex{flex:1 0 100%;}
  .ref-scale .rs-zones{min-width:0;font-size:11px;}
  .ref-scale .rs-zones>span{padding:6px 4px;}
}

/* writer-фолбэки (если компонент не отрендерился) */
.cta-inline,.cta-final{margin:22px 0;padding:16px;background:var(--panel);border:1px solid var(--border);border-radius:14px;text-align:center;}
.infographic{margin:18px 0;}

/* footer */
.article-foot{max-width:720px;margin:36px auto 0;padding:18px 16px 0;border-top:1px solid var(--border);}
.disc-full{font-size:13px;color:var(--ink-mut);line-height:1.55;}
.foot-links{font-size:13.5px;margin-top:10px;}
.foot-links a{color:var(--brand-2);text-decoration:none;}

/* ---- лендинг ---- */
.hero{max-width:760px;margin:0 auto;padding:48px 16px 28px;text-align:center;}
.hero .logo{font-size:52px;}
.hero h1{font-size:2rem;font-weight:800;letter-spacing:-.02em;margin:12px 0 10px;}
.hero p.sub{font-size:17px;color:var(--ink-soft);margin:0 auto 20px;max-width:560px;}
.hero .btn-primary{font-size:16px;padding:15px 26px;}
/* облако тегов «Также распознаём:» (#48) */
.tag-cloud{max-width:760px;margin:18px auto 0;padding:0 16px;}
.tag-cloud-label{font-size:13px;color:var(--ink-mut);margin:0 0 10px;text-align:center;}
.tag-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
.tag-pill{display:inline-block;padding:5px 13px;border:1px solid var(--border);border-radius:99px;font-size:13px;color:var(--ink-soft);text-decoration:none;background:var(--panel);transition:border-color .15s,color .15s;}
.tag-pill:hover{border-color:var(--brand);color:var(--brand);}
.values{max-width:760px;margin:8px auto 0;padding:0 16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;}
.value{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:16px;}
.value .ic{font-size:24px;}
.value h3{margin:8px 0 4px;font-size:15px;}
.value p{margin:0;font-size:13.5px;color:var(--ink-soft);}
.articles{max-width:760px;margin:36px auto 0;padding:0 16px;}
.articles h2{font-size:1.3rem;margin:0 0 14px;}
.art-card{display:block;padding:14px 16px;border:1px solid var(--border);border-radius:14px;margin-bottom:10px;text-decoration:none;color:var(--ink);}
.art-card:hover{border-color:var(--brand);}
.art-card b{font-size:15px;}
.art-card p{margin:4px 0 0;font-size:13px;color:var(--ink-mut);}
.land-foot{max-width:760px;margin:40px auto 0;padding:18px 16px 56px;border-top:1px solid var(--border);font-size:12.5px;color:var(--ink-mut);}

/* ---- секции лендинга ---- */
.section{max-width:880px;margin:0 auto;padding:34px 16px 0;}
.section>h2{font-size:1.5rem;font-weight:800;letter-spacing:-.01em;text-align:center;margin:0 0 18px;}
.center{text-align:center;}
.section .muted.center{max-width:620px;margin:0 auto;}

/* как работает */
.steps-land{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;}
.step-card{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:18px 16px;}
.step-card .sc-n{position:absolute;top:12px;right:14px;font:800 14px var(--sans);color:var(--brand-2);opacity:.5;}
.step-card .sc-ic{font-size:28px;}
.step-card h3{margin:8px 0 4px;font-size:15px;}
.step-card p{margin:0;font-size:13.5px;color:var(--ink-soft);}

/* тарифы */
.pricing .plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:start;}
.plan-card{position:relative;background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px 18px;text-align:center;}
.plan-card.best{border-color:var(--brand);box-shadow:0 8px 24px rgba(45,212,191,.18);}
.plan-card .pc-tag{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--brand);color:var(--brand-ink);font:700 10px var(--sans);text-transform:uppercase;padding:4px 12px;border-radius:99px;}
.plan-card .pc-name{font-weight:700;font-size:15px;color:var(--ink-soft);}
.plan-card .pc-price{font:800 30px var(--sans);margin:6px 0 12px;}
.plan-card .pc-price small{font-size:14px;color:var(--ink-mut);font-weight:600;}
.plan-card .pc-note{font-size:12px;color:var(--ink-mut);margin:-8px 0 12px;}
.plan-card ul{list-style:none;padding:0;margin:0 0 16px;text-align:left;}
.plan-card li{font-size:13.5px;color:var(--ink-soft);padding:6px 0 6px 22px;position:relative;border-top:1px solid var(--border);}
.plan-card li:first-child{border-top:none;}
.plan-card li::before{content:"✓";position:absolute;left:0;color:var(--brand-2);font-weight:800;}
.plan-card .btn-primary{width:100%;}
.plan-card .btn-primary.sec{background:var(--panel);color:var(--ink);border:1px solid var(--border);}

/* какие анализы */
.covered-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;}
.cov-col{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:16px 18px;}
.cov-col h3{font-size:15px;margin:0 0 8px;}
.cov-col.cov-yes{border-color:var(--brand);}
.cov-col ul{margin:0;padding-left:20px;}
.cov-col li{font-size:14px;color:var(--ink-soft);margin:7px 0;line-height:1.5;}
.cov-col.cov-soon li{color:var(--ink-mut);}

/* faq */
.faq-land details{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:2px 16px;margin-bottom:10px;}
.faq-land summary{cursor:pointer;font-weight:700;font-size:15px;padding:14px 0;list-style:none;}
.faq-land summary::-webkit-details-marker{display:none;}
.faq-land summary::after{content:"+";float:right;color:var(--brand-2);font-weight:800;}
.faq-land details[open] summary::after{content:"–";}
.faq-land details p{margin:0 0 14px;font-size:14.5px;color:var(--ink-soft);line-height:1.55;}

/* hero компактный (страница тарифов) */
.hero.compact{padding:36px 16px 8px;}
.hero.compact h1{font-size:1.8rem;}

/* #413 W2: сгруппированный каталог по категориям */
.catalog-wrap{max-width:980px;margin:0 auto;padding:14px 16px 56px;}
.catalog-wrap .hero.compact{padding:8px 0 4px;text-align:left;}
.catalog-wrap .crumbs{margin:0 0 6px;}
.cat-toc{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 28px;}
.cat-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border);
  border-radius:999px;font-size:13px;color:var(--ink-soft);text-decoration:none;background:var(--panel);}
.cat-chip:hover{border-color:var(--brand);color:var(--ink);}
.cat-chip span{font-size:11px;color:var(--ink-mut);}
.cat-section{margin:0 0 34px;scroll-margin-top:72px;}
.cat-title{font-size:1.3rem;font-weight:800;letter-spacing:-.01em;margin:0 0 14px;
  padding-bottom:8px;border-bottom:2px solid var(--brand);display:flex;align-items:baseline;gap:8px;}
.cat-count{font-size:13px;font-weight:600;color:var(--ink-mut);}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;}
.cat-grid .art-card{margin-bottom:0;}
@media(max-width:560px){.cat-grid{grid-template-columns:1fr;}}

/* сравнительная таблица тарифов */
.compare-table{border-collapse:collapse;width:100%;min-width:520px;font-size:14px;}
.compare-table th{background:var(--brand);color:var(--brand-ink);font-weight:700;text-align:center;padding:12px 10px;}
.compare-table th:first-child{text-align:left;}
.compare-table td{padding:11px 10px;border-top:1px solid var(--border);text-align:center;color:var(--ink-soft);}
.compare-table td:first-child{text-align:left;font-weight:600;color:var(--ink);}
.compare-table tbody tr:nth-child(even){background:var(--panel);}

/* финальный cta */
.cta-band{text-align:center;background:var(--brand-soft);border-radius:20px;padding:34px 16px;margin-top:40px;}
.cta-band h2{margin-bottom:16px;}
.cta-band .btn-primary{font-size:16px;padding:15px 28px;}

/* #167 демо-расшифровка — тёмный блок с цветными карточками + шкалами + анимацией */
.demo-result{background:#0c0d10;padding:48px 0;margin:40px 0;}
.demo-inner{max-width:760px;margin:0 auto;padding:0 18px;text-align:center;}
.demo-result h2{color:#f3f4f7;font-size:24px;font-weight:800;margin:0 0 6px;}
.demo-sub{color:#9bab9f;font-size:14.5px;margin:0 0 24px;}
.demo-grid{display:grid;grid-template-columns:1fr;gap:12px;text-align:left;margin-bottom:24px;}
@media(min-width:560px){.demo-grid{grid-template-columns:1fr 1fr;}}
.dcard{background:#1b1d24;border:1px solid #2a2c36;border-left:4px solid #6b7280;border-radius:14px;padding:13px 15px;box-shadow:0 4px 16px rgba(0,0,0,.3);}
.dcard-g{border-left-color:#4ade80;}.dcard-y{border-left-color:#fbbf24;}.dcard-r{border-left-color:#f87171;}
.dcard-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:9px;}
.dcard-name{color:#f3f4f7;font-weight:700;font-size:14.5px;}
.dcard-val{font:800 16px var(--sans);font-variant-numeric:tabular-nums;}
.dcard-val small{font-size:11px;font-weight:600;color:#888c9b;}
.dcard-val.g{color:#4ade80;}.dcard-val.y{color:#fbbf24;}.dcard-val.r{color:#f87171;}
.dbar{position:relative;height:7px;border-radius:99px;background:#2a2c36;margin:4px 0 10px;}
.dbar-zone{position:absolute;top:0;bottom:0;background:rgba(74,222,128,.22);border-radius:99px;}
.dbar-dot{position:absolute;top:50%;width:13px;height:13px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid #1b1d24;box-shadow:0 1px 4px rgba(0,0,0,.5);}
.dbar-dot.g{background:#4ade80;}.dbar-dot.y{background:#fbbf24;}.dbar-dot.r{background:#f87171;}
.dcard-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;}
.dcard-badge{font:700 12px var(--sans);white-space:nowrap;padding:2px 9px;border-radius:99px;}
.dcard-badge.g{background:rgba(74,222,128,.15);color:#4ade80;}
.dcard-badge.y{background:rgba(251,191,36,.15);color:#fbbf24;}
.dcard-badge.r{background:rgba(248,113,113,.15);color:#f87171;}
.dcard-norm{font-size:12px;color:#888c9b;}
.demo-cta-sub{color:#c7d0ca;font-size:15px;font-weight:600;margin:0 0 12px;}
.demo-result .btn-primary{font-size:16px;padding:15px 30px;}
.demo-disc{color:#6b7280;font-size:12px;margin-top:14px;}
/* stagger fade-in (включается JS-ом → .demo-anim; без JS карточки видны) */
.demo-anim .dcard{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease;transition-delay:calc(var(--d) * 60ms);}
.demo-anim .dcard.in-view{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.demo-anim .dcard{opacity:1;transform:none;transition:none;}}

/* #293 P1: sticky-header (48px) перекрывает якоря при anchor-навигации.
   scroll-margin-top = высота .site-head + буфер. */
[id]{scroll-margin-top:60px;}

/* ============================================================
   #619 Sprint 2 — интерактивный градусник, поиск каталога, тумблер темы.
   Все стили используют CSS-переменные → работают и в light, и в dark.
   ============================================================ */

/* ---- тумблер темы в шапке ---- */
.pub-theme-tgl{background:var(--panel);border:1px solid var(--border);color:var(--ink-soft);
  width:38px;height:38px;min-width:38px;border-radius:10px;cursor:pointer;font-size:16px;line-height:1;
  display:inline-flex;align-items:center;justify-content:center;flex:none;}
.pub-theme-tgl:hover{border-color:var(--brand);color:var(--ink);}

/* ---- интерактивный градусник (public.js строит внутри .ref-scale) ---- */
.rs-therm{margin:12px 0 4px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--panel);}
.rs-therm-in{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.rs-therm-in .rs-val{flex:1;min-width:0;font:700 17px var(--sans);padding:11px 13px;border:1px solid var(--border);
  border-radius:12px;background:var(--bg);color:var(--ink);-webkit-appearance:none;}
.rs-therm-in .rs-val:focus{outline:none;border-color:var(--brand);}
.rs-therm-in .rs-unit{font-size:14px;color:var(--ink-mut);font-weight:600;white-space:nowrap;}
.rs-sexes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;}
.rs-sexbtn{font:600 13px var(--sans);padding:8px 14px;border:1px solid var(--border);border-radius:999px;
  background:var(--bg);color:var(--ink-soft);cursor:pointer;min-height:38px;}
.rs-sexbtn.on{background:var(--brand);color:var(--brand-ink);border-color:var(--brand);}
.rs-bar{position:relative;height:14px;border-radius:999px;margin:6px 0;
  background:linear-gradient(90deg,var(--warn) 0%,var(--warn) 18%,var(--ok) 30%,var(--ok) 70%,var(--warn) 82%,var(--danger) 100%);}
.rs-arrow{position:absolute;top:-9px;left:50%;width:0;height:0;transform:translateX(-50%);
  border-left:7px solid transparent;border-right:7px solid transparent;border-top:11px solid var(--ink);
  transition:left .35s ease;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35));}
.rs-scale-lbls{display:flex;justify-content:space-between;gap:8px;color:var(--ink-mut);font-size:12px;margin-top:7px;}
.rs-scale-lbls span:nth-child(2){text-align:center;flex:1;}
.rs-scale-lbls span:last-child{text-align:right;}
.rs-status{margin-top:12px;font-weight:700;font-size:14.5px;min-height:20px;}
.rs-status.ok{color:var(--ok);}
.rs-status.warn{color:var(--warn);}
.rs-status.crit{color:var(--danger);}
.rs-therm-cta{display:inline-block;margin-top:12px;background:var(--brand);color:var(--brand-ink);
  font-weight:700;font-size:14px;padding:11px 18px;border-radius:12px;text-decoration:none;}
.rs-therm-cta:hover{background:var(--brand-2);}
.rs-therm-onco{margin-top:12px;font-size:13.5px;color:var(--ink-soft);}
/* .rs-enhanced: JS активен → статическую таблицу оставляем как «Нормы по группам» ниже */

/* ---- поиск в каталоге ---- */
.cat-search{margin:6px 0 20px;}
.cat-search-in{width:100%;font:500 16px var(--sans);padding:13px 16px;border:1px solid var(--border);
  border-radius:14px;background:var(--panel);color:var(--ink);-webkit-appearance:none;}
.cat-search-in:focus{outline:none;border-color:var(--brand);}
.cat-search-empty{color:var(--ink-mut);font-size:14.5px;margin:0 0 20px;}

/* ============================================================
   Тёмная тема для статей (reading mode) — активна только когда
   public.js/inline-скрипт выставил html[data-theme="dark"] (ключ pub_theme).
   Дефолт — светлая (data-theme не задан). Длинный текст: мягкий тёмный фон.
   ============================================================ */
html[data-theme="dark"]{
  --ink:#e7ebf0;--ink-soft:#b4bac6;--ink-mut:#8b91a1;
  --bg:#0e1116;--panel:#171b22;--border:#262b34;
  --ok:#34d399;--ok-bg:rgba(52,211,153,.14);
  --warn:#fbbf24;--warn-bg:rgba(251,191,36,.14);
  --danger:#f87171;--danger-bg:rgba(248,113,113,.16);
}
html[data-theme="dark"] .site-head{background:rgba(14,17,22,.92);}
html[data-theme="dark"] .ref-scale{background:var(--panel);}
html[data-theme="dark"] .article-body th,
html[data-theme="dark"] .compare-table th{color:var(--brand-ink);}
html[data-theme="dark"] .plan-card{background:var(--panel);}

/* ============================================================
   #626 S6b — marker-page framing (getgut light reading-mode, per mockup).
   ВСЁ scoped под body.article-page → статьи-маркеры; legal/landing/catalog НЕ трогаются.
   DOM-порядок НЕ меняется (ADD-2, SEO): только визуальный reflow/framing через CSS.
   ============================================================ */
body.article-page{background:#f2f5f9;}
.article-page{--gg-gold:#e8b84b;--gg-gold2:#f5d06f;--gg-gold3:#c99a2e;--gg-gold-ink:#20160a;}

/* шапка — мягкое стекло на светлом */
.article-page .site-head{background:rgba(242,245,249,.9);}

/* читаемая колонка + карточка статьи */
.article-page .article-wrap{max-width:760px;}
.article-page .article{background:#fff;border:1px solid var(--border);border-radius:18px;
  padding:24px 22px;box-shadow:0 8px 30px rgba(20,40,80,.05);}
.article-page .crumbs{margin-bottom:12px;}
.article-page .article h1{font-size:1.95rem;line-height:1.18;margin:6px 0 12px;}
.article-page .article-meta{margin-bottom:20px;}
.article-page .article-body h2{margin-top:30px;padding-top:2px;}
.article-page .article-body h2:first-of-type{margin-top:18px;}

/* норм-таблица — карточное обрамление */
.article-page .article-body .table-wrap{border-radius:14px;box-shadow:0 4px 16px rgba(20,40,80,.05);}
.article-page .article-body table{min-width:0;}
.article-page .article-body th{padding:12px 14px;}
.article-page .article-body td{padding:12px 14px;}

/* ── градусник «Проверьте своё значение» — заметная карточка (getgut light) ── */
.article-page .ref-scale{background:#fff;border:1px solid var(--border);border-radius:18px;
  padding:20px 18px;box-shadow:0 10px 30px rgba(20,40,80,.07);position:relative;overflow:hidden;margin:24px 0;}
.article-page .ref-scale::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;
  background:linear-gradient(90deg,var(--gg-gold2),var(--gg-gold3));}
.article-page .ref-scale .rs-title{font-size:1.05rem;margin-bottom:12px;}
/* интерактивный блок (public.js) — воздух внутри карточки */
.article-page .rs-therm{border:none;background:transparent;padding:0;margin:0 0 4px;}
.article-page .rs-therm-in .rs-val{background:#f6f8fb;border-color:var(--border);}
/* CTA градусника → золотая кнопка (мокап) */
.article-page .rs-cta,.article-page .rs-therm-cta{display:inline-block;background:linear-gradient(120deg,var(--gg-gold2),var(--gg-gold3));
  color:var(--gg-gold-ink);font-weight:800;padding:13px 20px;border-radius:12px;text-decoration:none;
  box-shadow:0 8px 20px -6px rgba(232,184,75,.5);margin-top:14px;}
.article-page .rs-cta:hover,.article-page .rs-therm-cta:hover{filter:brightness(1.04);}
.article-page .rs-disc{margin-top:12px;}
/* онко: doctor-direct callout остаётся спокойным (без золота/upload — YMYL) */
.article-page .doctor-cta .rs-cta{background:none;color:var(--brand-2);box-shadow:none;padding:0;font-weight:700;}

/* десктоп: чуть шире колонка, воздух */
@media (min-width:900px){
  .article-page .article-wrap{max-width:820px;}
  .article-page .article{padding:32px 34px;}
}

/* #626 S6b — dark reading-mode overrides for article-page framing (сохраняем S2-тумблер:
   на marker-странице с html[data-theme=dark] карточки/фон/инпут — тёмные, не смешанные). */
html[data-theme="dark"] body.article-page{background:var(--bg);}
html[data-theme="dark"] .article-page .site-head{background:rgba(14,17,22,.9);}
html[data-theme="dark"] .article-page .article{background:var(--panel);box-shadow:none;}
html[data-theme="dark"] .article-page .ref-scale{background:var(--panel);box-shadow:none;}
html[data-theme="dark"] .article-page .rs-therm-in .rs-val{background:var(--bg);}
html[data-theme="dark"] .article-page .article-body .table-wrap{box-shadow:none;}

/* ============================================================
   #626 S6a — Лендинг dark+gold (getgut). ВСЁ scoped под body.home-dark
   (ТОЛЬКО главная «/»). catalog/category/pricing (public.landing БЕЗ home-dark)
   и marker/article/legal остаются LIGHT. Хозяин 06.07: landing = dark hero.
   ============================================================ */
body.home-dark{
  --ink:#eaf0f7;--ink-soft:#9aa7bc;--ink-mut:#64748b;
  --bg:#0b0e14;--panel:#121722;--border:rgba(255,255,255,.09);
  --brand:#2dd4bf;--brand-2:#5eead4;--brand-ink:#04231f;
  --ok:#34d399;--ok-bg:rgba(52,211,153,.13);--warn:#fbbf24;--warn-bg:rgba(251,191,36,.13);--danger:#f87171;--danger-bg:rgba(248,113,113,.15);
  --gg-gold:#e8b84b;--gg-gold2:#f5d06f;--gg-gold3:#c99a2e;--gg-gold-ink:#20160a;
  --glass:rgba(26,33,48,.55);
  background:var(--bg);color:var(--ink);
  background-image:radial-gradient(1100px 560px at 82% -12%,rgba(232,184,75,.10),transparent 60%),
                   radial-gradient(820px 460px at -12% 18%,rgba(45,212,191,.07),transparent 55%);
}
.home-dark .hl-gold{background:linear-gradient(120deg,var(--gg-gold2),var(--gg-gold3));-webkit-background-clip:text;background-clip:text;color:transparent;}
.home-dark .btn-gold{background:linear-gradient(120deg,var(--gg-gold2),var(--gg-gold3));color:var(--gg-gold-ink);box-shadow:0 12px 26px -8px rgba(232,184,75,.5);border:none;}
.home-dark .btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--border);}

/* шапка */
.home-dark .site-head{background:rgba(11,14,20,.82);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--border);}
.home-dark .site-head .brand{color:var(--ink);}

/* hero */
.home-dark .hero{padding:44px 16px 12px;}
.home-dark .hero h1{font-size:2.3rem;line-height:1.12;letter-spacing:-.02em;}
.home-dark .hero p.sub{color:var(--ink-soft);font-size:1.06rem;max-width:600px;}
.home-dark .hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;max-width:460px;margin:6px auto 0;}
.home-dark .hero-cta .btn-primary{flex:1;min-width:180px;}
.home-dark .hero-trust{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:18px;color:var(--ink-mut);font-size:.82rem;}
.home-dark .hero-disc{color:var(--ink-mut);margin-top:14px;}

/* hero 2-кол: градусник + пример */
.home-dark .hero-grid{max-width:940px;margin:20px auto 0;padding:0 16px;display:grid;grid-template-columns:1fr;gap:16px;}
@media(min-width:820px){.home-dark .hero-grid{grid-template-columns:1.05fr .95fr;}}
.home-dark .hg-card{background:var(--glass);backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:18px;padding:18px;}
.home-dark .hg-title{font-size:.95rem;display:block;margin-bottom:12px;}
.home-dark .hero-mk-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px;}
.home-dark .hmk{font-size:.8rem;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--panel);color:var(--ink-soft);text-decoration:none;}
.home-dark .hmk.on{color:var(--gg-gold2);border-color:var(--gg-gold3);}
/* градусник в тёмном лендинге */
.home-dark .ref-scale{background:transparent;border:none;padding:0;margin:0;box-shadow:none;}
.home-dark .ref-scale::before{display:none;}
.home-dark .rs-therm{border:none;background:transparent;padding:0;}
.home-dark .rs-therm-in .rs-val{background:var(--panel);border-color:var(--border);color:var(--ink);}
.home-dark .rs-sexbtn{background:var(--panel);border-color:var(--border);color:var(--ink-soft);}
.home-dark .rs-sexbtn.on{background:var(--brand);color:var(--brand-ink);border-color:var(--brand);}
.home-dark .rs-cta,.home-dark .rs-therm-cta,.home-dark .hg-cta{display:block;text-align:center;background:linear-gradient(120deg,var(--gg-gold2),var(--gg-gold3));color:var(--gg-gold-ink);font-weight:800;padding:13px 18px;border-radius:12px;text-decoration:none;box-shadow:0 10px 24px -8px rgba(232,184,75,.5);margin-top:14px;}
.home-dark .rs-title{color:var(--ink);}
.home-dark .rs-disc{color:var(--ink-mut);}
/* пример-светофор */
.home-dark .ex-row{display:flex;align-items:center;gap:11px;padding:11px 0;border-top:1px solid var(--border);}
.home-dark .ex-row:first-of-type{border-top:none;}
.home-dark .ex-dot{width:10px;height:10px;border-radius:50%;flex:none;}
.home-dark .ex-dot.g{background:var(--ok);}.home-dark .ex-dot.y{background:var(--warn);}.home-dark .ex-dot.r{background:var(--danger);}
.home-dark .ex-nm{flex:1;min-width:0;}
.home-dark .ex-nm b{font-size:.92rem;}.home-dark .ex-nm span{display:block;color:var(--ink-mut);font-size:.76rem;}
.home-dark .ex-pill{font-size:.74rem;font-weight:700;padding:4px 10px;border-radius:999px;}
.home-dark .ex-pill.p-ok{background:var(--ok-bg);color:var(--ok);}.home-dark .ex-pill.p-warn{background:var(--warn-bg);color:var(--warn);}.home-dark .ex-pill.p-crit{background:var(--danger-bg);color:var(--danger);}

/* секции лендинга — тёмные */
.home-dark .tag-pill{background:var(--panel);border-color:var(--border);color:var(--ink-soft);}
.home-dark .tag-pill:hover{border-color:var(--gg-gold3);color:var(--gg-gold2);}
.home-dark .section>h2{color:var(--ink);}
.home-dark .step-card{background:var(--glass);border-color:var(--border);}
.home-dark .step-card .sc-n{color:var(--gg-gold2);}
.home-dark .step-card h3{color:var(--ink);}
.home-dark .value,.home-dark .cov-col,.home-dark .art-card,.home-dark .faq-land details{background:var(--panel);border-color:var(--border);}
.home-dark .art-card{color:var(--ink);}
.home-dark .art-card:hover{border-color:var(--gg-gold3);}
.home-dark .cov-col.cov-yes{border-color:var(--brand);}
.home-dark .faq-land summary{color:var(--ink);}
.home-dark .faq-land summary::after{color:var(--gg-gold2);}
/* тарифы — тёмные карточки, «Популярный» — золото */
.home-dark .plan-card{background:var(--panel);border-color:var(--border);}
.home-dark .plan-card.best{border-color:var(--gg-gold3);background:linear-gradient(180deg,rgba(232,184,75,.08),var(--panel));box-shadow:0 12px 30px rgba(232,184,75,.12);}
.home-dark .plan-card .pc-tag{background:linear-gradient(120deg,var(--gg-gold2),var(--gg-gold3));color:var(--gg-gold-ink);}
.home-dark .plan-card .pc-price{color:var(--ink);}
.home-dark .plan-card li::before{color:var(--gg-gold2);}
.home-dark .plan-card .btn-primary{background:linear-gradient(120deg,var(--gg-gold2),var(--gg-gold3));color:var(--gg-gold-ink);}
.home-dark .plan-card .btn-primary.sec{background:var(--panel);color:var(--ink);border:1px solid var(--border);}
.home-dark .cta-band{background:linear-gradient(180deg,rgba(45,212,191,.10),var(--panel));border:1px solid var(--border);}
.home-dark .cta-band .btn-primary{background:linear-gradient(120deg,var(--gg-gold2),var(--gg-gold3));color:var(--gg-gold-ink);}
.home-dark .land-foot{color:var(--ink-mut);border-color:var(--border);}
.home-dark .land-foot a{color:var(--brand-2);}

/* #626 S6a Codex-fix 1: dedupe CTA — когда JS-градусник активен (.rs-enhanced), статический
   fallback-CTA скрываем (интерактивный rs-therm-cta его заменяет). Глобально: статьи + лендинг. */
.rs-enhanced .rs-cta{display:none;}
/* #626 S6a Codex-fix 2: hub-блоки лендинга — тёмные (были light-острова на dark главной) */
.home-dark #markers-hub .hub-group h3,.home-dark #guides-hub .hub-group h3{color:var(--ink);}
.home-dark #markers-hub .hub-link,.home-dark #guides-hub .hub-link{background:var(--panel);border-color:var(--border);color:var(--ink-soft);}
.home-dark #markers-hub .hub-link:hover,.home-dark #guides-hub .hub-link:hover{background:var(--s2);border-color:var(--gg-gold3);color:var(--gg-gold2);}
