/* Blue Ocean Theme - Complete Variable Override */
:root {
  /* Primary Brand Colors */
  --tz-primary: #007aff;
  --tz-primary-rgb: 0, 122, 255;
  --tz-secondary: #4a90e2;
  --tz-secondary-rgb: 74, 144, 226;
  
  /* Extended Color Palette */
  --tz-blue: #007aff;
  --tz-indigo: #1e3a8a;
  --tz-purple: #6366f1;
  --tz-pink: #ec4899;
  --tz-red: #ef4444;
  --tz-orange: #f97316;
  --tz-yellow: #eab308;
  --tz-green: #22c55e;
  --tz-teal: #14b8a6;
  --tz-cyan: #06b6d4;
  
  /* Gray Scale */
  --tz-gray: #64748b;
  --tz-gray-dark: #1e293b;
  --tz-gray-100: #f1f5f9;
  --tz-gray-200: #e2e8f0;
  --tz-gray-300: #cbd5e1;
  --tz-gray-400: #94a3b8;
  --tz-gray-500: #64748b;
  --tz-gray-600: #475569;
  --tz-gray-700: #334155;
  --tz-gray-800: #1e293b;
  --tz-gray-900: #0f172a;
  
  /* Status Colors */
  --tz-success: #22c55e;
  --tz-info: #0ea5e9;
  --tz-warning: #f59e0b;
  --tz-danger: #ef4444;
  
  /* Background Colors */
  --tz-body-bg: #f0f9ff;
  --tz-body-color: #0f172a;
  --tz-secondary-bg: #ffffff;
  --tz-tertiary-bg: #e0f2fe;
  
  /* Text Colors */
  --tz-emphasis-color: #0f172a;
  --tz-secondary-color: rgba(15, 23, 42, 0.7);
  --tz-tertiary-color: rgba(15, 23, 42, 0.6);
  
  /* Link Colors */
  --tz-link-color: #007aff;
  --tz-link-hover-color: #0056cc;
  --tz-link-color-rgb: 0, 122, 255;
  --tz-link-hover-color-rgb: 0, 86, 204;
  
  /* Border Colors */
  --tz-border-color: rgba(0, 122, 255, 0.2);
  --tz-border-color-translucent: rgba(0, 122, 255, 0.15);
  
  /* Menu Colors */
  --tz-menu-bg: #ffffff;
  --tz-menu-item-color: #475569;
  --tz-menu-item-hover-color: #007aff;
  --tz-menu-item-active-color: #007aff;
  --tz-menu-item-active-bg: rgba(0, 122, 255, 0.1);
  --tz-menu-condensed-link-bg: #f8fafc;
  
  /* Topbar Colors */
  --tz-topbar-bg: #ffffff;
  --tz-topbar-item-color: #475569;
  --tz-topbar-item-hover-color: #007aff;
  --tz-topbar-search-bg: #f1f9ff;
  
  /* Subtle Background Colors */
  --tz-primary-bg-subtle: #dbeafe;
  --tz-secondary-bg-subtle: #f8fafc;
  --tz-success-bg-subtle: #dcfce7;
  --tz-info-bg-subtle: #e0f2fe;
  --tz-warning-bg-subtle: #fef3c7;
  --tz-danger-bg-subtle: #fef2f2;
  --tz-pink-bg-subtle: #fdf2f8;
  --tz-purple-bg-subtle: #f3f4f6;
  --tz-light-bg-subtle: #fefefe;
  --tz-dark-bg-subtle: #f1f5f9;
  
  /* Text Emphasis Colors */
  --tz-primary-text-emphasis: #1d4ed8;
  --tz-secondary-text-emphasis: #64748b;
  --tz-success-text-emphasis: #16a34a;
  --tz-info-text-emphasis: #0284c7;
  --tz-warning-text-emphasis: #d97706;
  --tz-danger-text-emphasis: #dc2626;
  --tz-pink-text-emphasis: #db2777;
  --tz-purple-text-emphasis: #7c3aed;
  --tz-light-text-emphasis: #64748b;
  --tz-dark-text-emphasis: #1e293b;
  
  /* Border Subtle Colors */
  --tz-primary-border-subtle: #93c5fd;
  --tz-secondary-border-subtle: #cbd5e1;
  --tz-success-border-subtle: #bbf7d0;
  --tz-info-border-subtle: #bae6fd;
  --tz-warning-border-subtle: #fde68a;
  --tz-danger-border-subtle: #fecaca;
  --tz-pink-border-subtle: #fbcfe8;
  --tz-purple-border-subtle: #ddd6fe;
  --tz-light-border-subtle: #e2e8f0;
  --tz-dark-border-subtle: #64748b;
  
  /* Shadow Colors */
  --tz-box-shadow: 0 4px 6px -1px rgba(0, 122, 255, 0.1);
  --tz-box-shadow-sm: 0 1px 2px 0 rgba(0, 122, 255, 0.05);
  --tz-box-shadow-lg: 0 10px 15px -3px rgba(0, 122, 255, 0.1);
  
  /* Form Colors */
  --tz-form-valid-color: #22c55e;
  --tz-form-valid-border-color: #22c55e;
  --tz-form-invalid-color: #ef4444;
  --tz-form-invalid-border-color: #ef4444;
  
  /* Gradients */
  --tz-gradient: linear-gradient(135deg, rgba(0, 122, 255, 0.1) 0%, rgba(74, 144, 226, 0.05) 100%);
  --tz-gradient-primary: linear-gradient(135deg, #007aff 0%, #4a90e2 100%);
  --tz-gradient-secondary: linear-gradient(135deg, #e0f2fe 0%, #f0f9ff 100%);
  --tz-gradient-accent: linear-gradient(135deg, #06b6d4 0%, #0ea5e9 100%);
  --tz-gradient-ocean: linear-gradient(135deg, #007aff 0%, #06b6d4 50%, #0ea5e9 100%);
}

/* Light Menu Override */
html[data-menu-color=light] {
  --tz-menu-bg: #ffffff;
  --tz-menu-item-color: #475569;
  --tz-menu-item-hover-color: #007aff;
  --tz-menu-item-active-color: #007aff;
  --tz-menu-item-active-bg: rgba(0, 122, 255, 0.08);
  --tz-menu-condensed-link-bg: #f8fafc;
}

/* Dark Menu Override */
html[data-menu-color=dark],
html[data-bs-theme=dark][data-menu-color=light] {
  --tz-menu-bg: #1e293b;
  --tz-menu-item-color: #e2e8f0;
  --tz-menu-item-hover-color: #60a5fa;
  --tz-menu-item-active-color: #60a5fa;
  --tz-menu-item-active-bg: rgba(96, 165, 250, 0.1);
  --tz-menu-condensed-link-bg: #334155;
}

/* Light Topbar Override */
html[data-topbar-color=light] {
  --tz-topbar-bg: #ffffff;
  --tz-topbar-item-color: #475569;
  --tz-topbar-item-hover-color: #007aff;
  --tz-topbar-search-bg: #f1f9ff;
}

/* Dark Topbar Override */
html[data-topbar-color=dark] {
  --tz-topbar-bg: #1e293b;
  --tz-topbar-item-color: #e2e8f0;
  --tz-topbar-item-hover-color: #60a5fa;
  --tz-topbar-search-bg: #334155;
}

/* Dark Mode Overrides for Blue Theme */
[data-bs-theme=dark] {
  color-scheme: dark;
  
  /* Main Background & Text */
  --tz-body-bg: #0f172a;
  --tz-body-color: #e2e8f0;
  --tz-body-color-rgb: 226, 232, 240;
  --tz-body-bg-rgb: 15, 23, 42;
  
  --tz-secondary-bg: #1e293b;
  --tz-secondary-bg-rgb: 30, 41, 59;
  --tz-tertiary-bg: #334155;
  --tz-tertiary-bg-rgb: 51, 65, 85;
  
  /* Text Colors */
  --tz-emphasis-color: #f8fafc;
  --tz-emphasis-color-rgb: 248, 250, 252;
  --tz-secondary-color: #cbd5e1;
  --tz-secondary-color-rgb: 203, 213, 225;
  --tz-tertiary-color: #94a3b8;
  --tz-tertiary-color-rgb: 148, 163, 184;
  
  /* Links */
  --tz-link-color: #60a5fa;
  --tz-link-hover-color: #3b82f6;
  --tz-link-color-rgb: 96, 165, 250;
  --tz-link-hover-color-rgb: 59, 130, 246;
  
  /* Borders */
  --tz-border-color: rgba(96, 165, 250, 0.2);
  --tz-border-color-translucent: rgba(96, 165, 250, 0.1);
  
  /* Subtle Backgrounds */
  --tz-primary-bg-subtle: rgba(59, 130, 246, 0.1);
  --tz-secondary-bg-subtle: rgba(148, 163, 184, 0.1);
  --tz-success-bg-subtle: rgba(34, 197, 94, 0.1);
  --tz-info-bg-subtle: rgba(14, 165, 233, 0.1);
  --tz-warning-bg-subtle: rgba(245, 158, 11, 0.1);
  --tz-danger-bg-subtle: rgba(239, 68, 68, 0.1);
  --tz-pink-bg-subtle: rgba(236, 72, 153, 0.1);
  --tz-purple-bg-subtle: rgba(124, 58, 237, 0.1);
  --tz-light-bg-subtle: rgba(148, 163, 184, 0.1);
  --tz-dark-bg-subtle: rgba(15, 23, 42, 0.1);
  
  /* Text Emphasis */
  --tz-primary-text-emphasis: #93c5fd;
  --tz-secondary-text-emphasis: #64748b;
  --tz-success-text-emphasis: #4ade80;
  --tz-info-text-emphasis: #38bdf8;
  --tz-warning-text-emphasis: #fbbf24;
  --tz-danger-text-emphasis: #f87171;
  --tz-pink-text-emphasis: #f472b6;
  --tz-purple-text-emphasis: #a78bfa;
  --tz-light-text-emphasis: #64748b;
  --tz-dark-text-emphasis: #cbd5e1;
  
  /* Border Subtle */
  --tz-primary-border-subtle: #1e40af;
  --tz-secondary-border-subtle: #475569;
  --tz-success-border-subtle: #166534;
  --tz-info-border-subtle: #075985;
  --tz-warning-border-subtle: #92400e;
  --tz-danger-border-subtle: #991b1b;
  --tz-pink-border-subtle: #be185d;
  --tz-purple-border-subtle: #6b21a8;
  --tz-light-border-subtle: #cbd5e1;
  --tz-dark-border-subtle: #1e293b;
  
  /* Shadows */
  --tz-box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3);
  --tz-box-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
  --tz-box-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.3);
  
  /* Forms */
  --tz-form-valid-color: #4ade80;
  --tz-form-valid-border-color: #4ade80;
  --tz-form-invalid-color: #f87171;
  --tz-form-invalid-border-color: #f87171;
  
  /* Code */
  --tz-code-color: #60a5fa;
  --tz-highlight-bg: rgba(245, 158, 11, 0.1);
}

/* Dark Mode Topbar & Menu Overrides */
html[data-bs-theme=dark][data-topbar-color=light],
html[data-bs-theme=dark][data-topbar-color=dark] {
  --tz-topbar-bg: #1e293b;
  --tz-topbar-item-color: #e2e8f0;
  --tz-topbar-item-hover-color: #60a5fa;
  --tz-topbar-search-bg: #334155;
}
