/*
  NOTE: Team convention — place all future CSS in this file.
  Do not add <style> blocks or inline styles in Blade views; centralize here.
*/
/* Base layout and color palette */
:root {
  /* --- Fonts --- */
  --font-family-base: 'Roboto', sans-serif;
  --font-family-heading: 'Roboto', sans-serif;
  --font-sans: 'Roboto', sans-serif;

  /* --- Canonical Shared Colors --- */
  --color-white: #ffffff;
  --color-black: #000000;
  --color-brand-accent: #5ec49c;
  --color-brand-accent-hover: #fde047;
  --color-brand-charcoal: #1f3f49;
  --color-brand-charcoal-hover: #2d4f5a;
  --color-slate-950: #0f172a;
  --color-slate-900: #111827;
  --color-slate-700: #334155;
  --color-slate-600: #475569;
  --color-slate-500: #64748b;
  --color-slate-400: #94a3b8;
  --color-slate-300: #cbd5e1;
  --color-slate-200: #e2e8f0;
  --color-slate-100: #f1f5f9;
  --color-slate-050: #f8fafc;
  --color-mint-050: #f2f7f5;
  --color-mint-100: #eaf4f0;
  --color-mint-200: #e4f4ec;
  --color-mint-300: #eef9f4;
  --color-success-soft: #ecfdf5;
  --color-status-lp: #60a5fa;
  --color-status-broker: #34d399;
  --color-rating-star: #fbbf24;

  /* --- Green Palette Scale --- */
  --color-green-950: #00120d;
  --color-green-900: #001e15;
  --color-green-850: #002419;
  --color-green-800: #002b1e;
  --color-green-750: #003223;
  --color-green-700: #003d2b;

  /* --- Semantic Section Backgrounds --- */
  --bg-section-hero: var(--color-green-900);
  --bg-section-featured: var(--color-green-850);
  --bg-section-browselp: var(--color-green-950);
  --bg-section-benefits: var(--color-green-800);
  --bg-section-topranked: var(--color-green-900);
  --bg-section-blog: var(--color-green-850);
  --bg-section-news: var(--color-green-800);
  --bg-section-types: var(--color-green-900);
  --bg-footer: var(--color-green-950);

  /* --- Primary Brand Colors --- */
  --color-brand-primary: var(--color-green-900);
  --color-brand-secondary: var(--color-green-700);

  /* --- Neutral & Surface Colors --- */
  --color-surface-card: var(--color-green-800);
  --color-surface-border: rgba(255, 255, 255, 0.08);
  
  /* --- Semantic Colors --- */
  --color-text-main: var(--color-white);
  --color-text-muted: rgba(209, 250, 229, 0.8);
  --color-text-dim: rgba(209, 250, 229, 0.6);

  /* --- Overlays & Glassmorphism --- */
  --glass-bg: rgba(255, 255, 255, 0.05);
  --glass-border: rgba(255, 255, 255, 0.1);

  /* --- Header + Hero Theme Tokens (Dark defaults) --- */
  --theme-surface-0: var(--color-green-950);
  --theme-surface-1: var(--color-green-900);
  --theme-surface-2: var(--color-green-800);
  --theme-footer-surface: var(--theme-surface-0);
  --theme-text-strong: var(--color-white);
  --theme-text-main: rgba(255, 255, 255, 0.9);
  --theme-text-muted: rgba(209, 250, 229, 0.82);
  --theme-text-dim: rgba(209, 250, 229, 0.62);
  --theme-border: rgba(255, 255, 255, 0.08);
  --theme-border-strong: rgba(255, 255, 255, 0.16);
  --theme-overlay-soft: rgba(255, 255, 255, 0.05);
  --theme-overlay-mid: rgba(255, 255, 255, 0.1);
  --theme-hero-sponsored-card: linear-gradient(155deg, rgba(214, 253, 67, 0.22) 0%, rgba(9, 39, 30, 0.9) 42%, rgba(8, 33, 26, 0.94) 100%);
  --theme-notif-surface: var(--color-white);
  --theme-notif-surface-muted: var(--color-slate-050);
  --theme-notif-border: #e5e7eb;
  --theme-notif-text-main: var(--color-slate-900);
  --theme-notif-text-muted: #6b7280;
  --theme-btn-primary-bg: var(--color-brand-accent);
  --theme-btn-primary-text: var(--color-brand-secondary);
  --theme-btn-primary-hover-bg: var(--color-white);
  --theme-btn-primary-hover-text: var(--color-brand-secondary);
  --theme-btn-sponsored-bg: var(--color-brand-accent);
  --theme-btn-sponsored-text: var(--color-brand-secondary);
  --theme-btn-sponsored-hover-bg: var(--color-white);
  --theme-btn-sponsored-hover-text: var(--color-brand-secondary);
  --theme-btn-secondary-bg: color-mix(in_srgb, var(--color-brand-primary), transparent 40%);
  --theme-btn-secondary-text: var(--color-white);
  --theme-btn-secondary-border: var(--color-surface-border);
  --theme-btn-secondary-hover-bg: var(--color-brand-primary);
  --theme-btn-secondary-hover-text: var(--color-white);
  --theme-hero-broker-pill-bg: color-mix(in_srgb, var(--color-brand-accent-hover), transparent 30%);
  --theme-browse-card-default-bg: color-mix(in_srgb, var(--color-surface-card), transparent 60%);
  --theme-browse-card-default-border: var(--color-surface-border);
  --theme-browse-card-default-title: var(--color-white);
  --theme-browse-card-default-desc: var(--color-text-dim);
  --theme-browse-card-sponsored-bg: linear-gradient(180deg, rgba(214, 253, 67, 0.14) 0%, rgba(4, 41, 28, 0.78) 22%, rgba(4, 41, 28, 0.94) 100%);
  --theme-browse-card-sponsored-border: color-mix(in_srgb, var(--color-brand-accent), transparent 26%);
  --theme-browse-card-sponsored-title: var(--color-white);
  --theme-browse-card-sponsored-desc: var(--color-text-dim);
  --theme-browse-overlay-default-from: var(--color-brand-primary);
  --theme-browse-overlay-default-via: color-mix(in_srgb, var(--color-brand-primary), transparent 20%);
  --theme-browse-overlay-sponsored-from: var(--color-brand-primary);
  --theme-browse-overlay-sponsored-via: color-mix(in_srgb, var(--color-brand-primary), transparent 20%);
  --theme-browse-section-bg: var(--bg-section-browselp);
  --theme-browse-section-border: var(--color-surface-border);
  --theme-browse-ambient-left: color-mix(in_srgb, var(--color-brand-accent), transparent 95%);
  --theme-browse-ambient-right: color-mix(in_srgb, var(--color-status-broker), transparent 95%);
  --theme-latest-blog-section-bg: var(--bg-section-blog);
  --theme-latest-blog-section-border: var(--color-surface-border);
  --theme-latest-blog-ambient-right: color-mix(in_srgb, var(--color-status-broker), transparent 90%);
  --theme-latest-blog-ambient-left: color-mix(in_srgb, var(--color-brand-accent), transparent 95%);
  --theme-latest-blog-featured-bg: color-mix(in_srgb, var(--color-surface-card), transparent 60%);
  --theme-latest-blog-side-bg: color-mix(in_srgb, var(--color-surface-card), transparent 80%);
  --theme-latest-blog-card-border: var(--color-surface-border);
  --theme-latest-blog-overlay-from: var(--color-brand-primary);
  --theme-latest-blog-overlay-via: color-mix(in_srgb, var(--color-brand-primary), transparent 60%);
  --theme-latest-blog-category-bg: var(--color-brand-accent);
  --theme-latest-blog-category-text: var(--color-brand-primary);
  --theme-latest-blog-title: var(--color-white);
  --theme-latest-blog-body: var(--color-text-muted);
  --theme-latest-blog-meta: var(--color-text-dim);
  --theme-latest-blog-author: var(--color-white);
  --theme-latest-blog-media-bg: color-mix(in_srgb, var(--color-brand-secondary), transparent 60%);
  --theme-news-section-bg: var(--bg-section-news);
  --theme-news-section-border: rgba(255, 255, 255, 0.05);
  --theme-news-heading: var(--color-white);
  --theme-news-link: var(--color-brand-accent);
  --theme-news-link-hover: var(--color-white);
  --theme-news-featured-title: var(--color-white);
  --theme-news-body: var(--color-text-muted);
  --theme-news-meta: var(--color-text-dim);
  --theme-news-divider: var(--color-surface-border);
  --theme-news-card-bg: var(--color-surface-card);
  --theme-news-card-border: var(--color-surface-border);
  --theme-news-input-bg: rgba(255, 255, 255, 0.05);
  --theme-news-input-text: var(--color-white);
  --theme-news-input-placeholder: rgba(255, 255, 255, 0.30);
  --theme-news-input-border: var(--color-surface-border);
  --theme-news-terms: rgba(255, 255, 255, 0.20);
  --theme-news-terms-hover: var(--color-white);
  --theme-news-image-overlay-from: rgba(0, 30, 21, 0.20);
  --theme-news-image-overlay-via: transparent;
  --theme-page-content-bg: var(--color-green-950);

  /* --- Legacy Variables (Maintained for compatibility) --- */
  --navy-900: #121a2a;
  --navy-800: #1c273a;
  --navy-700: #25354d;
  --border: #2f3b52;
  --text: #c9d1e5;
  --text-muted: #a8b3c7;
  --blue: #4ea3ff;
  --blue-400: #93c5fd;
  --green: #18c47f;
  --blue-btn: #3a6ff7;
  --gray-100: #f3f4f6;
  --gray-200: #e5e7eb;
  --gray-300: #d1d5db;
  --gray-400: #9ca3af;
  --teal-400: #2dd4bf;
  --teal-500: #14b8a6;
  --teal-600: #0d9488;
  --card: var(--color-white);
  --color-text: #e6eef8;
  --lime-accent: #5ec49c;
  --emerald-card: #04291c;
  --emerald-bg: #021a11;
}

