/**
 * Coastal Breeze Tours - Design Tokens
 * Dark slate & warm yellow luxury theme matching cbtchauffeurs.com.au
 */

:root {
  /* Default: Coastal Breeze Dark Theme */
  --theme-name: 'cbt-dark';
  --brand: #FDCB57;            /* CBT Warm Gold / Yellow */
  --brand-hover: #FFCD6A;
  --brand-active: #E5B746;
  --brand-light: #2D291F;
  --brand-contrast: #16181D;   /* Dark slate text on brand yellow */

  --surface-1: #16181D;        /* CBT Deep Slate Canvas */
  --surface-2: #21242A;        /* Elevated card / panel */
  --surface-3: #2D3135;        /* Dropdowns / inputs / chips */
  --surface-glass: rgba(22, 24, 29, 0.88);

  --text-1: #FFFFFF;           /* Crisp primary text */
  --text-2: #CCCCCC;           /* Secondary / subtitles */
  --text-3: #757B85;           /* Tertiary / placeholders / muted */

  --border-subtle: #41454A;    /* CBT subtle border */
  --border-strong: #4F5359;    /* CBT strong border */

  --success: #34D399;
  --success-bg: rgba(52, 211, 153, 0.12);
  --warning: #FDCB57;
  --warning-bg: rgba(253, 203, 87, 0.12);
  --danger: #F87171;
  --danger-bg: rgba(248, 113, 113, 0.12);
  --info: #60A5FA;
  --info-bg: rgba(96, 165, 250, 0.12);

  --font-heading: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-serif: 'Poppins', Georgia, serif;
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-num: 'Rubik', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-card: 18px;
  --radius-pill: 9999px;

  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.35);
  --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.45);
  --shadow-lg: 0 20px 48px rgba(0, 0, 0, 0.65);
  --shadow-drawer: -12px 0 40px rgba(0, 0, 0, 0.8);
  --shadow-glow: 0 0 24px rgba(253, 203, 87, 0.28);

  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-smooth: 350ms cubic-bezier(0.16, 1, 0.3, 1);
}

/* Light / Ivory Theme Option */
[data-theme="ivory"],
.theme-ivory {
  --theme-name: 'ivory';
  --brand: #C5A880;
  --brand-hover: #B3956B;
  --brand-active: #9E8158;
  --brand-light: #F7F3EC;
  --brand-contrast: #1A1918;

  --surface-1: #FBF9F5;
  --surface-2: #FFFFFF;
  --surface-3: #F4EFEB;
  --surface-glass: rgba(255, 255, 255, 0.82);

  --text-1: #1C1B1A;
  --text-2: #5E5B56;
  --text-3: #948F87;

  --border-subtle: rgba(28, 27, 26, 0.08);
  --border-strong: rgba(28, 27, 26, 0.16);

  --success: #1B7A43;
  --success-bg: #EAF6EE;
  --warning: #B7791F;
  --warning-bg: #FEF7E7;
  --danger: #C53030;
  --danger-bg: #FDF2F2;
  --info: #2B6CB0;
  --info-bg: #EBF4FC;

  --shadow-sm: 0 2px 8px rgba(28, 27, 26, 0.04);
  --shadow-md: 0 8px 24px rgba(28, 27, 26, 0.06);
  --shadow-lg: 0 16px 40px rgba(28, 27, 26, 0.09);
  --shadow-drawer: -8px 0 32px rgba(28, 27, 26, 0.12);
  --shadow-glow: 0 0 24px rgba(197, 168, 128, 0.28);
}

/* Accessibility: High contrast focus ring for WCAG 2.2 AA */
:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 3px;
}

/* Tabular numbers across prices, times, and counters */
.tabular-nums,
.price-value,
.time-value,
.stat-counter {
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}

/* Respect user's motion preference */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Responsive Light / Dark Mode Brand Logo */
.cbt-logo-dark {
  display: inline-block;
}
.cbt-logo-light {
  display: none !important;
}

[data-theme="ivory"] .cbt-logo-dark,
[data-theme="light"] .cbt-logo-dark,
[data-theme="cbt-light"] .cbt-logo-dark,
.theme-ivory .cbt-logo-dark {
  display: none !important;
}

[data-theme="ivory"] .cbt-logo-light,
[data-theme="light"] .cbt-logo-light,
[data-theme="cbt-light"] .cbt-logo-light,
.theme-ivory .cbt-logo-light {
  display: inline-block !important;
}

