/* ======================================================================
   Lumo — юридические страницы (privacy/terms/cookies/consent)
   Aurora + Glass, 2026-05 — единый стиль с лендингом/логином/кабинетом
   ====================================================================== */
:root{
  --sat: env(safe-area-inset-top, 0px);
  --sar: env(safe-area-inset-right, 0px);
  --sab: env(safe-area-inset-bottom, 0px);
  --sal: env(safe-area-inset-left, 0px);

  --bg:#060912; --bg-2:#0a0f1f;
  --text:#eef3ff; --muted:#9fb0d2; --muted-2:#7587a8;
  --tile:rgba(255,255,255,.045); --tile-2:rgba(255,255,255,.07);
  --border:rgba(160,184,232,.14); --border-strong:rgba(160,184,232,.26);
  --hairline:rgba(255,255,255,.16);
  --accent:#5b9bff; --accent-2:#22d3ee; --accent-3:#a78bfa; --accent-ink:#cfe0ff;
  --shadow:0 30px 70px rgba(2,7,20,.55);
  --shadow-soft:0 14px 34px rgba(2,7,20,.40);
  --radius-xl:28px; --radius-lg:22px; --radius-md:16px;
  --content-max:1320px;
  --ease:cubic-bezier(.22,1,.36,1);
}
html[data-theme="light"]{
  --bg:#eef2fa; --bg-2:#f6f8fd;
  --text:#10203b; --muted:#566685; --muted-2:#7484a2;
  --tile:rgba(255,255,255,.80); --tile-2:rgba(255,255,255,.92);
  --border:rgba(120,146,190,.26); --border-strong:rgba(110,138,186,.4);
  --hairline:rgba(255,255,255,.9);
  --accent:#2f7cf6; --accent-2:#0891b2; --accent-3:#7c3aed; --accent-ink:#1f4fbf;
  --shadow:0 26px 56px rgba(33,54,98,.16);
  --shadow-soft:0 14px 30px rgba(33,54,98,.12);
}

*{ box-sizing:border-box; }
html, body{ min-height:100%; }
html{ background:var(--bg); color-scheme:dark; scroll-behavior:smooth; }
html[data-theme="light"]{ color-scheme:light; }
body{
  margin:0; min-height:100vh;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(1100px 640px at 10% -8%, color-mix(in srgb,var(--accent) 20%, transparent), transparent 60%),
    radial-gradient(900px 560px at 94% 4%, color-mix(in srgb,var(--accent-2) 15%, transparent), transparent 58%),
    linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%);
  background-attachment:fixed;
  -webkit-tap-highlight-color:transparent;
  overflow-x:hidden;
}
a{ color:inherit; text-decoration:none; }
button, input{ font:inherit; }