[data-site-theme="light"] {
  /* --- Light Theme Surface Tokens --- */
  --theme-surface-0: var(--color-slate-050);
  --theme-surface-1: var(--color-white);
  --theme-surface-2: var(--color-slate-100);
  --theme-footer-surface: #e8edf3;

  /* --- Light Theme Text Tokens --- */
  --theme-text-strong: var(--color-brand-charcoal);
  --theme-text-main: var(--color-brand-charcoal);
  --theme-text-muted: var(--color-slate-400);
  --theme-text-dim: var(--color-slate-400);

  /* --- Light Theme Border + Overlay Tokens --- */
  --theme-border: rgba(15, 23, 42, 0.12);
  --theme-border-strong: rgba(15, 23, 42, 0.18);
  --theme-overlay-soft: rgba(15, 23, 42, 0.05);
  --theme-overlay-mid: rgba(15, 23, 42, 0.08);

  /* --- Light Theme Notification Tokens --- */
  --theme-hero-sponsored-card: linear-gradient(155deg, #f5fff1 0%, var(--color-mint-300) 48%, var(--color-mint-200) 100%);
  --theme-notif-surface: var(--color-white);
  --theme-notif-surface-muted: var(--color-slate-050);
  --theme-notif-border: var(--color-slate-200);
  --theme-notif-text-main: var(--color-brand-charcoal);
  --theme-notif-text-muted: var(--color-slate-400);

  /* --- Light Theme Button Tokens --- */
  --theme-btn-primary-bg: var(--color-brand-charcoal);
  --theme-btn-primary-text: var(--color-white);
  --theme-btn-primary-hover-bg: #C4B5FD;
  --theme-btn-primary-hover-text: #1f2333;
  --theme-btn-sponsored-bg: var(--color-brand-charcoal);
  --theme-btn-sponsored-text: var(--color-white);
  --theme-btn-sponsored-hover-bg: var(--color-brand-charcoal-hover);
  --theme-btn-sponsored-hover-text: var(--color-white);
  --theme-btn-secondary-bg: rgba(31, 63, 73, 0.10);
  --theme-btn-secondary-text: var(--color-brand-charcoal);
  --theme-btn-secondary-border: rgba(31, 63, 73, 0.14);
  --theme-btn-secondary-hover-bg: #C4B5FD;
  --theme-btn-secondary-hover-text: #1f2333;
  --theme-hero-broker-pill-bg: var(--color-brand-accent);

  /* --- Light Theme Browse Tokens --- */
  --theme-browse-card-default-bg: var(--color-white);
  --theme-browse-card-default-border: rgba(31, 63, 73, 0.12);
  --theme-browse-card-default-title: var(--color-brand-charcoal);
  --theme-browse-card-default-desc: var(--color-slate-400);
  --theme-browse-card-sponsored-bg: var(--color-slate-050);
  --theme-browse-card-sponsored-border: rgba(31, 63, 73, 0.32);
  --theme-browse-card-sponsored-title: var(--color-brand-charcoal);
  --theme-browse-card-sponsored-desc: var(--color-brand-charcoal);
  --theme-browse-overlay-default-from: rgba(255, 255, 255, 0.96);
  --theme-browse-overlay-default-via: rgba(255, 255, 255, 0.78);
  --theme-browse-overlay-sponsored-from: rgba(31, 63, 73, 0.92);
  --theme-browse-overlay-sponsored-via: rgba(31, 63, 73, 0.72);
  --theme-browse-section-bg: var(--color-mint-050);
  --theme-browse-section-border: rgba(31, 63, 73, 0.10);
  --theme-browse-ambient-left: color-mix(in_srgb, var(--color-brand-accent), transparent 86%);
  --theme-browse-ambient-right: color-mix(in_srgb, var(--color-brand-charcoal), transparent 92%);

  /* --- Light Theme Blog Tokens --- */
  --theme-latest-blog-section-bg: var(--color-mint-050);
  --theme-latest-blog-section-border: rgba(31, 63, 73, 0.10);
  --theme-latest-blog-ambient-right: color-mix(in_srgb, var(--color-brand-charcoal), transparent 92%);
  --theme-latest-blog-ambient-left: color-mix(in_srgb, var(--color-brand-accent), transparent 88%);
  --theme-latest-blog-featured-bg: var(--color-white);
  --theme-latest-blog-side-bg: var(--color-white);
  --theme-latest-blog-card-border: rgba(31, 63, 73, 0.12);
  --theme-latest-blog-overlay-from: rgba(255, 255, 255, 0.97);
  --theme-latest-blog-overlay-via: rgba(255, 255, 255, 0.75);
  --theme-latest-blog-category-bg: var(--color-brand-accent);
  --theme-latest-blog-category-text: var(--color-brand-charcoal);
  --theme-latest-blog-title: var(--color-brand-charcoal);
  --theme-latest-blog-body: var(--color-slate-400);
  --theme-latest-blog-meta: var(--color-slate-400);
  --theme-latest-blog-author: var(--color-brand-charcoal);
  --theme-latest-blog-media-bg: rgba(31, 63, 73, 0.10);

  /* --- Light Theme News Tokens --- */
  --theme-news-section-bg: var(--color-white);
  --theme-news-section-border: rgba(31, 63, 73, 0.10);
  --theme-news-heading: var(--color-brand-charcoal);
  --theme-news-link: var(--color-brand-accent);
  --theme-news-link-hover: var(--color-brand-charcoal);
  --theme-news-featured-title: var(--color-brand-charcoal);
  --theme-news-body: var(--color-slate-400);
  --theme-news-meta: var(--color-slate-400);
  --theme-news-divider: rgba(31, 63, 73, 0.12);
  --theme-news-card-bg: var(--color-white);
  --theme-news-card-border: rgba(31, 63, 73, 0.12);
  --theme-news-input-bg: var(--color-white);
  --theme-news-input-text: var(--color-brand-charcoal);
  --theme-news-input-placeholder: var(--color-slate-400);
  --theme-news-input-border: rgba(31, 63, 73, 0.14);
  --theme-news-terms: var(--color-slate-400);
  --theme-news-terms-hover: var(--color-brand-charcoal);
  --theme-news-image-overlay-from: rgba(242, 247, 245, 0.45);
  --theme-news-image-overlay-via: transparent;
  --theme-page-content-bg: var(--color-slate-050);
  --color-brand-accent-hover: #C4B5FD;
}

/* --- Shared Color Utilities (u- prefix) --- */
/*
  Color inventory / semantic mapping (public pages first)
  - #00120d / var(--color-green-950): page shell / deep section background
  - #001e15 / var(--color-green-900): elevated dark surface
  - #5ec49c / var(--color-brand-accent): accent text, badges, primary actions
  - #94a3b8 / muted theme text in light mode: secondary copy
  - white/5..10 and dark-green translucent panels: frosted public cards
  Preferred replacements:
  - deep backgrounds: u-bg-page-shell / u-bg-brand-deep
  - panels/cards: u-bg-panel-frost / u-bg-panel-soft / u-border-panel
  - accent chips/dividers: u-text-accent / u-bg-accent-soft / u-border-accent-soft
  - muted copy: u-text-muted-soft / u-text-muted-fainter
*/
/* Literal utilities */
.white-bg,
.u-bg-white { background-color: var(--color-white); }
.u-text-white { color: var(--color-white); }
.u-text-brand-deep { color: var(--color-green-950); }
.u-bg-charcoal { background-color: #1f3f49; }
.u-bg-charcoal-10 { background-color: rgba(31, 63, 73, 0.10); }
.u-text-charcoal { color: #1f3f49; }
.u-text-slate { color: #94a3b8; }
.u-text-seafoam { color: #5ec49c; }
.u-text-accent { color: var(--color-brand-accent); }
.u-bg-accent { background-color: var(--color-brand-accent); }
.u-border-accent { border-color: var(--color-brand-accent); }
.u-decoration-theme { text-decoration-color: var(--theme-border); }
.u-hover-decoration-accent:hover { text-decoration-color: color-mix(in srgb, var(--color-brand-accent), transparent 30%); }
.u-hover-text-accent:hover { color: var(--color-brand-accent); }

/* Theme semantic utilities */
.u-bg-surface-0 { background-color: var(--theme-surface-0); }
.u-bg-surface-1 { background-color: var(--theme-surface-1); }
.u-bg-surface-2 { background-color: var(--theme-surface-2); }
.u-bg-footer-surface { background-color: var(--theme-footer-surface); }
.u-bg-page-shell { background-color: var(--theme-page-content-bg); }
.u-bg-brand-deep { background-color: var(--color-green-950); }
.u-bg-brand-surface { background-color: var(--color-green-900); }
.u-bg-panel-frost { background-color: color-mix(in srgb, var(--color-green-900), transparent 60%); }
.u-bg-panel-soft { background-color: color-mix(in srgb, var(--color-white), transparent 96%); }
.u-bg-panel-strong { background-color: color-mix(in srgb, var(--color-white), transparent 94%); }
.u-bg-accent-soft { background-color: color-mix(in srgb, var(--color-brand-accent), transparent 92%); }
.u-bg-accent-soft-strong { background-color: color-mix(in srgb, var(--color-brand-accent), transparent 84%); }
.u-bg-status-broker-soft { background-color: color-mix(in srgb, var(--color-status-broker), transparent 95%); }
.u-bg-overlay-accent-soft { background-color: color-mix(in srgb, var(--color-brand-accent), transparent 95%); }
.u-bg-brand-accent-soft { background-color: color-mix(in srgb, var(--color-brand-accent), transparent 90%); }

/* Light theme: darker footer text for better readability */
[data-site-theme="light"] .theme-aware-footer .u-text-dim { color: #475569; }
[data-site-theme="light"] .theme-aware-footer .u-text-muted { color: #334155; }
[data-site-theme="light"] .theme-aware-footer .u-text-strong { color: #0f172a; }
.u-bg-surface-2-50 { background-color: color-mix(in srgb, var(--theme-surface-2), transparent 50%); }
.u-text-strong { color: var(--theme-text-strong); }
.u-text-main { color: var(--theme-text-main); }
.u-text-muted { color: var(--theme-text-muted); }
.u-text-dim { color: var(--theme-text-dim); }
.u-text-inverse { color: var(--color-white); }
.u-text-accent-strong { color: var(--color-brand-accent); }
.u-text-muted-soft { color: color-mix(in srgb, var(--theme-text-muted), transparent 18%); }
.u-text-muted-fainter { color: color-mix(in srgb, var(--theme-text-muted), transparent 38%); }
.u-border-theme { border-color: var(--theme-border); }
.u-border-theme-strong { border-color: var(--theme-border-strong); }
.u-border-surface-0 { border-color: var(--theme-surface-0); }
.u-border-panel { border-color: color-mix(in srgb, var(--theme-border), transparent 10%); }
.u-border-accent-soft { border-color: color-mix(in srgb, var(--color-brand-accent), transparent 78%); }
.u-border-accent-faint { border-color: color-mix(in srgb, var(--color-brand-accent), transparent 88%); }
.u-border-brand-surface-soft { border-color: color-mix(in srgb, var(--color-green-800), transparent 70%); }
.u-bg-border-theme { background-color: var(--theme-border); }
.u-bg-overlay-soft { background-color: var(--theme-overlay-soft); }
.u-bg-overlay-mid { background-color: var(--theme-overlay-mid); }
.u-bg-hero-pill { background-color: var(--theme-hero-broker-pill-bg); }
.u-bg-browse-ambient-left { background-color: var(--theme-browse-ambient-left); }
.u-bg-browse-ambient-right { background-color: var(--theme-browse-ambient-right); }
.u-bg-browse-section { background: var(--theme-browse-section-bg); }
.u-bg-news-section { background: var(--theme-news-section-bg); }
.u-bg-latest-blog-section { background: var(--theme-latest-blog-section-bg); }
.u-bg-sponsored-card { background: var(--theme-hero-sponsored-card); }
.u-bg-sponsored-soft { background: color-mix(in srgb, var(--theme-surface-2) 84%, var(--color-brand-accent) 16%); }
body {
  font-family: var(--font-family-base);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-family-heading);
}

/* Prevent oversized icon flash before utility CSS is fully ready. */
:where(svg[class*="w-"]:not([width])) {
  width: 1rem;
}

:where(svg[class*="h-"]:not([height])) {
  height: 1rem;
}

:where(svg[class*="size-"]:not([width])) {
  width: 1rem;
}

:where(svg[class*="size-"]:not([height])) {
  height: 1rem;
}

.u-card-sponsored-premium {
  border-color: color-mix(in srgb, var(--color-brand-accent), var(--theme-border-strong) 35%);
  box-shadow:
    0 20px 40px -26px color-mix(in srgb, var(--color-brand-accent), transparent 36%),
    inset 0 1px 0 color-mix(in srgb, var(--color-white), transparent 45%);
}
.u-card-sponsored-premium:hover {
  border-color: var(--color-brand-accent);
  box-shadow:
    0 24px 48px -24px color-mix(in srgb, var(--color-brand-accent), transparent 28%),
    inset 0 1px 0 color-mix(in srgb, var(--color-white), transparent 35%);
}
.u-bg-browse-card-default { background: var(--theme-browse-card-default-bg); }
.u-bg-browse-card-sponsored { background: var(--theme-browse-card-sponsored-bg); }
.u-border-browse-card-default { border-color: var(--theme-browse-card-default-border); }
.u-border-browse-card-sponsored { border-color: var(--theme-browse-card-sponsored-border); }
.u-text-browse-card-title-default { color: var(--theme-browse-card-default-title); }
.u-text-browse-card-title-sponsored { color: var(--theme-browse-card-sponsored-title); }
.u-text-browse-card-desc-default { color: var(--theme-browse-card-default-desc); }
.u-text-browse-card-desc-sponsored { color: var(--theme-browse-card-sponsored-desc); }
.u-bg-news-card { background-color: var(--theme-news-card-bg); }
.u-border-news-divider { border-color: var(--theme-news-divider); }
.u-news-input {
  border-color: var(--theme-news-input-border);
  color: var(--theme-news-input-text);
  background-color: var(--theme-news-input-bg);
}
.u-news-input::placeholder { color: var(--theme-news-input-placeholder); }
.u-text-news-terms { color: var(--theme-news-terms); }
.u-hover-text-news-terms:hover { color: var(--theme-news-terms-hover); }
.u-hover-border-accent-soft:hover { border-color: color-mix(in srgb, var(--color-brand-accent), transparent 70%); }
.u-hover-border-accent-mid:hover { border-color: color-mix(in srgb, var(--color-brand-accent), transparent 50%); }
.u-hover-bg-panel-soft:hover { background-color: color-mix(in srgb, var(--color-white), transparent 92%); }
.u-hover-text-strong:hover { color: var(--theme-text-strong); }
.u-bg-latest-blog-ambient-right { background: var(--theme-latest-blog-ambient-right); }
.u-bg-latest-blog-ambient-left { background: var(--theme-latest-blog-ambient-left); }
.u-bg-latest-blog-featured { background: var(--theme-latest-blog-featured-bg); }
.u-bg-latest-blog-side { background: var(--theme-latest-blog-side-bg); }
.u-bg-latest-blog-media { background: var(--theme-latest-blog-media-bg); }
.u-border-latest-blog-card { border-color: var(--theme-latest-blog-card-border); }
.u-bg-latest-blog-category { background: var(--theme-latest-blog-category-bg); }
.u-text-latest-blog-category { color: var(--theme-latest-blog-category-text); }
.u-text-latest-blog-title { color: var(--theme-latest-blog-title); }
.u-text-latest-blog-body { color: var(--theme-latest-blog-body); }
.u-text-latest-blog-meta { color: var(--theme-latest-blog-meta); }
.u-text-latest-blog-author { color: var(--theme-latest-blog-author); }
.u-bg-notif-surface { background-color: var(--theme-notif-surface); }
.u-bg-notif-surface-muted { background-color: var(--theme-notif-surface-muted); }
.u-border-notif { border-color: var(--theme-notif-border); }
.u-text-notif-main { color: var(--theme-notif-text-main); }
.u-text-notif-muted { color: var(--theme-notif-text-muted); }
.u-border-browse-section-y {
  border-top-color: var(--theme-browse-section-border);
  border-bottom-color: var(--theme-browse-section-border);
}
.u-border-latest-blog-section-y {
  border-top-color: var(--theme-latest-blog-section-border);
  border-bottom-color: var(--theme-latest-blog-section-border);
}
.u-border-news-section-top { border-top-color: var(--theme-news-section-border); }
.u-border-theme-top { border-top-color: var(--theme-border); }
.u-border-theme-bottom { border-bottom-color: var(--theme-border); }
.u-border-theme-y {
  border-top-color: var(--theme-border);
  border-bottom-color: var(--theme-border);
}

/* Interactive overlay utilities */
.u-hover-bg-overlay-soft:hover { background-color: var(--theme-overlay-soft); }
.u-hover-bg-overlay-mid:hover { background-color: var(--theme-overlay-mid); }
.u-hover-text-white:hover { color: var(--color-white); }
.u-hover-text-strong:hover { color: var(--theme-text-strong); }

/* Reusable button utilities */
.u-btn-primary {
  background-color: var(--theme-btn-primary-bg);
  color: var(--theme-btn-primary-text);
}
.u-btn-primary:hover {
  background-color: var(--theme-btn-primary-hover-bg);
  color: var(--theme-btn-primary-hover-text);
}
.u-btn-accent {
  background-color: var(--color-brand-accent);
  color: var(--color-green-950);
}
.u-btn-accent:hover {
  background-color: var(--theme-btn-secondary-hover-bg);
  color: var(--color-white);
}
.u-link-accent {
  color: var(--color-brand-accent);
}
.u-link-accent:hover {
  color: color-mix(in srgb, var(--color-brand-accent), var(--color-white) 20%);
}
.u-accent-dot {
  background-color: var(--color-brand-accent);
  box-shadow: 0 0 20px color-mix(in srgb, var(--color-brand-accent), transparent 20%);
}
.u-public-field,
.u-public-select,
.u-public-textarea {
  border-color: color-mix(in srgb, var(--color-white), transparent 90%);
  background-color: color-mix(in srgb, var(--color-white), transparent 95%);
  color: var(--color-white);
}
.u-public-field::placeholder,
.u-public-textarea::placeholder {
  color: color-mix(in srgb, var(--color-white), transparent 80%);
}
.u-public-field:focus,
.u-public-select:focus,
.u-public-textarea:focus {
  border-color: var(--color-brand-accent);
  outline: none;
}
.u-public-select option {
  background-color: #091714;
  color: var(--color-white);
}
[data-site-theme="light"] .u-public-field,
[data-site-theme="light"] .u-public-select,
[data-site-theme="light"] .u-public-textarea {
  border-color: color-mix(in srgb, var(--theme-text-strong), transparent 88%);
  background-color: color-mix(in srgb, var(--theme-text-strong), transparent 96%);
  color: var(--theme-text-strong);
}
[data-site-theme="light"] .u-public-field::placeholder,
[data-site-theme="light"] .u-public-textarea::placeholder {
  color: color-mix(in srgb, var(--theme-text-strong), transparent 76%);
}
[data-site-theme="light"] .u-public-select option {
  background-color: var(--color-white);
  color: var(--theme-text-strong);
}
.story-related-title {
  margin: 0;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.35rem;
  color: var(--theme-text-strong);
}
.story-related-note {
  margin: 10px 0 0;
  color: var(--theme-text-muted);
  line-height: 1.8;
}

/* Public page theme bridges: platform + services */
.platform-card {
  background: var(--theme-surface-1);
  border: 1px solid var(--theme-border);
  box-shadow: 0 20px 60px color-mix(in srgb, var(--theme-shadow), transparent 65%);
}
.platform-panel {
  background: var(--theme-surface-2);
  border: 1px solid var(--theme-border);
}
.platform-heading {
  color: var(--theme-text-strong);
}
.platform-muted {
  color: var(--theme-text-muted);
}
[data-site-theme="light"] .platform-theme-scope,
[data-site-theme="light"] .service-theme-scope {
  background-image: none !important;
  color: var(--theme-text-main);
}
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#06120f]"],
[data-site-theme="light"] .service-theme-scope [class*="bg-[#06120f]"] {
  background-color: #f8fafc !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#091714]"],
[data-site-theme="light"] .service-theme-scope [class*="bg-[#091714]"] {
  background-color: #f2f7f5 !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#0b1d18]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#081612]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#081a16]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#0a1f1a"],
[data-site-theme="light"] .service-theme-scope [class*="bg-[#0b1d18]"] {
  background-color: #eaf4f0 !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="bg-l24bg"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-l24panel"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-l24navy"] {
  background-color: #1f3f49 !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="text-l24yellow"] {
  color: #fde047 !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="text-l24green"] {
  color: var(--color-brand-accent) !important;
}
[data-site-theme="light"] .platform-theme-scope .platform-hero,
[data-site-theme="light"] .service-theme-scope .service-hero {
  background-color: #f8fafc !important;
}
[data-site-theme="light"] .platform-theme-scope .platform-hero-image,
[data-site-theme="light"] .service-theme-scope .service-hero-image {
  opacity: 0.1 !important;
}
[data-site-theme="light"] .platform-theme-scope .platform-hero-overlay,
[data-site-theme="light"] .service-theme-scope .service-hero-overlay {
  background:
    radial-gradient(circle at 20% 20%, rgba(94, 196, 156, 0.16), transparent 28%),
    radial-gradient(circle at 80% 15%, rgba(214, 253, 67, 0.14), transparent 24%),
    linear-gradient(135deg, rgba(248, 250, 252, 0.9), rgba(242, 247, 245, 0.96)) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/6"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/5"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/[0.04]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/[0.08]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/[0.03]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-black/25"],
[data-site-theme="light"] .platform-theme-scope [class*="open:bg-white/[0.08]"],
[data-site-theme="light"] .service-theme-scope [class*="bg-white/6"],
[data-site-theme="light"] .service-theme-scope [class*="bg-white/5"],
[data-site-theme="light"] .service-theme-scope [class*="bg-white/[0.04]"],
[data-site-theme="light"] .service-theme-scope [class*="open:bg-white/[0.08]"] {
  background-color: rgba(15, 23, 42, 0.04) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="hover:bg-white/10"]:hover,
[data-site-theme="light"] .service-theme-scope [class*="hover:bg-white/10"]:hover {
  background-color: rgba(15, 23, 42, 0.08) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="text-white"],
[data-site-theme="light"] .platform-theme-scope input,
[data-site-theme="light"] .platform-theme-scope textarea,
[data-site-theme="light"] .platform-theme-scope select,
[data-site-theme="light"] .service-theme-scope [class*="text-white"],
[data-site-theme="light"] .service-theme-scope input,
[data-site-theme="light"] .service-theme-scope textarea,
[data-site-theme="light"] .service-theme-scope select {
  color: var(--theme-text-main) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="text-white/90"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/82"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/80"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/72"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/70"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/68"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/66"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/62"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/60"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/56"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/55"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/40"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/38"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/36"],
[data-site-theme="light"] .service-theme-scope [class*="text-white/70"],
[data-site-theme="light"] .service-theme-scope [class*="text-white/60"],
[data-site-theme="light"] .service-theme-scope [class*="text-white/56"],
[data-site-theme="light"] .service-theme-scope [class*="text-white/50"],
[data-site-theme="light"] .service-theme-scope [class*="text-white/40"] {
  color: var(--theme-text-muted) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="placeholder-white/20"]::placeholder,
[data-site-theme="light"] .service-theme-scope [class*="placeholder-white/20"]::placeholder,
[data-site-theme="light"] .service-theme-scope .placeholder-text {
  color: var(--theme-text-dim) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#5ec49c]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-l24lime"],
[data-site-theme="light"] .service-theme-scope [class*="bg-[#5ec49c]"] {
  background-color: var(--color-brand-accent) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="text-[#130808]"] {
  color: var(--color-brand-accent) !important;
}
[data-site-theme="light"] .service-theme-scope [class*="text-[#5ec49c]"] {
  color: var(--color-brand-accent) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="hover:bg-[var(--color-brand-accent-hover)]"]:hover,
[data-site-theme="light"] .service-theme-scope [class*="hover:bg-[#e6ff99]"]:hover {
  background-color: var(--color-brand-accent-hover) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="text-[#05110d]"],
[data-site-theme="light"] .platform-theme-scope [class*="selection:text-[#04110d]"],
[data-site-theme="light"] .service-theme-scope [class*="text-[#05110d]"],
[data-site-theme="light"] .service-theme-scope [class*="selection:text-[#04110d]"] {
  color: var(--color-brand-primary) !important;
}
[data-site-theme="light"] .platform-theme-scope [class*="selection:bg-[#5ec49c]"],
[data-site-theme="light"] .service-theme-scope [class*="selection:bg-[#5ec49c]"] {
  --tw-selection-bg: var(--color-brand-accent);
}
[data-site-theme="light"] .service-theme-scope .dropdown-list,
[data-site-theme="light"] .service-theme-scope select option {
  background-color: var(--theme-surface-1) !important;
  color: var(--theme-text-main) !important;
}
[data-site-theme="light"] .service-theme-scope input,
[data-site-theme="light"] .service-theme-scope textarea,
[data-site-theme="light"] .service-theme-scope select,
[data-site-theme="light"] .service-theme-scope .multi-select-trigger {
  background-color: var(--theme-surface-1) !important;
}
[data-site-theme="light"] .platform-theme-scope .platform-card {
  background: var(--theme-surface-1) !important;
  border: 1px solid var(--theme-border) !important;
  box-shadow: 0 16px 48px rgba(15, 23, 42, 0.08) !important;
}
[data-site-theme="light"] .platform-theme-scope .platform-panel {
  background: var(--theme-surface-2) !important;
  border: 1px solid var(--theme-border) !important;
}
[data-site-theme="light"] .platform-theme-scope .platform-heading {
  color: var(--theme-text-main) !important;
}
[data-site-theme="light"] .platform-theme-scope .platform-muted {
  color: var(--theme-text-muted) !important;
}
.u-btn-sponsored {
  background-color: var(--theme-btn-sponsored-bg);
  color: var(--theme-btn-sponsored-text);
}
.u-btn-sponsored:hover {
  background-color: var(--theme-btn-secondary-hover-bg);
  color: var(--theme-btn-secondary-hover-text);
}
.u-btn-secondary {
  background-color: var(--theme-btn-secondary-bg);
  color: var(--theme-btn-secondary-text);
  border-color: var(--theme-btn-secondary-border);
}
.u-btn-secondary:hover {
  background-color: var(--theme-btn-secondary-hover-bg);
  color: var(--theme-btn-secondary-hover-text);
}

/* User-facing pages: remove button shadows in all themes */
body.front-site-page button,
body.front-site-page .u-btn-primary,
body.front-site-page .u-btn-sponsored,
body.front-site-page .u-btn-secondary,
body.front-site-page .sib-form-block__button,
body.front-site-page nav[aria-label="Pagination Navigation"] a,
body.front-site-page nav[aria-label="Pagination Navigation"] span,
body.provider-index-page button,
body.provider-index-page .u-btn-primary,
body.provider-index-page .u-btn-sponsored,
body.provider-index-page .u-btn-secondary,
body.provider-view-page button,
body.provider-view-page .u-btn-primary,
body.provider-view-page .u-btn-sponsored,
body.provider-view-page .u-btn-secondary,
body.auth-theme-scope button,
body.auth-theme-scope .u-btn-primary,
body.auth-theme-scope .u-btn-sponsored,
body.auth-theme-scope .u-btn-secondary,
body.service-theme-scope button,
body.service-theme-scope .u-btn-primary,
body.service-theme-scope .u-btn-sponsored,
body.service-theme-scope .u-btn-secondary,
body.user-premium button,
body.user-premium .action-btn,
body.user-premium .ghost-btn,
body.user-premium .hero-link,
body.user-premium .logout-btn {
  box-shadow: none !important;
}

body.front-site-page button:hover,
body.front-site-page .u-btn-primary:hover,
body.front-site-page .u-btn-sponsored:hover,
body.front-site-page .u-btn-secondary:hover,
body.provider-index-page button:hover,
body.provider-index-page .u-btn-primary:hover,
body.provider-index-page .u-btn-sponsored:hover,
body.provider-index-page .u-btn-secondary:hover,
body.provider-view-page button:hover,
body.provider-view-page .u-btn-primary:hover,
body.provider-view-page .u-btn-sponsored:hover,
body.provider-view-page .u-btn-secondary:hover,
body.auth-theme-scope button:hover,
body.auth-theme-scope .u-btn-primary:hover,
body.auth-theme-scope .u-btn-sponsored:hover,
body.auth-theme-scope .u-btn-secondary:hover,
body.service-theme-scope button:hover,
body.service-theme-scope .u-btn-primary:hover,
body.service-theme-scope .u-btn-sponsored:hover,
body.service-theme-scope .u-btn-secondary:hover,
body.user-premium button:hover,
body.user-premium .action-btn:hover,
body.user-premium .ghost-btn:hover,
body.user-premium .hero-link:hover,
body.user-premium .logout-btn:hover {
  box-shadow: none !important;
}

/* Home page dark-theme accent: keep light mode unchanged. */
:root:not([data-site-theme="light"]) body:not([data-site-theme="light"]) .home-page-content,
[data-site-theme="dark"] .home-page-content {
  --home-dark-base: #010106;
  --home-dark-surface: #0B0A1F;
  --home-dark-accent: #7A5BFA;
  --home-dark-accent-hover: #8B6CFF;
  --home-dark-highlight: #45B8FF;
  --home-dark-muted: #B6BDD8;
  --theme-surface-0: var(--home-dark-base);
  --theme-surface-1: var(--home-dark-surface);
  --theme-surface-2: color-mix(in srgb, var(--home-dark-surface), var(--home-dark-base) 22%);
  --theme-text-strong: #F5F7FF;
  --theme-text-main: color-mix(in srgb, #F5F7FF, transparent 8%);
  --theme-text-muted: color-mix(in srgb, var(--home-dark-muted), #F5F7FF 8%);
  --theme-text-dim: #7D85A7;
  --theme-border: color-mix(in srgb, var(--home-dark-accent), transparent 72%);
  --theme-border-strong: color-mix(in srgb, var(--home-dark-highlight), transparent 56%);
  --theme-overlay-soft: color-mix(in srgb, var(--home-dark-accent), transparent 90%);
  --theme-overlay-mid: color-mix(in srgb, var(--home-dark-accent), transparent 82%);
  --color-status-lp: #A28BFF;
  --color-status-broker: var(--home-dark-highlight);
  --color-brand-accent: var(--home-dark-accent);
  --theme-btn-primary-bg: var(--home-dark-accent);
  --theme-btn-primary-text: var(--color-white);
  --theme-btn-primary-hover-bg: var(--home-dark-accent-hover);
  --theme-btn-primary-hover-text: var(--color-white);
  --theme-btn-sponsored-bg: var(--home-dark-accent);
  --theme-btn-sponsored-text: var(--color-white);
  --theme-btn-sponsored-hover-bg: var(--home-dark-accent-hover);
  --theme-btn-sponsored-hover-text: var(--color-white);
  --theme-news-link: var(--home-dark-accent);
  --theme-latest-blog-category-bg: var(--home-dark-accent);
  --theme-hero-sponsored-card: linear-gradient(155deg, color-mix(in srgb, var(--home-dark-accent), transparent 72%) 0%, color-mix(in srgb, var(--home-dark-surface), var(--home-dark-base) 24%) 48%, var(--home-dark-base) 100%);
  --theme-hero-broker-pill-bg: color-mix(in srgb, var(--home-dark-highlight), transparent 80%);

  /* Home section separation with subtle tonal shifts */
  --theme-browse-section-bg: linear-gradient(180deg, #080716 0%, #0B0A1F 100%);
  --theme-latest-blog-section-bg: linear-gradient(180deg, #0B0A1F 0%, #100D2A 100%);
  --theme-news-section-bg: linear-gradient(180deg, #100D2A 0%, #0A081B 100%);
  --theme-surface-1: #0D0B24;
  --theme-surface-2: #171237;
  --theme-browse-card-default-bg: color-mix(in srgb, #171237, transparent 20%);
  --theme-latest-blog-featured-bg: color-mix(in srgb, #171237, transparent 18%);
  --theme-latest-blog-side-bg: color-mix(in srgb, #171237, transparent 26%);
  --theme-news-card-bg: color-mix(in srgb, #171237, transparent 18%);
  --theme-browse-section-border: color-mix(in srgb, var(--home-dark-accent), transparent 82%);
  --theme-latest-blog-section-border: color-mix(in srgb, var(--home-dark-highlight), transparent 84%);
  --theme-news-section-border: color-mix(in srgb, var(--home-dark-accent), transparent 86%);
}

:root:not([data-site-theme="light"]) body:not([data-site-theme="light"]) .home-page-content .theme-aware-hero h1 span,
[data-site-theme="dark"] .home-page-content .theme-aware-hero h1 span {
  color: var(--home-dark-accent) !important;
}

:root:not([data-site-theme="light"]) body:not([data-site-theme="light"]) .home-page-content .theme-aware-hero.home-platform-hero,
[data-site-theme="dark"] .home-page-content .theme-aware-hero.home-platform-hero {
  background:
    radial-gradient(circle at 82% 16%, color-mix(in srgb, var(--home-dark-highlight), transparent 86%), transparent 32%),
    linear-gradient(160deg, color-mix(in srgb, var(--home-dark-surface), var(--home-dark-base) 26%) 0%, var(--home-dark-base) 100%) !important;
  border-color: color-mix(in srgb, var(--home-dark-accent), transparent 70%) !important;
}

.home-page-content .theme-aware-hero.home-platform-hero .home-platform-hero-dark-overlay {
  opacity: 0;
}

:root:not([data-site-theme="light"]) body:not([data-site-theme="light"]) .home-page-content .theme-aware-hero.home-platform-hero .home-platform-hero-dark-overlay,
[data-site-theme="dark"] .home-page-content .theme-aware-hero.home-platform-hero .home-platform-hero-dark-overlay {
  opacity: 0.65;
}

:root:not([data-site-theme="light"]) body:not([data-site-theme="light"]) .home-page-content .theme-aware-hero.home-platform-hero .home-platform-hero-overlay,
[data-site-theme="dark"] .home-page-content .theme-aware-hero.home-platform-hero .home-platform-hero-overlay {
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--home-dark-accent), transparent 74%), transparent 28%),
    radial-gradient(circle at 80% 20%, color-mix(in srgb, var(--home-dark-highlight), transparent 76%), transparent 28%),
    linear-gradient(135deg, rgba(11, 10, 31, 0.84), rgba(1, 1, 6, 0.96)) !important;
}

/* Front-site light-theme accent */
[data-site-theme="light"] body.front-site-page {
  --front-site-dark-accent: #7A5BFA;
  --front-site-dark-accent-hover: #C4B5FD;
  --color-brand-accent: #7A5BFA;
  --color-brand-accent-hover: #C4B5FD;
  --theme-btn-primary-bg: #7A5BFA;
  --theme-btn-primary-text: #ffffff;
  --theme-btn-primary-hover-bg: #C4B5FD;
  --theme-btn-primary-hover-text: #1f2333;
  --theme-btn-sponsored-bg: #7A5BFA;
  --theme-btn-sponsored-text: #ffffff;
  --theme-btn-sponsored-hover-bg: #C4B5FD;
  --theme-btn-sponsored-hover-text: #1f2333;
}
[data-site-theme="light"] body.front-site-page .bg-\[var\(--front-site-dark-accent\)\] {
  color: #ffffff !important;
}

/* Front-site dark-theme accent: applies to public pages only, not dashboards. */
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]),
[data-site-theme="dark"] body.front-site-page {
  --front-site-dark-accent: #7A5BFA;
  --front-site-dark-accent-hover: #8B6CFF;
  --front-site-dark-highlight: #45B8FF;
  --color-brand-accent: var(--front-site-dark-accent);
  --color-brand-accent-hover: var(--front-site-dark-accent-hover);
  --theme-btn-primary-bg: var(--front-site-dark-accent);
  --theme-btn-primary-text: var(--color-white);
  --theme-btn-primary-hover-bg: var(--front-site-dark-accent-hover);
  --theme-btn-primary-hover-text: var(--color-white);
  --theme-btn-sponsored-bg: var(--front-site-dark-accent);
  --theme-btn-sponsored-text: var(--color-white);
  --theme-btn-sponsored-hover-bg: var(--front-site-dark-accent-hover);
  --theme-btn-sponsored-hover-text: var(--color-white);
  --theme-news-link: var(--front-site-dark-accent);
  --theme-latest-blog-category-bg: var(--front-site-dark-accent);
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) [class*="text-[var(--color-brand-primary)]"],
[data-site-theme="dark"] body.front-site-page [class*="text-[var(--color-brand-primary)]"] {
  color: var(--color-white) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .hover\:bg-white:hover,
[data-site-theme="dark"] body.front-site-page .hover\:bg-white:hover {
  background-color: var(--front-site-dark-accent-hover) !important;
  color: var(--color-white) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-100,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-100\/50,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-100\/60,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-200,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-300,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-400,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-500,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-500\/60,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-500\/70,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-600,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-700,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-emerald-800,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .hover\:text-emerald-400:hover,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .hover\:text-emerald-600:hover,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .hover\:text-emerald-700:hover,
[data-site-theme="dark"] body.front-site-page .text-emerald-100,
[data-site-theme="dark"] body.front-site-page .text-emerald-100\/50,
[data-site-theme="dark"] body.front-site-page .text-emerald-100\/60,
[data-site-theme="dark"] body.front-site-page .text-emerald-200,
[data-site-theme="dark"] body.front-site-page .text-emerald-300,
[data-site-theme="dark"] body.front-site-page .text-emerald-400,
[data-site-theme="dark"] body.front-site-page .text-emerald-500,
[data-site-theme="dark"] body.front-site-page .text-emerald-500\/60,
[data-site-theme="dark"] body.front-site-page .text-emerald-500\/70,
[data-site-theme="dark"] body.front-site-page .text-emerald-600,
[data-site-theme="dark"] body.front-site-page .text-emerald-700,
[data-site-theme="dark"] body.front-site-page .text-emerald-800,
[data-site-theme="dark"] body.front-site-page .hover\:text-emerald-400:hover,
[data-site-theme="dark"] body.front-site-page .hover\:text-emerald-600:hover,
[data-site-theme="dark"] body.front-site-page .hover\:text-emerald-700:hover {
  color: var(--front-site-dark-accent) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-50,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-50\/30,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-100,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-500\/5,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-500\/10,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-500\/20,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-500\/25,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-500\/40,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-500\/55,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-900\/30,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-900\/50,
[data-site-theme="dark"] body.front-site-page .bg-emerald-50,
[data-site-theme="dark"] body.front-site-page .bg-emerald-50\/30,
[data-site-theme="dark"] body.front-site-page .bg-emerald-100,
[data-site-theme="dark"] body.front-site-page .bg-emerald-500\/5,
[data-site-theme="dark"] body.front-site-page .bg-emerald-500\/10,
[data-site-theme="dark"] body.front-site-page .bg-emerald-500\/20,
[data-site-theme="dark"] body.front-site-page .bg-emerald-500\/25,
[data-site-theme="dark"] body.front-site-page .bg-emerald-500\/40,
[data-site-theme="dark"] body.front-site-page .bg-emerald-500\/55,
[data-site-theme="dark"] body.front-site-page .bg-emerald-900\/30,
[data-site-theme="dark"] body.front-site-page .bg-emerald-900\/50 {
  background-color: color-mix(in srgb, var(--front-site-dark-accent), transparent 84%) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-400,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-500,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-emerald-600,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .hover\:bg-emerald-700:hover,
[data-site-theme="dark"] body.front-site-page .bg-emerald-400,
[data-site-theme="dark"] body.front-site-page .bg-emerald-500,
[data-site-theme="dark"] body.front-site-page .bg-emerald-600,
[data-site-theme="dark"] body.front-site-page .hover\:bg-emerald-700:hover {
  background-color: var(--front-site-dark-accent) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .border-emerald-50,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .border-emerald-500\/20,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .border-emerald-500\/30,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .border-emerald-500\/40,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .border-emerald-800\/30,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .border-emerald-800\/50,
[data-site-theme="dark"] body.front-site-page .border-emerald-50,
[data-site-theme="dark"] body.front-site-page .border-emerald-500\/20,
[data-site-theme="dark"] body.front-site-page .border-emerald-500\/30,
[data-site-theme="dark"] body.front-site-page .border-emerald-500\/40,
[data-site-theme="dark"] body.front-site-page .border-emerald-800\/30,
[data-site-theme="dark"] body.front-site-page .border-emerald-800\/50 {
  border-color: color-mix(in srgb, var(--front-site-dark-accent), transparent 70%) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .text-\[\#5ec49c\],
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .group:hover .group-hover\:text-\[\#5ec49c\],
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .hover\:text-\[\#5ec49c\]:hover,
[data-site-theme="dark"] body.front-site-page .text-\[\#5ec49c\],
[data-site-theme="dark"] body.front-site-page .group:hover .group-hover\:text-\[\#5ec49c\],
[data-site-theme="dark"] body.front-site-page .hover\:text-\[\#5ec49c\]:hover {
  color: var(--front-site-dark-accent) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-\[\#5ec49c\],
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-l24lime,
[data-site-theme="dark"] body.front-site-page .bg-\[\#5ec49c\],
[data-site-theme="dark"] body.front-site-page .bg-l24lime {
  background-color: var(--front-site-dark-accent) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .bg-\[\#5ec49c\]\/5,
[data-site-theme="dark"] body.front-site-page .bg-\[\#5ec49c\]\/5 {
  background-color: color-mix(in srgb, var(--front-site-dark-accent), transparent 95%) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .hover\:border-\[\#5ec49c\]\/30:hover,
[data-site-theme="dark"] body.front-site-page .hover\:border-\[\#5ec49c\]\/30:hover {
  border-color: color-mix(in srgb, var(--front-site-dark-accent), transparent 70%) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page.blog-shell:not([data-site-theme="light"]) .archive-hero__eyebrow::before,
:root:not([data-site-theme="light"]) body.front-site-page.story-shell:not([data-site-theme="light"]) .story-eyebrow::before,
[data-site-theme="dark"] body.front-site-page.blog-shell .archive-hero__eyebrow::before,
[data-site-theme="dark"] body.front-site-page.story-shell .story-eyebrow::before {
  background: var(--front-site-dark-accent) !important;
  box-shadow: 0 0 18px color-mix(in srgb, var(--front-site-dark-accent), transparent 25%) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page.blog-shell:not([data-site-theme="light"]) .hero-action--primary,
[data-site-theme="dark"] body.front-site-page.blog-shell .hero-action--primary {
  background: var(--front-site-dark-accent) !important;
  color: var(--color-white) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page.blog-shell:not([data-site-theme="light"]) .story-card__cta,
:root:not([data-site-theme="light"]) body.front-site-page.story-shell:not([data-site-theme="light"]) .story-body a,
[data-site-theme="dark"] body.front-site-page.blog-shell .story-card__cta,
[data-site-theme="dark"] body.front-site-page.story-shell .story-body a {
  color: var(--front-site-dark-accent) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page.story-shell:not([data-site-theme="light"]) .story-body blockquote,
[data-site-theme="dark"] body.front-site-page.story-shell .story-body blockquote {
  border-left-color: color-mix(in srgb, var(--front-site-dark-accent), transparent 20%) !important;
}

/* Header dark-theme accent: keep light mode unchanged. */
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header,
[data-site-theme="dark"] body.front-site-page .theme-aware-header {
  --header-dark-accent: #7A5BFA;
  --header-dark-accent-hover: #8B6CFF;
  --header-dark-highlight: #45B8FF;
  --color-brand-accent: var(--header-dark-accent);
  --color-brand-accent-hover: var(--header-dark-accent-hover);
  --theme-btn-primary-bg: var(--header-dark-accent);
  --theme-btn-primary-text: var(--color-white);
  --theme-btn-primary-hover-bg: var(--header-dark-accent-hover);
  --theme-btn-primary-hover-text: var(--color-white);
  --theme-btn-sponsored-bg: var(--header-dark-accent);
  --theme-btn-sponsored-text: var(--color-white);
  --theme-btn-sponsored-hover-bg: var(--header-dark-accent-hover);
  --theme-btn-sponsored-hover-text: var(--color-white);
  --theme-surface-1: #0D0B24;
  --theme-surface-2: #171237;
  --theme-border: color-mix(in srgb, var(--header-dark-accent), transparent 74%);
  --theme-border-strong: color-mix(in srgb, var(--header-dark-highlight), transparent 58%);
  --theme-overlay-soft: color-mix(in srgb, var(--header-dark-accent), transparent 90%);
  --theme-overlay-mid: color-mix(in srgb, var(--header-dark-accent), transparent 82%);
  background:
    radial-gradient(circle at 86% 14%, color-mix(in srgb, var(--header-dark-highlight), transparent 88%), transparent 32%),
    linear-gradient(180deg, rgba(11, 10, 31, 0.94) 0%, rgba(1, 1, 6, 0.97) 100%);
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header [class*="text-[var(--color-brand-primary)]"],
[data-site-theme="dark"] body.front-site-page .theme-aware-header [class*="text-[var(--color-brand-primary)]"] {
  color: var(--color-white) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .hover\:bg-white:hover,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .hover\:bg-emerald-700:hover,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .hover\:bg-white:hover,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .hover\:bg-emerald-700:hover {
  background-color: var(--header-dark-accent-hover) !important;
  color: var(--color-white) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .text-emerald-400,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .text-emerald-600,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .hover\:text-emerald-400:hover,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .hover\:text-emerald-600:hover,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .hover\:text-emerald-700:hover,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .text-emerald-400,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .text-emerald-600,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .hover\:text-emerald-400:hover,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .hover\:text-emerald-600:hover,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .hover\:text-emerald-700:hover {
  color: var(--header-dark-accent) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .bg-emerald-500,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .bg-emerald-600,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .bg-emerald-500,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .bg-emerald-600 {
  background-color: var(--header-dark-accent) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .bg-emerald-50,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .bg-emerald-50\/30,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .bg-emerald-100,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .bg-emerald-50,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .bg-emerald-50\/30,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .bg-emerald-100 {
  background-color: color-mix(in srgb, var(--header-dark-accent), transparent 84%) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .border-emerald-50,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .border-emerald-50 {
  border-color: color-mix(in srgb, var(--header-dark-accent), transparent 70%) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .via-\[\#ccf381\],
[data-site-theme="dark"] body.front-site-page .theme-aware-header .via-\[\#ccf381\] {
  --tw-gradient-via: var(--header-dark-highlight) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .header-action-pill--primary,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .header-action-pill--primary,
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header a.bg-\[var\(--color-brand-accent\)\],
[data-site-theme="dark"] body.front-site-page .theme-aware-header a.bg-\[var\(--color-brand-accent\)\],
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .bg-\[var\(--color-brand-accent\)\],
[data-site-theme="dark"] body.front-site-page .theme-aware-header .bg-\[var\(--color-brand-accent\)\] {
  color: #ffffff !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .u-btn-accent,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .u-btn-accent {
  background: var(--header-dark-accent) !important;
  color: #ffffff !important;
  border: 1px solid var(--header-dark-accent);
  box-shadow:
    0 10px 24px -16px color-mix(in srgb, var(--header-dark-accent), transparent 30%),
    0 0 0 1px color-mix(in srgb, var(--color-white), transparent 86%) inset;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .u-btn-accent:hover,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .u-btn-accent:hover {
  background: var(--header-dark-accent-hover) !important;
  color: #ffffff !important;
  box-shadow:
    0 14px 30px -14px color-mix(in srgb, var(--header-dark-accent), transparent 30%),
    0 0 20px color-mix(in srgb, var(--header-dark-accent), transparent 48%);
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .mega-menu-card,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .mega-menu-card {
  background: color-mix(in srgb, #171237, transparent 22%);
  border-color: color-mix(in srgb, var(--header-dark-accent), transparent 76%);
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .u-bg-surface-2,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .u-bg-surface-2 {
  background-color: #171237 !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .u-bg-surface-2-50,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .u-bg-surface-2-50 {
  background-color: color-mix(in srgb, #171237, transparent 50%) !important;
}

:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-header .mega-menu-card:hover,
[data-site-theme="dark"] body.front-site-page .theme-aware-header .mega-menu-card:hover {
  background: color-mix(in srgb, #171237, transparent 10%);
  border-color: color-mix(in srgb, var(--header-dark-highlight), transparent 52%);
  box-shadow: 0 14px 30px -18px color-mix(in srgb, var(--header-dark-highlight), transparent 26%);
}

/* Footer dark-theme accent: keep light mode unchanged. */
:root:not([data-site-theme="light"]) body.front-site-page:not([data-site-theme="light"]) .theme-aware-footer,
[data-site-theme="dark"] body.front-site-page .theme-aware-footer {
  --footer-dark-accent: #7A5BFA;
  --footer-dark-accent-hover: #8B6CFF;
  --footer-dark-highlight: #45B8FF;
  --color-brand-accent: var(--footer-dark-accent);
  --theme-btn-primary-bg: var(--footer-dark-accent);
  --theme-btn-primary-text: var(--color-white);
  --theme-btn-primary-hover-bg: var(--footer-dark-accent-hover);
  --theme-btn-primary-hover-text: var(--color-white);
  --theme-surface-1: #0D0B24;
  --theme-surface-2: #171237;
  --theme-border: color-mix(in srgb, var(--footer-dark-accent), transparent 74%);
  --theme-border-strong: color-mix(in srgb, var(--footer-dark-highlight), transparent 58%);
  --theme-overlay-soft: color-mix(in srgb, var(--footer-dark-accent), transparent 90%);
  --theme-overlay-mid: color-mix(in srgb, var(--footer-dark-accent), transparent 82%);
  background:
    radial-gradient(circle at 12% 0%, color-mix(in srgb, var(--footer-dark-highlight), transparent 88%), transparent 30%),
    linear-gradient(180deg, rgba(11, 10, 31, 0.95) 0%, rgba(1, 1, 6, 0.98) 100%);
}

@keyframes scroll-vertical {
    0% { transform: translateY(0); }
    100% { transform: translateY(-50%); }
}
.animate-scroll-vertical {
    animation: scroll-vertical 30s linear infinite;
    will-change: transform;
    transform: translateZ(0);
}
.mask-gradient-y {
    mask-image: linear-gradient(to bottom, transparent, black 25%, black 75%, transparent);
    -webkit-mask-image: linear-gradient(to bottom, transparent, black 25%, black 75%, transparent);
}

[data-site-theme="light"] .home-platform-hero {
  background-color: #f8fafc !important;
  border-color: rgba(15, 23, 42, 0.12) !important;
}

[data-site-theme="light"] .home-platform-hero .home-platform-hero-image {
  opacity: 0.08 !important;
}

[data-site-theme="light"] .home-platform-hero .home-platform-hero-overlay {
  background:
    radial-gradient(circle at 20% 20%, rgba(94, 196, 156, 0.16), transparent 28%),
    radial-gradient(circle at 80% 15%, rgba(214, 253, 67, 0.14), transparent 24%),
    linear-gradient(135deg, rgba(248, 250, 252, 0.9), rgba(242, 247, 245, 0.96)) !important;
}

.home-page-content {
  background: var(--theme-page-content-bg);
}

/* Home layout: ensure hero sits flush under header with no accidental gap */
body.front-site-page .home-page-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.front-site-page .home-page-content > .theme-aware-hero.home-platform-hero {
  margin-top: 0 !important;
}

/* Unified customer-facing dark palette across all public pages */
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]),
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) {
  --front-site-dark-accent: #7A5BFA;
  --front-site-dark-accent-hover: #8B6CFF;
  --front-site-dark-highlight: #45B8FF;
  --theme-surface-0: #010106;
  --theme-surface-1: #0D0B24;
  --theme-surface-2: #171237;
  --theme-page-content-bg: #010106;
  --theme-text-strong: #F5F7FF;
  --theme-text-main: color-mix(in srgb, #F5F7FF, transparent 8%);
  --theme-text-muted: #B6BDD8;
  --theme-text-dim: #7D85A7;
  --theme-border: color-mix(in srgb, var(--front-site-dark-accent), transparent 74%);
  --theme-border-strong: color-mix(in srgb, var(--front-site-dark-highlight), transparent 58%);
  --theme-overlay-soft: color-mix(in srgb, var(--front-site-dark-accent), transparent 90%);
  --theme-overlay-mid: color-mix(in srgb, var(--front-site-dark-accent), transparent 82%);
  --color-brand-accent: var(--front-site-dark-accent);
  --color-brand-accent-hover: var(--front-site-dark-accent-hover);
  --theme-btn-primary-bg: var(--front-site-dark-accent);
  --theme-btn-primary-text: var(--color-white);
  --theme-btn-primary-hover-bg: var(--front-site-dark-accent-hover);
  --theme-btn-primary-hover-text: var(--color-white);
  --theme-btn-sponsored-bg: var(--front-site-dark-accent);
  --theme-btn-sponsored-text: var(--color-white);
  --theme-btn-sponsored-hover-bg: var(--front-site-dark-accent-hover);
  --theme-btn-sponsored-hover-text: var(--color-white);
  --theme-news-link: var(--front-site-dark-accent);
  --theme-latest-blog-category-bg: var(--front-site-dark-accent);
}

:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]),
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) {
  background:
    radial-gradient(circle at 82% 12%, color-mix(in srgb, var(--front-site-dark-highlight), transparent 90%), transparent 32%),
    linear-gradient(180deg, #0B0A1F 0%, #010106 100%) !important;
  color: var(--theme-text-main) !important;
}

/* Legacy public-page class color remap to the unified palette */
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-[#071512]"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-[#06120f]"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-[#091714]"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-[#0b1d18]"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-[#081612]"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-[#081a16]"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-[#0a1f1a"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-l24bg"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-l24panel"],
:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) [class*="bg-l24navy"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-[#071512]"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-[#06120f]"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-[#091714]"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-[#0b1d18]"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-[#081612]"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-[#081a16]"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-[#0a1f1a"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-l24bg"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-l24panel"],
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) [class*="bg-l24navy"] {
  background: color-mix(in srgb, #171237, transparent 12%) !important;
}

:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) .theme-aware-header,
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) .theme-aware-header {
  --theme-surface-1: #0D0B24;
  --theme-surface-2: #171237;
  --theme-border: color-mix(in srgb, #7A5BFA, transparent 74%);
  --theme-overlay-soft: color-mix(in srgb, #7A5BFA, transparent 90%);
  --theme-overlay-mid: color-mix(in srgb, #7A5BFA, transparent 82%);
  background:
    radial-gradient(circle at 86% 14%, color-mix(in srgb, #45B8FF, transparent 88%), transparent 32%),
    linear-gradient(180deg, rgba(11, 10, 31, 0.94) 0%, rgba(1, 1, 6, 0.97) 100%);
}

:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell):not([data-site-theme="light"]) .theme-aware-footer,
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .contact-page, .legal-page, .blog-shell, .story-shell) .theme-aware-footer {
  --theme-surface-1: #0D0B24;
  --theme-surface-2: #171237;
  --theme-border: color-mix(in srgb, #7A5BFA, transparent 74%);
  --theme-overlay-soft: color-mix(in srgb, #7A5BFA, transparent 90%);
  --theme-overlay-mid: color-mix(in srgb, #7A5BFA, transparent 82%);
  background:
    radial-gradient(circle at 12% 0%, color-mix(in srgb, #45B8FF, transparent 88%), transparent 30%),
    linear-gradient(180deg, rgba(11, 10, 31, 0.95) 0%, rgba(1, 1, 6, 0.98) 100%);
}

/* Hero overrides for customer-facing pages with hardcoded legacy green gradients */
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .platform-hero,
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .service-hero,
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .legal-hero,
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) .platform-hero,
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) .service-hero,
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) .legal-hero {
  background:
    radial-gradient(circle at 84% 12%, color-mix(in srgb, #45B8FF, transparent 88%), transparent 34%),
    linear-gradient(165deg, #0B0A1F 0%, #010106 100%) !important;
  border-color: color-mix(in srgb, #7A5BFA, transparent 72%) !important;
}

:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .platform-hero-overlay,
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .service-hero-overlay,
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .legal-hero-bg,
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .platform-hero-overlay,
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) .platform-hero-overlay,
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) .service-hero-overlay,
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) .legal-hero-bg {
  background:
    radial-gradient(circle at top left, color-mix(in srgb, #7A5BFA, transparent 76%), transparent 30%),
    radial-gradient(circle at 80% 18%, color-mix(in srgb, #45B8FF, transparent 78%), transparent 28%),
    linear-gradient(135deg, rgba(11, 10, 31, 0.86), rgba(1, 1, 6, 0.96)) !important;
}

:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .platform-hero-image,
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) .service-hero-image,
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) .platform-hero-image,
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) .service-hero-image {
  opacity: 0.16 !important;
}

/* Remap legacy green hero chips/boxes to neon palette */
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="bg-emerald-"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="bg-emerald-"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="bg-emerald-"] {
  background-color: color-mix(in srgb, #7A5BFA, transparent 82%) !important;
}

:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="bg-[#5ec49c]"],
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="bg-l24lime"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="bg-[#5ec49c]"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="bg-l24lime"] {
  background-color: #7A5BFA !important;
}

:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="text-emerald-"],
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="text-[#5ec49c]"],
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="text-l24lime"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="text-emerald-"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="text-[#5ec49c]"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="text-l24lime"] {
  color: #A28BFF !important;
}

:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="text-[#05110d]"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="text-[#05110d]"] {
  color: #F5F7FF !important;
}

:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="border-emerald-"],
:root:not([data-site-theme="light"]) body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page):not([data-site-theme="light"]) :is(.platform-hero, .service-hero, .legal-hero) [class*="border-[#5ec49c]"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="border-emerald-"],
[data-site-theme="dark"] body:is(.platform-theme-scope, .service-theme-scope, .contact-page, .legal-page) :is(.platform-hero, .service-hero, .legal-hero) [class*="border-[#5ec49c]"] {
  border-color: color-mix(in srgb, #7A5BFA, transparent 60%) !important;
}

/* Theme-based logo swapping */
.theme-logo-dark {
  display: inline-block;
}
.theme-logo-light {
  display: none;
}
[data-site-theme="light"] .theme-logo-dark {
  display: none;
}
[data-site-theme="light"] .theme-logo-light {
  display: inline-block;
}

.bg-lime-accent { background-color: var(--lime-accent); }
.text-lime-accent { color: var(--lime-accent); }
.bg-emerald-card { background-color: var(--emerald-card); }
.bg-emerald-bg { background-color: var(--emerald-bg); }


html {
  margin: 0;
  padding: 0;
  height: 100%;
}

body {
  margin: 0;
  padding: 0;
  background: var(--color-green-950);
  color: var(--color-text-main);
  font-family: var(--font-family-base);
  overflow-x: hidden;
  min-height: 100%;
}

/* Header (already implemented) */
.site-header { border-bottom: 1px solid var(--color-surface-border); background: var(--color-green-950); }

/* Mega menu company cards */
.mega-menu-card {
    border: 1px solid transparent;
    transition: border-color 0.2s ease, background-color 0.2s ease;
}

/* Hero icons - light theme color #1f3f49 */
[data-site-theme="light"] .hero-icon {
    filter: brightness(0) saturate(100%) invert(19%) sepia(28%) saturate(685%) hue-rotate(145deg) brightness(94%) contrast(89%);
}

/* Hero icons - purple tint */
.theme-aware-hero .hero-icon {
    filter: brightness(0) saturate(100%) invert(48%) sepia(74%) saturate(1338%) hue-rotate(222deg) brightness(99%) contrast(92%);
}
.mega-menu-card:hover {
    border-color: rgba(255, 255, 255, 0.22);
}
[data-site-theme="light"] .mega-menu-card:hover {
    border-color: rgba(100, 116, 139, 0.3);
}
.topbar { display: flex; align-items: center; justify-content: space-between; padding: 8px 24px; background: var(--color-green-900); }
.topbar-left { display: flex; align-items: center; gap: 14px; }
.icon-button { background: transparent; border: none; color: var(--color-text-main); font-size: 18px; cursor: pointer; }
.topnav a { color: var(--color-text-muted); text-decoration: none; margin-right: 16px; font-size: 13px; }
.topbar-right a { color: var(--color-text-muted); text-decoration: none; margin-left: 16px; font-size: 13px; }
.brandbar { display: flex; align-items: center; justify-content: space-between; padding: 16px 24px; background: var(--color-green-900); border-top: 1px solid var(--color-surface-border); }
.brand { display: flex; align-items: center; gap: 10px; }
.logo-mark { width: 18px; height: 18px; border-radius: 3px; background: linear-gradient(135deg,#ff5858,#ffc371); display: inline-block; }
.logo-text { font-weight: 800; letter-spacing: 0.5px; }
.brand-actions { display: flex; align-items: center; gap: 10px; }
.btn { padding: 10px 14px; border-radius: 6px; text-decoration: none; font-weight: 600; font-size: 13px; display: inline-flex; align-items: center; gap: 8px; }
.btn-green { background: var(--color-brand-accent); color: #0b111f; }
.btn-blue { background: var(--blue-btn); color: #fff; }

/* User dropdown menu in header (click-to-open) */
.topbar-right { display: flex; align-items: center; }
.topbar-right .user-menu { position: relative; margin-left: 16px; }
.topbar-right form { margin-left: 16px; }
/* Remove default summary marker */
.user-menu > summary { list-style: none; }
.user-menu > summary::-webkit-details-marker { display: none; }
.user-trigger { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; }
.user-trigger .caret { color: var(--color-text-muted); font-size: 12px; transition: transform .15s ease; }
.user-menu[open] .user-trigger .caret { transform: rotate(180deg); }
.user-dropdown { position: absolute; top: 28px; right: 0; min-width: 220px; background: var(--color-green-900); border: 1px solid var(--color-surface-border); border-radius: 10px; box-shadow: 0 8px 24px rgba(2,6,23,0.35); padding: 10px; display: none; z-index: 20; }
.user-menu[open] .user-dropdown { display: block; }
.menu-link { display: block; color: var(--color-text-main); text-decoration: none; padding: 8px 10px; border-radius: 8px; font-size: 13px; }
.menu-link:hover { background: var(--color-green-850); color: #fff; }


/* Hero banner */
.hero { padding: 24px 0; min-height: 360px; }
.hero-inner { max-width: 1200px; margin: 0 auto; display: flex; align-items: flex-start; gap: 28px; }
.hero-left { flex: 1 1 680px; }
.hero-right { width: 300px; flex: 0 0 300px; }

.hero-title { font-size: 36px; line-height: 1.2; margin: 10px 0 6px; font-weight: 800; color: #fff; }
.hero-sub { color: var(--color-text-muted); margin: 0 0 18px; font-size: 14px; }
.hero-sub .link-blue { color: var(--blue-400); text-decoration: none; }
.hero-sub .link-blue:hover { text-decoration: underline; }

/* Search bar composed of label, input and icon */
.searchbar { display: grid; grid-template-columns: 180px 1fr 46px; border: 1px solid var(--color-surface-border); border-radius: 10px; overflow: hidden; background: var(--color-green-900); }
.search-label { background: #e7edf5; color: #0f172a; font-weight: 700; font-size: 12px; letter-spacing: 0.3px; text-transform: uppercase; display: flex; align-items: center; justify-content: space-between; padding: 0 14px; }
.search-label .caret { color: #6b7280; margin-left: 8px; }
.search-input { border: none; outline: none; padding: 0 14px; font-size: 14px; background: var(--color-white); color: #0b111f; height: 46px; }
.search-btn { background: transparent; border: none; color: var(--color-white); font-size: 18px; cursor: pointer; display: flex; align-items: center; justify-content: center; height: 46px; }
.search-btn:hover { background: rgba(255,255,255,0.06); }

.hero-note { margin-top: 10px; font-size: 13px; color: var(--color-text-muted); }
.hero-note .link-green { color: var(--color-brand-accent); text-decoration: none; font-weight: 700; }
.hero-note .link-green:hover { text-decoration: underline; }

/* Right side ad card with image */
.ad-card { width: 100%; height: 300px; background: var(--color-green-900); border: 1px solid var(--color-surface-border); border-radius: 10px; position: relative; overflow: hidden; }
.ad-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ad-badge { position: absolute; top: 10px; left: 10px; background: #ffd34d; color: #0b111f; font-weight: 800; font-size: 11px; padding: 4px 6px; border-radius: 4px; }

/* Responsive tweaks */
@media (max-width: 980px) {
  .hero-inner { flex-direction: column; }
  .hero-right { width: 100%; flex: 0 0 auto; }
}

/* Features section */
.features { padding: 18px 0 10px; background: var(--color-green-950); }
.features-inner { max-width: 1200px; margin: 0 auto; }
.features-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; border-top: none; }
.feature-item { padding: 0 24px; position: relative; }
.feature-item:not(:last-child) { border-right: none; }
.feature-head { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.feature-icon { color: var(--color-brand-accent); font-size: 18px; line-height: 1; }
.feature-title { margin: 0; font-size: 22px; font-weight: 800; color: #fff; }
.feature-text { margin: 0; color: var(--color-text-muted); font-size: 14px; line-height: 1.6; }

@media (max-width: 980px) {
  .features-grid { grid-template-columns: 1fr; gap: 16px; }
  .feature-item:not(:last-child) { border-right: none; border-bottom: none; }
}

/* Light providers section */
.providers-section { background: #eef2f7; padding: 32px 0; }
.page-content .providers-section { margin-left: -24px; margin-right: -24px; }
.page-content .unique { margin-left: -24px; margin-right: -24px; }
.providers-inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; }
.providers-title { color: #0f172a; margin: 0 0 4px; font-size: 26px; font-weight: 800; text-align: center; }
.providers-subtitle { color: #475569; text-align: center; margin: 0 0 24px; font-size: 14px; }

.providers-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.provider-card { background: var(--color-white); border: 1px solid #e5e7eb; border-radius: 12px; overflow: hidden; box-shadow: 0 1px 2px rgba(16, 24, 40, 0.06); }
.provider-img-wrap { position: relative; height: 180px; background: #e2e8f0; }
.provider-img { width: 100%; height: 100%; object-fit: contain; display: block; padding: 10px; }
.provider-badge { position: absolute; left: 12px; top: 12px; background: #ecfdf5; color: #065f46; font-weight: 700; font-size: 12px; padding: 6px 10px; border-radius: 999px; border: 1px solid #a7f3d0; }
.provider-body { padding: 14px 16px 16px; }
.provider-title { margin: 0 0 6px; color: #0f172a; font-size: 16px; font-weight: 800; }
.provider-desc { margin: 0 0 10px; color: #475569; font-size: 13px; line-height: 1.6; }
.provider-link { display: inline-block; color: #0ea5e9; text-decoration: none; font-weight: 700; font-size: 13px; }
.provider-link:hover { text-decoration: underline; }

@media (max-width: 980px) {
  .providers-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .providers-grid { grid-template-columns: 1fr; }
}

/* Unique benefits section */
.unique {
  background: #f7fafc;
  border-top: none;
  padding: 64px 0;
}

.unique-inner {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 24px;
  text-align: center;
}

.unique-title {
  font-size: 28px;
  line-height: 1.2;
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 12px;
}

.unique-subtitle {
  font-size: 16px;
  color: #64748b;
  margin: 0 0 32px;
}

.unique-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 32px;
  margin: 32px 0 40px;
}

.unique-item {
  background: var(--color-white);
  border: none;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 1px 2px rgba(0,0,0,0.04);
}

.unique-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #e0f2fe; /* light blue */
  color: #0ea5e9; /* blue */
  font-size: 22px;
  margin-bottom: 12px;
}

.unique-item-title {
  font-size: 16px;
  font-weight: 600;
  color: #0f172a;
  margin: 8px 0 8px;
}

.unique-item-text {
  font-size: 14px;
  color: #475569;
  margin: 0;
}

.unique-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 999px;
  background: #ecfdf5; /* light green */
  color: #065f46; /* green text */
  border: 1px solid #a7f3d0;
  text-decoration: none;
  font-size: 14px;
}

/* Responsive */
@media (max-width: 980px) {
  .unique-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
  }
}

/* --- Video Hero --- */
.hero-video { position: relative; min-height: 70vh; color: #fff; overflow: hidden; background: #0b1220; }
.page-content .hero-video { margin-left: -24px; margin-right: -24px; }
.hero-video .video-bg { position: absolute; inset: 0; }
.hero-video .video { width: 100%; height: 100%; object-fit: cover; display: block; }
.hero-video .overlay { position: absolute; inset: 0; background: radial-gradient(80% 80% at 50% 40%, rgba(12,20,35,0.2) 0%, rgba(7,12,22,0.7) 60%, rgba(6,10,18,0.9) 100%); }
.hero-video .hero-content { position: relative; z-index: 2; max-width: 960px; margin: 0 auto; text-align: center; padding: 120px 20px 80px; }
.hero-video .hero-heading { font-size: clamp(28px, 6vw, 54px); line-height: 1.06; font-weight: 700; margin: 0 0 18px; letter-spacing: 0.4px; }
.hero-video .hero-desc { max-width: 860px; margin: 0 auto 26px; font-size: 16px; line-height: 1.7; color: #c7d2fe; }
.hero-video .hero-cta { padding: 12px 22px; border-radius: 6px; font-weight: 600; text-decoration: none; }
.hero-video .brand-row { position: absolute; z-index: 2; left: 0; right: 0; bottom: 24px; display: flex; justify-content: center; align-items: center; gap: 28px; flex-wrap: wrap; padding: 0 20px; }
.hero-video .brand { color: #e5e7eb; opacity: 0.85; font-weight: 700; letter-spacing: 0.6px; text-transform: none; }
.hero-video .brand:nth-child(3) { letter-spacing: 1.4px; }

@media (max-width: 640px) {
  .unique {
    padding: 40px 0;
  }
  .unique-title {
    font-size: 22px;
  }
  .unique-subtitle {
    font-size: 14px;
    margin-bottom: 24px;
  }
  .unique-grid {
    grid-template-columns: 1fr;
    gap: 16px;
    margin: 24px 0 28px;
  }
  .unique-item {
    padding: 20px;
  }
  .unique-icon {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }
}

/* My Account — Latest Messages */
.messages-title { margin: 0; }
.messages-list { display: grid; gap: 10px; margin-top: 12px; }
.message-link { display: block; padding: 12px; }
.no-underline { text-decoration: none; }
.inherit-color { color: inherit; }
.messages-footer { margin-top: 12px; }
.align-center { align-items: center; }
/* Messages list: unread vs read */
.app .message-thread { transition: background-color 120ms ease; }
.app .message-thread.unread { background-color: #eef6ff; } /* very light blue */
.app .message-thread.read { background-color: #effaf1; }   /* very light green */

/* Featured Providers section */
.featured-providers { padding: 48px 0; background: var(--color-brand-primary); }
.page-content .featured-providers { margin-left: -24px; margin-right: -24px; }

/* Blog Carousel */
.blog-swiper-section { padding: 24px; }
.blog-swiper-inner { max-width: 1200px; margin: 0 auto; }
.blog-swiper-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.blog-swiper-title { margin:0; font-size:22px; }
.swiper { width: 100%; padding: 8px 0 24px; }
.swiper-slide { width: auto; }
.blog-card { border-radius:12px; background:#0b1220; color:#e6eef8; border:1px solid #1f2a37; box-shadow:0 4px 12px rgba(0,0,0,0.25); overflow:hidden; }
.blog-card-link { text-decoration:none; color:inherit; display:block; }
.blog-thumb { width:100%; height:160px; background:#0f172a; }
.blog-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.blog-thumb--placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; color:#94a3b8; }
.blog-body { padding:12px; }
.blog-meta { font-size:12px; color:#94a3b8; margin-bottom:6px; }
.blog-title { margin:0 0 8px; font-size:16px; line-height:1.4; }
.blog-author { font-size:12px; color:#cbd5e1; }
.swiper-button-prev, .swiper-button-next { width:36px; height:36px; border-radius:50%; border:1px solid #1f2a37; background:#0b1220; color:#e6eef8; }
.swiper-button-prev:hover, .swiper-button-next:hover { background:#111827; }
.swiper-pagination-bullet { background:#94a3b8; opacity:1; }
.swiper-pagination-bullet-active { background:#4f46e5; }
.featured-inner { max-width: 1200px; margin: 0 auto; padding: 0 24px; }

.featured-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; }
.featured-title { margin: 0; color: var(--color-text-main); font-size: 22px; font-weight: 800; }
.featured-sub { margin: 4px 0 0; color: var(--color-text-muted); font-size: 13px; }
.sort-btn { background: var(--color-surface-card); border: 1px solid var(--color-surface-border); color: var(--color-text-main); font-size: 13px; border-radius: 10px; padding: 10px 12px; cursor: pointer; }
.sort-btn .caret { color: var(--color-text-muted); }

/* Layout: filters left, cards right */
.featured-layout { display: grid; grid-template-columns: 280px 1fr; gap: 20px; }

/* Filters panel */
.filters { background: var(--color-surface-card); border: 1px solid var(--color-surface-border); border-radius: 12px; padding: 16px; }
.filters-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.filters-title { font-weight: 700; color: var(--color-text-main); font-size: 14px; }
.filters-clear { color: var(--color-brand-accent); text-decoration: none; font-size: 12px; }
.filter-label { display: block; margin: 14px 0 6px; color: var(--color-text-muted); font-size: 12px; font-weight: 700; }
.filter-select { width: 100%; text-align: left; background: var(--color-surface-card); border: 1px solid var(--color-surface-border); border-radius: 10px; padding: 10px 12px; color: var(--color-text-main); font-size: 13px; cursor: pointer; }
.filter-select .caret { color: var(--color-text-muted); float: right; }
.filter-range { width: 100%; }
.filter-range-scale { display: flex; justify-content: space-between; color: var(--color-text-dim); font-size: 11px; margin-top: 4px; }
.filter-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chip { 
    display: inline-flex; 
    align-items: center; 
    padding: 6px 12px; 
    border-radius: 8px; 
    background: color-mix(in_srgb, var(--color-brand-secondary), transparent 60%); 
    color: var(--color-text-muted); 
    border: 1px solid var(--color-surface-border);
    font-size: 12px; 
    cursor: pointer;
    transition: all 0.2s ease;
}
.chip:hover, .chip.active, .chip-active { 
    background: var(--color-brand-accent); 
    color: var(--color-brand-primary); 
    border-color: var(--color-brand-accent);
}

/* Providers cards grid */
.providers-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.provider-card { 
    background: var(--color-surface-card); 
    border: 1px solid var(--color-surface-border); 
    border-radius: 16px; 
    overflow: hidden; 
    transition: all 0.3s ease;
}
.provider-card:hover { 
    border-color: color-mix(in_srgb, var(--color-brand-accent), transparent 50%); 
    transform: translateY(-4px); 
}
.featured-layout .provider-img-wrap { height: 240px; background: color-mix(in_srgb, var(--color-brand-secondary), transparent 80%); }
.featured-layout .provider-img { width: 100%; height: 100%; object-fit: contain; display: block; padding: 15px; }
.provider-body { padding: 16px; }
.provider-name { margin: 0 0 6px; color: var(--color-text-main); font-size: 16px; font-weight: 800; }
.provider-desc { margin: 0 8px 10px 0; color: var(--color-text-muted); font-size: 13px; line-height: 1.6; }
.badges { display: flex; gap: 8px; margin-bottom: 10px; }
.badge { 
    background: color-mix(in_srgb, var(--color-brand-secondary), transparent 60%); 
    color: var(--color-brand-accent); 
    border: 1px solid var(--color-surface-border); 
    border-radius: 8px; 
    font-size: 11px; 
    padding: 4px 10px; 
    font-weight: 700;
}
.provider-stats { list-style: none; padding: 0; margin: 0 0 12px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; color: var(--color-text-muted); font-size: 12px; }
.stat-icon { margin-right: 6px; color: var(--color-brand-accent); }
.provider-footer { display: flex; align-items: center; justify-content: space-between; }
.rating { color: var(--color-rating-star); font-weight: 700; font-size: 12px; }
.btn-view { 
    display: inline-block; 
    background: var(--color-brand-accent); 
    color: var(--color-brand-primary); 
    border: none; 
    border-radius: 10px; 
    padding: 10px 14px; 
    font-size: 12px; 
    text-decoration: none; 
    font-weight: 700;
    transition: opacity 0.2s;
}
.btn-view:hover { opacity: 0.9; }

/* Responsive */
@media (max-width: 980px) {
  .featured-layout { grid-template-columns: 1fr; }
  .providers-list { grid-template-columns: 1fr; }
}

/* Footer (dark) */
.site-footer {
  background: var(--color-green-950);
  color: var(--gray-200);
  padding: 48px 0 32px;
  border-top: 1px solid var(--color-green-900);
}
.site-footer a {
  color: var(--gray-200);
  text-decoration: none;
}
.site-footer a:hover {
  color: var(--color-brand-accent);
}
.footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}
.footer-top {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1.2fr;
  gap: 24px;
  align-items: start;
}
.footer-brand .brand-inline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}
.footer-brand .brand-text {
  color: var(--gray-300);
  margin: 8px 0 12px;
}
.contact-list {
  list-style: none;
  padding: 0;
  margin: 0 0 12px;
}
.contact-list li {
  margin: 6px 0;
  color: var(--gray-300);
}
.contact-list a {
  color: var(--gray-100);
}
.socials {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}
.socials a {
  display: inline-flex;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  background: var(--color-green-900);
  color: var(--gray-100);
}
.socials a:hover {
  background: var(--color-brand-accent);
  color: #fff;
}
.footer-links h4,
.footer-newsletter h4 {
  color: var(--gray-100);
  font-weight: 600;
  margin: 0 0 12px;
}
.footer-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-links li {
  margin: 6px 0;
}
.footer-links a {
  color: var(--gray-300);
}
.footer-links a:hover {
  color: var(--color-brand-accent);
}
.footer-newsletter .newsletter-form {
  display: flex;
  gap: 8px;
}
.footer-newsletter input[type="email"] {
  flex: 1;
  min-width: 220px;
  padding: 10px 12px;
  border-radius: 20px;
  background: var(--color-green-900);
  border: 1px solid var(--color-green-850);
  color: var(--gray-100);
}
.footer-newsletter input::placeholder {
  color: var(--gray-400);
}
.footer-newsletter input:focus {
  outline: none;
  border-color: var(--color-brand-accent);
}
.footer-newsletter .btn-go {
  padding: 10px 16px;
  border-radius: 20px;
  border: none;
  background: var(--color-brand-accent);
  color: var(--color-green-950);
  font-weight: 600;
  cursor: pointer;
}
.footer-newsletter .btn-go:hover {
  background: var(--color-brand-accent-hover);
}
.footer-divider {
  border: none;
  border-top: 1px solid var(--color-green-850);
  margin: 24px 0;
}
.footer-bottom {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 12px;
  font-size: 14px;
  color: var(--gray-300);
}
.footer-bottom .copyright {
  color: var(--gray-200);
}
.legal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
}
.legal-links a {
  color: var(--gray-300);
}
.legal-links a:hover {
  color: var(--color-brand-accent);
}
.legal-text {
  color: var(--gray-400);
  line-height: 1.5;
}

/* Footer responsive */
@media (max-width: 980px) {
  .footer-top {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 640px) {
  .footer-top {
    grid-template-columns: 1fr;
  }
  .footer-newsletter .newsletter-form {
    flex-direction: column;
  }
  .footer-newsletter .btn-go {
    width: 100%;
  }
}

/* Join page hero */
.join-hero { padding: 80px 24px; min-height: 320px; background: transparent; }
.join-hero-inner { max-width: 1100px; margin: 0 auto; text-align: center; }
.join-title { font-size: 56px; line-height: 1.15; font-weight: 800; color: #fff; margin: 0 0 16px; }
.join-title .underline { text-decoration: underline; text-decoration-color: var(--color-brand-accent); text-decoration-thickness: 6px; text-underline-offset: 6px; }
.join-sub { font-size: 20px; color: var(--color-text-muted); margin: 0 0 28px; }
.join-cta { padding: 14px 22px; border-radius: 10px; font-size: 16px; text-transform: uppercase; letter-spacing: 0.5px; }

/* Showcase section under hero */
.join-showcase {
  background: var(--color-green-950);
  color: var(--color-text-main);
}
.join-showcase .showcase-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px 30px;
}
/* Laptop image container and sizing */
.join-showcase .laptop-wrap {
  display: flex;
  justify-content: center;
  margin: 0 0 28px;
}
.join-showcase .laptop-image {
  width: 100%;
  max-width: 1100px;
  border-radius: 12px;
  box-shadow: 0 12px 40px rgba(0,0,0,0.35);
}

/* Providers strip - full width */
.providers-strip {
  width: 100%;
  background: #f9fafb;
  color: #0f172a;
  border-radius: 0;
  padding: 32px 0;
  border-top: 1px solid #0b1227;
}
.providers-title {
  max-width: 1200px;
  margin: 0 auto 16px;
  padding: 0 16px;
  text-align: center;
  font-size: 18px;
  font-weight: 600;
}
.provider-logos {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px;
  display: grid;
  grid-template-columns: repeat(9, minmax(90px, 1fr));
  gap: 12px;
  align-items: center;
}
.logo-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 8px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: var(--color-white);
  font-size: 13px;
  color: #334155;
}

/* Feature section under logos */
.join-feature {
  background: var(--color-white);
  padding: 36px 0 40px;
}
.feature-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px;
}
.feature-image {
  width: 100%;
  max-width: 1100px;
  display: block;
  margin: 0 auto;
  border-radius: 12px;
  box-shadow: 0 12px 40px rgba(0,0,0,0.12);
}

@media (max-width: 1024px) {
  .join-showcase .laptop-image { max-width: 920px; }
  .provider-logos { grid-template-columns: repeat(6, minmax(90px, 1fr)); }
  .feature-image { max-width: 920px; }
}
@media (max-width: 640px) {
  .join-showcase .showcase-inner { padding: 28px 14px 24px; }
  .providers-strip { padding: 24px 0; }
  .providers-title { font-size: 16px; }
  .provider-logos { grid-template-columns: repeat(3, minmax(90px, 1fr)); gap: 10px; }
  .logo-item { padding: 10px 6px; font-size: 12px; }
  .feature-image { max-width: 600px; border-radius: 10px; }
}

/* Top Feature two-column section */
.join-top-feature {
  background: #f9fafb;
  padding: 40px 0 50px;
}
.feature-grid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: center;
}
.feature-media-image {
  width: 100%;
  border-radius: 12px;
  box-shadow: 0 12px 40px rgba(0,0,0,0.12);
}
.feature-content { color: #0f172a; }
.feature-title {
  font-size: 28px;
  line-height: 1.25;
  font-weight: 800;
  margin: 0 0 14px;
}
.form-container {
      background: #fff;
      border-radius: 6px;
      padding: 30px;
      width: 400px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    }

    .form-row {
      display: flex;
      gap: 10px;
    }

    .form-group {
      margin-bottom: 15px;
      width: 100%;
    }

    label {
      display: block;
      font-weight: bold;
      margin-bottom: 5px;
      font-size: 14px;
      color: #222;
    }

    input, select {
      width: 100%;
      padding: 10px;
      border: 1px solid #ccc;
      border-radius: 4px;
      font-size: 14px;
      box-sizing: border-box;
    }

    input:focus, select:focus {
      outline: none;
      border-color: #007bff;
      box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.1);
    }

/* Error page styles */
.error-page { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 24px; background: var(--color-green-950); }
.error-card { width: 100%; max-width: 520px; background: var(--color-green-900); border: 1px solid var(--color-surface-border); border-radius: 16px; padding: 28px; text-align: center; box-shadow: 0 8px 24px rgba(0,0,0,0.25); }
.error-icon { font-size: 42px; line-height: 1; margin-bottom: 12px; }
.error-title { margin: 0 0 8px; font-size: 24px; font-weight: 800; color: #fff; }
.error-sub { margin: 0 0 20px; font-size: 14px; color: var(--color-text-muted); }
.error-actions { display: flex; align-items: center; justify-content: center; gap: 12px; }
.btn-green { background: var(--color-brand-accent); color: #0b111f; }
.btn-blue { background: var(--blue-btn); color: #fff; }

    .info {
      font-size: 12px;
      color: #999;
      display: inline-block;
      margin-left: 4px;
      cursor: help;
    }

    .lf-form .btn {
      width: 100%;
      padding: 12px;
      background-color: #21c179;
      color: white;
      border: none;
      border-radius: 4px;
      font-weight: bold;
      cursor: pointer;
      transition: background-color 0.3s ease;
    }
 .app .settings-content {
  background: var(--card);
  border: 1px solid #e6edf3;
  border-radius: 12px;
  padding: 16px;
}

.app .form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.app .form-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.app label {
  font-size: 12px;
  color: #6b7280;
}

.app input,
.app select {
  padding: 10px 12px;
  border: 1px solid #e6edf3;
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
}

.app .actions {
  display: flex;
  gap: 10px;
  margin-top: 16px;
}

.app .alert {
  padding: 10px 12px;
  border-radius: 8px;
  background: #ecfdf5;
  color: #065f46;
  border: 1px solid #d1fae5;
  margin-bottom: 12px;
}

.lf-form .btn:hover {
  background-color: #1aa261;
}

.app .settings-wrapper {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 16px;
}

.app .settings-sidebar {
  background: var(--card);
  border: 1px solid #e6edf3;
  border-radius: 12px;
  padding: 16px;
}

@media (max-width: 900px) {
  .app .settings-wrapper {
    grid-template-columns: 1fr;
  }

  .app .form-grid {
    grid-template-columns: 1fr;
  }
}

    .terms {
      font-size: 12px;
      color: #555;
      text-align: center;
      margin-bottom: 15px;
    }

    .terms a {
      color: #007bff;
      text-decoration: none;
    }

    .terms a:hover {
      text-decoration: underline;
    }

    .signin {
      text-align: center;
      font-size: 14px;
      margin-top: 15px;
      color: #fff;
    }

    .signin a {
      color: #21c179;
      font-weight: bold;
      text-decoration: none;
    }

    .signin a:hover {
      text-decoration: underline;
    }
.feature-highlight {
  border-bottom: 4px solid #16a34a;
  color: #334155;
}
.feature-desc{
  font-size: 15px;
  color: #334155;
  margin: 0 0 14px;
}
.feature-title-text {
  color: #334155;
}
.feature-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.feature-list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin: 10px 0;
  font-weight: 600;
  color: #0f172a;
}
.feature-list .check {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #22c55e;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

@media (max-width: 980px) {
  .feature-grid { grid-template-columns: 1fr; }
  .feature-title { font-size: 24px; }
}

/* Register form styles */
.register-form-section {
  padding: 28px 16px 40px;
  background: var(--color-green-950);
}
.register-form-section .feature-inner {
  max-width: 760px;
  margin: 0 auto;
  background: var(--color-white);
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  box-shadow: 0 14px 32px rgba(0,0,0,0.10);
  padding: 26px;
}

.form-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}

.card-title {
  font-size: 20px;
  font-weight: 700;
  color: #0f172a;
}

.card-badge {
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  background: #e2fee7;
  color: #16a34a;
}

.lf-form { color: #0f172a; }
.lf-form .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 16px; }
.lf-form .form-field { position: relative; display: flex; flex-direction: column; }
.lf-form label { font-size: 13px; font-weight: 700; color: #334155; margin: 0 0 8px; }

.lf-form input,
.lf-form select {
  width: 100%;
  padding: 12px 14px 12px 40px;
  border: 1.5px solid #e2e8f0;
  border-radius: 12px;
  background: var(--color-white);
  color: #0f172a;
  font-size: 15px;
  outline: none;
  height: 44px;
  box-shadow: inset 0 1px 2px rgba(16,24,40,0.04);
  transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

/* Field hover and invalid states */
.lf-form input:hover,
.lf-form select:hover {
  border-color: #cbd5e1;
}

.lf-form input:invalid,
.lf-form select:invalid {
  border-color: #ef4444;
}

.lf-form input:invalid:focus,
.lf-form select:invalid:focus {
  box-shadow: 0 0 0 4px rgba(239,68,68,0.20);
}

/* Custom select caret */
.lf-form select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
  padding-right: 40px;
}
.lf-form input::placeholder { color: #94a3b8; }

.lf-form .has-icon .input-icon {
  position: absolute;
  left: 12px;
  top: 36px;
  width: 18px;
  height: 18px;
}
.lf-form .has-icon .toggle-pass {
  position: absolute;
  right: 10px;
  top: 34px;
  border: 0;
  background: transparent;
  padding: 4px;
  cursor: pointer;
}

.lf-form input:focus,
.lf-form select:focus {
  border-color: #16a34a;
  box-shadow: 0 0 0 3px rgba(22,163,74,0.18);
}

.lf-form .form-error { color: #dc2626; font-size: 13px; margin-top: 6px; }
.lf-form .muted { color: #64748b; font-size: 13px; }
.form-terms { font-size: 12px; color: #64748b; margin: 16px 0 20px; }
.form-terms a { color: #0ea5e9; text-decoration: none; }
.form-terms a:hover { text-decoration: underline; }

.lf-form .btn { padding: 12px 16px; border-radius: 12px; font-size: 15px; font-weight: 700; text-align: center; }
.lf-form .btn-green { background: #22c55e; color: var(--color-white); }

.register-form-section .alt-signin { text-align: center; color: #0f172a; margin-top: 16px; }

@media (max-width: 640px) {
  .lf-form .form-row { grid-template-columns: 1fr; gap: 12px; }
  .register-form-section .feature-inner { padding: 18px; }
}

/* My Account (scoped) */
/* Variables and base container */
.app {
  --bg: #f1f5f9;
  --card: var(--color-white);
  --muted: #6b7280;
  --accent: #0ea5a4;
  --accent-2: #6366f1;
  --glass: rgba(255,255,255,0.6);
  --shadow: 0 6px 18px rgba(15,23,42,0.06);
  --radius: 12px;
  display: flex;
  min-height: 100vh;
  background: var(--bg);
  color: #0f172a;
  font-size: 15px;
  line-height: 1.4;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
}
.app * { box-sizing: border-box; }

/* Sidebar */
.app .sidebar {
  width: 280px;
  background: var(--card);
  border-right: 1px solid #e6edf3;
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.app .brand { display: flex; align-items: center; gap: 12px; }
.app .logo {
  width: 46px;
  height: 46px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--accent-2), var(--accent));
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-weight: 700;
  text-decoration: none;
}
.app .brand h1 { margin: 0; font-size: 18px; }
.app .brand p { margin: 0; color: var(--muted); font-size: 13px; }
.app .nav { flex: 1; }
.app .nav ul { list-style: none; padding: 0; margin: 10px 0 0 0; }
.app .nav li { display: flex; align-items: center; gap: 0; padding: 0; color: #0f172a; cursor: pointer; }
.app .nav li > .nav-link { display: flex; align-items: center; gap: 10px; padding: 10px; border-radius: 9px; text-decoration: none; color: inherit; width: 100%; }
.app .nav li > .nav-link svg { flex: 0 0 auto; }
.app .nav li:hover > .nav-link { background: #f8fafc; }
.app .nav li.active > .nav-link { background: #eef2ff; color: var(--accent-2); font-weight: 600; }
.app .cta { margin-top: auto; }
.app .btn { display: inline-block; padding: 10px 14px; border-radius: 10px; border: 0; background: linear-gradient(90deg, var(--accent-2), var(--accent)); color: white; font-weight: 600; cursor: pointer; }
.app .muted { color: var(--muted); font-size: 13px; }

/* Main */
.app .main { flex: 1; padding: 26px; position: relative; }
.app .header { display: flex; justify-content: flex-end; align-items: center; gap: 16px; margin-bottom: 18px; }
.app .searchbar { flex: 1; display: flex; gap: 8px; align-items: center; background: var(--card); padding: 10px; border-radius: 10px; box-shadow: var(--shadow); }
.app .searchbar input { border: 0; outline: 0; font-size: 14px; flex: 1; }
.app .actions { display: flex; gap: 8px; align-items: center; }
.app .pill { display: inline-block; padding: 8px 12px; border-radius: 999px; background: #eef2f6; font-size: 13px; }

/* Hero */
.app .hero { display: grid; grid-template-columns: 1fr 320px; gap: 16px; margin-bottom: 18px; }
.app .card { background: var(--card); padding: 18px; border-radius: 14px; box-shadow: var(--shadow); border: 1.5px solid #e6edf3; }
.app .card.big { max-width: 1300px; margin: 0 auto; }
.app .hero .big { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.app .hero h2 { margin: 0; font-size: 20px; }
.app .hero p { margin: 6px 0 0 0; color: var(--muted); }
.app .hero .actions { margin-top: 14px; }

/* Grid */
.app .grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }

/* Right detail panel */
.app .right-panel { position: fixed; right: 28px; top: 120px; width: 320px; }
.app .right-panel .card { position: relative; }
.app .right-stat { display: flex; justify-content: space-between; margin-top: 8px; }

/* Modal */
.app .modal-backdrop { position: fixed; inset: 0; background: rgba(2,6,23,0.45); display: flex; align-items: center; justify-content: center; }
.app .modal { background: var(--card); padding: 20px; border-radius: 10px; width: 70%; max-width: 980px; }
.app .modal h3 { margin: 0; }
.app .modal .grid { grid-template-columns: 2fr 1fr; }

/* Responsive */
@media (max-width: 1100px) {
  .app .grid { grid-template-columns: repeat(2, 1fr); }
  .app .sidebar { display: none; }
  .app .right-panel { display: none; }
}
@media (max-width: 700px) {
  .app .grid { grid-template-columns: 1fr; }
  .app .main { padding: 14px; }
  .app .hero { grid-template-columns: 1fr; }
}

/* Small forms */
.app .input, .app .select { padding: 12px 14px; border-radius: 12px; border: 1.5px solid #e2e8f0; background: var(--color-white); box-shadow: inset 0 1px 2px rgba(16,24,40,0.04); }
.app .input:focus, .app .select:focus { outline: none; border-color: #6366f1; box-shadow: 0 0 0 3px rgba(99,102,241,0.18); }
.app label .required { color: #ef4444; margin-left: 4px; }

/* Editor layout styles */
.app .editor-layout { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 0.9fr); gap: 18px; }
.app .editor-aside { width: 100%; max-width: 420px; }
.app .editor-tabs { display: flex; gap: 12px; border-bottom: 1px solid #e5e7eb; margin-bottom: 12px; }
.app .editor-tab { padding: 10px 12px; border-radius: 10px 10px 0 0; background: #f8fafc; color: #334155; cursor: pointer; font-weight: 600; }
.app .editor-tab.active { background: #eef2ff; color: #3730a3; border: 1px solid #e5e7eb; border-bottom: 0; }
.app .editor-section { display: none; }
.app .editor-section.active { display: block; }

/* Trix editor match inputs */
trix-editor.input { min-height: 140px; border: 1.5px solid #e2e8f0; border-radius: 12px; padding: 10px 12px; background: var(--color-white); box-shadow: inset 0 1px 2px rgba(16,24,40,0.04); }
trix-editor.input:focus { outline: none; border-color: #6366f1; box-shadow: 0 0 0 3px rgba(99,102,241,0.18); }

/* Field helper text */
.app .field-help { color: #64748b; font-size: 12px; margin-top: 4px; }

/* Section headers */
.app .section-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.app .section-title-2 { font-size: 16px; font-weight: 700; color: #0f172a; }

@media (max-width: 980px) {
  .app .editor-layout { grid-template-columns: 1fr; }
  .app .editor-aside { max-width: 100%; }
}
.app .tiny { font-size: 13px; }

/* Utilities */
.app .flex { display: flex; align-items: center; }
.app .space-between { display: flex; justify-content: space-between; align-items: center; }

/* Messages list UI */
.app .messages-card { padding: 16px; }
.app .messages-card .messages-list { display: flex; flex-direction: column; gap: 8px; margin-top: 12px; }

/* ===== Utilities (shared across views) ===== */
.m-0 { margin: 0; }
.mt-6 { margin-top: 6px; }
.mt-12 { margin-top: 12px; }
.no-underline { text-decoration: none; }
.items-center { align-items: center; }
.gap-8 { gap: 8px; }
.gap-10 { gap: 10px; }
.gap-12 { gap: 12px; }
.row { display: flex; align-items: center; }
.grid { display: grid; }
.grid-2 { grid-template-columns: 1fr 1fr; }
.grid-gap-8 { gap: 8px; }
.grid-gap-10 { gap: 10px; }
.grid-gap-12 { gap: 12px; }
.card--tight { padding: 12px; }
.section-title { font-weight: 700; text-transform: uppercase; letter-spacing: 0.02em; }
.link-blue { color: #2563eb; }
.dot-green { color: #16a34a; }
.logo-box { width:36px; height:36px; border:1px solid #eee; border-radius:4px; overflow:hidden; display:flex; align-items:center; justify-content:center; background:#fafafa; }
.logo-img { width:100%; height:100%; object-fit:cover; }
.two-col { display:grid; grid-template-columns: 2fr 1.2fr; }

/* Allow muted text outside .app wrapper */
.muted { color: var(--color-text-muted); font-size: 13px; }

/* Responsive helpers */
@media (max-width: 780px) {
  .grid-2 { grid-template-columns: 1fr; }
  .two-col { grid-template-columns: 1fr; }
}

/* Additional helpers for views */
.items-start { align-items: flex-start; }
.text-dark { color: #111827; }
.img-cover { width:100%; height:100%; object-fit:cover; display:block; }
.cover-hero { position:relative; height:180px; border-radius:8px; overflow:hidden; background:linear-gradient(90deg,#1e3a8a,#0c4a6e); }
.logo-box-lg { width:110px; height:110px; border-radius:8px; background:#fff; border:1px solid #e5e7eb; box-shadow:0 1px 3px rgba(0,0,0,0.08); overflow:hidden; }
.logo-overlay { position: relative; z-index: 1; margin-top: -32px; }
.app .message-item { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-radius: 10px; text-decoration: none; color: inherit; background: var(--card); border: 1px solid #e6edf3; transition: background .15s ease, box-shadow .15s ease; }
.app .message-item:hover { background: #f8fafc; box-shadow: 0 1px 2px rgba(0,0,0,0.06); }

.app .message-left { position: relative; width: 40px; display: flex; align-items: center; justify-content: center; }
.app .message-left .avatar { width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(135deg,#6b8eff,#4f46e5); display:flex; align-items:center; justify-content:center; color:#fff; font-weight:600; font-size:14px; }
.app .message-left .badge { position: absolute; right: -2px; bottom: -2px; width: 16px; height: 16px; border-radius: 50%; border: 2px solid #fff; }
.app .message-left .badge.whatsapp { background: #22c55e; }
.app .message-left .badge.chat { background: #a855f7; }
.app .message-left .badge.email { background: #3b82f6; }

.app .message-body { flex: 1; min-width: 0; }
.app .message-body .line1 { display: grid; grid-template-columns: 1fr auto auto; align-items: center; column-gap: 8px; }
.app .message-body .name { font-weight: 700; color: #111827; }
.app .message-body .icons { display: inline-flex; gap: 8px; color: #9ca3af; }
.app .message-body .icon { width: 16px; height: 16px; }
.app .message-body .time { color: #6b7280; font-size: 12px; }

.app .message-body .line2 { margin-top: 2px; color: #374151; font-size: 13px; }
.app .message-body .line3 { margin-top: 2px; color: #6b7280; font-size: 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mt-8 { margin-top: 8px; }
/* ---- Appended utilities to replace inline Blade styles ---- */
.mt-16 { margin-top: 16px; }
.mt-24 { margin-top: 24px; }
.mb-6 { margin-bottom: 6px; }
.mb-8 { margin-bottom: 8px; }
.mb-12 { margin-bottom: 12px; }
.p-12 { padding: 12px; }
.text-10 { font-size: 10px; }
.pre-line { white-space: pre-line; }
.minw-160 { min-width: 160px; }
.minw-220 { min-width: 220px; }
.flex-1 { flex: 1; }
.center-flex { display: flex; align-items: center; justify-content: center; }
.img-160 { width:100%; height:160px; object-fit:cover; display:block; }
.link-light { color: #e6eef8; }
.gap-16 { gap: 16px; }
.grid-gap-6 { gap: 6px; }
.actions-inline { display:flex; gap:8px; align-items:center; }
.cursor-pointer { cursor: pointer; }
.pt-8 { padding-top: 8px; }
.pt-10 { padding-top: 10px; }
.list-unstyled { list-style: none; margin: 0; padding: 0; }

/* Header-specific utilities */
.lang-switch { display: inline-flex; gap: 6px; align-items: center; margin-right: 8px; }
.inline-form { display: inline; }
.btn-reset { background: none; border: none; cursor: pointer; }
.pill-active { background: #e5e7eb; color: #111827; }

/* Badge styles extracted from inline */
.badge-gray { display:inline-flex; align-items:center; gap:6px; background:#f3f4f6; color:#374151; border:1px solid #e5e7eb; border-radius:12px; padding:3px 8px; font-size:12px; }
.badge-green { display:inline-flex; align-items:center; gap:6px; background:#ecfdf5; color:#065f46; border:1px solid #a7f3d0; border-radius:12px; padding:3px 8px; font-size:12px; }

/* Super Admin company view extracted styles */
.info-grid { display:grid; gap:16px; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); }
.info-item { padding: 12px; border: 1px solid #e0e0e0; border-radius: 6px; }
.info-label { font-weight: bold; color: #666; font-size: 0.9em; margin-bottom: 4px; }
.info-value { color: #333; }
.status-badge { padding: 4px 8px; border-radius: 4px; font-size: 0.8em; font-weight: bold; }
.status-active { background: #d4edda; color: #155724; }
.status-blocked { background: #f8d7da; color: #721c24; }
/* Colors and layout helpers */
.text-red { color: #dc3545; }
.text-green { color: #28a745; }
.inline { display: inline; }
.actions-wrap { display:flex; gap:12px; flex-wrap:wrap; }
.section-top-divider { margin-top: 24px; padding-top: 20px; border-top: 1px solid #e0e0e0; }

/* Pill color variants for actions */
.pill-green { background:#28a745; border-color:#28a745; }
.pill-amber { background:#ffc107; border-color:#ffc107; color:#000; }
.pill-red { background:#dc3545; border-color:#dc3545; }
/* Dashboard helpers */
.text-light { color: #e6eef8; }
.auto-grid-260 { display:grid; grid-template-columns:repeat(auto-fill, minmax(260px,1fr)); gap:12px; }
.card-dark { background:#0f172a; border:1px solid #1f2937; border-radius:8px; padding:12px; }
.block { display:block; }
.text-blue-400 { color: var(--blue-400); }
.text-12 { font-size: 12px; }
.text-slate-300 { color:#cbd5e1; }
.inline-block { display:inline-block; }
.mt-10 { margin-top: 10px; }
.text-sky-400 { color:#60a5fa; }
/* Blog list helpers */
.auto-grid-280 { display:grid; grid-template-columns:repeat(auto-fill, minmax(280px,1fr)); gap:16px; }
.overflow-hidden { overflow:hidden; }
.items-center { align-items: center; }
.flex-wrap { flex-wrap: wrap; }

/* --- Header Animations & Utilities --- */
@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.animate-marquee {
  display: flex;
  width: max-content;
  animation: marquee 30s linear infinite;
}

.ticker-container:hover .animate-marquee {
  animation-play-state: paused;
}

/* Price ticker safety: prevent third-party layers from blocking clicks/scroll */
#header-price-ticker {
  position: relative;
  z-index: 0;
  width: 100%;
  overflow: hidden;
  min-height: 24px;
  display: flex;
  align-items: center;
  max-height: 100%;
  pointer-events: none;
  --ticker-bg: transparent;
  --ticker-text: #140C30;
  --ticker-accent: #7C65F1;
  --ticker-up: #00b875;
  --ticker-down: #ff3b5c;
  color: var(--ticker-text);
  background: transparent;
}

#header-price-ticker * {
  pointer-events: none !important;
  color: var(--ticker-text) !important;
}

#header-price-ticker .tape-ticker-container,
#header-price-ticker .tape-cards-ticker-container,
#header-price-ticker .pts-assets-ticker,
#header-price-ticker .ruler {
  background-color: transparent !important;
  background: transparent !important;
}

#header-price-ticker .watermark-container {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

#header-price-ticker [class*="up" i],
#header-price-ticker [class*="positive" i],
#header-price-ticker [class*="rise" i],
#header-price-ticker [class*="green" i],
#header-price-ticker [class*="bull" i] {
  color: var(--ticker-up) !important;
  -webkit-text-fill-color: var(--ticker-up) !important;
}

#header-price-ticker [class*="down" i],
#header-price-ticker [class*="negative" i],
#header-price-ticker [class*="fall" i],
#header-price-ticker [class*="red" i],
#header-price-ticker [class*="bear" i] {
  color: var(--ticker-down) !important;
  -webkit-text-fill-color: var(--ticker-down) !important;
}

.pts-assets-ticker.ruler {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  min-height: 24px !important;
  max-height: 100% !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

#mobile-menu {
  transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
}

#mobile-menu.is-open {
  max-height: calc(100vh - 96px);
  opacity: 1;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}

.mobile-nav-section {
  border: 1px solid var(--theme-border);
  border-radius: 16px;
  background: var(--theme-overlay-soft);
  overflow: hidden;
}

.mobile-nav-section + .mobile-nav-section {
  margin-top: 10px;
}

.mobile-nav-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--theme-border);
  border-radius: 16px;
  background: var(--theme-overlay-soft);
  color: var(--theme-text-strong);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-decoration: none;
  text-transform: uppercase;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.mobile-nav-link:hover,
.mobile-nav-link:focus-visible {
  border-color: color-mix(in srgb, var(--color-brand-accent) 42%, var(--theme-border));
  background: var(--theme-overlay-mid);
  color: var(--theme-text-strong);
}

.mobile-nav-link span {
  color: var(--color-brand-accent);
}

.mobile-nav-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  width: 100%;
  padding: 14px 16px;
  cursor: pointer;
  color: var(--theme-text-strong);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  list-style: none;
}

.mobile-nav-toggle::-webkit-details-marker {
  display: none;
}

.mobile-nav-toggle span {
  color: var(--color-brand-accent);
}

.mobile-nav-chevron {
  width: 16px;
  height: 16px;
  flex: 0 0 auto;
  color: var(--theme-text-muted);
  transition: transform 0.2s ease;
}

.mobile-nav-section[open] .mobile-nav-chevron {
  transform: rotate(180deg);
}

.mobile-nav-panel {
  display: grid;
  gap: 10px;
  padding: 0 16px 16px 22px;
  border-left: 1px solid var(--theme-border);
  margin: 0 0 0 16px;
}

.mobile-nav-panel a,
.mobile-nav-panel span {
  padding: 2px 0;
}

.custom-scrollbar::-webkit-scrollbar {
  width: 4px;
}

.custom-scrollbar::-webkit-scrollbar-track {
  background: transparent;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
  background: #e5e7eb;
  border-radius: 10px;
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
  background: #d1d5db;
}

/* Company edit wizard */
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-2px); }
  to { opacity: 1; transform: translateY(0); }
}

.animate-fade-in { animation: fadeIn 0.2s ease-out; }

.app .toggle-group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.app .toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 9px 14px;
  border: 1px solid #dbe4ee;
  border-radius: 999px;
  background: #f8fafc;
  color: #0f172a;
  cursor: pointer;
  user-select: none;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.app .toggle input { display: none; }

.app .toggle.active {
  background: #eff6ff;
  border-color: #bfdbfe;
  box-shadow: 0 8px 20px rgba(59, 130, 246, 0.08);
}

.company-edit-page {
  max-width: 1320px;
  margin: 0 auto;
  padding: 24px;
  border: 1px solid #e2e8f0;
  border-radius: 28px;
  background: linear-gradient(180deg, var(--color-white) 0%, #f8fafc 100%);
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}

.company-edit-toolbar {
  align-items: flex-start !important;
  gap: 16px !important;
  flex-wrap: wrap;
}

.company-edit-title {
  margin: 0;
  font-size: 28px;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.company-edit-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.company-edit-actions a { text-decoration: none; }

.company-edit-language-status {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid #dbe4ee;
  border-radius: 999px;
  background: #f8fafc;
  color: #475569 !important;
  font-size: 12px !important;
  font-weight: 700;
}

.company-edit-subtitle {
  margin: 10px 0 20px !important;
  font-size: 14px !important;
  line-height: 1.6;
}

.company-edit-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 12px;
  padding: 16px 18px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  background: #f8fafc !important;
}

.company-edit-summary .muted { display: none; }

.company-edit-summary-title {
  font-size: 18px;
  font-weight: 800;
  color: #0f172a;
}

.company-edit-summary-meta {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 6px 12px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: var(--color-white);
  color: #475569;
  font-size: 13px;
  font-weight: 600;
}

.company-edit-form {
  margin-top: 18px !important;
  padding: 20px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 24px !important;
  background: #f8fafc !important;
}

.company-edit-layout { gap: 24px !important; }

.company-edit-main {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.wizard-panel {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.company-edit-main > label[data-wizard-step],
.company-edit-main > section[data-wizard-step],
.company-edit-main > div[data-wizard-step] {
  margin: 0 !important;
  padding: 20px !important;
  border: 1px solid #dbe4ee !important;
  border-radius: 20px !important;
  background: var(--color-white) !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.04);
}

.company-edit-main > label[data-wizard-step] {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.wizard-field-block { gap: 12px !important; }

.company-edit-main > section[data-wizard-step][hidden],
.company-edit-main > label[data-wizard-step][hidden],
.company-edit-main > div[data-wizard-step][hidden] {
  display: none !important;
}

.company-edit-main label > .muted:first-child,
.company-edit-main .form-field > .muted:first-child,
.company-edit-main section[data-wizard-step] > .muted:first-child {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #334155 !important;
}

.company-edit-main label:not(.toggle),
.company-edit-main .form-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.company-edit-main [data-wizard-step] > label + label,
.company-edit-main [data-wizard-step] > label + .grid,
.company-edit-main [data-wizard-step] > .grid + label,
.company-edit-main [data-wizard-step] > .grid + .grid {
  margin-top: 16px;
}

.company-edit-main .wizard-panel > div:first-child,
.company-edit-main .wizard-panel > .block:first-child {
  margin: 0 !important;
  color: #0f172a;
}

.company-edit-main .wizard-panel > p,
.company-edit-main .wizard-panel > .muted,
.company-edit-main .wizard-field-help {
  margin: 0 !important;
}

.company-edit-main [data-wizard-step] .muted {
  line-height: 1.55;
}

.company-edit-main [data-wizard-step] .muted:not(:first-child) {
  color: #64748b !important;
}

.company-edit-main .grid,
.company-edit-main .grid-2 {
  gap: 16px !important;
  align-items: start;
}

.company-edit-form input[type="text"],
.company-edit-form input[type="email"],
.company-edit-form input[type="url"],
.company-edit-form input[type="number"],
.company-edit-form input[type="file"],
.company-edit-form select,
.company-edit-form textarea,
.company-edit-form trix-editor {
  border: 1px solid #dbe4ee !important;
  border-radius: 14px !important;
  background: var(--color-white) !important;
  box-shadow: none !important;
}

.company-edit-form input[type="text"],
.company-edit-form input[type="email"],
.company-edit-form input[type="url"],
.company-edit-form input[type="number"],
.company-edit-form select,
.company-edit-form textarea {
  min-height: 46px;
  padding: 12px 14px !important;
}

.company-edit-form select[multiple] {
  min-height: 156px;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.company-edit-form textarea {
  min-height: 110px;
  resize: vertical;
}

.company-edit-form trix-editor {
  min-height: 160px;
  padding: 14px !important;
}

.company-edit-form input[type="text"]:focus,
.company-edit-form input[type="email"]:focus,
.company-edit-form input[type="url"]:focus,
.company-edit-form input[type="number"]:focus,
.company-edit-form input[type="file"]:focus,
.company-edit-form select:focus,
.company-edit-form textarea:focus,
.company-edit-form trix-editor:focus-within {
  border-color: #94a3b8 !important;
  box-shadow: 0 0 0 4px rgba(148, 163, 184, 0.16) !important;
  outline: none !important;
}

.company-edit-form trix-toolbar {
  border: 1px solid #dbe4ee;
  border-bottom: 0;
  border-radius: 14px 14px 0 0;
  background: #f8fafc;
  padding: 6px;
}

.company-edit-form trix-editor {
  border-top: 0 !important;
  border-radius: 0 0 14px 14px !important;
}

/* Ensure Trix formatting is clearly visible while editing company content */
.company-edit-form trix-editor {
  color: #0f172a;
  line-height: 1.6;
}

.company-edit-form trix-editor h1 {
  font-size: 1.5rem;
  line-height: 1.3;
  margin: 0.7em 0 0.45em;
  font-weight: 800;
}

.company-edit-form trix-editor blockquote {
  margin: 0.8em 0;
  padding: 0.5em 0.9em;
  border-left: 4px solid #94a3b8;
  background: #f8fafc;
  color: #334155;
}

.company-edit-form trix-editor ul,
.company-edit-form trix-editor ol {
  margin: 0.75em 0 0.75em 1.4em;
  padding-left: 1.1em;
}

.company-edit-form trix-editor ul { list-style: disc; }
.company-edit-form trix-editor ol { list-style: decimal; }
.company-edit-form trix-editor li { margin: 0.2em 0; }
.company-edit-form trix-editor strong { font-weight: 700; }
.company-edit-form trix-editor em { font-style: italic; }
.company-edit-form trix-editor a { color: #2563eb; text-decoration: underline; }

.company-edit-form trix-toolbar .trix-button-group {
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
}

.company-edit-form trix-toolbar .trix-button {
  color: #334155;
  background: #ffffff;
  border-bottom: 0;
  min-width: 34px;
}

.company-edit-form trix-toolbar .trix-button:hover:not(:disabled) {
  background: #eef2ff;
  color: #1e293b;
}

.company-edit-form trix-toolbar .trix-button.trix-active {
  background: #dbeafe;
  color: #1e3a8a;
}

.company-edit-form trix-toolbar .trix-button:disabled { opacity: 0.45; }

.company-edit-form input[type="file"] {
  padding: 12px !important;
  background: #f8fafc !important;
}

.company-edit-form select[multiple] option {
  padding: 8px 10px;
}

.wizard-header {
  padding: 18px 18px 16px !important;
  margin-bottom: 18px !important;
  border: 1px solid #dbe4ee !important;
  border-radius: 22px !important;
  background: var(--color-white) !important;
}

.wizard-header-top {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.wizard-step-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.wizard-step-item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 12px 14px;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #f8fafc;
  transition: background .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.wizard-step-item.active {
  background: #eff6ff;
  border-color: #bfdbfe;
  box-shadow: 0 10px 22px rgba(59, 130, 246, 0.08);
}

.wizard-step-item.done {
  background: #f0fdf4;
  border-color: #86efac;
}

.wizard-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border-radius: 999px;
  border: 1px solid #cbd5e1;
  background: var(--color-white);
  color: #475569;
  font-size: 13px;
  font-weight: 800;
}

.wizard-pill.active {
  background: #0f172a;
  color: var(--color-white);
  border-color: #0f172a;
}

.wizard-pill.done {
  background: #16a34a;
  color: var(--color-white);
  border-color: #16a34a;
}

.wizard-link {
  font-size: 14px;
  font-weight: 700;
  color: #64748b;
}

.wizard-link.active { color: #0f172a; }

.wizard-status {
  font-size: 13px !important;
  font-weight: 600;
}

.wizard-progress-track {
  margin-top: 14px;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e2e8f0;
}

.wizard-progress-bar {
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #0f172a, #334155);
  transition: width .2s ease;
}

.company-edit-aside {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.company-edit-aside > section[data-wizard-step] {
  margin: 0 !important;
  padding: 18px !important;
  border: 1px solid #dbe4ee !important;
  border-radius: 20px !important;
  background: var(--color-white) !important;
}

.media-upload-card {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.media-upload-card .section-head {
  margin: 0;
}

.media-upload-card .section-title-2 {
  font-size: 15px;
  font-weight: 800;
  color: #0f172a;
}

.media-upload-frame {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 170px;
  padding: 14px;
  border: 1px dashed #cbd5e1;
  border-radius: 16px;
  background: #f8fafc;
}

.media-upload-frame-logo {
  min-height: 150px;
}

.media-upload-frame-cover {
  min-height: 140px;
  cursor: pointer;
}

.media-upload-image {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}

.media-upload-image-logo {
  width: 120px;
  height: 120px;
  object-fit: cover;
}

.media-upload-image-cover {
  width: 100%;
  max-width: 640px;
  aspect-ratio: 1280 / 440;
  min-height: 0;
  object-fit: cover;
}

.company-cover-crop-drop,
.company-logo-crop-drop {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 118px;
  padding: 14px;
  border: 1px dashed #cbd5e1;
  border-radius: 14px;
  background: #f8fafc;
  color: #64748b;
  font-size: 13px;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.company-logo-crop-drop {
  min-height: 96px;
}

.company-cover-crop-drop:hover,
.company-logo-crop-drop:hover {
  border-color: #6366f1;
  background: #eef2ff;
  color: #3730a3;
}

.media-upload-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 84px;
  padding: 12px 14px;
  border: 1px dashed #dbe4ee;
  border-radius: 14px;
  background: #f8fafc;
  text-align: center;
}

.media-upload-preview {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.media-upload-preview-label {
  margin: 0 !important;
  font-size: 12px !important;
  font-weight: 700;
  color: #64748b !important;
}

.company-edit-aside input[type="file"] {
  width: 100%;
}

.wizard-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 20px !important;
  padding: 16px 18px !important;
  border: 1px solid #dbe4ee !important;
  border-radius: 20px !important;
  background: var(--color-white) !important;
}

.wizard-footer-copy {
  font-size: 13px !important;
}

.wizard-footer-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.wizard-list-builder {
  display: grid;
  gap: 10px;
}

.wizard-list-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.wizard-list-row .input {
  flex: 1 1 auto;
}

.wizard-list-actions,
.wizard-inline-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.wizard-list-remove {
  white-space: nowrap;
}

.wizard-footer-actions .pill,
.company-edit-actions .pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 14px;
  font-weight: 700;
}

.wizard-inline-actions .pill,
.wizard-list-actions .pill,
.wizard-list-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 14px;
  font-weight: 700;
}

.wizard-footer-actions #wizard-next,
.wizard-footer-actions #wizard-save {
  background: #0f172a;
  border-color: #0f172a;
  color: var(--color-white);
}

.company-edit-page .mt-12 { margin-top: 0 !important; }

@media (max-width: 980px) {
  .company-edit-page { padding: 18px; }
  .wizard-step-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .company-edit-page { padding: 14px; border-radius: 20px; }
  .company-edit-form { padding: 14px !important; }
  .wizard-header,
  .company-edit-main > label[data-wizard-step],
  .company-edit-main > section[data-wizard-step],
  .company-edit-main > div[data-wizard-step],
  .company-edit-aside > section[data-wizard-step],
  .wizard-footer {
    padding: 16px !important;
    border-radius: 18px !important;
  }
  .wizard-step-list { grid-template-columns: 1fr; }
  .company-edit-summary { padding: 14px !important; }
  .company-edit-actions { width: 100%; }
  .company-edit-language-status { width: 100%; justify-content: center; }
  .wizard-list-row { flex-direction: column; align-items: stretch; }
  .wizard-list-remove { width: 100%; }
  .wizard-footer-actions { width: 100%; }
  .wizard-footer-actions .pill { flex: 1 1 100%; }
}

/* Dark theme form safety layer: legacy pages often hard-code label/input text for light UI. */
[data-site-theme="dark"] form label,
[data-site-theme="dark"] form legend,
[data-site-theme="dark"] .form-label,
[data-site-theme="dark"] .entry__label,
[data-site-theme="dark"] .form__label-row label,
[data-site-theme="dark"] .form-group > label,
[data-site-theme="dark"] .field-label {
  color: var(--theme-text-muted) !important;
}

[data-site-theme="dark"] form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
[data-site-theme="dark"] form select,
[data-site-theme="dark"] form textarea,
[data-site-theme="dark"] form trix-editor,
[data-site-theme="dark"] .form-input,
[data-site-theme="dark"] .input,
[data-site-theme="dark"] .entry__field input {
  color: var(--theme-text-main) !important;
}

[data-site-theme="dark"] form input::placeholder,
[data-site-theme="dark"] form textarea::placeholder,
[data-site-theme="dark"] .form-input::placeholder,
[data-site-theme="dark"] .input::placeholder {
  color: var(--theme-text-dim) !important;
}

[data-site-theme="dark"] form .help,
[data-site-theme="dark"] form .hint,
[data-site-theme="dark"] form .muted,
[data-site-theme="dark"] form .form-help,
[data-site-theme="dark"] form .entry__specification,
[data-site-theme="dark"] form small {
  color: var(--theme-text-dim) !important;
}

/* ============================================
   COMPONENT: Header Theme Toggle + Marquee
   Source: resources/views/layouts/header.blade.php
   ============================================ */
.theme-toggle-btn {
    color: var(--theme-text-main);
    background: var(--theme-overlay-soft);
    border: 1px solid var(--theme-border);
    border-radius: 9999px;
    width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
}
.theme-toggle-btn:hover {
    background: var(--theme-overlay-mid);
    color: var(--theme-text-strong);
}
.theme-toggle-btn:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--color-brand-accent), transparent 35%);
    outline-offset: 2px;
}

@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
.animate-marquee {
    display: flex;
    width: max-content;
    animation: marquee 30s linear infinite;
}
.ticker-container:hover .animate-marquee {
    animation-play-state: paused;
}

/* ============================================
   COMPONENT: Blog Archive Page
   Source: resources/views/blog/index.blade.php
   ============================================ */
body.blog-index-page {
    font-family: 'Roboto', sans-serif;
}

body.blog-shell {
    margin: 0;
    background:
        radial-gradient(circle at top left, rgba(215, 255, 101, 0.16), transparent 28%),
        radial-gradient(circle at 85% 10%, rgba(35, 209, 139, 0.14), transparent 22%),
        linear-gradient(180deg, #06120f 0%, #071512 42%, #04100d 100%);
    color: rgba(255, 255, 255, 0.88);
    font-family: 'Manrope', sans-serif;
}

.editorial-shell {
    overflow: hidden;
}

.editorial-container {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
}

.archive-hero {
    position: relative;
    padding: 110px 0 52px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.archive-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(3, 12, 10, 0.85), rgba(5, 18, 15, 0.95)),
        url('https://images.unsplash.com/photo-1520607162513-77705c0f0d4a?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
    opacity: 0.94;
}

.archive-hero__inner {
    position: relative;
    display: grid;
    gap: 26px;
    align-items: end;
}

.archive-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(12px);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.7);
}

.archive-hero__eyebrow::before {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #5ec49c;
    box-shadow: 0 0 18px rgba(215, 255, 101, 0.85);
}

.archive-hero h1 {
    margin: 22px 0 0;
    max-width: 760px;
    font-family: 'Space Grotesk', sans-serif;
    font-size: clamp(2.7rem, 6vw, 5.35rem);
    line-height: 0.98;
    letter-spacing: -0.04em;
    color: #fff;
}

.archive-hero__intro {
    margin: 22px 0 0;
    max-width: 720px;
    font-size: 1.05rem;
    line-height: 1.9;
    color: rgba(255, 255, 255, 0.7);
}

.archive-hero__actions,
.archive-hero__filters {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.hero-action,
.filter-pill,
.meta-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    text-decoration: none;
}

.hero-action {
    min-height: 52px;
    padding: 0 22px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    transition: transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
}

.hero-action:hover {
    transform: translateY(-2px);
}

.hero-action--primary {
    background: #5ec49c;
    color: #05110d;
}

.hero-action--secondary {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.06);
    color: #fff;
}

.filter-pill,
.meta-pill {
    padding: 9px 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.05);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.76);
}

.filter-pill--accent,
.meta-pill--accent {
    background: rgba(215, 255, 101, 0.16);
    border-color: rgba(215, 255, 101, 0.34);
    color: #e6ff99;
}

.archive-layout {
    display: grid;
    gap: 28px;
    padding: 34px 0 72px;
}

.archive-main,
.archive-sidebar-card {
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.045);
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(12px);
}

.archive-main {
    border: 0;
    border-radius: 30px;
    padding: 24px;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.archive-main__bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
}

.archive-main__label {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: rgba(215, 255, 101, 0.78);
}

.archive-main__count {
    margin-top: 8px;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 2rem;
    line-height: 1;
    color: #fff;
}

.archive-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
}

.blog-card {
    overflow: hidden;
    border-radius: 1rem;
    border: 1px solid var(--color-surface-border);
    background-color: var(--color-green-900);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    display: flex;
    flex-direction: column;
}

.blog-card:hover {
    transform: translateY(-6px);
    border-color: var(--color-brand-accent);
    box-shadow: 0 20px 40px -12px rgba(0, 0, 0, 0.5);
}

.blog-card__media {
    position: relative;
    aspect-ratio: 16 / 10;
    overflow: hidden;
}

.blog-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.8;
    transition: transform 0.7s ease, opacity 0.3s ease;
}

.blog-card:hover .blog-card__image {
    transform: scale(1.1);
    opacity: 1;
}

.image-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, color-mix(in srgb, var(--color-green-950), transparent 20%), transparent);
}

.lime-accent {
    color: var(--color-brand-accent);
}

.bg-lime-accent {
    background-color: var(--color-brand-accent);
}

.blog-card__badges {
    position: absolute;
    top: 16px;
    left: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    z-index: 2;
}

.blog-card__body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 24px;
}

.blog-card__title {
    margin: 0 0 16px;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.25;
    color: #fff;
    transition: color 0.3s ease;
}

.blog-card:hover .blog-card__title {
    color: var(--color-brand-accent);
}

.blog-card__excerpt {
    margin: 0 0 24px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    font-size: 0.875rem;
    line-height: 1.55;
    color: var(--color-text-muted);
}

.blog-card__hosted {
    margin: 0 0 12px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(215, 255, 101, 0.86);
}

.blog-card__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding-top: 20px;
    margin-top: auto;
    border-top: 1px solid color-mix(in srgb, var(--color-surface-border), transparent 40%);
}

.blog-card__meta-group {
    display: flex;
    align-items: center;
    gap: 12px;
}

.blog-card__mark {
    width: 36px;
    height: 36px;
    border-radius: 0.75rem;
    background: var(--color-brand-accent);
    color: var(--color-green-950);
    font-size: 11px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
}

.blog-card__meta-group strong,
.sidebar-story strong {
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--color-text-main);
}

.blog-card__meta-group span,
.sidebar-story span,
.blog-card__date small {
    display: block;
    font-size: 0.625rem;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--color-brand-accent);
}

.blog-card__date {
    text-align: right;
}

.blog-card__date strong {
    display: block;
    margin-top: 4px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--color-text-muted);
}

.story-card__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #5ec49c;
    text-decoration: none;
}

.blog-card__bar {
    height: 4px;
    width: 0;
    background: var(--color-brand-accent);
    transition: width 0.5s ease-in-out;
}

.blog-card:hover .blog-card__bar {
    width: 100%;
}

.archive-sidebar {
    display: grid;
    gap: 18px;
    align-content: start;
}

.archive-sidebar-card {
    border-radius: 24px;
    padding: 20px;
    box-shadow: none;
}

.archive-sidebar-card h3 {
    margin: 0 0 10px;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 1.15rem;
    color: #fff;
}

.archive-sidebar-card p {
    margin: 0;
    font-size: 0.94rem;
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.62);
}

.sidebar-list,
.sidebar-tags,
.sidebar-stories {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}

.sidebar-link,
.sidebar-tag,
.sidebar-story {
    border-radius: 18px;
    text-decoration: none;
}

.sidebar-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.76);
    transition: border-color 0.2s ease, transform 0.2s ease, color 0.2s ease;
}

.sidebar-link:hover,
.sidebar-tag:hover,
.sidebar-story:hover {
    transform: translateY(-1px);
    border-color: rgba(215, 255, 101, 0.22);
}

.sidebar-link.is-active,
.sidebar-tag.is-active {
    border-color: rgba(215, 255, 101, 0.32);
    background: rgba(215, 255, 101, 0.12);
    color: #f0ffbf;
}

.sidebar-link em,
.sidebar-tag em {
    font-style: normal;
    font-size: 0.74rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.42);
}

.sidebar-tags {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sidebar-tag {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.78);
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.sidebar-story {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 12px;
    padding: 10px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: inherit;
    transition: border-color 0.2s ease, transform 0.2s ease;
}

.sidebar-story img {
    width: 78px;
    height: 78px;
    border-radius: 14px;
    object-fit: cover;
    background: #081815;
}

.archive-pagination {
    margin-top: 26px;
}

.archive-empty {
    padding: 36px;
    border-radius: 24px;
    border: 1px dashed rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.03);
    text-align: center;
}

/* Theme token bridge: keep layout intact, colors follow site tokens */
body.blog-shell {
    background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--color-brand-accent), transparent 84%), transparent 28%),
        radial-gradient(circle at 85% 10%, color-mix(in srgb, var(--color-status-broker), transparent 86%), transparent 22%),
        linear-gradient(180deg, var(--theme-surface-0) 0%, color-mix(in srgb, var(--theme-surface-0), var(--theme-surface-1) 35%) 42%, var(--theme-surface-0) 100%);
    color: var(--theme-text-main);
}
.archive-hero,
.archive-main,
.archive-sidebar-card,
.blog-card,
.sidebar-link,
.sidebar-tag,
.sidebar-story,
.archive-empty {
    border-color: var(--theme-border);
}
.archive-sidebar-card,
.sidebar-link,
.sidebar-tag,
.sidebar-story,
.archive-empty {
    background: var(--theme-overlay-soft);
}
.archive-hero__eyebrow,
.filter-pill,
.meta-pill,
.hero-action--secondary {
    border-color: var(--theme-border);
    background: var(--theme-overlay-soft);
    color: var(--theme-text-muted);
}
.archive-hero__eyebrow::before,
.hero-action--primary,
.blog-card__bar,
.blog-card__mark {
    background: var(--color-brand-accent);
}
.archive-hero h1,
.archive-main__count,
.archive-sidebar-card h3,
.blog-card__title,
.blog-card__meta-group strong,
.sidebar-story strong {
    color: var(--theme-text-strong);
}
.archive-hero__intro,
.archive-sidebar-card p,
.blog-card__excerpt,
.blog-card__date strong {
    color: var(--theme-text-muted);
}
.archive-main__label,
.blog-card__hosted,
.blog-card__meta-group span,
.sidebar-story span,
.blog-card__date small,
.story-card__cta {
    color: var(--color-brand-accent);
}
.blog-card {
    background-color: var(--theme-surface-1);
}
.blog-card__meta {
    border-top-color: var(--theme-border);
}
.blog-card__mark,
.hero-action--primary {
    color: var(--color-brand-primary);
}
.filter-pill--accent,
.meta-pill--accent,
.sidebar-link.is-active,
.sidebar-tag.is-active {
    background: color-mix(in srgb, var(--color-brand-accent), transparent 84%);
    border-color: color-mix(in srgb, var(--color-brand-accent), transparent 56%);
    color: var(--color-brand-accent);
}
.image-overlay {
    background: linear-gradient(to top, color-mix(in srgb, var(--theme-surface-0), transparent 20%), transparent);
}
.sidebar-link em,
.sidebar-tag em {
    color: var(--theme-text-dim);
}
.sidebar-story img {
    background: var(--theme-surface-2);
}
.archive-empty {
    border-style: dashed;
}

[data-site-theme="light"] .archive-hero::before {
    background:
        linear-gradient(135deg, rgba(248, 250, 252, 0.96), rgba(241, 245, 249, 0.94)),
        radial-gradient(circle at 20% 20%, rgba(94, 196, 156, 0.14), transparent 32%),
        radial-gradient(circle at 82% 18%, rgba(214, 253, 67, 0.18), transparent 28%);
    opacity: 1;
}

[data-site-theme="light"] .sidebar-link,
[data-site-theme="light"] .sidebar-tag,
[data-site-theme="light"] .filter-pill,
[data-site-theme="light"] .meta-pill {
    color: var(--theme-text-main);
}

[data-site-theme="light"] .sidebar-link em,
[data-site-theme="light"] .sidebar-tag em {
    color: var(--theme-text-muted);
}

[data-site-theme="light"] .sidebar-link.is-active,
[data-site-theme="light"] .sidebar-tag.is-active,
[data-site-theme="light"] .filter-pill--accent,
[data-site-theme="light"] .meta-pill--accent {
    color: var(--color-brand-primary);
}

@media (min-width: 1024px) {
    .archive-layout {
        grid-template-columns: minmax(0, 1fr) 340px;
    }

    .archive-sidebar {
        position: sticky;
        top: 100px;
    }

    .archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    body.blog-shell {
        overflow-x: hidden;
    }

    .editorial-shell,
    .archive-layout,
    .archive-main,
    .archive-sidebar,
    .blog-card {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }

    .editorial-container {
        width: min(100% - 20px, 1180px);
    }

    .archive-hero {
        padding: 42px 0 22px;
    }

    .archive-hero__eyebrow {
        max-width: 100%;
        padding: 8px 12px;
        font-size: 9px;
        letter-spacing: 0.18em;
    }

    .archive-hero h1 {
        margin-top: 14px;
        max-width: 100%;
        font-size: clamp(1.85rem, 9.5vw, 2.65rem);
        line-height: 1.06;
        letter-spacing: -0.05em;
    }

    .archive-hero__intro {
        margin-top: 12px;
        font-size: 0.88rem;
        line-height: 1.55;
    }

    .archive-hero__actions,
    .archive-hero__filters {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        margin-top: 20px;
    }

    .hero-action,
    .filter-pill,
    .meta-pill {
        width: 100%;
    }

    .hero-action {
        min-height: 46px;
        padding: 0 16px;
        font-size: 10px;
        letter-spacing: 0.16em;
    }

    .archive-layout {
        gap: 16px;
        padding: 16px 0 42px;
    }

    .archive-main {
        padding: 0;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
    }

    .archive-sidebar-card {
        padding: 14px;
        border-radius: 18px;
    }

    .archive-sidebar-card h3 {
        font-size: 1rem;
    }

    .archive-sidebar-card p {
        font-size: 0.82rem;
        line-height: 1.55;
    }

    .archive-main__bar {
        margin-bottom: 14px;
        padding: 12px 14px;
        border: 1px solid var(--theme-border);
        border-radius: 18px;
        background: var(--theme-overlay-soft);
    }

    .archive-main__label {
        font-size: 9px;
        letter-spacing: 0.16em;
    }

    .archive-main__count {
        margin-top: 4px;
        font-size: 1.25rem;
    }

    .archive-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }

    .blog-card {
        border-radius: 16px;
    }

    .blog-card:hover {
        transform: none;
        box-shadow: none;
    }

    .blog-card__media {
        aspect-ratio: 16 / 9;
        max-height: 185px;
    }

    .blog-card__badges {
        top: 10px;
        left: 10px;
        right: 10px;
        gap: 6px;
    }

    .blog-card__badges span {
        padding: 5px 8px !important;
        font-size: 9px !important;
        letter-spacing: 0.08em !important;
        box-shadow: none !important;
    }

    .blog-card__body {
        padding: 14px;
    }

    .blog-card__title {
        margin-bottom: 8px;
        font-size: 1rem;
        line-height: 1.3;
    }

    .blog-card__hosted {
        margin-bottom: 8px;
        font-size: 0.64rem;
        letter-spacing: 0.1em;
    }

    .blog-card__excerpt {
        margin-bottom: 12px;
        -webkit-line-clamp: 2;
        font-size: 0.8rem;
        line-height: 1.45;
    }

    .blog-card__meta {
        display: grid;
        grid-template-columns: 1fr;
        align-items: flex-start;
        gap: 10px;
        padding-top: 12px;
    }

    .blog-card__meta-group {
        min-width: 0;
    }

    .blog-card__meta-group > div {
        min-width: 0;
    }

    .blog-card__meta-group strong,
    .blog-card__meta-group span {
        overflow-wrap: anywhere;
    }

    .blog-card__date {
        text-align: left;
    }

    .blog-card__date strong {
        margin-top: 2px;
    }

    .sidebar-tags {
        grid-template-columns: 1fr;
    }

    .sidebar-link,
    .sidebar-tag,
    .sidebar-story {
        border-radius: 14px;
    }

    .sidebar-link,
    .sidebar-tag {
        padding: 10px 12px;
    }

    .sidebar-story {
        grid-template-columns: 64px minmax(0, 1fr);
        gap: 10px;
        padding: 8px;
        border-radius: 16px;
    }

    .sidebar-story strong,
    .sidebar-story span,
    .sidebar-link span,
    .sidebar-tag strong {
        overflow-wrap: anywhere;
    }

    .sidebar-story img {
        width: 64px;
        height: 64px;
        border-radius: 12px;
    }

    .archive-pagination {
        overflow-x: auto;
        padding-bottom: 4px;
    }

    .archive-pagination nav,
    .archive-pagination nav > div,
    .archive-pagination .flex {
        max-width: 100%;
        flex-wrap: wrap;
        gap: 6px;
    }
}

/* ============================================
   COMPONENT: Company Premium Dashboard Theme
   Source: resources/views/provides/partials/head.blade.php
   ============================================ */
:root {
    --company-ink: #06141f;
    --company-muted: #5f7286;
    --company-line: rgba(120, 143, 166, 0.22);
    --company-card: rgba(255, 255, 255, 0.92);
    --company-card-strong: rgba(255, 255, 255, 0.98);
    --company-shadow: 0 28px 80px rgba(15, 23, 42, 0.08);
}

body.company-premium {
    margin: 0;
    min-height: 100vh;
    font-family: 'Manrope', sans-serif;
    color: var(--company-ink);
    background:
        radial-gradient(circle at top left, rgba(13, 148, 136, 0.15), transparent 28%),
        radial-gradient(circle at top right, rgba(29, 78, 216, 0.13), transparent 25%),
        linear-gradient(180deg, #f4fbfa 0%, #eef5ff 55%, #f8fafc 100%);
}

.company-premium .sidebar-shell {
    background: linear-gradient(180deg, #ffffff 0%, #f6fbff 100%);
    border-right: 1px solid rgba(148, 163, 184, 0.2);
    box-shadow: 18px 0 48px rgba(15, 23, 42, 0.04);
}

.company-premium .dashboard-main {
    position: relative;
    padding: 28px;
}

.company-premium .dashboard-main::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0)),
        url('https://images.unsplash.com/photo-1520607162513-77705c0f0d4a?auto=format&fit=crop&w=1400&q=80') center top/cover no-repeat;
    opacity: 0.08;
    pointer-events: none;
}

.company-premium .dashboard-shell {
    position: relative;
    z-index: 1;
    max-width: 1420px;
    margin: 0 auto;
}

body.company-premium .topbar,
body.user-premium .topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin-bottom: 24px;
    position: relative;
    z-index: 260;
    padding: 18px 20px;
    border-radius: 24px;
    border: 1px solid rgba(148, 163, 184, 0.25) !important;
    background: #ffffff !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, 0.05) !important;
}

body.company-premium .topbar .page-title,
body.user-premium .topbar .page-title {
    color: #0f172a !important;
}

body.company-premium .topbar .page-subtitle,
body.user-premium .topbar .page-subtitle {
    color: #475569 !important;
}

.company-premium .eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(236, 253, 245, 0.95);
    color: #0f766e;
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.company-premium .page-title {
    margin: 10px 0 0 0;
    font-family: 'Space Grotesk', sans-serif;
    font-size: clamp(1.6rem, 3vw, 2.7rem);
    line-height: 1;
    letter-spacing: -0.04em;
}

.company-premium .page-subtitle {
    max-width: 780px;
    color: var(--company-muted);
    margin-top: 10px;
    font-size: 0.96rem;
}

.company-premium .top-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    position: relative;
    z-index: 260;
}

.company-premium .logout-btn,
.company-premium .action-btn,
.company-premium .secondary-btn,
.company-premium .ghost-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 700;
    transition: 160ms ease;
}

.company-premium .logout-btn,
.company-premium .secondary-btn {
    padding: 12px 18px;
    border: 1px solid rgba(148, 163, 184, 0.25);
    background: rgba(255, 255, 255, 0.9);
    color: #163047;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

.company-premium .action-btn {
    padding: 13px 20px;
    color: white;
    background: linear-gradient(135deg, #0f766e 0%, #1d4ed8 100%);
    box-shadow: 0 18px 40px rgba(15, 118, 110, 0.22);
}

.company-premium .ghost-btn {
    padding: 11px 16px;
    color: #123048;
    background: rgba(255, 255, 255, 0.84);
    border: 1px solid rgba(148, 163, 184, 0.26);
}

.company-premium .avatar-badge {
    width: 46px;
    height: 46px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    color: white;
    background: linear-gradient(135deg, #0f766e 0%, #1d4ed8 100%);
    box-shadow: 0 14px 30px rgba(13, 148, 136, 0.24);
}

.company-premium .dashboard-card,
.company-premium .hero-card {
    border: 1px solid var(--company-line);
    background: var(--company-card);
    backdrop-filter: blur(14px);
    box-shadow: var(--company-shadow);
    border-radius: 28px;
    padding: 24px;
}

.company-premium .hero-card {
    margin-bottom: 18px;
}

.company-premium .stats-grid,
.company-premium .content-grid,
.company-premium .split-grid,
.company-premium .form-grid {
    display: grid;
    gap: 18px;
}

.company-premium .stats-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.company-premium .content-grid { grid-template-columns: minmax(0, 1.55fr) minmax(320px, 0.95fr); align-items: start; }
.company-premium .split-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.company-premium .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.company-premium .stack { display: grid; gap: 18px; }

.company-premium .stat-card strong {
    display: block;
    margin-top: 10px;
    font-size: 2rem;
    font-family: 'Space Grotesk', sans-serif;
    line-height: 1;
}

.company-premium .mini-label {
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    opacity: 0.78;
}

.company-premium .card-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 18px;
}

.company-premium .card-title {
    margin: 0;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 1.3rem;
    line-height: 1.1;
}

.company-premium .card-text,
.company-premium .meta-text {
    color: var(--company-muted);
}

.company-premium .list-card,
.company-premium .timeline-card {
    border-radius: 22px;
    border: 1px solid rgba(148, 163, 184, 0.14);
    background: var(--company-card-strong);
    transition: 160ms ease;
}

.company-premium .list-card:hover,
.company-premium .timeline-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

.company-premium .list-card,
.company-premium .timeline-card { padding: 18px; }

.company-premium .form-row { display: grid; gap: 8px; }
.company-premium .form-row.full { grid-column: 1 / -1; }
.company-premium .form-row label { font-size: 0.92rem; font-weight: 700; color: #18364e; }
.company-premium .form-row input,
.company-premium .form-row select,
.company-premium .form-row textarea {
    width: 100%;
    border: 1px solid rgba(148, 163, 184, 0.24);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.88);
    padding: 14px 16px;
    color: #10253a;
    outline: none;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.03);
}

.company-premium .form-row input:focus,
.company-premium .form-row select:focus,
.company-premium .form-row textarea:focus {
    border-color: rgba(13, 148, 136, 0.38);
    box-shadow: 0 0 0 4px rgba(13, 148, 136, 0.1);
}

.company-premium .form-actions { display: flex; gap: 12px; margin-top: 20px; flex-wrap: wrap; }
.company-premium .pill-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.company-premium .mini-pill { display: inline-flex; align-items: center; padding: 6px 10px; border-radius: 999px; font-size: 0.76rem; font-weight: 800; letter-spacing: 0.02em; }
.company-premium .mini-pill.type { background: rgba(29, 78, 216, 0.08); color: #1d4ed8; }
.company-premium .mini-pill.success { background: rgba(16, 185, 129, 0.12); color: #047857; }
.company-premium .mini-pill.warn { background: rgba(245, 158, 11, 0.12); color: #b45309; }
.company-premium .mini-pill.danger { background: rgba(239, 68, 68, 0.12); color: #b91c1c; }

.company-premium .empty-state,
.company-premium .alert-box {
    padding: 18px 20px;
    border-radius: 20px;
}

.company-premium .empty-state {
    border: 1px dashed rgba(148, 163, 184, 0.28);
    background: rgba(255, 255, 255, 0.72);
    color: var(--company-muted);
}

.company-premium .alert-box {
    border: 1px solid rgba(16, 185, 129, 0.18);
    background: rgba(236, 253, 245, 0.9);
    color: #047857;
    margin-bottom: 16px;
}

.company-premium .alert-box.error {
    border-color: rgba(239, 68, 68, 0.18);
    background: rgba(254, 242, 242, 0.94);
    color: #991b1b;
}

.company-premium .footer-note {
    margin-top: 18px;
    text-align: center;
    color: #7a8898;
    font-size: 0.9rem;
}

@media (max-width: 1180px) {
    .company-premium .stats-grid,
    .company-premium .content-grid,
    .company-premium .split-grid,
    .company-premium .form-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 980px) {
    .company-premium .sidebar-shell { display: none; }
    .company-premium .dashboard-main { padding: 18px; }
}

@media (max-width: 720px) {
    .company-premium .topbar,
    .company-premium .card-head,
    .company-premium .top-actions,
    .company-premium .form-actions {
        flex-direction: column;
        align-items: stretch;
    }
    .company-premium .top-actions > * { width: 100%; }
}

/* ============================================
   COMPONENT: Auth Pages (Login)
   Source: resources/views/auth/login.blade.php
   ============================================ */
.login-page {
    background: var(--theme-surface-0);
}

.login-main {
    background:
        radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--color-brand-accent), transparent 90%), transparent 34%),
        radial-gradient(circle at 88% 82%, color-mix(in srgb, var(--color-brand-accent-hover), transparent 92%), transparent 36%),
        var(--theme-surface-0);
}

[data-site-theme="light"] .login-page,
[data-site-theme="light"] .login-main {
    background:
        radial-gradient(circle at 12% 18%, rgba(94, 196, 156, 0.10), transparent 32%),
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

[data-site-theme="light"] .login-card {
    box-shadow: 0 22px 60px rgba(31, 63, 73, 0.10);
}

[data-site-theme="dark"] .login-card {
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.34);
}

.login-input:-webkit-autofill,
.login-input:-webkit-autofill:hover,
.login-input:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--theme-text-main);
    -webkit-box-shadow: 0 0 0 1000px var(--theme-surface-1) inset;
    transition: background-color 5000s ease-in-out 0s;
}

.login-page .login-remember-label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem;
    line-height: 1;
    white-space: nowrap;
}

.login-page .login-remember-checkbox {
    display: inline-block !important;
    width: 1rem !important;
    height: 1rem !important;
    min-width: 1rem !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: 0 0 1rem !important;
    vertical-align: middle;
}

/* ============================================
   COMPONENT: Auth Pages (Legacy Auth Styles)
   Source: resources/views/auth/forgot-password.blade.php
            resources/views/auth/reset-password.blade.php
   ============================================ */
.auth-wrap { max-width: 520px; margin: 40px auto; background:#0f1b2e; color:#e6eef8; padding:24px; border-radius:10px; box-shadow:0 6px 20px rgba(0,0,0,.25); }
.auth-title { font-size: 24px; margin-bottom: 8px; }
.auth-sub { color:#9fb3c8; margin-bottom: 18px; }
.form-group { margin-bottom: 14px; }
.form-label { display:block; font-weight:600; margin-bottom:8px; color:#cbd6e2; }
.form-input { width:100%; padding:10px 12px; border:1px solid #24334a; border-radius:8px; background:#1e293b; color:#ffffff !important; outline: none; }
.form-input:focus { background:#1e293b !important; color:#ffffff !important; border-color: #2dd4bf; }
.form-input::placeholder { color:#7f94ad; }
.form-input:-webkit-autofill,
.form-input:-webkit-autofill:hover,
.form-input:-webkit-autofill:focus {
    -webkit-text-fill-color: #ffffff;
    -webkit-box-shadow: 0 0 0px 1000px #1e293b inset;
    transition: background-color 5000s ease-in-out 0s;
}
.btn-primary { width: 100%; background:#2dd4bf; color:#0a1525; border:none; padding:10px 16px; border-radius:8px; font-weight:700; cursor:pointer; }
.btn-primary:hover { background:#20b8a4; }
.error { background:#2a1b1b; color:#f6d3d3; border:1px solid #542; padding:10px 12px; border-radius:8px; margin-bottom:12px; }
.success { background:#1b2a1b; color:#d3f6d3; border:1px solid #245; padding:10px 12px; border-radius:8px; margin-bottom:12px; }

/* ============================================
   COMPONENT: Auth Pages (Verify Email)
   Source: resources/views/auth/verify-email.blade.php
   ============================================ */
.verify-email-page {
    background: var(--theme-surface-0);
}

.verify-email-main {
    background:
        radial-gradient(circle at 12% 18%, color-mix(in srgb, var(--color-brand-accent), transparent 90%), transparent 34%),
        radial-gradient(circle at 88% 82%, color-mix(in srgb, var(--color-brand-accent-hover), transparent 92%), transparent 36%),
        var(--theme-surface-0);
}

[data-site-theme="light"] .verify-email-page,
[data-site-theme="light"] .verify-email-main {
    background:
        radial-gradient(circle at 12% 18%, rgba(94, 196, 156, 0.10), transparent 32%),
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

[data-site-theme="light"] .verify-email-card {
    box-shadow: 0 22px 60px rgba(31, 63, 73, 0.10);
}

[data-site-theme="dark"] .verify-email-card {
    box-shadow: 0 28px 80px rgba(0, 0, 0, 0.34);
}

/* ============================================
   COMPONENT: About Page
   Source: resources/views/about.blade.php
   ============================================ */
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.reveal.active { opacity: 1; transform: translateY(0); }
.hover-card { transition: transform .25s ease, box-shadow .25s ease; }
.hover-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -20px rgba(12,74,110,.45); }
.accent-ring { position: relative; }
.accent-ring::before { content: ""; position: absolute; inset: -1px; border-radius: 24px; padding: 1px; background: linear-gradient(180deg, rgba(255,255,255,.08), transparent); -webkit-mask: linear-gradient(#000, #000) content-box, linear-gradient(#000, #000); -webkit-mask-composite: xor; mask-composite: exclude; }

/* ============================================
   COMPONENT: Contact Page (Platform Theme Scope)
   Source: resources/views/contact.blade.php
   ============================================ */
.contact-page .contact-form-input {
    border-width: 1px;
    border-style: solid;
    border-color: rgba(255, 255, 255, 0.18) !important;
    background: rgba(255, 255, 255, 0.12) !important;
    color: #ffffff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.contact-page .contact-form-input::placeholder {
    color: rgba(255, 255, 255, 0.72) !important;
}

.contact-page .contact-form-input:hover {
    border-color: rgba(94, 196, 156, 0.42) !important;
    background: rgba(255, 255, 255, 0.15) !important;
}

.contact-page .contact-form-input:focus {
    border-color: var(--color-brand-accent) !important;
    background: rgba(255, 255, 255, 0.16) !important;
    box-shadow: 0 0 0 4px rgba(94, 196, 156, 0.14) !important;
}

.contact-page .contact-form-input option {
    background: #0b1d18;
    color: #ffffff;
}

.contact-page .contact-form-submit {
    box-shadow: 0 18px 40px -24px rgba(94, 196, 156, 0.9);
}

.contact-page .contact-direct-channel-card {
    border-color: rgba(255, 255, 255, 0.12) !important;
    background: rgba(0, 30, 21, 0.68) !important;
    color: rgba(255, 255, 255, 0.82) !important;
}

.contact-page .contact-modal-card {
    border-color: rgba(255, 255, 255, 0.18) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.04)),
        var(--color-green-900) !important;
}

.contact-page .contact-modal-icon-button {
    border-color: rgba(255, 255, 255, 0.16) !important;
    background: rgba(255, 255, 255, 0.09) !important;
    color: rgba(255, 255, 255, 0.86) !important;
}

.contact-page .contact-modal-close-secondary {
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.14) !important;
    color: #ffffff !important;
}

.contact-page .contact-modal-close-secondary:hover,
.contact-page .contact-modal-icon-button:hover {
    border-color: rgba(94, 196, 156, 0.44) !important;
    background: rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
}

[data-site-theme="light"] .contact-page .contact-form-panel {
    background: rgba(255, 255, 255, 0.92) !important;
    border-color: rgba(31, 63, 73, 0.14) !important;
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.10) !important;
}

[data-site-theme="light"] .contact-page .contact-form-input {
    border-color: rgba(31, 63, 73, 0.16) !important;
    background: #ffffff !important;
    color: #16323a !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 1px 2px rgba(15, 23, 42, 0.04);
}

[data-site-theme="light"] .contact-page .contact-form-input::placeholder {
    color: #6b7f87 !important;
}

[data-site-theme="light"] .contact-page .contact-form-input:hover {
    border-color: rgba(31, 63, 73, 0.28) !important;
    background: #ffffff !important;
}

[data-site-theme="light"] .contact-page .contact-form-input:focus {
    border-color: #5ec49c !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 4px rgba(94, 196, 156, 0.18) !important;
}

[data-site-theme="light"] .contact-page .contact-form-input option {
    background: #ffffff;
    color: #16323a;
}

[data-site-theme="light"] .contact-page .contact-direct-channels {
    background: linear-gradient(135deg, rgba(94, 196, 156, 0.12), rgba(214, 253, 67, 0.10), rgba(255, 255, 255, 0.88)) !important;
    border-color: rgba(31, 63, 73, 0.12) !important;
}

[data-site-theme="light"] .contact-page .contact-direct-channel-card {
    border-color: rgba(31, 63, 73, 0.10) !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: #395865 !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

[data-site-theme="light"] .contact-page .contact-modal-card {
    border-color: rgba(31, 63, 73, 0.12) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(242, 247, 245, 0.98)),
        #ffffff !important;
    box-shadow: 0 28px 80px rgba(15, 23, 42, 0.16) !important;
}

[data-site-theme="light"] .contact-page .contact-modal-icon-button,
[data-site-theme="light"] .contact-page .contact-modal-close-secondary {
    border-color: rgba(31, 63, 73, 0.14) !important;
    background: rgba(31, 63, 73, 0.08) !important;
    color: #16323a !important;
}

[data-site-theme="light"] .contact-page .contact-modal-close-secondary:hover,
[data-site-theme="light"] .contact-page .contact-modal-icon-button:hover {
    border-color: rgba(31, 63, 73, 0.24) !important;
    background: rgba(31, 63, 73, 0.12) !important;
    color: #0f172a !important;
}

/* Light theme purple accent override (do not affect dark mode) */
[data-site-theme="light"] {
    --light-accent-purple: #7A5BFA;
    --light-accent-purple-soft: #A28BFF;
    --light-accent-purple-hover: #C4B5FD;
}

[data-site-theme="light"] .platform-theme-scope [class*="bg-[#5ec49c]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-l24lime"],
[data-site-theme="light"] .service-theme-scope [class*="bg-[#5ec49c]"],
[data-site-theme="light"] .contact-page [class*="bg-[#5ec49c]"],
[data-site-theme="light"] .legal-page [class*="bg-[#5ec49c]"] {
    background-color: var(--light-accent-purple) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="text-[#5ec49c]"],
[data-site-theme="light"] .platform-theme-scope [class*="text-l24green"],
[data-site-theme="light"] .service-theme-scope [class*="text-[#5ec49c]"],
[data-site-theme="light"] .contact-page [class*="text-[#5ec49c]"],
[data-site-theme="light"] .legal-page [class*="text-[#5ec49c]"] {
    color: var(--light-accent-purple) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="hover:bg-[var(--color-brand-accent-hover)]"]:hover,
[data-site-theme="light"] .service-theme-scope [class*="hover:bg-[#e6ff99]"]:hover {
    background-color: var(--light-accent-purple-hover) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="selection:bg-[#5ec49c]"],
[data-site-theme="light"] .service-theme-scope [class*="selection:bg-[#5ec49c]"] {
    --tw-selection-bg: var(--light-accent-purple-soft);
}

[data-site-theme="light"] .contact-page .contact-form-input:focus {
    border-color: var(--light-accent-purple) !important;
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--light-accent-purple), transparent 80%) !important;
}

[data-site-theme="light"] .contact-page .contact-direct-channels {
    background: linear-gradient(135deg, color-mix(in srgb, var(--light-accent-purple), transparent 86%), color-mix(in srgb, var(--light-accent-purple-soft), transparent 90%), rgba(255, 255, 255, 0.88)) !important;
}

/* Auth pages dark theme alignment (join/register/login) */
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]),
[data-site-theme="dark"] body.auth-theme-scope,
:root:not([data-site-theme="light"]) body.login-page:not([data-site-theme="light"]),
[data-site-theme="dark"] body.login-page {
    --color-brand-accent: #7A5BFA;
    --color-brand-accent-hover: #8B6CFF;
    --color-green-950: #010106;
    --color-green-900: #0D0B24;
    --color-green-850: #131634;
    --color-green-800: #171237;
    --lime-accent: #7A5BFA;
    --emerald-card: #131634;
    --emerald-bg: #010106;
    --theme-surface-0: #010106;
    --theme-surface-1: #0D0B24;
    --theme-surface-2: #171237;
    --theme-text-strong: #F5F7FF;
    --theme-text-main: color-mix(in srgb, #F5F7FF, transparent 8%);
    --theme-text-muted: #B6BDD8;
    --theme-text-dim: #7D85A7;
    --theme-border: color-mix(in srgb, #7A5BFA, transparent 74%);
    --theme-border-strong: color-mix(in srgb, #45B8FF, transparent 58%);
    --theme-btn-primary-bg: #7A5BFA;
    --theme-btn-primary-text: #ffffff;
    --theme-btn-primary-hover-bg: #8B6CFF;
    --theme-btn-primary-hover-text: #ffffff;
}

:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="bg-emerald-"],
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="bg-lime-"],
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="bg-lime_accent"],
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="bg-[#5ec49c]"],
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="bg-[var(--color-green-"],
[data-site-theme="dark"] body.auth-theme-scope [class*="bg-emerald-"],
[data-site-theme="dark"] body.auth-theme-scope [class*="bg-lime-"],
[data-site-theme="dark"] body.auth-theme-scope [class*="bg-lime_accent"],
[data-site-theme="dark"] body.auth-theme-scope [class*="bg-[#5ec49c]"],
[data-site-theme="dark"] body.auth-theme-scope [class*="bg-[var(--color-green-"] {
    background-color: color-mix(in srgb, #7A5BFA, transparent 84%) !important;
}

:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="text-emerald-"],
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="text-lime-"],
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="text-[#5ec49c]"],
[data-site-theme="dark"] body.auth-theme-scope [class*="text-emerald-"],
[data-site-theme="dark"] body.auth-theme-scope [class*="text-lime-"],
[data-site-theme="dark"] body.auth-theme-scope [class*="text-[#5ec49c]"] {
    color: #A28BFF !important;
}

:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="border-emerald-"],
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) [class*="border-lime-"],
[data-site-theme="dark"] body.auth-theme-scope [class*="border-emerald-"],
[data-site-theme="dark"] body.auth-theme-scope [class*="border-lime-"] {
    border-color: color-mix(in srgb, #7A5BFA, transparent 58%) !important;
}

:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) .u-btn-accent,
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) .u-btn-primary,
:root:not([data-site-theme="light"]) body.auth-theme-scope:not([data-site-theme="light"]) button[type="submit"],
:root:not([data-site-theme="light"]) body.login-page:not([data-site-theme="light"]) button[type="submit"],
[data-site-theme="dark"] body.auth-theme-scope .u-btn-accent,
[data-site-theme="dark"] body.auth-theme-scope .u-btn-primary,
[data-site-theme="dark"] body.auth-theme-scope button[type="submit"],
[data-site-theme="dark"] body.login-page button[type="submit"] {
    background: #7A5BFA !important;
    color: #ffffff !important;
    border-color: color-mix(in srgb, #7A5BFA, transparent 50%) !important;
}

/* Global customer-facing theme normalization (light + dark) */
:root body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) {
    --color-brand-accent: #7A5BFA;
    --color-brand-accent-hover: #C4B5FD;
}

[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) {
    --theme-surface-0: #f7f8ff;
    --theme-surface-1: #ffffff;
    --theme-surface-2: #f1f2ff;
    --theme-text-strong: #1f2333;
    --theme-text-main: #23283a;
    --theme-text-muted: #6f7894;
    --theme-text-dim: #8a92ad;
    --theme-border: rgba(122, 91, 250, 0.22);
    --theme-border-strong: rgba(122, 91, 250, 0.34);
    --theme-overlay-soft: rgba(122, 91, 250, 0.06);
    --theme-overlay-mid: rgba(122, 91, 250, 0.12);
    --theme-btn-primary-bg: #7A5BFA;
    --theme-btn-primary-text: #ffffff;
    --theme-btn-primary-hover-bg: #C4B5FD;
    --theme-btn-primary-hover-text: #1f2333;
    --theme-btn-secondary-hover-bg: #C4B5FD;
    --theme-btn-secondary-hover-text: #1f2333;
}

:root:not([data-site-theme="light"]) body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page):not([data-site-theme="light"]),
[data-site-theme="dark"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) {
    --color-brand-accent-hover: #8B6CFF;
    --theme-surface-0: #010106;
    --theme-surface-1: #0D0B24;
    --theme-surface-2: #171237;
    --theme-text-strong: #F5F7FF;
    --theme-text-main: color-mix(in srgb, #F5F7FF, transparent 8%);
    --theme-text-muted: #B6BDD8;
    --theme-text-dim: #7D85A7;
    --theme-border: color-mix(in srgb, #7A5BFA, transparent 74%);
    --theme-border-strong: color-mix(in srgb, #45B8FF, transparent 58%);
    --theme-overlay-soft: color-mix(in srgb, #7A5BFA, transparent 90%);
    --theme-overlay-mid: color-mix(in srgb, #7A5BFA, transparent 82%);
    --theme-btn-primary-bg: #7A5BFA;
    --theme-btn-primary-text: #ffffff;
    --theme-btn-primary-hover-bg: #8B6CFF;
    --theme-btn-primary-hover-text: #ffffff;
}

/* Legacy utility remap for customer pages: green -> purple family */
[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) [class*="bg-emerald-"],
[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) [class*="bg-lime-"],
[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) [class*="bg-[#5ec49c]"] {
    background-color: color-mix(in srgb, #7A5BFA, transparent 86%) !important;
}
[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) [class*="text-emerald-"],
[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) [class*="text-lime-"],
[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) [class*="text-[#5ec49c]"] {
    color: #7A5BFA !important;
}
[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) [class*="border-emerald-"],
[data-site-theme="light"] body:is(.front-site-page, .platform-theme-scope, .service-theme-scope, .provider-index-page, .provider-view-page, .auth-theme-scope, .login-page, .contact-page, .legal-page, .blog-shell, .story-shell, .request-theme-scope, .verify-email-page, .cookies-page) [class*="border-lime-"] {
    border-color: color-mix(in srgb, #7A5BFA, transparent 64%) !important;
}

[data-site-theme="light"] .platform-theme-scope {
    background-image: none !important;
    color: var(--theme-text-main);
}

[data-site-theme="light"] .platform-theme-scope [class*="bg-[#06120f]"] {
    background-color: #f8fafc !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="bg-[#091714]"] {
    background-color: #f2f7f5 !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="bg-[#0b1d18]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#081612]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#081a16]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-[#0a1f1a"] {
    background-color: #eaf4f0 !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="bg-l24bg"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-l24pan"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-l24navy"] {
    background-color: #1f3f49 !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="text-l24yellow"] {
    color: #fde047 !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="text-l24green"] {
    color: #5ec49c !important;
}

[data-site-theme="light"] .platform-theme-scope .platform-hero {
    background-color: #f8fafc !important;
    border-color: var(--theme-border) !important;
}

[data-site-theme="light"] .platform-theme-scope .platform-hero-image {
    opacity: 0.1 !important;
}

[data-site-theme="light"] .platform-theme-scope .platform-hero-overlay {
    background:
        radial-gradient(circle at 20% 20%, rgba(94, 196, 156, 0.16), transparent 28%),
        radial-gradient(circle at 80% 15%, rgba(214, 253, 67, 0.14), transparent 24%),
        linear-gradient(135deg, rgba(248, 250, 252, 0.9), rgba(242, 247, 245, 0.96)) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="bg-white/6"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/5"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/[0.04]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/[0.08]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-white/[0.03]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-black/25"],
[data-site-theme="light"] .platform-theme-scope [class*="open:bg-white/[0.08]"] {
    background-color: rgba(15, 23, 42, 0.04) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="hover:bg-white/10"]:hover {
    background-color: rgba(15, 23, 42, 0.08) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="border-white/10"],
[data-site-theme="light"] .platform-theme-scope [class*="border-white/12"],
[data-site-theme="light"] .platform-theme-scope [class*="border-white/16"],
[data-site-theme="light"] .platform-theme-scope [class*="border-white/6"] {
    border-color: var(--theme-border) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="text-white"],
[data-site-theme="light"] .platform-theme-scope input,
[data-site-theme="light"] .platform-theme-scope textarea,
[data-site-theme="light"] .platform-theme-scope select {
    color: var(--theme-text-main) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="text-white/90"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/82"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/80"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/72"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/70"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/68"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/66"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/62"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/60"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/58"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/56"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/55"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/45"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/40"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/38"],
[data-site-theme="light"] .platform-theme-scope [class*="text-white/36"] {
    color: var(--theme-text-muted) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="placeholder-white/20"]::placeholder {
    color: var(--theme-text-dim) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="bg-[#5ec49c]"],
[data-site-theme="light"] .platform-theme-scope [class*="bg-l24lime"] {
    background-color: var(--color-brand-accent) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="text-[#130808]"] {
    color: var(--color-brand-accent) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="hover:bg-[#e6ff99]"]:hover {
    background-color: var(--color-brand-accent-hover) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="text-[#05110d]"],
[data-site-theme="light"] .platform-theme-scope [class*="selection:text-[#04110d]"] {
    color: var(--color-brand-primary) !important;
}

[data-site-theme="light"] .platform-theme-scope [class*="selection:bg-[#5ec49c]"] {
    --tw-selection-bg: var(--color-brand-accent);
}

/* ============================================
   COMPONENT: Home Page (Brevo Form)
   Source: resources/views/home.blade.php
   ============================================ */
#sib-container input::placeholder { text-align: left; font-family: Helvetica, sans-serif; color: #c0ccda; }
#sib-container textarea::placeholder { text-align: left; font-family: Helvetica, sans-serif; color: #c0ccda; }

/* ============================================
   COMPONENT: Join Page (Auth Theme Scope)
   Source: resources/views/join.blade.php
   ============================================ */
[data-site-theme="light"] .auth-theme-scope {
    --color-green-950: #f8fafc;
    --color-green-900: #ffffff;
    --color-green-800: #f1f5f9;
    --color-green-700: #e2e8f0;
    --color-brand-primary: #1f3f49;
    color: var(--theme-text-main);
}

[data-site-theme="light"] .auth-theme-scope .text-white {
    color: var(--theme-text-strong) !important;
}

[data-site-theme="light"] .auth-theme-scope [class*="text-white/"],
[data-site-theme="light"] .auth-theme-scope [class*="text-emerald-100/"],
[data-site-theme="light"] .auth-theme-scope [class*="text-emerald-500/"] {
    color: var(--theme-text-muted) !important;
}

[data-site-theme="light"] .auth-theme-scope [class*="bg-white/"],
[data-site-theme="light"] .auth-theme-scope [class*="bg-emerald-900/"],
[data-site-theme="light"] .auth-theme-scope [class*="bg-emerald-800/"] {
    background-color: rgba(15, 23, 42, 0.05) !important;
}

[data-site-theme="light"] .auth-theme-scope [class*="border-emerald-"],
[data-site-theme="light"] .auth-theme-scope [class*="border-white/"] {
    border-color: var(--theme-border) !important;
}

/* ============================================
   COMPONENT: Legal Pages (Cookies, Privacy, Terms)
   Source: resources/views/legal/*.blade.php
   ============================================ */
.cookies-page {
    background: var(--theme-surface-0) !important;
    color: var(--theme-text-main) !important;
}

.cookies-main {
    background:
        radial-gradient(circle at 18% 10%, color-mix(in srgb, var(--color-brand-accent), transparent 88%), transparent 26%),
        radial-gradient(circle at 84% 14%, color-mix(in srgb, var(--color-status-broker), transparent 90%), transparent 24%),
        var(--theme-surface-0);
}

.cookies-card,
.cookies-option {
    background: var(--theme-overlay-soft) !important;
    border-color: var(--theme-border) !important;
    color: var(--theme-text-main) !important;
    box-shadow: none !important;
}

.cookies-title,
.cookies-option-title {
    color: var(--theme-text-strong) !important;
}

.cookies-copy,
.cookies-option-copy {
    color: var(--theme-text-muted) !important;
}

.cookies-pill {
    background: var(--theme-surface-1) !important;
    border-color: var(--theme-border) !important;
    color: var(--theme-text-muted) !important;
}

.cookies-button {
    background: var(--theme-surface-1) !important;
    border-color: var(--theme-border) !important;
    color: var(--theme-text-strong) !important;
}

.cookies-button:hover {
    background: var(--theme-overlay-mid) !important;
}

.cookies-link {
    color: var(--color-brand-accent) !important;
}

/* Legal Pages (Privacy, Terms) */
.legal-page {
    background: var(--theme-surface-0) !important;
    color: var(--theme-text-main) !important;
}

.legal-page .legal-hero {
    background: var(--theme-surface-1) !important;
    border-color: var(--theme-border) !important;
}

.legal-page .legal-hero-bg {
    background:
        radial-gradient(circle at 20% 20%, color-mix(in srgb, var(--color-brand-accent), transparent 88%), transparent 24%),
        radial-gradient(circle at 80% 15%, color-mix(in srgb, var(--color-status-broker), transparent 88%), transparent 24%),
        linear-gradient(135deg, var(--theme-surface-1), var(--theme-surface-0)) !important;
}

.legal-page .legal-content {
    background: var(--theme-surface-0) !important;
}

.legal-page .legal-eyebrow,
.legal-page .legal-contact-card {
    background: var(--theme-overlay-soft) !important;
    border-color: var(--theme-border) !important;
}

.legal-page .legal-eyebrow-text,
.legal-page .legal-copy,
.legal-page .legal-contact-copy {
    color: var(--theme-text-muted) !important;
}

.legal-page .legal-title,
.legal-page .legal-section-title,
.legal-page .legal-contact-title {
    color: var(--theme-text-strong) !important;
}

.legal-page .legal-intro {
    color: var(--theme-text-main) !important;
}

/* ============================================
   COMPONENT: Blog Story/Show Page
   Source: resources/views/blog/show.blade.php
   ============================================ */
body.story-shell {
    margin: 0;
    font-family: 'Manrope', sans-serif;
    background:
        radial-gradient(circle at top left, rgba(215, 255, 101, 0.15), transparent 26%),
        radial-gradient(circle at 86% 12%, rgba(35, 209, 139, 0.13), transparent 24%),
        linear-gradient(180deg, #06120f 0%, #071512 42%, #04100d 100%);
    color: rgba(255, 255, 255, 0.88);
}

.story-layout-shell { overflow: hidden; }

.story-container {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
}

.story-hero {
    position: relative;
    padding: 110px 0 42px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.story-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--theme-surface-0), transparent 18%), color-mix(in srgb, var(--theme-surface-0), transparent 5%)),
        var(--theme-surface-0) center/cover no-repeat;
    opacity: 0.94;
}

.story-hero__inner { position: relative; }

.story-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 22px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    color: rgba(215, 255, 101, 0.84);
}

.story-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(12px);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.7);
}

.story-eyebrow::before {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: #5ec49c;
    box-shadow: 0 0 18px rgba(215, 255, 101, 0.85);
}

.story-hero__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}

.story-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.76);
}

.story-chip--accent {
    background: rgba(215, 255, 101, 0.14);
    border-color: rgba(215, 255, 101, 0.3);
    color: #e6ff99;
}

.story-hero h1 {
    margin: 22px 0 0;
    max-width: 820px;
    font-family: 'Space Grotesk', sans-serif;
    font-size: clamp(2.4rem, 5.4vw, 5rem);
    line-height: 0.98;
    letter-spacing: -0.04em;
    color: #fff;
}

.story-hero__excerpt {
    margin: 20px 0 0;
    max-width: 760px;
    font-size: 1.04rem;
    line-height: 1.9;
    color: rgba(255, 255, 255, 0.7);
}

.story-hero__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin-top: 16px;
    font-size: 0.9rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.68);
}

.story-hero__meta-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.story-hero__meta-item + .story-hero__meta-item::before {
    content: '';
    width: 4px;
    height: 4px;
    border-radius: 999px;
    background: currentColor;
    opacity: 0.45;
}

.story-byline { margin-top: 18px; }

.story-byline strong {
    display: block;
    font-size: 1rem;
    font-weight: 900;
    color: #fff;
}

.story-byline span {
    display: block;
    margin-top: 4px;
    font-size: 0.86rem;
    color: rgba(255, 255, 255, 0.62);
}

.story-main-card,
.story-sidebar-card {
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.045);
    box-shadow: none;
    backdrop-filter: blur(12px);
}

.story-content {
    display: grid;
    gap: 28px;
    padding: 30px 0 72px;
}

.story-main { display: grid; gap: 22px; }

.story-main-card {
    border-radius: 28px;
    padding: 24px;
}

.story-main-card--image {
    overflow: hidden;
    padding: 0;
}

.story-main-card--image img {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    display: block;
}

.story-body {
    color: rgba(255, 255, 255, 0.78);
    font-size: 1rem;
    line-height: 1.9;
}

.story-body h2,
.story-body h3,
.story-body h4 {
    margin: 2.1rem 0 1rem;
    font-family: 'Space Grotesk', sans-serif;
    line-height: 1.15;
    color: #fff;
}

.story-body h2 {
    font-size: 2rem;
}

.story-body h3 {
    font-size: 1.6rem;
}

.story-body h4 {
    font-size: 1.3rem;
}

.story-body p,
.story-body ul,
.story-body ol,
.story-body blockquote { margin: 0 0 1.35rem; }

.story-body ul,
.story-body ol { padding-left: 1.2rem; }

.story-body li { margin-bottom: 0.7rem; }

.story-body a { color: #5ec49c; }

.story-body blockquote {
    padding: 1rem 1.2rem;
    border-left: 3px solid rgba(215, 255, 101, 0.8);
    border-radius: 0 18px 18px 0;
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.8);
}

.story-body img {
    width: auto !important;
    max-width: min(100%, 500px);
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
    border-radius: 22px;
}

.story-body .wp-block-media-text__media {
    display: flex;
    justify-content: center;
}

.story-body .wp-block-media-text__media img {
    width: auto !important;
    max-width: min(100%, 500px);
    height: auto;
    margin-left: auto;
    margin-right: auto;
}

.story-sidebar {
    display: grid;
    gap: 18px;
    align-content: start;
}

.story-sidebar-card {
    border-radius: 24px;
    padding: 20px;
}

.story-sidebar-card h3 {
    margin: 0 0 12px;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 1.15rem;
    color: #fff;
}

.story-sidebar-card p {
    margin: 0;
    font-size: 0.94rem;
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.62);
}

.sidebar-summary {
    display: grid;
    gap: 0;
    margin-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.sidebar-summary__item {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.sidebar-summary__item span,
.sidebar-story span {
    display: block;
    font-size: 0.68rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(215, 255, 101, 0.72);
}

.sidebar-summary__item strong,
.sidebar-story strong {
    display: block;
    margin-top: 0;
    font-size: 0.86rem;
    line-height: 1.35;
    color: #fff;
}

.sidebar-summary__item strong {
    max-width: 58%;
    text-align: right;
}

.sidebar-story-list,
.sidebar-category-list {
    display: grid;
    gap: 10px;
    margin-top: 16px;
}

.sidebar-story,
.sidebar-category-link {
    border-radius: 18px;
    text-decoration: none;
    transition: transform 0.2s ease, border-color 0.2s ease;
}

.sidebar-story:hover,
.sidebar-category-link:hover {
    transform: translateY(-1px);
    border-color: rgba(215, 255, 101, 0.22);
}

.sidebar-story {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 12px;
    padding: 10px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: inherit;
}

.sidebar-story img {
    width: 78px;
    height: 78px;
    border-radius: 14px;
    object-fit: cover;
    background: #081815;
}

.sidebar-category-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.76);
}

.sidebar-category-link em {
    font-style: normal;
    font-size: 0.74rem;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.42);
}

.related-grid {
    display: grid;
    gap: 14px;
    margin-top: 18px;
}

.related-card {
    padding: 16px;
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
}

.related-card h4 {
    margin: 10px 0 0;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 1.08rem;
    line-height: 1.18;
    color: #fff;
}

.related-card a { text-decoration: none; }

.related-card span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: rgba(215, 255, 101, 0.72);
}

/* Theme token bridge for story-shell */
body.story-shell {
    background:
        radial-gradient(circle at top left, color-mix(in srgb, var(--color-brand-accent), transparent 84%), transparent 26%),
        radial-gradient(circle at 86% 12%, color-mix(in srgb, var(--color-status-broker), transparent 87%), transparent 24%),
        linear-gradient(180deg, var(--theme-surface-0) 0%, color-mix(in srgb, var(--theme-surface-0), var(--theme-surface-1) 35%) 42%, var(--theme-surface-0) 100%);
    background-attachment: fixed;
    color: var(--theme-text-main);
}

.story-hero,
.story-chip,
.story-eyebrow,
.story-main-card,
.story-sidebar-card,
.sidebar-summary__item,
.sidebar-story,
.sidebar-category-link,
.related-card { border-color: var(--theme-border); }

.story-chip,
.story-eyebrow,
.story-main-card,
.story-sidebar-card,
.sidebar-summary__item,
.sidebar-story,
.sidebar-category-link,
.related-card { background: var(--theme-overlay-soft); }

.sidebar-summary { border-top-color: var(--theme-border); }
.sidebar-summary__item { background: transparent; border-bottom-color: var(--theme-border); }

.story-back,
.story-body a,
.sidebar-summary__item span,
.sidebar-story span,
.related-card span { color: var(--color-brand-accent); }

.story-eyebrow::before,
.story-chip--accent { background: var(--color-brand-accent); }

.story-chip--accent {
    border-color: color-mix(in srgb, var(--color-brand-accent), transparent 56%);
    color: var(--color-brand-primary);
}

.story-chip { color: var(--theme-text-muted); }

.story-hero h1,
.story-byline strong,
.story-body h2,
.story-body h3,
.story-body h4,
.story-sidebar-card h3,
.sidebar-summary__item strong,
.sidebar-story strong,
.related-card h4 { color: var(--theme-text-strong); }

.story-hero__excerpt,
.story-hero__meta,
.story-byline span,
.story-body,
.story-sidebar-card p,
.sidebar-category-link { color: var(--theme-text-muted); }

/* Force published rich text to follow site theme (ignore inline black colors from editors/pastes). */
.story-body {
    color: var(--theme-text-main) !important;
}

.story-body * {
    color: inherit !important;
    -webkit-text-fill-color: currentColor;
}

.story-body p,
.story-body li,
.story-body span,
.story-body div,
.story-body h1,
.story-body h2,
.story-body h3,
.story-body h4,
.story-body h5,
.story-body h6,
.story-body ul,
.story-body ol,
.story-body blockquote,
.story-body small,
.story-body strong,
.story-body em,
.story-body u,
.story-body s {
    color: inherit !important;
    -webkit-text-fill-color: currentColor;
}

.story-body [style*="color:"] {
    color: var(--theme-text-main) !important;
    -webkit-text-fill-color: var(--theme-text-main) !important;
}

.story-body a,
.story-body a[style*="color:"] {
    color: var(--color-brand-accent) !important;
}

.sidebar-category-link em { color: var(--theme-text-dim); }

.story-body blockquote {
    border-left-color: color-mix(in srgb, var(--color-brand-accent), transparent 20%);
    background: var(--theme-overlay-mid);
    color: var(--theme-text-main);
}

.sidebar-story img { background: var(--theme-surface-2); }

@media (min-width: 1024px) {
    .story-content { grid-template-columns: minmax(0, 1fr) 320px; }
    .story-sidebar { position: sticky; top: 100px; }
    .related-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
    .story-container { width: min(100% - 22px, 1180px); }
    .story-hero { padding: 94px 0 34px; }
    .story-main-card,
    .story-sidebar-card {
        padding: 18px;
        border-radius: 24px;
    }
    .story-main-card--image { padding: 0; }
}

/* ============================================
   COMPONENT: Register Page
   Source: resources/views/register.blade.php
   ============================================ */
input:focus:required:invalid {
    border-color: #ef4444;
    --tw-ring-color: #ef4444;
}

.hidden-group {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.4s ease-in-out, opacity 0.4s ease-in-out;
    margin-bottom: 0 !important;
}

.visible-group {
    max-height: 1200px;
    opacity: 1;
    margin-bottom: 1.5rem !important;
}

header {
    --bg-section-hero: var(--color-green-950) !important;
    background-color: var(--color-green-950) !important;
}

[data-site-theme="light"] .auth-theme-scope {
    --color-green-950: #f8fafc;
    --color-green-900: #ffffff;
    --color-green-800: #f1f5f9;
    --color-green-700: #e2e8f0;
    --color-brand-primary: #1f3f49;
    color: var(--theme-text-main);
}

[data-site-theme="light"] .auth-theme-scope .text-white { color: var(--theme-text-strong) !important; }
[data-site-theme="light"] .auth-theme-scope [class*="text-white/"] { color: var(--theme-text-muted) !important; }

[data-site-theme="light"] .auth-theme-scope [class*="bg-white/"],
[data-site-theme="light"] .auth-theme-scope [class*="bg-[var(--color-green-900)]/"],
[data-site-theme="light"] .auth-theme-scope [class*="bg-[var(--color-brand-accent)]/"] {
    background-color: rgba(15, 23, 42, 0.05) !important;
}

[data-site-theme="light"] .auth-theme-scope [class*="border-white/"],
[data-site-theme="light"] .auth-theme-scope [class*="border-[var(--color-green-800)]/"],
[data-site-theme="light"] .auth-theme-scope [class*="border-[var(--color-green-700)]/"] {
    border-color: var(--theme-border) !important;
}

[data-site-theme="light"] .auth-theme-scope input,
[data-site-theme="light"] .auth-theme-scope select,
[data-site-theme="light"] .auth-theme-scope textarea {
    background-color: var(--theme-surface-1) !important;
    color: var(--theme-text-main) !important;
    border-color: var(--theme-border) !important;
}

[data-site-theme="light"] .auth-theme-scope input::placeholder,
[data-site-theme="light"] .auth-theme-scope textarea::placeholder { color: var(--theme-text-dim) !important; }

.package-card {
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.05);
    transition: all 0.2s ease;
}

.package-card:hover {
    border-color: color-mix(in srgb, var(--color-brand-accent), transparent 45%);
    background: rgba(255, 255, 255, 0.08);
}

.package-card.is-selected {
    border-color: var(--color-brand-accent);
    background: color-mix(in srgb, var(--color-brand-accent), transparent 86%);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--color-brand-accent), transparent 35%);
}

.account-type-option {
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.75);
    transition: all 0.2s ease;
}

.account-type-option:hover {
    border-color: color-mix(in srgb, var(--color-brand-accent), transparent 40%);
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
}

.account-type-option.is-selected {
    border-color: var(--color-brand-accent);
    background: color-mix(in srgb, var(--color-brand-accent), transparent 84%);
    color: #ffffff;
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--color-brand-accent), transparent 35%);
}

[data-site-theme="light"] .auth-theme-scope .account-type-option {
    border-color: var(--theme-border);
    background: var(--theme-surface-1);
    color: var(--theme-text-muted);
}

[data-site-theme="light"] .auth-theme-scope .account-type-option:hover {
    border-color: color-mix(in srgb, var(--color-brand-accent), transparent 45%);
    background: color-mix(in srgb, var(--color-brand-accent), transparent 94%);
    color: var(--theme-text-strong);
}

[data-site-theme="light"] .auth-theme-scope .account-type-option.is-selected {
    color: var(--theme-text-strong);
    background: color-mix(in srgb, var(--color-brand-accent), transparent 90%);
}

[data-site-theme="light"] .auth-theme-scope .register-error-alert { color: #7f1d1d !important; }

[data-site-theme="light"] .auth-theme-scope .register-error-alert-title,
[data-site-theme="light"] .auth-theme-scope .register-field-error { color: #be123c !important; }

/* ============================================
   COMPONENT: Header Utility Classes (Theme Support)
   Source: resources/views/layouts/header.blade.php
   ============================================ */
.u-bg-surface-0 { background-color: var(--theme-surface-0) !important; }
.u-bg-surface-1 { background-color: var(--theme-surface-1) !important; }
.u-border-theme { border-color: var(--theme-border) !important; }
.u-text-main { color: var(--theme-text-main) !important; }

/* Header buttons hover - light theme, aligned with the light purple palette */
[data-site-theme="light"] header a.rounded-lg:hover,
[data-site-theme="light"] header a.border:hover,
[data-site-theme="light"] header button.rounded-xl:hover,
[data-site-theme="light"] header button.theme-toggle-btn:hover,
[data-site-theme="light"] header details > summary:hover {
    background-color: #C4B5FD !important;
    color: #1f2333 !important;
}

[data-site-theme="light"] header .header-action-pill--primary:hover,
[data-site-theme="light"] header .u-btn-accent:hover,
[data-site-theme="light"] header .u-btn-primary:hover,
[data-site-theme="light"] header a.bg-\[var\(--color-brand-accent\)\]:hover {
    background-color: #C4B5FD !important;
    color: #1f2333 !important;
    border-color: #A78BFA !important;
}

/* Keep primary header CTA label white in light mode too */
[data-site-theme="light"] header .header-action-pill--primary,
[data-site-theme="light"] header .header-action-pill--primary:hover {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* NO hover background for nav menu buttons, regular links and dropdown items */
[data-site-theme="light"] header nav button:hover,
[data-site-theme="light"] header button.py-2:hover,
[data-site-theme="light"] header .z-\[70\] a:hover,
[data-site-theme="light"] header [class*="absolute"] a:hover,
[data-site-theme="light"] header nav a:hover {
    background-color: transparent !important;
}

/* ============================================
   COMPONENT: Navigation Sidebars
   Source: resources/views/layouts/nav-*.blade.php
   ============================================ */
.sidebar::-webkit-scrollbar { display: none; }
.sidebar { -ms-overflow-style: none; scrollbar-width: none; }

.material-symbols-outlined { font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24 }
.super-sidebar::-webkit-scrollbar { display: none; }
.super-sidebar { -ms-overflow-style: none; scrollbar-width: none; }

.super-global-topbar {
    position: fixed;
    top: 0;
    left: 256px;
    right: 0;
    min-height: 88px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 24px;
    background: transparent;
    border-bottom: 0;
    z-index: 2147483000 !important;
    pointer-events: auto !important;
    isolation: isolate;
}

.super-topbar-panel {
    width: 100%;
    max-width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 18px;
    border-radius: 24px;
    border: 1px solid rgba(148, 163, 184, 0.16);
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 18px 44px rgba(15, 23, 42, 0.05);
    backdrop-filter: blur(12px);
    pointer-events: auto !important;
    position: relative;
    z-index: 1;
}

.super-global-topbar * {
    pointer-events: auto !important;
}

/* Prevent content overlays from blocking super topbar actions */
body.super-admin-scope .dashboard-main,
body.super-admin-scope .dashboard-shell,
body.super-admin-scope .dashboard-main::before,
body.super-admin-scope .dashboard-shell::before,
body.super-admin-scope .dashboard-shell::after {
    z-index: auto !important;
}

body.super-admin-scope .dashboard-main::before,
body.super-admin-scope .dashboard-shell::before,
body.super-admin-scope .dashboard-shell::after {
    pointer-events: none !important;
}

.super-topbar-meta {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}

.super-topbar-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(238, 244, 248, 0.96);
    color: #486174;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.super-topbar-title {
    color: #0f172a;
    font-size: clamp(1.45rem, 2vw, 2rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.03em;
}

.super-topbar-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.super-topbar-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 0 15px;
    border-radius: 999px;
    border: 1px solid rgba(148, 163, 184, 0.26);
    background: rgba(255, 255, 255, 0.84);
    color: #123048;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: 160ms ease;
}

.super-topbar-pill.is-active {
    background: #eff6ff;
    border-color: #bfdbfe;
    color: #1d4ed8;
}

.super-topbar-pill.logout {
    background: #ef4444;
    border-color: #ef4444;
    color: #ffffff;
}

.super-topbar-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: 1px solid #324467;
    background: linear-gradient(135deg, #0f766e 0%, #1d4ed8 100%);
    color: #ffffff;
    font-weight: 700;
}

.app > main.main,
.app > main.flex-1,
.flex.min-h-screen.w-full > main.flex-1 {
    padding-top: 96px !important;
}

@media (max-width: 1023px) {
    .super-global-topbar { left: 0; }
    .super-topbar-panel {
        flex-direction: column;
        align-items: stretch;
        padding: 14px 16px;
    }
    .super-topbar-actions {
        width: 100%;
        justify-content: flex-start;
    }
}

/* ============================================
   COMPONENT: Super Admin Dashboard
   Source: resources/views/super/dashboard.blade.php
   ============================================ */
.super-dashboard-page { background: #f8fafc !important; }
.super-dashboard-page .sidebar {
    background: #ffffff !important;
    border-color: #e5e7eb !important;
}
.super-dashboard-page .sidebar .brand h1,
.super-dashboard-page .sidebar .nav-link,
.super-dashboard-page .sidebar .nav-link span { color: #0f172a !important; }

/* ============================================
   COMPONENT: Super Notifications
   Source: resources/views/super/notifications.blade.php
   ============================================ */
.super-notif-page { background: #f8fafc; color: #0f172a; }
.super-notif-main { background: #f8fafc; }
.super-notif-card { background: #ffffff; border: 1px solid #e2e8f0; }
.super-notif-preview { background: #f8fafc; border: 1px solid #e2e8f0; }
.super-notif-input {
    background: #ffffff !important;
    border: 1px solid #d1d5db !important;
    color: #0f172a !important;
}
.super-notif-input::placeholder { color: #94a3b8; }
.super-notif-page .text-gray-900 { color: #0f172a !important; }
.super-notif-page .text-gray-700,
.super-notif-page .text-gray-500 { color: #64748b !important; }
.super-notif-page .text-gray-400 { color: #94a3b8 !important; }

/* ============================================
   COMPONENT: Providers Directory
   Source: resources/views/providers/index.blade.php
   ============================================ */
body.provider-index-page {
    font-family: 'Manrope', sans-serif;
    background-color: var(--provider-page-bg, var(--theme-surface-0));
    color: var(--theme-text-main);
}

/* Keep providers page on the same global surface system as home. */
[data-site-theme="dark"] body.provider-index-page {
    --provider-page-bg: var(--theme-surface-0);
}
[data-site-theme="dark"] .provider-index-theme-scope {
    background-color: var(--theme-surface-0) !important;
}

/* filter-container sidebar panel */
.filter-container {
    background-color: var(--theme-surface-1);
    border: 1px solid var(--theme-border);
}
[data-site-theme="dark"] .filter-container {
    background-color: var(--theme-surface-1);
    border-color: var(--theme-border);
}
[data-site-theme="light"] .filter-container {
    background-color: var(--theme-surface-1);
    border-color: var(--theme-border);
}

.company-card {
    background-color: var(--provider-directory-card-bg, var(--theme-surface-1));
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
[data-site-theme="dark"] .company-card {
    --provider-directory-card-bg: var(--theme-surface-1);
}
.company-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.4);
}
.provider-filter-kicker {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.06);
    padding: 0.35rem 0.65rem;
    color: var(--provider-directory-accent, var(--color-brand-accent));
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}
.provider-filter-kicker::before {
    content: '';
    width: 0.4rem;
    height: 0.4rem;
    border-radius: 9999px;
    background: var(--provider-directory-accent, var(--color-brand-accent));
    box-shadow: 0 0 18px color-mix(in srgb, var(--provider-directory-accent, var(--color-brand-accent)), transparent 18%);
}
.provider-type-radio { position: absolute; opacity: 0; pointer-events: none; }
.provider-type-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    padding: 0.6rem 0.75rem;
    border-radius: 0.75rem;
    background: var(--provider-filter-option-bg, color-mix(in srgb, var(--theme-surface-1), transparent 10%));
    color: var(--theme-text-muted);
    font-size: 0.82rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.provider-type-option:hover {
    color: var(--theme-text-strong);
    background: var(--provider-filter-option-hover-bg, rgba(255, 255, 255, 0.08));
    transform: translateY(-1px);
}
.provider-type-option-dot {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 9999px;
    background: color-mix(in srgb, var(--provider-directory-accent, var(--theme-text-dim)) 38%, transparent);
    flex-shrink: 0;
    transition: background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.provider-type-radio:checked + .provider-type-option {
    background: color-mix(in srgb, var(--provider-directory-accent, var(--color-brand-accent)) 18%, transparent);
    color: var(--theme-text-strong);
    box-shadow: 0 14px 34px -28px var(--provider-directory-accent, var(--color-brand-accent));
}
.provider-type-radio:checked + .provider-type-option .provider-type-option-dot {
    background: var(--provider-directory-accent, var(--color-brand-accent));
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--provider-directory-accent, var(--color-brand-accent)) 22%, transparent);
    transform: scale(1.05);
}
.provider-region-checkbox { position: absolute; opacity: 0; pointer-events: none; }
.provider-region-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    padding: 0.58rem 0.75rem;
    border-radius: 0.75rem;
    background: var(--provider-filter-option-bg, color-mix(in srgb, var(--theme-surface-1), transparent 10%));
    color: var(--theme-text-muted);
    font-size: 0.82rem;
    font-weight: 600;
    transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}
.provider-region-option:hover {
    color: var(--theme-text-strong);
    background: var(--provider-filter-option-hover-bg, rgba(255, 255, 255, 0.08));
    transform: translateY(-1px);
}

/* Providers mobile filter sheet: force true full-width layout */
@media (max-width: 1023px) {
    .provider-index-theme-scope .mobile-filter-sheet {
        left: 0 !important;
        right: 0 !important;
        width: 100vw !important;
    }
    .provider-index-theme-scope .mobile-filter-panel {
        position: absolute;
        left: 0 !important;
        right: 0 !important;
        bottom: 0;
        width: 100vw !important;
        max-width: 100vw !important;
        margin: 0 !important;
        border-top-left-radius: 0 !important;
        border-top-right-radius: 0 !important;
    }
    .provider-index-theme-scope .mobile-filter-head,
    .provider-index-theme-scope .mobile-filter-form,
    .provider-index-theme-scope .mobile-filter-actions {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .provider-index-theme-scope .mobile-filter-form {
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }
    .provider-index-theme-scope .mobile-filter-actions {
        padding-left: 0.75rem !important;
        padding-right: 0.75rem !important;
    }
    .provider-index-theme-scope .mobile-filter-section,
    .provider-index-theme-scope .mobile-filter-section > div,
    .provider-index-theme-scope .mobile-filter-section .space-y-2,
    .provider-index-theme-scope .mobile-filter-section label,
    .provider-index-theme-scope .mobile-filter-section .provider-type-option {
        width: 100% !important;
        max-width: none !important;
    }
}

/* ============================================
   COMPONENT: Providers Light Theme Dark Text
   Source: resources/views/providers/*.blade.php
   ============================================ */
[data-site-theme="light"] .provider-index-theme-scope,
[data-site-theme="light"] .provider-index-theme-scope h1,
[data-site-theme="light"] .provider-index-theme-scope h2,
[data-site-theme="light"] .provider-index-theme-scope h3,
[data-site-theme="light"] .provider-index-theme-scope .text-white,
[data-site-theme="light"] .provider-index-theme-scope .text-slate-200,
[data-site-theme="light"] .provider-index-theme-scope .text-slate-300,
[data-site-theme="light"] .provider-index-theme-scope .text-slate-400 {
    color: #1f2937 !important;
}

[data-site-theme="light"] .provider-index-theme-scope .text-white\/56,
[data-site-theme="light"] .provider-index-theme-scope .text-white\/60,
[data-site-theme="light"] .provider-index-theme-scope .text-white\/70,
[data-site-theme="light"] .provider-index-theme-scope .text-white\/80 {
    color: #4b5563 !important;
}

[data-site-theme="light"] .provider-index-theme-scope .provider-filter-kicker {
    color: var(--color-brand-primary, #00120d) !important;
}

/* Company card – light theme */
[data-site-theme="light"] .provider-index-theme-scope .company-card {
    background: #ffffff !important;
    border-color: rgba(31, 63, 73, 0.1) !important;
    box-shadow: 0 1px 4px rgba(31, 63, 73, 0.06);
}
[data-site-theme="light"] .provider-index-theme-scope .company-card:hover {
    border-color: rgba(31, 63, 73, 0.3) !important;
    box-shadow: 0 4px 16px rgba(31, 63, 73, 0.1);
}
[data-site-theme="light"] .provider-index-theme-scope .company-card .text-white {
    color: #1f2937 !important;
}
[data-site-theme="light"] .provider-index-theme-scope .company-card .text-slate-300 {
    color: #475569 !important;
}
[data-site-theme="light"] .provider-index-theme-scope .company-card .border-white\/5 {
    border-color: rgba(31, 63, 73, 0.1) !important;
}
[data-site-theme="light"] .provider-index-theme-scope .company-card .bg-\[var\(--color-surface-card\)\]\/60 {
    background-color: rgba(241, 245, 249, 0.8) !important;
}
[data-site-theme="light"] .provider-index-theme-scope .company-card .border-white\/5 {
    border-color: rgba(31, 63, 73, 0.08) !important;
}

[data-site-theme="light"] body.provider-view-page,
[data-site-theme="light"] body.provider-view-page h1,
[data-site-theme="light"] body.provider-view-page h2,
[data-site-theme="light"] body.provider-view-page h3,
[data-site-theme="light"] body.provider-view-page .text-white,
[data-site-theme="light"] body.provider-view-page .text-slate-200,
[data-site-theme="light"] body.provider-view-page .text-slate-300,
[data-site-theme="light"] body.provider-view-page .text-slate-400 {
    color: #1f2937 !important;
}

[data-site-theme="light"] body.provider-view-page .text-white\/60,
[data-site-theme="light"] body.provider-view-page .text-white\/70,
[data-site-theme="light"] body.provider-view-page .text-white\/80 {
    color: #4b5563 !important;
}

/* ============================================
   COMPONENT: Provider View Page
   Source: resources/views/providers/view.blade.php
   ============================================ */
body.provider-view-page {
    font-family: 'Roboto', sans-serif;
    background-color: var(--theme-surface-0);
    color: var(--theme-text-main);
}

.provider-view-page .main-container {
    background-color: transparent;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.provider-view-page .lime-accent {
    color: var(--color-brand-accent);
}

.provider-view-page .bg-lime-accent {
    background-color: var(--color-brand-accent);
}

.provider-view-page .border-emerald-custom {
    border-color: var(--theme-border);
}

.provider-view-page .prose h2,
.provider-view-page .prose h3 {
    color: var(--color-text-main);
    font-weight: 700;
}

.provider-view-page .prose p {
    line-height: 1.8;
    color: var(--theme-text-muted);
}

/* Rich company text formatting (auto-structured content) */
.provider-view-page .company-rich-content {
    color: var(--theme-text-main);
}

.provider-view-page .company-rich-content .company-rich-heading {
    position: relative;
    margin: 1.25rem 0 0.6rem;
    padding-left: 0.8rem;
    font-family: 'Space Grotesk', 'Roboto', sans-serif;
    font-size: 1.3rem;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: 0.005em;
    color: var(--theme-text-strong) !important;
    text-shadow: 0 1px 0 rgba(0,0,0,0.12);
}

.provider-view-page .company-rich-content .company-rich-heading::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.2rem;
    bottom: 0.2rem;
    width: 4px;
    border-radius: 999px;
    background: var(--color-brand-accent);
    box-shadow: 0 0 14px color-mix(in srgb, var(--color-brand-accent), transparent 45%);
}

.provider-view-page .company-rich-content .company-rich-subhead {
    font-size: 0.92rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--color-brand-accent) !important;
}

.provider-view-page .company-rich-content .company-rich-paragraph {
    margin: 0.55rem 0;
    line-height: 1.75;
    color: var(--theme-text-main);
}

.provider-view-page .company-rich-content .company-rich-list {
    line-height: 1.7;
}

.provider-view-page .company-rich-content .company-rich-list li {
    color: var(--theme-text-main);
}

.provider-view-page .company-rich-content .company-rich-quote {
    background: color-mix(in srgb, var(--theme-overlay-soft), transparent 25%);
    border-radius: 0.5rem;
    padding: 0.75rem 0.9rem;
    color: var(--theme-text-muted);
}

/* Light-mode bridge for provider view page */
[data-site-theme="light"] .provider-theme-scope {
    --theme-surface-0: #ffffff;
    --theme-surface-1: #ffffff;
    --color-green-950: #ffffff;
    --color-green-900: #ffffff;
    --color-green-800: #ffffff;
    --color-surface-border: rgba(15, 23, 42, 0.12);
    --color-text-main: #1f3f49;
    --color-text-muted: #64748b;
    --color-text-dim: #94a3b8;
}

[data-site-theme="light"] body.provider-view-page,
[data-site-theme="light"] .provider-theme-scope {
    background-color: #ffffff !important;
}

[data-site-theme="light"] .provider-theme-scope .main-container {
    background-color: transparent !important;
}

/* Dark-mode guard for provider view page */
[data-site-theme="dark"] .provider-theme-scope {
    --theme-surface-0: #070B1A;
    --theme-surface-1: #11162A;
    --color-green-950: #070B1A;
    --color-green-900: #11162A;
    --color-green-800: #1A2140;
    --color-surface-border: rgba(255, 255, 255, 0.08);
    --color-text-main: #ffffff;
    --color-text-muted: rgba(225, 232, 255, 0.84);
    --color-text-dim: rgba(189, 203, 255, 0.66);
    --color-brand-accent: var(--header-dark-accent);
    --color-brand-accent-hover: var(--header-dark-accent-hover);
    --theme-btn-primary-bg: var(--header-dark-accent);
    --theme-btn-primary-hover-bg: var(--header-dark-accent-hover);
    --theme-btn-sponsored-bg: var(--header-dark-accent);
    --theme-btn-sponsored-hover-bg: var(--header-dark-accent-hover);
}

[data-site-theme="dark"] body.provider-view-page,
[data-site-theme="dark"] .provider-theme-scope {
    background-color: var(--theme-surface-0) !important;
}

[data-site-theme="dark"] .provider-theme-scope .main-container {
    background-color: transparent !important;
}

[data-site-theme="light"] .provider-theme-scope .text-white,
[data-site-theme="light"] .provider-theme-scope .text-slate-100,
[data-site-theme="light"] .provider-theme-scope .text-slate-200 {
    color: var(--theme-text-strong) !important;
}

[data-site-theme="light"] .provider-theme-scope .text-slate-300 {
    color: var(--theme-text-muted) !important;
}

.provider-view-page .inquiry-feedback {
    border-radius: 0.75rem;
    border-width: 1px;
    padding: 0.5rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 700;
}

.provider-view-page .inquiry-feedback-success {
    border-color: color-mix(in srgb, var(--header-dark-accent), transparent 60%);
    background-color: color-mix(in srgb, var(--header-dark-accent), transparent 86%);
}

.provider-view-page .inquiry-feedback-error {
    border-color: rgba(244, 63, 94, 0.35);
    background-color: rgba(244, 63, 94, 0.12);
}

[data-site-theme="light"] .provider-theme-scope .inquiry-feedback-success,
[data-site-theme="light"] .provider-theme-scope .inquiry-feedback-error {
    color: #0f172a;
}

[data-site-theme="dark"] .provider-theme-scope .inquiry-feedback-success,
[data-site-theme="dark"] .provider-theme-scope .inquiry-feedback-error {
    color: #f8fafc;
}

/* Provider view dark: force legacy lime/emerald accents to exact header CTA purple */
[data-site-theme="dark"] .provider-theme-scope .lime-accent,
[data-site-theme="dark"] body.provider-view-page .lime-accent,
[data-site-theme="dark"] .provider-theme-scope .text-lime-accent,
[data-site-theme="dark"] body.provider-view-page .text-lime-accent {
    color: var(--header-dark-accent) !important;
}

[data-site-theme="dark"] .provider-theme-scope .bg-lime-accent,
[data-site-theme="dark"] body.provider-view-page .bg-lime-accent {
    background-color: var(--header-dark-accent) !important;
    color: #f8fafc !important;
}

[data-site-theme="dark"] .provider-theme-scope .bg-lime-accent:hover,
[data-site-theme="dark"] body.provider-view-page .bg-lime-accent:hover {
    background-color: var(--header-dark-accent-hover) !important;
}

[data-site-theme="dark"] .provider-theme-scope .border-emerald-custom,
[data-site-theme="dark"] body.provider-view-page .border-emerald-custom {
    border-color: color-mix(in srgb, var(--header-dark-accent), transparent 68%) !important;
}

.provider-profile-layout {
    display: grid;
    gap: 1.5rem;
    padding: 1.5rem;
}

.provider-profile-content,
.provider-profile-sidebar {
    min-width: 0;
}

.provider-company-header {
    border-bottom: 0 !important;
}

.provider-cover-hero {
    min-height: clamp(260px, 34vw, 440px);
}

.provider-cover-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(10, 14, 30, 0.04) 0%, rgba(10, 14, 30, 0) 42%, color-mix(in srgb, var(--theme-surface-0), transparent 22%) 100%),
        linear-gradient(90deg, rgba(13, 18, 38, 0.38), rgba(13, 18, 38, 0.04) 48%, rgba(13, 18, 38, 0.24));
}

@media (min-width: 900px) {
    .provider-profile-layout {
        grid-template-columns: minmax(0, 65fr) minmax(0, 35fr);
        align-items: start;
    }
    .provider-profile-content {
        grid-column: 1;
    }
    .provider-profile-sidebar {
        grid-column: 2;
    }
}

body.provider-view-page .inquiry-login-btn {
    background: linear-gradient(135deg, var(--color-brand-accent), var(--color-brand-accent-hover)) !important;
    background-color: var(--color-brand-accent) !important;
    color: #ffffff !important;
    border: 1px solid color-mix(in srgb, var(--color-brand-accent-hover), transparent 55%);
    opacity: 1 !important;
    -webkit-text-fill-color: #ffffff;
}

body.provider-view-page .inquiry-login-btn:hover {
    color: #ffffff !important;
    filter: brightness(1.06);
}

[data-site-theme="dark"] body.provider-view-page .inquiry-login-btn {
    background: linear-gradient(135deg, #7C65F1, #B8A9F9) !important;
    background-color: #7C65F1 !important;
    border-color: color-mix(in srgb, #B8A9F9, transparent 35%) !important;
    color: #ffffff !important;
}
