/**
 * landing-themes.css — 5 пресетов тем для партнёрского лендинга (issue #551, эпик #548).
 *
 * #1492 — partner brand больше НЕ перебивает theme-токены через inline `<style>`.
 *   Inline стиль в landing.php теперь пишет только --color-brand-* и
 *   --partner-font-*. Каждая тема ниже сама решает, насколько слушает brand:
 *     - "Нейтральные" темы (light-clean, dark-modern, corporate-blue) выставляют
 *       --color-primary: var(--color-brand, <theme-default>) — partner-driven.
 *     - "Характерные" темы (neon-crypto, minimal-mono) хардкодят --color-primary
 *       и --font-heading — тема ЕСТЬ тема. Partner brand виден как
 *       --color-brand-accent в бейджах / секондари.
 *
 * Шаблон views/landing/landing.php выставляет <html data-theme="..."> в зависимости от:
 *   1. ?theme=<slug> в URL (dev-override, на любом партнёрском хосте + planbusdt.com — для QA).
 *   2. partner_sites.theme_preset из БД.
 *   3. дефолт 'light-clean'.
 *
 * Контракт vars (минимум, на который опираются стили блоков):
 *   --color-bg / --color-bg-soft / --color-fg / --color-fg-muted / --color-border
 *   --color-primary / --color-primary-fg / --color-primary-dark / --color-primary-soft
 *   --color-accent / --color-accent-fg
 *   --color-card-bg / --color-nav-bg / --color-modal-overlay
 *   --color-input-bg / --color-input-fg / --color-input-placeholder
 *   --color-success / --color-success-soft / --color-success-fg
 *   --color-warning / --color-warning-soft / --color-warning-fg
 *   --color-danger
 *   --radius-card / --radius-btn
 *   --shadow-card / --shadow-card-hover
 *   --font-heading / --font-body / --font-weight-heading
 *   --gradient-hero / --gradient-accent
 *   --color-text-on-hero / --color-text-muted-on-hero
 *   --color-badge-bg / --color-badge-border / --color-badge-text
 *
 * Partner-токены (выставляются в landing.php :root):
 *   --color-brand / --color-brand-dark / --color-brand-light / --color-brand-accent
 *   --partner-font-heading / --partner-font-body
 */

