:root {
  /* Theme Colors - Can be overridden by theme.js */
  --primary-color: var(--theme-primary-color, #9b8860);
  --secondary-color: var(--theme-secondary-color, #2c2c2c);
  --accent-color: var(--theme-accent-color, #d4af37);
  --background-color: var(--theme-background-color, #ffffff);
  --text-color: var(--theme-text-color, #333333);
  --text-light: var(--theme-text-light, #666666);
  --border-color: var(--theme-border-color, #dddddd);
  --success-color: var(--theme-success-color, #28a745);
  --error-color: var(--theme-error-color, #dc3545);
  --warning-color: var(--theme-warning-color, #ffc107);
  
  /* Legacy colors (for backward compatibility) */
  --text-dark: var(--text-color);
  --bg-light: #faf9f7;
  --bg-cream: #f5f3f0;
  --accent-gold: var(--accent-color);
  --accent-wine: #722f37;
  --accent-grape: #5a2d4a;
  --accent-plum: #6b3a52;
  --accent-purple: #8b4789;
  
  /* Typography - Can be overridden by theme.js */
  --font-family: var(--theme-font-family, 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
  --font-size-base: var(--theme-font-size-base, 16px);
  --line-height: var(--theme-line-height, 1.6);
  --font-size-h1: var(--theme-font-size-h1, 2.5rem);
  --font-size-h2: var(--theme-font-size-h2, 2rem);
  --font-size-h3: var(--theme-font-size-h3, 1.75rem);
  
  /* Legacy fonts */
  --font-display: 'Playfair Display', serif;
  --font-serif: 'Cormorant Garamond', serif;
  --font-sans: var(--font-family);
  
  /* Layout - Can be overridden by theme.js */
  --container-width: var(--theme-container-width, 1200px);
  --border-radius: var(--theme-border-radius, 8px);
  --box-shadow: var(--theme-box-shadow, 0 2px 8px rgba(0,0,0,0.1));
  --transition-speed: var(--theme-transition-speed, 0.3s);
  
  /* Legacy transitions and shadows */
  --transition: all var(--transition-speed) ease;
  --shadow-sm: 0 4px 15px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 20px 50px rgba(114, 47, 55, 0.25);
  --shadow-xl: 0 30px 80px rgba(90, 45, 74, 0.3);
  --glow-wine: 0 0 30px rgba(212, 175, 55, 0.2);
}
