/* ===================================
   THEME SYSTEM
   Predefined color themes for the application
   =================================== */

/* Default Theme - "TheHouse" Orange Theme */
:root,
[data-theme='thehouse'] {
  /* Primary Brand Colors */
  --primary-color: #dd7200;
  --primary-hover: #aa4a00;
  --secondary-color: #aa4a00;
  --secondary-hover: #8a3800;

  /* Background Colors */
  --background-color: #707070;
  --card-background: #636363;
  --card-background-hover: #6e6e6e;

  /* Text Colors */
  --text-color: #fffafa;
  --text-secondary: #e0e0e0;
  --text-muted: #b0b0b0;
  --modal-text-color: #1a1a1a;

  /* UI Element Colors */
  --border-color: #ddd;
  --table-border-color: #ddd;
  --divider-color: rgba(255, 255, 255, 0.2);

  /* Status Colors */
  --success-color: #51cf66;
  --success-bg: #e8f5e9;
  --error-color: #ff6b6b;
  --error-bg: #ffebee;
  --warning-color: #f59e0b;
  --warning-bg: #fff3e0;
  --info-color: #3b82f6;
  --info-bg: #e3f2fd;

  /* Shadow System */
  --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);

  /* Spacing Scale */
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-2xl: 3rem;

  /* Border Radius */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 9999px;

  /* Transitions */
  --transition-fast: 150ms ease-in-out;
  --transition-base: 250ms ease-in-out;
  --transition-slow: 350ms ease-in-out;

  /* Z-Index Scale */
  --z-dropdown: 1000;
  --z-modal: 2000;
  --z-toast: 10000;
}

/* Ocean Theme - Blues and Teals */
[data-theme='ocean'] {
  --primary-color: #0ea5e9;
  --primary-hover: #0284c7;
  --secondary-color: #0284c7;
  --secondary-hover: #0369a1;

  --background-color: #0f172a;
  --card-background: #1e293b;
  --card-background-hover: #334155;

  --text-color: #f1f5f9;
  --text-secondary: #cbd5e1;
  --text-muted: #94a3b8;
}

/* Forest Theme - Greens and Earth Tones */
[data-theme='forest'] {
  --primary-color: #10b981;
  --primary-hover: #059669;
  --secondary-color: #059669;
  --secondary-hover: #047857;

  --background-color: #1a2e1a;
  --card-background: #2d4a2d;
  --card-background-hover: #3a5f3a;

  --text-color: #f0fdf4;
  --text-secondary: #d1fae5;
  --text-muted: #a7f3d0;
}

/* Sunset Theme - Purple and Pink */
[data-theme='sunset'] {
  --primary-color: #a855f7;
  --primary-hover: #9333ea;
  --secondary-color: #ec4899;
  --secondary-hover: #db2777;

  --background-color: #2e1a47;
  --card-background: #4a2d6b;
  --card-background-hover: #5c3a85;

  --text-color: #faf5ff;
  --text-secondary: #f3e8ff;
  --text-muted: #e9d5ff;
}

/* Midnight Theme - Dark Blues with High Contrast */
[data-theme='midnight'] {
  --primary-color: #60a5fa;
  --primary-hover: #3b82f6;
  --secondary-color: #3b82f6;
  --secondary-hover: #2563eb;

  --background-color: #0a0e1a;
  --card-background: #151b2e;
  --card-background-hover: #1f2937;

  --text-color: #ffffff;
  --text-secondary: #e5e7eb;
  --text-muted: #9ca3af;
}

/* Crimson Theme - Red and Dark Tones */
[data-theme='crimson'] {
  --primary-color: #dc2626;
  --primary-hover: #991b1b;
  --secondary-color: #991b1b;
  --secondary-hover: #7f1d1d;

  --background-color: #1a0a0a;
  --card-background: #450a0a;
  --card-background-hover: #5a1010;

  --text-color: #fef2f2;
  --text-secondary: #fee2e2;
  --text-muted: #fecaca;
}

/* Amber Theme - Warm Oranges and Yellows */
[data-theme='amber'] {
  --primary-color: #f59e0b;
  --primary-hover: #d97706;
  --secondary-color: #d97706;
  --secondary-hover: #b45309;

  --background-color: #1a1410;
  --card-background: #78350f;
  --card-background-hover: #92400e;

  --text-color: #fffbeb;
  --text-secondary: #fef3c7;
  --text-muted: #fde68a;
}

/* Emerald Theme - Bright Greens */
[data-theme='emerald'] {
  --primary-color: #34d399;
  --primary-hover: #10b981;
  --secondary-color: #10b981;
  --secondary-hover: #059669;

  --background-color: #0a1f1a;
  --card-background: #064e3b;
  --card-background-hover: #065f46;

  --text-color: #ecfdf5;
  --text-secondary: #d1fae5;
  --text-muted: #a7f3d0;
}

/* Violet Theme - Purple Hues */
[data-theme='violet'] {
  --primary-color: #8b5cf6;
  --primary-hover: #7c3aed;
  --secondary-color: #7c3aed;
  --secondary-hover: #6d28d9;

  --background-color: #1a0f2e;
  --card-background: #4c1d95;
  --card-background-hover: #5b21b6;

  --text-color: #faf5ff;
  --text-secondary: #f3e8ff;
  --text-muted: #e9d5ff;
}

/* Slate Theme - Gray and Blue-Gray */
[data-theme='slate'] {
  --primary-color: #64748b;
  --primary-hover: #475569;
  --secondary-color: #475569;
  --secondary-hover: #334155;

  --background-color: #0f172a;
  --card-background: #1e293b;
  --card-background-hover: #334155;

  --text-color: #f1f5f9;
  --text-secondary: #cbd5e1;
  --text-muted: #94a3b8;
}

/* Rose Theme - Pink and Red Tones */
[data-theme='rose'] {
  --primary-color: #f43f5e;
  --primary-hover: #e11d48;
  --secondary-color: #e11d48;
  --secondary-hover: #be123c;

  --background-color: #1f0a14;
  --card-background: #881337;
  --card-background-hover: #9f1239;

  --text-color: #fff1f2;
  --text-secondary: #ffe4e6;
  --text-muted: #fecdd3;
}

/* Theme Transition */
* {
  transition-property: background-color, border-color, color;
  transition-duration: var(--transition-base);
  transition-timing-function: ease-in-out;
}

/* Prevent transition on page load */
.preload * {
  transition: none !important;
}