/* ─── 1. light-clean — белая, минималистичная (фин. услуги) ─── */
/* Нейтральная тема: primary/accent слушают partner brand. */
:root[data-theme="light-clean"] {
  --color-bg: #ffffff;
  --color-bg-soft: #f8fafc;
  --color-fg: #0f172a;
  --color-fg-muted: #64748b;
  --color-border: #e2e8f0;
  /* #696 — input-tokens: фон/текст/плейсхолдер калькулятора и форм. */
  --color-input-bg: #ffffff;
  --color-input-fg: #0f172a;
  --color-input-placeholder: #94a3b8;
  /* #1492 — primary/accent partner-driven. */
  --color-primary: var(--color-brand, #2563eb);
  --color-primary-fg: #ffffff;
  --color-primary-dark: var(--color-brand-dark, #1d4ed8);
  /* #704 — семантические токены: soft-варианты + фон карточек. */
  --color-primary-soft: var(--color-brand-light, #eff6ff);
  --color-success-soft: #f0fdf4;
  --color-success-fg: #16a34a;
  --color-warning-soft: #fff7ed;
  --color-warning-fg: #ea580c;
  --color-card-bg: #ffffff;
  --color-nav-bg: rgba(255,255,255,0.92);
  --color-accent: var(--color-brand-accent, #0ea5e9);
  --color-accent-fg: #ffffff;
  --color-success: #10b981;
  --color-warning: #f59e0b;
  --color-danger:  #ef4444;
  --radius-card: 12px;
  --radius-btn: 10px;
  --shadow-card: 0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .04);
  --shadow-card-hover: 0 8px 24px rgba(15, 23, 42, .10);
  /* #1492 — нейтральная тема слушает partner-шрифт. */
  --font-heading: var(--partner-font-heading, 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
  --font-body:    var(--partner-font-body, 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
  --font-weight-heading: 700;
  --gradient-hero: linear-gradient(135deg, var(--color-brand-light, #eff6ff) 0%, #f8fafc 100%);
  --gradient-accent: linear-gradient(90deg, var(--color-primary), var(--color-accent));
  /* #1492 — hero на светлой теме → тёмный текст. */
  --color-text-on-hero: #0f172a;
  --color-text-muted-on-hero: #475569;
  --color-badge-bg: var(--color-primary-soft);
  --color-badge-border: color-mix(in srgb, var(--color-primary) 25%, transparent);
  --color-badge-text: var(--color-primary-dark);
  color-scheme: light;
}

/* ─── 2. dark-modern — тёмная, современная (tech / SaaS) ─── */
/* Нейтральная тема: primary/accent слушают partner brand. */
:root[data-theme="dark-modern"] {
  --color-bg: #0f172a;
  --color-bg-soft: #1e293b;
  --color-fg: #e2e8f0;
  --color-fg-muted: #94a3b8;
  --color-border: #334155;
  /* #696 — input чуть светлее фона, чтобы выделялся на dark-modern. */
  --color-input-bg: #1e293b;
  --color-input-fg: #e2e8f0;
  --color-input-placeholder: #94a3b8;
  /* #1492 — primary/accent partner-driven. */
  --color-primary: var(--color-brand, #3b82f6);
  --color-primary-fg: #ffffff;
  --color-primary-dark: var(--color-brand-dark, #1d4ed8);
  --color-primary-soft: color-mix(in srgb, var(--color-primary) 15%, transparent);
  --color-success-soft: rgba(34,197,94,.12);
  --color-success-fg: #4ade80;
  --color-warning-soft: rgba(245,158,11,.12);
  --color-warning-fg: #fbbf24;
  --color-card-bg: #1e293b;
  --color-nav-bg: rgba(15,23,42,0.92);
  --color-modal-overlay: rgba(0,0,0,.75);
  --color-accent: var(--color-brand-accent, #8b5cf6);
  --color-accent-fg: #ffffff;
  --color-success: #22c55e;
  --color-warning: #f59e0b;
  --color-danger:  #ef4444;
  --radius-card: 12px;
  --radius-btn: 10px;
  --shadow-card: 0 1px 3px rgba(0, 0, 0, .35), 0 1px 2px rgba(0, 0, 0, .2);
  --shadow-card-hover: 0 12px 32px color-mix(in srgb, var(--color-primary) 20%, transparent);
  --font-heading: var(--partner-font-heading, 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
  --font-body:    var(--partner-font-body, 'Inter', -apple-system, BlinkMacSystemFont, sans-serif);
  --font-weight-heading: 700;
  --gradient-hero: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
  --gradient-accent: linear-gradient(90deg, var(--color-primary), var(--color-accent));
  --color-text-on-hero: #ffffff;
  --color-text-muted-on-hero: #94a3b8;
  --color-badge-bg: color-mix(in srgb, var(--color-primary) 18%, transparent);
  --color-badge-border: color-mix(in srgb, var(--color-primary) 35%, transparent);
  --color-badge-text: #cbd5e1;
  color-scheme: dark;
}

/* ─── 3. neon-crypto — неоновая, тёмная (crypto / web3) ─── */
/* ХАРАКТЕРНАЯ тема: тема ЕСТЬ циан+магента, partner brand отдельно через --color-brand-accent. */
:root[data-theme="neon-crypto"] {
  --color-bg: #0a0e1a;
  --color-bg-soft: #11172a;
  --color-fg: #e6f0ff;
  --color-fg-muted: #7e8aa6;
  --color-border: #243049;
  --color-input-bg: #11172a;
  --color-input-fg: #e6f0ff;
  --color-input-placeholder: #7e8aa6;
  /* #1492 — HARD: тема диктует цвета, partner brand не влияет на primary. */
  --color-primary: #00e5ff;
  --color-primary-fg: #001018;
  --color-primary-dark: #00bcd4;
  --color-primary-soft: rgba(0,229,255,.12);
  --color-success-soft: rgba(57,255,20,.10);
  --color-success-fg: #39ff14;
  --color-warning-soft: rgba(255,214,10,.10);
  --color-warning-fg: #ffd60a;
  --color-card-bg: #11172a;
  --color-nav-bg: rgba(10,14,26,0.92);
  --color-modal-overlay: rgba(0,0,0,.80);
  --color-accent: #ff00d4;
  --color-accent-fg: #ffffff;
  --color-success: #39ff14;
  --color-warning: #ffd60a;
  --color-danger:  #ff3860;
  --radius-card: 16px;
  --radius-btn: 999px;
  --shadow-card: 0 0 0 1px rgba(0, 229, 255, .15), 0 8px 24px rgba(0, 229, 255, .08);
  --shadow-card-hover: 0 0 0 1px rgba(0, 229, 255, .35), 0 12px 40px rgba(0, 229, 255, .25);
  /* #1492 — HARD: характерная типографика темы. Partner-шрифт игнорируем. */
  --font-heading: 'Space Grotesk', 'Inter', sans-serif;
  --font-body:    'Inter', sans-serif;
  --font-weight-heading: 700;
  --gradient-hero: radial-gradient(circle at 20% 20%, rgba(0, 229, 255, .18), transparent 50%),
                   radial-gradient(circle at 80% 80%, rgba(255, 0, 212, .15), transparent 50%),
                   linear-gradient(135deg, #0a0e1a 0%, #11172a 100%);
  --gradient-accent: linear-gradient(90deg, #00e5ff, #ff00d4);
  --color-text-on-hero: #e6f0ff;
  --color-text-muted-on-hero: #7e8aa6;
  --color-badge-bg: rgba(0,229,255,.10);
  --color-badge-border: rgba(0,229,255,.35);
  --color-badge-text: #00e5ff;
  color-scheme: dark;
}

/* ─── 4. corporate-blue — классический корпоративный (banks / B2B) ─── */
/* Нейтральная тема: primary/accent слушают partner brand. */
:root[data-theme="corporate-blue"] {
  --color-bg: #ffffff;
  --color-bg-soft: #f1f5f9;
  --color-fg: #1e293b;
  --color-fg-muted: #475569;
  --color-border: #cbd5e1;
  --color-input-bg: #ffffff;
  --color-input-fg: #1e293b;
  --color-input-placeholder: #94a3b8;
  /* #1492 — primary/accent partner-driven. */
  --color-primary: var(--color-brand, #1e40af);
  --color-primary-fg: #ffffff;
  --color-primary-dark: var(--color-brand-dark, #1e3a8a);
  --color-primary-soft: var(--color-brand-light, #eff6ff);
  --color-success-soft: #f0fdf4;
  --color-success-fg: #047857;
  --color-warning-soft: #fffbeb;
  --color-warning-fg: #b45309;
  --color-card-bg: #ffffff;
  --color-nav-bg: rgba(255,255,255,0.95);
  --color-accent: var(--color-brand-accent, #0369a1);
  --color-accent-fg: #ffffff;
  --color-success: #047857;
  --color-warning: #b45309;
  --color-danger:  #b91c1c;
  --radius-card: 6px;
  --radius-btn: 4px;
  --shadow-card: 0 1px 2px rgba(30, 64, 175, .08);
  --shadow-card-hover: 0 4px 12px rgba(30, 64, 175, .12);
  --font-heading: var(--partner-font-heading, 'Source Sans 3', 'Inter', sans-serif);
  --font-body:    var(--partner-font-body, 'Source Sans 3', 'Inter', sans-serif);
  --font-weight-heading: 600;
  --gradient-hero: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
  --color-text-on-hero: #1e293b;
  --color-text-muted-on-hero: #475569;
  --color-badge-bg: color-mix(in srgb, var(--color-primary) 10%, transparent);
  --color-badge-border: color-mix(in srgb, var(--color-primary) 25%, transparent);
  --color-badge-text: var(--color-primary-dark);
  --gradient-accent: linear-gradient(90deg, var(--color-primary), var(--color-accent));
  color-scheme: light;
}

/* ─── 5. minimal-mono — чёрно-белая, типографика (premium / агентства) ─── */
/* ХАРАКТЕРНАЯ тема: чёрно-белая палитра, partner brand виден только в --color-brand-accent (например, .section-label). */
:root[data-theme="minimal-mono"] {
  --color-bg: #ffffff;
  --color-bg-soft: #fafafa;
  --color-fg: #0a0a0a;
  --color-fg-muted: #525252;
  --color-border: #d4d4d4;
  --color-input-bg: #ffffff;
  --color-input-fg: #0a0a0a;
  --color-input-placeholder: #a3a3a3;
  /* #1492 — HARD: моно-палитра. */
  --color-primary: #0a0a0a;
  --color-primary-fg: #ffffff;
  --color-primary-dark: #000000;
  --color-primary-soft: #f5f5f5;
  --color-success-soft: #f0fdf4;
  --color-success-fg: #166534;
  --color-warning-soft: #fffbeb;
  --color-warning-fg: #92400e;
  --color-card-bg: #ffffff;
  --color-nav-bg: rgba(255,255,255,0.95);
  --color-accent: #404040;
  --color-accent-fg: #ffffff;
  --color-success: #166534;
  --color-warning: #92400e;
  --color-danger:  #991b1b;
  --radius-card: 0px;
  --radius-btn: 0px;
  --shadow-card: 0 0 0 1px #e5e5e5;
  --shadow-card-hover: 0 0 0 1px #0a0a0a;
  /* #1492 — HARD: характерная типографика. */
  --font-heading: 'Playfair Display', Georgia, serif;
  --font-body:    'Inter', -apple-system, sans-serif;
  --font-weight-heading: 800;
  /* #661 — hero чёрный (как на превью в ЛК), остальная страница белая. */
  --gradient-hero: linear-gradient(180deg, #0a0a0a 0%, #1a1a1a 100%);
  --color-text-on-hero: #ffffff;
  --color-text-muted-on-hero: #a3a3a3;
  --color-badge-bg: rgba(255,255,255,0.08);
  --color-badge-border: rgba(255,255,255,0.20);
  --color-badge-text: #ffffff;
  /* Моно-схема: USDT-em остаётся белым. */
  --gradient-accent: linear-gradient(90deg, #ffffff, #ffffff);
  color-scheme: light;
}

/* #696 — placeholder для калькулятора и форм лендинга, чтобы текст-подсказка
 * не сливался с фоном input'а на тёмных темах (dark-modern/neon-crypto). */
#calc-rub::placeholder,
.pb-calc-input::placeholder {
  color: var(--color-input-placeholder, #94a3b8);
  opacity: 1;
}
