/* Shared design tokens for site chrome + VDP/hub pages (copy of styles.css variables) */
:root {
  /* Brand Colors */
  --brand-primary: #1b8e2d;
  --brand-primary-rgb: 27, 142, 45;
  --brand-primary-light: #22a636;
  --brand-primary-dark: #156b22;

  /* Light Mode Colors */
  --bg-primary: #ffffff;
  --bg-secondary: #f8f9fa;
  --bg-tertiary: #f1f3f5;
  --text-primary: #1a1a1a;
  --text-secondary: #4a4a4a;
  --text-tertiary: #5a5a5a;
  --border-color: #e0e0e0;
  --shadow-color: rgba(0, 0, 0, 0.1);

  /* Enhanced Glassmorphism */
  --glass-bg: rgba(255, 255, 255, 0.75);
  --glass-bg-hover: rgba(255, 255, 255, 0.85);
  --glass-border: rgba(255, 255, 255, 0.3);
  --glass-border-hover: rgba(255, 255, 255, 0.4);
  --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.12),
    0 2px 8px rgba(0, 0, 0, 0.08);
  --glass-blur: blur(24px);
  --glass-blur-strong: blur(32px);

  /* Enhanced Typography */
  --font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
    sans-serif;
  --font-display: "Space Grotesk", var(--font-primary);

  /* Typography Scale - Improved Hierarchy */
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 1.875rem;
  --text-4xl: 2.25rem;
  --text-5xl: 3rem;
  --text-6xl: 3.75rem;

  /* Line Heights */
  --leading-tight: 1.2;
  --leading-snug: 1.375;
  --leading-normal: 1.6;
  --leading-relaxed: 1.75;

  /* Font Weights */
  --font-light: 300;
  --font-normal: 400;
  --font-medium: 500;
  --font-semibold: 600;
  --font-bold: 700;
  --font-extrabold: 800;

  /* Spacing Scale - Improved */
  --container-width: 1320px;
  --section-padding: 6rem;
  --section-padding-mobile: 3rem;
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-2xl: 3rem;
  --spacing-3xl: 4rem;
  --spacing-4xl: 6rem;

  /* Multi-Color Gradient System */
  --gradient-primary: linear-gradient(
    135deg,
    var(--brand-primary) 0%,
    #4caf50 50%,
    var(--brand-primary-light) 100%
  );
  --gradient-secondary: linear-gradient(
    135deg,
    rgba(var(--brand-primary-rgb), 0.1) 0%,
    rgba(var(--brand-primary-rgb), 0.05) 50%,
    rgba(var(--brand-primary-rgb), 0.1) 100%
  );
  --gradient-accent: linear-gradient(
    135deg,
    #22a636 0%,
    #1b8e2d 50%,
    #156b22 100%
  );
  --gradient-text: linear-gradient(
    135deg,
    var(--text-primary) 0%,
    var(--brand-primary) 50%,
    var(--text-primary) 100%
  );
  --gradient-overlay: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.1) 0%,
    rgba(255, 255, 255, 0.05) 50%,
    rgba(255, 255, 255, 0.1) 100%
  );

  /* Enhanced Shadow System - Layered for Depth */
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.12), 0 4px 8px rgba(0, 0, 0, 0.08);
  --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.15), 0 8px 16px rgba(0, 0, 0, 0.1);
  --shadow-brand: 0 8px 24px rgba(var(--brand-primary-rgb), 0.25),
    0 4px 8px rgba(var(--brand-primary-rgb), 0.15);
  --shadow-inset: inset 0 2px 4px rgba(0, 0, 0, 0.06);

  /* Transitions */
  --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-smooth: 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-bounce: 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);

  /* Z-index layers */
  --z-loading: 10000;
  --z-header: 1000;
  --z-sticky-cta: 999;
  --z-modal: 9999;
  --z-lightbox: 10020;
  /* Mobile drawer sits above page chrome but below cookie modal / lightbox */
  --z-mobile-nav-backdrop: 9400;
  --z-mobile-nav-header: 9500;
  --z-particles: -1;
}

/* Dark Mode Variables */
[data-theme="dark"] {
  --bg-primary: #0f1419;
  --bg-secondary: #1a1f2e;
  --bg-tertiary: #252b3b;
  --text-primary: #e8e8e8;
  --text-secondary: #b8b8b8;
  --text-tertiary: #888888;
  --border-color: #2a2a2a;
  --shadow-color: rgba(0, 0, 0, 0.3);

  --glass-bg: rgba(26, 31, 46, 0.75);
  --glass-bg-hover: rgba(26, 31, 46, 0.85);
  --glass-border: rgba(255, 255, 255, 0.15);
  --glass-border-hover: rgba(255, 255, 255, 0.25);
  --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4), 0 2px 8px rgba(0, 0, 0, 0.2);
}
