/* ==========================================================================
   ZZD — ИЗДАТЕЛЬСКАЯ ТЕМА (тёмная + светлая)  ·  v2, 2026-07-14
   --------------------------------------------------------------------------
   Токены обеих тем + атмосфера + база. Компонентные рецепты — в THEME-GUIDE.md,
   живой ориентир — в prototypes/ (app-dark, app-light, login).
   Подключать ПОСЛЕ brand.css (даёт @font-face Leksa+Merriweather):
       <link rel="stylesheet" href="brand.css">
       <link rel="stylesheet" href="theme.css">
   Тёмная — по умолчанию; светлая — атрибут <html data-theme="light">.
   Пути к картинкам (--emblem/--grain) относительные: theme.css должен лежать
   рядом с папкой img/ (как в assets/). Иначе поправьте url(...).
   ========================================================================== */

:root{
  --zzd-lek:"Leksa Sans","Segoe UI",Arial,sans-serif;   /* заголовки/UI/цифры */
  --zzd-mer:"Merriweather",Georgia,serif;               /* текст (сериф)       */

  /* ---------- ТЁМНАЯ (по умолчанию) ---------- */
  --gold:#d19e68; --gold-2:#e6ba86; --gold-soft:rgba(209,158,104,.14);
  --ink:#eaeef6;  --muted:#93a0b6;  --dim:#63708a;  --head:#ffffff;
  --bg:#0a0e17;   --card:#121a28;   --field:#0b101b;   /* база → карточки (светлее) → поля (утоплены) */
  --line:rgba(255,255,255,.08); --line-2:rgba(255,255,255,.14);
  --ok:#5cc79a; --warn:#e6b986; --bad:#e79a8b;
  --logo-filter:brightness(0) invert(1);               /* navy-силуэт → белый  */
  --emblem:url("img/emblem-white.png");
  --grain:url("img/pattern.jpg"); --grain-blend:screen; --grain-op:.05;
  --card-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 26px 50px -30px rgba(0,0,0,.8);
  --glow:radial-gradient(1200px 700px at 78% 6%, rgba(22,46,86,.62) 0%, transparent 55%),
         radial-gradient(900px 560px at 8% 102%, rgba(14,30,58,.5) 0%, transparent 60%);
}

:root[data-theme="light"]{
  /* ---------- СВЕТЛАЯ ---------- */
  --gold:#bf8a49; --gold-2:#d7a874; --gold-soft:rgba(191,138,73,.13);  /* глубже, чтобы читалось на светлом */
  --ink:#233450;  --muted:#6b7890;  --dim:#9aa6ba;  --head:#062247;
  --bg:#f4f2ec;   --card:#ffffff;   --field:#f7f6f1;  /* тёплая бумага → белые карточки → утопленные поля */
  --line:rgba(6,34,71,.10); --line-2:rgba(6,34,71,.17);
  --ok:#2f8f5c; --warn:#b07d3a; --bad:#c0483a;
  --logo-filter:none;                                  /* navy-логотип как есть */
  --emblem:url("img/emblem-navy.png");
  --grain:url("img/pattern-light.png"); --grain-blend:normal; --grain-op:.4;  /* navy-линии на прозрачном */
  --card-shadow:0 34px 70px -36px rgba(6,34,71,.42);
  --glow:radial-gradient(1200px 700px at 78% 6%, rgba(214,229,246,.9) 0%, transparent 56%),
         radial-gradient(900px 560px at 8% 102%, rgba(245,238,226,.85) 0%, transparent 60%);
}

/* ------------------------------- БАЗА ---------------------------------- */
html,body{ margin:0; }
body{ background:var(--bg); color:var(--ink); font-family:var(--zzd-mer); line-height:1.6;
      font-size:clamp(15px, .2vw + 13.4px, 18px); -webkit-font-smoothing:antialiased;
      transition:background .3s, color .3s; }
::selection{ background:var(--gold); color:#fff; }

/* ---------------------------- АТМОСФЕРА -------------------------------- */
/* <div class="zzd-atmo"><div class="glow"></div><div class="grain"></div><div class="wm"></div></div> */
.zzd-atmo{ position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.zzd-atmo .glow{ position:absolute; inset:0; background:var(--glow); }
.zzd-atmo .grain{ position:absolute; inset:0; opacity:var(--grain-op);
  mix-blend-mode:var(--grain-blend, screen); background:var(--grain) center/1200px; }
.zzd-atmo .wm{ position:absolute; right:2.4vw; top:50%; transform:translateY(-50%);
  width:min(56vh,520px); height:min(56vh,520px); opacity:.09;
  background:var(--emblem) center/contain no-repeat; }
@media(max-width:1500px){ .zzd-atmo .wm{ display:none; } }  /* эмблема — только на широких, чтобы не наезжала */

/* Контент над атмосферой */
.zzd-app{ position:relative; z-index:1; }
