/* ========================================
   MODERN CORPORATE BLUE & GOLD THEME
   Professional Color Palette for EventHotelBroker
   ======================================== */

:root {
    /* ===== PRIMARY COLORS (Blue) ===== */
    --primary-navy: #1a365d;
    --primary-blue: #2563eb;
    --primary-light: #3b82f6;
    --primary-lighter: #60a5fa;
    --primary-lightest: #dbeafe;
    --primary-dark: #1e3a8a;
    --primary-darker: #0f172a;
    
    /* ===== ACCENT COLORS (Gold) ===== */
    --accent-gold: #f59e0b;
    --accent-amber: #fbbf24;
    --accent-light: #fcd34d;
    --accent-lighter: #fef3c7;
    --accent-dark: #d97706;
    --accent-darker: #b45309;
    
    /* ===== NEUTRAL COLORS ===== */
    --text-primary: #1f2937;
    --text-secondary: #6b7280;
    --text-muted: #9ca3af;
    --text-light: #d1d5db;
    
    --background-white: #ffffff;
    --background-light: #f9fafb;
    --background-gray: #f3f4f6;
    --background-dark: #e5e7eb;
    
    --border-light: #e5e7eb;
    --border-medium: #d1d5db;
    --border-dark: #9ca3af;
    
    /* ===== STATUS COLORS ===== */
    --success: #10b981;
    --success-light: #34d399;
    --success-lighter: #d1fae5;
    --success-dark: #059669;
    
    --warning: #f59e0b;
    --warning-light: #fbbf24;
    --warning-lighter: #fef3c7;
    --warning-dark: #d97706;
    
    --danger: #ef4444;
    --danger-light: #f87171;
    --danger-lighter: #fee2e2;
    --danger-dark: #dc2626;
    
    --info: #3b82f6;
    --info-light: #60a5fa;
    --info-lighter: #dbeafe;
    --info-dark: #2563eb;
    
    /* ===== GRADIENTS ===== */
    --gradient-primary: linear-gradient(135deg, #1a365d 0%, #2563eb 100%);
    --gradient-primary-hover: linear-gradient(135deg, #0f172a 0%, #1e3a8a 100%);
    --gradient-accent: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);
    --gradient-accent-hover: linear-gradient(135deg, #d97706 0%, #f59e0b 100%);
    --gradient-success: linear-gradient(135deg, #10b981 0%, #34d399 100%);
    --gradient-info: linear-gradient(135deg, #3b82f6 0%, #60a5fa 100%);
    --gradient-subtle: linear-gradient(135deg, #dbeafe 0%, #f3f4f6 100%);
    --gradient-gold-shine: linear-gradient(135deg, #fbbf24 0%, #f59e0b 50%, #fbbf24 100%);
    
    /* ===== MODULE-SPECIFIC COLORS ===== */
    /* Hotels */
    --hotel-primary: #2563eb;
    --hotel-accent: #f59e0b;
    --hotel-gradient: linear-gradient(135deg, #1a365d 0%, #2563eb 100%);
    
    /* Events */
    --event-equipment: #6366f1;
    --event-package: #f59e0b;
    --event-gradient: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);
    
    /* Admin */
    --admin-primary: #1a365d;
    --admin-accent: #f59e0b;
    
    /* Owner */
    --owner-primary: #2563eb;
    --owner-accent: #10b981;
    
    /* ===== SHADOWS ===== */
    --shadow-sm: 0 1px 2px 0 rgba(26, 54, 93, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(26, 54, 93, 0.1), 0 2px 4px -1px rgba(26, 54, 93, 0.06);
    --shadow-lg: 0 10px 15px -3px rgba(26, 54, 93, 0.1), 0 4px 6px -2px rgba(26, 54, 93, 0.05);
    --shadow-xl: 0 20px 25px -5px rgba(26, 54, 93, 0.1), 0 10px 10px -5px rgba(26, 54, 93, 0.04);
    --shadow-2xl: 0 25px 50px -12px rgba(26, 54, 93, 0.25);
    --shadow-gold: 0 10px 30px -5px rgba(245, 158, 11, 0.3);
    --shadow-blue: 0 10px 30px -5px rgba(37, 99, 235, 0.3);
    
    /* ===== TRANSITIONS ===== */
    --transition-fast: 150ms ease-in-out;
    --transition-normal: 300ms ease-in-out;
    --transition-slow: 500ms ease-in-out;
    
    /* ===== BORDER RADIUS ===== */
    --radius-sm: 0.375rem;
    --radius-md: 0.5rem;
    --radius-lg: 0.75rem;
    --radius-xl: 1rem;
    --radius-2xl: 1.5rem;
    --radius-full: 9999px;
    
    /* ===== SPACING ===== */
    --spacing-xs: 0.25rem;
    --spacing-sm: 0.5rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-2xl: 3rem;
}

/* ===== DARK MODE VARIANTS ===== */
@media (prefers-color-scheme: dark) {
    :root {
        --text-primary: #f9fafb;
        --text-secondary: #d1d5db;
        --text-muted: #9ca3af;
        
        --background-white: #1f2937;
        --background-light: #111827;
        --background-gray: #374151;
        --background-dark: #4b5563;
        
        --border-light: #374151;
        --border-medium: #4b5563;
        --border-dark: #6b7280;
    }
}

/* ===== UTILITY CLASSES ===== */

/* Text Colors */
.text-primary { color: var(--primary-blue); }
.text-accent { color: var(--accent-gold); }
.text-success { color: var(--success); }
.text-warning { color: var(--warning); }
.text-danger { color: var(--danger); }
.text-info { color: var(--info); }
.text-muted { color: var(--text-muted); }

/* Background Colors */
.bg-primary { background-color: var(--primary-blue); }
.bg-accent { background-color: var(--accent-gold); }
.bg-success { background-color: var(--success); }
.bg-warning { background-color: var(--warning); }
.bg-danger { background-color: var(--danger); }
.bg-info { background-color: var(--info); }

/* Gradient Backgrounds */
.bg-gradient-primary { background: var(--gradient-primary); }
.bg-gradient-accent { background: var(--gradient-accent); }
.bg-gradient-success { background: var(--gradient-success); }
.bg-gradient-info { background: var(--gradient-info); }
.bg-gradient-subtle { background: var(--gradient-subtle); }

/* Border Colors */
.border-primary { border-color: var(--primary-blue); }
.border-accent { border-color: var(--accent-gold); }
.border-success { border-color: var(--success); }
.border-warning { border-color: var(--warning); }
.border-danger { border-color: var(--danger); }

/* Shadows */
.shadow-gold { box-shadow: var(--shadow-gold); }
.shadow-blue { box-shadow: var(--shadow-blue); }

/* Hover Effects */
.hover-lift {
    transition: transform var(--transition-normal), box-shadow var(--transition-normal);
}

.hover-lift:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-xl);
}

.hover-gold:hover {
    box-shadow: var(--shadow-gold);
}

.hover-blue:hover {
    box-shadow: var(--shadow-blue);
}
