/* Dark glass theme */
:root{
  --bg:#0b0e16; --panel:#121826cc; --line:#222a; --text:#e8ecf2; --muted:#9ba7b4; --accent:#59f; --accent2:#0af;
  --pos:#21c77a; --neg:#ff5d5d;
  /* фиксированные цвета шапки — одинаковые на всех страницах */
  --nav-bg:#0b0e16; --nav-line:#222a; --nav-text:#e8ecf2;
}
:root[data-theme="light"]{
  --bg:#f7f9fc; --panel:#fff; --line:#dfe6ee; --text:#0b1020; --muted:#556375; --accent:#345dff; --accent2:#0af;
  --nav-bg:#f7f9fc; --nav-line:#dfe6ee; --nav-text:#0b1020;
}
html,body{height:100%}
html{scrollbar-gutter: stable both-edges;}
html, body{overflow-x:hidden;}
body{margin:0;font-family:Inter, system-ui, Segoe UI, Roboto, Arial, sans-serif;background:radial-gradient(1200px 800px at 80% -10%, #2644ff1a, transparent), var(--bg);color:var(--text)}
a{color:var(--text)}
.wrap{max-width:1060px;margin:0 auto;padding:16px;width:100%;box-sizing:border-box}
@media (max-width: 820px){
  .wrap{padding-inline:12px}
}
@media (min-width: 670px) and (max-width: 770px){
  .wrap{
    max-width: calc(100vw - 12px);
    padding-inline:10px;
  }
}
.wrap.header{padding:16px !important; max-width:1060px; margin:0 auto;}
@media (max-width: 820px){
  .wrap.header{padding-inline:12px !important;}
}
@media (min-width: 670px) and (max-width: 770px){
  .wrap.header{
    max-width: calc(100vw - 12px);
    padding-inline:10px !important;
  }
}
.header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--nav-line);background:var(--nav-bg);color:var(--nav-text)}
.brand{display:flex;gap:8px;align-items:center;text-decoration:none;font-weight:700}
.brand img{filter:invert(1)}
.header nav{display:flex;gap:12px;align-items:center}
.header nav a{opacity:.9;text-decoration:none;padding:6px 8px;border-radius:8px;color:inherit}
.header nav a:hover{background:linear-gradient(180deg, #fff1 0, #0000), var(--panel)}
button.ghost,.ghost{background:transparent;border:1px solid var(--line);color:var(--text);padding:8px 12px;border-radius:10px;text-decoration:none}
.btn{background:linear-gradient(120deg, var(--accent), var(--accent2));color:#fff;padding:10px 14px;border-radius:10px;text-decoration:none;border:0}
.btn:hover{opacity:.95}
.card{border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--panel);backdrop-filter: blur(8px)}
.glass{box-shadow:0 10px 30px #0006}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.table{width:100%;border-collapse:collapse;margin-top:12px}
.table th,.table td{border-bottom:1px solid var(--line);padding:10px 8px}
.table th{position:sticky;top:0;background:var(--panel)}
.table.t

ight td{padding:6px 8px}
.pos{color:var(--pos)} .neg{color:var(--neg)}
.lead{color:var(--muted)}
.tags{display:flex;gap:6px;flex-wrap:wrap}
.tag{font-size:12px;border:1px solid var(--line);border-radius:999px;padding:2px 8px;color:var(--muted)}
.offer-head{display:flex;gap:12px;align-items:center}
.offer .logo,.svc-head .logo{height:24px;width:auto}
.actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.hero{display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(120deg, #fff1, #0000)}
.hero-text{max-width:640px}
.mt{margin-top:24px}
.check li{list-style:none;padding-left:22px;position:relative}
.check li::before{content:"✓";position:absolute;left:0;color:var(--pos)}
.cross li{list-style:none;padding-left:22px;position:relative}
.cross li::before{content:"✕";position:absolute;left:0;color:var(--neg)}
.steps{padding-left:18px}
.svc-head{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:12px}
.svc-columns{display:grid;grid-template-columns:2fr 1fr;gap:16px}
.box{border:1px dashed var(--line);border-radius:10px;padding:10px;margin-bottom:12px}
.footer{margin-top:30px;border-top:1px solid var(--line)}
.footer .cols{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.muted{color:var(--muted)}
.blog-post .post p{line-height:1.6}
@media(max-width:860px){.svc-columns{grid-template-columns:1fr}}

/* Markdown lists: keep bullets aligned with text */
.prose-inner li::marker{color:#6366f1}
.prose-inner li > p{margin:0}
.prose-inner li > p + p{margin-top:.5em}


/* --- Clean Home helpers --- */
.hero{ padding:28px 18px; text-align:center; }
.hero-inner{ max-width:780px; margin:0 auto; }
.hero .lead{ color:var(--muted); margin-top:6px; }
.hero-ctas{ display:flex; gap:10px; justify-content:center; margin-top:10px; flex-wrap:wrap; }
.grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.two-col{ display:grid; grid-template-columns:2fr 1fr; gap:16px; align-items:start; }
.articles{ display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; }
.card-hover:hover{ transform:translateY(-2px); transition:transform .15s ease; }
.card-row{ display:flex; gap:10px; align-items:center; }

/* Ticker */
.ticker{ display:flex; gap:10px; overflow:auto; scrollbar-width:thin; white-space:nowrap; }
.pill{ display:inline-flex; gap:8px; align-items:center; padding:6px 10px; border:1px solid var(--line); border-radius:999px; background:transparent; }
.pill .pos{ color:var(--pos); } .pill .neg{ color:var(--neg); }

/* Sticky CTA */
.sticky-cta{ position:fixed; left:0; right:0; bottom:12px; z-index:9999; }

@media(max-width:960px){
  .grid3{ grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); }
  .two-col{ grid-template-columns:1fr; }
}


/* ——— Плоский фон по теме ——— */
:root[data-theme="light"]{
  --bg: #fff;                 /* белый фон для светлой темы */
}

body{
  /* убираем радиальный градиент и оставляем только цвет */
  background: var(--bg) !important;
  background-image: none !important;
  background-attachment: scroll !important;
}

/* Унифицированная «вывеска» раздела (hero) */
.hero-slab{
  background: var(--bg-grad, linear-gradient(120deg, #22304a, #111827)) !important;
  border: 1px solid var(--border) !important;
  border-radius: 14px !important;
  padding: 20px !important;
  margin: 0 0 16px !important;
  box-shadow: var(--shadow, 0 12px 30px rgba(0,0,0,.35)) !important;
  color: var(--text) !important;
}
.hero-slab h1{ margin:0 0 6px !important; font-size:clamp(1.6rem,1.4rem + 1vw,2.1rem); }
.hero-slab p{ margin:0 !important; color:var(--muted) !important; }
@media (max-width: 520px){
  .hero-slab{
    padding: 18px !important;
    border-radius: 12px !important;
  }
}

/* Phones + tablets: единый вид «шапок» (как на токенах) */
@media (max-width: 1024px){
  :where(.hero-slab,
         .tok-deck__head.hero-slab,
         .top-deck__head.hero-slab,
         .cmp-head.hero-slab,
         .blog-card__hero.hero-slab,
         .svc-card__hero){
    background: var(--bg-grad, linear-gradient(120deg, #1c2940, #0f1b2c)) !important;
    border: 1px solid var(--line, var(--border, rgba(255,255,255,.16))) !important;
    border-radius: 14px !important;
    box-shadow: var(--shadow, 0 12px 30px rgba(0,0,0,.35)) !important;
    padding: clamp(18px, 3vw, 22px) !important;
    margin: 0 0 16px !important;
    color: var(--text) !important;
  }
}

/* Phones: безопасные отступы и целая строка */
@media (max-width: 820px){
  :where(.hero-slab,
         .tok-deck__head.hero-slab,
         .top-deck__head.hero-slab,
         .cmp-head.hero-slab,
         .blog-card__hero.hero-slab,
         .svc-card__hero){
    padding-left: calc(16px + env(safe-area-inset-left)) !important;
    padding-right: calc(16px + env(safe-area-inset-right)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    box-sizing: border-box;
  }
}
