/**
 * White-Blue-Pearl Theme
 * Global color scheme for L-NIR Travel System
 */

:root {
    /* Primary Colors - Blue Pearl Theme */
    --primary-blue: #4A90E2;
    --primary-blue-dark: #357ABD;
    --primary-blue-light: #7CB3E9;
    --pearl-white: #F8FBFF;
    --pearl-blue: #E8F4F8;
    --ocean-blue: #2196F3;
    --sky-blue: #64B5F6;
    --deep-blue: #1976D2;
    
    /* Gradients */
    --gradient-primary: linear-gradient(135deg, #4A90E2 0%, #64B5F6 100%);
    --gradient-light: linear-gradient(135deg, #F8FBFF 0%, #E8F4F8 100%);
    --gradient-ocean: linear-gradient(135deg, #2196F3 0%, #4A90E2 100%);
    --gradient-sky: linear-gradient(135deg, #64B5F6 0%, #90CAF9 100%);
    
    /* Background Colors */
    --bg-primary: #FFFFFF;
    --bg-secondary: #F8FBFF;
    --bg-tertiary: #E8F4F8;
    --bg-hover: #E3F2FD;
    
    /* Text Colors */
    --text-primary: #2C3E50;
    --text-secondary: #546E7A;
    --text-light: #78909C;
    --text-white: #FFFFFF;
    
    /* Button Colors */
    --btn-primary: var(--gradient-primary);
    --btn-secondary: var(--gradient-ocean);
    --btn-hover: var(--primary-blue-dark);
    
    /* Border Colors */
    --border-light: #E3F2FD;
    --border-medium: #BBDEFB;
    --border-dark: #90CAF9;
    
    /* Shadow */
    --shadow-sm: 0 2px 8px rgba(74, 144, 226, 0.1);
    --shadow-md: 0 4px 16px rgba(74, 144, 226, 0.15);
    --shadow-lg: 0 8px 32px rgba(74, 144, 226, 0.2);
    --shadow-xl: 0 12px 48px rgba(74, 144, 226, 0.25);
    
    /* Success, Warning, Danger */
    --success: #4CAF50;
    --warning: #FF9800;
    --danger: #F44336;
    --info: #2196F3;
}

/* Global Button Styles */
.btn-primary,
.btn-wizard-primary {
    background: var(--gradient-primary) !important;
    border: none !important;
    color: white !important;
    transition: all 0.3s ease !important;
}

.btn-primary:hover,
.btn-wizard-primary:hover {
    background: var(--gradient-ocean) !important;
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.btn-outline-primary {
    border-color: var(--primary-blue) !important;
    color: var(--primary-blue) !important;
}

.btn-outline-primary:hover {
    background: var(--primary-blue) !important;
    color: white !important;
}

/* Card Styles */
.card,
.info-card,
.review-card,
.place-card {
    background: white;
    border: 1px solid var(--border-light);
    box-shadow: var(--shadow-sm);
    transition: all 0.3s ease;
}

.card:hover,
.info-card:hover,
.review-card:hover {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

/* Headers and Titles */
.hero-section,
.review-header,
.page-header {
    background: var(--gradient-primary) !important;
}

/* Modern Navbar Brand Icon */
.modern-brand-icon {
    background: var(--gradient-primary) !important;
}

/* Links */
a.text-primary {
    color: var(--primary-blue) !important;
}

a.text-primary:hover {
    color: var(--primary-blue-dark) !important;
}

/* Badges */
.badge-primary,
.place-badge {
    background: var(--gradient-primary) !important;
}

/* Progress Bars */
.progress-bar {
    background: var(--gradient-primary) !important;
}

/* Forms */
.form-control:focus,
.form-select:focus {
    border-color: var(--primary-blue);
    box-shadow: 0 0 0 0.2rem rgba(74, 144, 226, 0.25);
}

/* Background Gradients */
.bg-gradient-primary {
    background: var(--gradient-primary) !important;
}

.bg-gradient-light {
    background: var(--gradient-light) !important;
}

/* Pearl White Backgrounds */
.bg-pearl {
    background: var(--pearl-white) !important;
}

.bg-pearl-blue {
    background: var(--pearl-blue) !important;
}

/* Text Colors */
.text-blue {
    color: var(--primary-blue) !important;
}

.text-ocean {
    color: var(--ocean-blue) !important;
}

/* Hover Effects */
.hover-lift {
    transition: all 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
}

/* Loading Spinners */
.spinner-border-primary {
    border-color: var(--primary-blue);
    border-right-color: transparent;
}

/* Modal Headers */
.modal-header {
    background: var(--gradient-primary);
    color: white;
}

/* Navigation Active States */
.nav-link.active {
    color: var(--primary-blue) !important;
    border-bottom-color: var(--primary-blue) !important;
}

/* Pagination */
.page-link {
    color: var(--primary-blue);
}

.page-link:hover {
    background: var(--primary-blue);
    color: white;
}

.page-item.active .page-link {
    background: var(--primary-blue);
    border-color: var(--primary-blue);
}

/* Alerts */
.alert-primary {
    background-color: var(--pearl-blue);
    border-color: var(--border-medium);
    color: var(--deep-blue);
}

/* Tables */
.table thead {
    background: var(--pearl-blue);
    color: var(--deep-blue);
}

/* Dropdown Menus */
.dropdown-item:hover {
    background: var(--bg-hover);
    color: var(--primary-blue);
}

/* Switches and Checkboxes */
.form-check-input:checked {
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
}

/* Range Sliders */
.form-range::-webkit-slider-thumb {
    background: var(--primary-blue);
}

.form-range::-moz-range-thumb {
    background: var(--primary-blue);
}

/* Tooltips */
.tooltip-inner {
    background: var(--primary-blue);
}

/* Popovers */
.popover-header {
    background: var(--pearl-blue);
    color: var(--deep-blue);
}

