/**
 * landing-themes.css — 5 пресетов тем для партнёрского лендинга (issue #551, эпик #548).
 *
 * Каждая тема — это набор CSS custom properties на :root[data-theme="<slug>"].
 * Шаблон views/landing/landing.php выставляет <html data-theme="..."> в зависимости от:
 *   1. ?theme=<slug> в URL (dev-override)
 *   2. partner_sites.theme_preset из БД
 *   3. дефолт 'light-clean'
 *
 * Поверх темы идёт inline <style> с partner-specific цветами (--color-primary,
 * --color-accent) — переопределяет эти конкретные vars, не трогая всё остальное.
 *
 * База: Open Props (https://open-props.style/) — подключается через CDN в head.
 * Переменные Open Props (--gray-9, --blue-6 и т.п.) можно использовать как источник.
 *
 * Контракт vars (минимум, на который опираются стили блоков):
 *   --color-bg            фон страницы
 *   --color-bg-soft       альт. фон секций
 *   --color-fg            основной цвет текста
 *   --color-fg-muted      приглушённый текст
 *   --color-border        границы карточек/инпутов
 *   --color-primary       основной brand-цвет (CTA, ссылки)
 *   --color-primary-fg    цвет текста на primary (кнопки)
 *   --color-accent        акцент (badge, hover)
 *   --color-accent-fg     текст на accent
 *   --radius-card         радиус карточек
 *   --radius-btn          радиус кнопок
 *   --shadow-card         тень карточек
 *   --shadow-card-hover   тень при hover
 *   --font-heading        шрифт заголовков
 *   --font-body           шрифт текста
 *   --font-weight-heading вес заголовков
 *   --gradient-hero       фон hero-секции
 */

/* ─── 1. light-clean — белая, минималистичная (фин. услуги) ─── */
:root[data-theme="light-clean"] {
  --color-bg: #ffffff;
  --color-bg-soft: #f8fafc;
  --color-fg: #0f172a;
  --color-fg-muted: #64748b;
  --color-border: #e2e8f0;
  --color-primary: #2563eb;
  --color-primary-fg: #ffffff;
  --color-primary-dark: #1d4ed8;
  --color-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);
  --font-heading: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-weight-heading: 700;
  --gradient-hero: linear-gradient(135deg, #eff6ff 0%, #f8fafc 100%);
  color-scheme: light;
}

/* ─── 2. dark-modern — тёмная, современная (tech / SaaS) ─── */
:root[data-theme="dark-modern"] {
  --color-bg: #0f172a;
  --color-bg-soft: #1e293b;
  --color-fg: #e2e8f0;
  --color-fg-muted: #94a3b8;
  --color-border: #334155;
  --color-primary: #3b82f6;
  --color-primary-fg: #ffffff;
  --color-primary-dark: #1d4ed8;
  --color-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 rgba(59, 130, 246, .15);
  --font-heading: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-weight-heading: 700;
  --gradient-hero: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
  color-scheme: dark;
}

/* ─── 3. neon-crypto — неоновая, тёмная (crypto / web3) ─── */
:root[data-theme="neon-crypto"] {
  --color-bg: #0a0e1a;
  --color-bg-soft: #11172a;
  --color-fg: #e6f0ff;
  --color-fg-muted: #7e8aa6;
  --color-border: #243049;
  --color-primary: #00e5ff;
  --color-primary-fg: #001018;
  --color-primary-dark: #00bcd4;
  --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);
  --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%);
  color-scheme: dark;
}

/* ─── 4. corporate-blue — классический корпоративный (banks / B2B) ─── */
:root[data-theme="corporate-blue"] {
  --color-bg: #ffffff;
  --color-bg-soft: #f1f5f9;
  --color-fg: #1e293b;
  --color-fg-muted: #475569;
  --color-border: #cbd5e1;
  --color-primary: #1e40af;
  --color-primary-fg: #ffffff;
  --color-primary-dark: #1e3a8a;
  --color-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: 'Source Sans 3', 'Inter', sans-serif;
  --font-body:    'Source Sans 3', 'Inter', sans-serif;
  --font-weight-heading: 600;
  --gradient-hero: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
  color-scheme: light;
}

/* ─── 5. minimal-mono — чёрно-белая, типографика (premium / агентства) ─── */
:root[data-theme="minimal-mono"] {
  --color-bg: #ffffff;
  --color-bg-soft: #fafafa;
  --color-fg: #0a0a0a;
  --color-fg-muted: #525252;
  --color-border: #d4d4d4;
  --color-primary: #0a0a0a;
  --color-primary-fg: #ffffff;
  --color-primary-dark: #000000;
  --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;
  --font-heading: 'Playfair Display', Georgia, serif;
  --font-body:    'Inter', -apple-system, sans-serif;
  --font-weight-heading: 800;
  --gradient-hero: linear-gradient(180deg, #ffffff 0%, #fafafa 100%);
  color-scheme: light;
}