/* ===== Aurora фон ===== */
.lp-aurora{ position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.lp-aurora__blob{
  position:absolute; border-radius:50%; filter:blur(80px);
  mix-blend-mode:screen; opacity:.65;
  animation:docDrift 24s var(--ease) infinite alternate;
}
html[data-theme="light"] .lp-aurora__blob{ mix-blend-mode:multiply; opacity:.45; }
.lp-aurora__blob--a{ width:580px;height:580px; top:-150px; left:-110px;
  background:radial-gradient(circle at 35% 35%, color-mix(in srgb,var(--accent) 85%,transparent), transparent 70%); }
.lp-aurora__blob--b{ width:480px;height:480px; top:8%; right:-130px; animation-delay:-7s;
  background:radial-gradient(circle at 50% 50%, color-mix(in srgb,var(--accent-2) 80%,transparent), transparent 70%); }
.lp-aurora__blob--c{ width:620px;height:620px; bottom:-220px; left:28%; animation-delay:-12s;
  background:radial-gradient(circle at 50% 50%, color-mix(in srgb,var(--accent-3) 78%,transparent), transparent 70%); }
@keyframes docDrift{ 0%{ transform:translate3d(0,0,0) scale(1);} 100%{ transform:translate3d(34px,-26px,0) scale(1.08);} }
.lp-aurora__grid{
  position:absolute; inset:-2px;
  background-image:
    linear-gradient(to right, rgba(160,184,232,.06) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(160,184,232,.06) 1px, transparent 1px);
  background-size:58px 58px;
  mask-image:radial-gradient(circle at 50% 18%, #000 0%, transparent 74%);
  -webkit-mask-image:radial-gradient(circle at 50% 18%, #000 0%, transparent 74%);
}

/* ===== SHELL / TOPBAR ===== */
.lp-shell{
  position:relative; z-index:1;
  width:min(calc(100% - 32px), var(--content-max));
  margin:0 auto;
  padding:calc(14px + var(--sat)) calc(16px + var(--sar)) calc(44px + var(--sab)) calc(16px + var(--sal));
}
.lp-topbar{ position:sticky; top:0; z-index:40; padding-bottom:16px; }
.lp-topbar__inner{
  display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:18px;
  padding:13px 16px; border-radius:999px; border:1px solid var(--border);
  background:color-mix(in srgb, var(--bg-2) 70%, transparent);
  backdrop-filter:blur(18px) saturate(140%); -webkit-backdrop-filter:blur(18px) saturate(140%);
  box-shadow:var(--shadow-soft);
}
.lp-brand{ display:flex; align-items:center; gap:13px; min-width:0; }
.lp-brand__logo{
  width:46px; height:46px; border-radius:14px; flex:0 0 auto; object-fit:cover;
  border:1px solid var(--border-strong); box-shadow:0 8px 22px rgba(40,96,220,.30); background:#0b1224;
}
.lp-brand__title{ font-size:18px; font-weight:850; line-height:1.05; letter-spacing:-.02em; }
.lp-brand__sub{ margin-top:3px; color:var(--muted); font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.lp-nav{ display:flex; align-items:center; justify-content:center; gap:4px; flex-wrap:wrap; }
.lp-nav a{ padding:9px 14px; border-radius:999px; color:var(--muted); font-size:14px; font-weight:650; transition:.18s var(--ease); border:1px solid transparent; }
.lp-nav a:hover{ color:var(--text); background:var(--tile-2); }
.lp-nav a.is-active{ color:var(--text); background:color-mix(in srgb,var(--accent) 16%, transparent); border-color:color-mix(in srgb,var(--accent) 32%, transparent); }

.lp-actions{ display:flex; align-items:center; justify-content:flex-end; gap:9px; flex-wrap:wrap; }
.lp-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  min-height:44px; padding:0 18px; border-radius:13px; border:1px solid var(--border);
  background:var(--tile); color:var(--text); font-size:14px; font-weight:750; white-space:nowrap; cursor:pointer;
  transition:transform .18s var(--ease), background-color .18s ease, border-color .18s ease, box-shadow .2s ease;
}
.lp-btn:hover{ transform:translateY(-2px); background:var(--tile-2); border-color:var(--border-strong); }
.lp-btn--primary{
  border-color:transparent; color:#fff;
  background:linear-gradient(135deg, var(--accent), color-mix(in srgb,var(--accent) 55%, var(--accent-3) 45%));
  box-shadow:0 16px 36px rgba(47,99,235,.40);
}
.lp-btn--primary:hover{ filter:brightness(1.06); box-shadow:0 22px 48px rgba(47,99,235,.52); }

/* ===== DOC LAYOUT ===== */
.doc-main{ display:grid; gap:22px; }
.doc-hero{
  display:grid; grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr); gap:22px;
  padding:34px; border-radius:var(--radius-xl); border:1px solid var(--border);
  background:var(--tile); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  box-shadow:var(--shadow); position:relative; overflow:hidden;
}
.doc-hero::before{ content:""; position:absolute; inset:0 0 auto 0; height:1px; background:linear-gradient(90deg,transparent,var(--hairline),transparent); }
.doc-hero__copy{ display:flex; flex-direction:column; gap:18px; min-width:0; }
.doc-eyebrow{
  display:inline-flex; align-items:center; gap:8px; width:max-content; max-width:100%;
  padding:7px 14px; border-radius:999px; border:1px solid var(--border-strong); background:var(--tile);
  color:var(--accent-ink); font-size:12.5px; font-weight:800; letter-spacing:.04em; text-transform:uppercase;
}
.doc-title{ margin:0; font-size:clamp(32px,3.6vw,54px); line-height:1.02; letter-spacing:-.045em; font-weight:870; max-width:16ch; }
.doc-subtitle{ margin:0; max-width:70ch; color:var(--muted); font-size:17px; line-height:1.65; }
.doc-meta{ display:flex; flex-wrap:wrap; gap:10px; }
.doc-chip{
  display:inline-flex; align-items:center; gap:8px; min-height:40px; padding:0 14px;
  border-radius:999px; border:1px solid var(--border); background:var(--tile); color:var(--muted); font-size:13.5px; font-weight:700;
}

.doc-card{
  height:100%; padding:24px; border-radius:var(--radius-xl); border:1px solid var(--border);
  background:var(--tile); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  box-shadow:var(--shadow-soft); display:grid; gap:14px; align-content:start; position:relative; overflow:hidden;
}
.doc-card::before{ content:""; position:absolute; inset:0 0 auto 0; height:1px; background:linear-gradient(90deg,transparent,var(--hairline),transparent); }
.doc-card h2{ margin:0; font-size:22px; line-height:1.18; letter-spacing:-.03em; font-weight:820; }
.doc-card p{ margin:0; color:var(--muted); font-size:15px; line-height:1.65; }
.doc-card__list{ display:grid; gap:10px; margin:0; padding:0; list-style:none; }
.doc-card__list li{
  padding:14px 16px; border-radius:14px; border:1px solid var(--border);
  background:var(--tile-2); color:var(--text); font-size:14px; line-height:1.5;
}
.doc-card__list b{ display:block; margin-bottom:4px; font-size:12px; color:var(--muted-2); text-transform:uppercase; letter-spacing:.06em; }

.doc-grid{ display:grid; grid-template-columns:minmax(0,1.24fr) minmax(280px,.76fr); gap:22px; align-items:start; }
.doc-section{
  padding:28px 30px; border-radius:var(--radius-xl); border:1px solid var(--border);
  background:var(--tile); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); box-shadow:var(--shadow-soft);
}
.doc-aside{ position:sticky; top:104px; display:grid; gap:18px; }

.doc-prose h2, .doc-prose h3{ margin:24px 0 12px; letter-spacing:-.02em; color:var(--text); font-weight:800; }
.doc-prose h2:first-child{ margin-top:0; }
.doc-prose h2{ font-size:22px; line-height:1.2; }
.doc-prose h3{ font-size:18px; line-height:1.3; }
.doc-prose p{ margin:0 0 14px; color:var(--text); font-size:16px; line-height:1.8; }
.doc-prose ul, .doc-prose ol{ margin:0 0 16px 20px; padding:0; }
.doc-prose li{ margin:0 0 10px; color:var(--muted); font-size:16px; line-height:1.75; }
.doc-prose b{ color:var(--text); }
.doc-prose .small{ font-size:14px; line-height:1.65; color:var(--muted); }
.doc-prose .footer{ display:none !important; }
.doc-prose .code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  font-size:13px; padding:12px 14px; border-radius:14px; border:1px solid var(--border);
  background:color-mix(in srgb,var(--bg) 60%, #000 0%); overflow:auto; color:var(--text);
}

.kv{ display:grid; gap:10px; }
.row{
  display:flex; justify-content:space-between; gap:12px; align-items:flex-start;
  padding:14px 16px; border-radius:14px; border:1px solid var(--border); background:var(--tile-2);
}
.k{ color:var(--muted-2); font-weight:800; font-size:12px; letter-spacing:.06em; text-transform:uppercase; }
.v{ color:var(--text); font-weight:800; text-align:right; line-height:1.45; }
.notice{
  margin-top:2px; padding:16px 18px; border-radius:16px;
  border:1px solid color-mix(in srgb,var(--accent) 30%, transparent); background:color-mix(in srgb,var(--accent) 12%, transparent);
}
.notice .small{ color:var(--muted) !important; font-size:14px; line-height:1.7; }

.lp-footer{
  display:flex; align-items:center; justify-content:space-between; gap:14px 18px; flex-wrap:wrap;
  color:var(--muted-2); font-size:14px; padding:10px 6px 0; border-top:1px solid var(--border); margin-top:6px;
}
.lp-footer__links{ display:flex; flex-wrap:wrap; gap:10px 14px; }
.lp-footer__links a:hover{ color:var(--text); }

@media (max-width: 1140px){
  .lp-topbar__inner{ grid-template-columns:minmax(0,1fr) auto; }
  .lp-nav{ display:none; }
  .doc-grid, .doc-hero{ grid-template-columns:1fr; }
  .doc-title{ max-width:none; }
  .doc-aside{ position:static; }
}
@media (max-width: 760px){
  .lp-shell{ width:100%; padding-left:12px; padding-right:12px; }
  .lp-topbar__inner{ grid-template-columns:1fr; gap:12px; padding:13px; }
  .lp-actions{ justify-content:stretch; }
  .lp-actions .lp-btn{ flex:1 1 100%; width:100%; }
  .doc-hero, .doc-section, .doc-card{ padding:22px; border-radius:22px; }
  .doc-title{ font-size:clamp(28px, 8vw, 44px); }
  .doc-subtitle, .doc-prose p, .doc-prose li{ font-size:15px; }
  .row{ flex-direction:column; }
  .v{ text-align:left; }
}
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{ animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  html, body{ background-attachment:scroll; }
  .lp-aurora__blob{ transform:none !important; }
}
