@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&display=swap');

:root {
  /* Font Families */
  --font-title: 'Outfit', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* Color Palette (Warm Rose Gold / Luxury Dark Theme) */
  --primary-hue: 33;
  --primary-sat: 55%;
  --primary-light: 65%;
  
  --primary: hsl(var(--primary-hue), var(--primary-sat), var(--primary-light)); /* Rose Gold #D4A373 */
  --primary-hover: hsl(var(--primary-hue), var(--primary-sat), 55%);
  --primary-glow: hsla(var(--primary-hue), var(--primary-sat), var(--primary-light), 0.35);
  
  --secondary: #E6C097; /* Soft Champagne Gold */
  --accent: #FFD1DC; /* Delicate Blush Pink */
  
  /* Neutral Dark Modes */
  --bg-dark-100: #0d0d0d;
  --bg-dark-200: #121212;
  --bg-dark-300: #1a1a1a;
  --bg-dark-400: #242424;
  --bg-dark-glass: rgba(18, 18, 18, 0.75);
  
  /* Text Colors */
  --text-primary: #f5f5f7;
  --text-secondary: #a1a1a6;
  --text-muted: #86868b;
  --text-light: #ffffff;
  --text-dark: #121212;
  
  /* Feedback Colors */
  --success: #34c759;
  --error: #ff453a;
  --warning: #ff9f0a;

  /* Typography Scale */
  --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;

  /* Spacing Scale */
  --spacing-1: 0.25rem;
  --spacing-2: 0.5rem;
  --spacing-3: 0.75rem;
  --spacing-4: 1rem;
  --spacing-5: 1.25rem;
  --spacing-6: 1.5rem;
  --spacing-8: 2rem;
  --spacing-10: 2.5rem;
  --spacing-12: 3rem;
  --spacing-16: 4rem;
  --spacing-20: 5rem;
  --spacing-24: 6rem;

  /* Layout Boundaries */
  --max-width-site: 1280px;
  --max-width-reading: 680px;

  /* Borders & Radius */
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-full: 9999px;
  --border-light: rgba(255, 255, 255, 0.08);
  --border-glass: rgba(212, 163, 115, 0.15);

  /* Shadows */
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.5);
  --shadow-md: 0 8px 30px rgba(0, 0, 0, 0.6);
  --shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.8);
  --shadow-inset: inset 0 1px 1px rgba(255, 255, 255, 0.05);

  /* Transition Settings */
  --transition-fast: 0.2s cubic-bezier(0.25, 0.8, 0.25, 1);
  --transition-normal: 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  --transition-slow: 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);

  /* Z-Index Hierarchy */
  --z-back: -10;
  --z-normal: 1;
  --z-header: 100;
  --z-dropdown: 200;
  --z-modal: 500;
  --z-toast: 1000;
}

/* Accessibility Preferences Theme Hooks */
[data-accessibility-theme="contrast"] {
  --primary: #ffffff;
  --primary-hover: #ffd1dc;
  --secondary: #ffffff;
  --accent: #ffffff;
  --bg-dark-100: #000000;
  --bg-dark-200: #000000;
  --bg-dark-300: #111111;
  --bg-dark-400: #222222;
  --text-primary: #ffffff;
  --text-secondary: #ffffff;
  --text-muted: #dddddd;
  --border-light: rgba(255, 255, 255, 0.4);
  --border-glass: rgba(255, 255, 255, 0.6);
}

[data-accessibility-size="large"] {
  font-size: 115% !important;
}

[data-accessibility-size="xlarge"] {
  font-size: 130% !important;
}
