/* 
 * Blue & White Theme Override
 * Đảm bảo tông màu trắng-xanh dương nhất quán
 */

/* Primary Blue Colors */
:root {
    --primary-blue: #2563eb;
    --primary-blue-light: #3b82f6;
    --primary-blue-dark: #1d4ed8;
    --primary-blue-darker: #1e40af;
    --white: #ffffff;
    --blue-bg-light: rgba(37, 99, 235, 0.1);
    --blue-bg-medium: rgba(37, 99, 235, 0.2);
}

/* Service Icons - Blue background, White icons */
.service-icon {
    background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-light)) !important;
}

.service-icon::before {
    background: linear-gradient(135deg, var(--primary-blue-dark), var(--primary-blue)) !important;
}

.service-card:hover .service-icon {
    background: linear-gradient(135deg, var(--primary-blue-dark), var(--primary-blue)) !important;
    box-shadow: 0 10px 25px rgba(37, 99, 235, 0.4) !important;
}

.service-icon i {
    color: var(--white) !important;
}

/* Feature Icons - Blue background, White icons */
.feature i {
    color: var(--white) !important;
    background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-light)) !important;
}

.feature:hover i {
    color: var(--white) !important;
    background: linear-gradient(135deg, var(--primary-blue-dark), var(--primary-blue)) !important;
}

/* Contact Icons - Blue background, White icons */
.contact-item i {
    color: var(--white) !important;
    background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-light)) !important;
}

.contact-item:hover i {
    color: var(--white) !important;
    background: linear-gradient(135deg, var(--primary-blue-dark), var(--primary-blue)) !important;
}

/* Footer Icons - Blue color */
.footer-logo i,
.footer-section h4,
.footer-slogan,
.footer-section ul li i {
    color: var(--primary-blue) !important;
}

/* Navigation and other blue elements */
.nav-link:hover,
.btn-primary,
.lang-btn.active {
    color: var(--primary-blue) !important;
}

.btn-primary {
    background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-light)) !important;
    border: none !important;
}

.btn-primary:hover {
    background: linear-gradient(135deg, var(--primary-blue-dark), var(--primary-blue)) !important;
}

/* Ensure white backgrounds where needed */
.service-card,
.feature,
.contact-item {
    background: var(--white) !important;
}

/* Blue accents and borders */
.section-title::after,
.hero::before {
    background: var(--primary-blue) !important;
}

/* Override any conflicting colors */
.fas, .far, .fab {
    color: inherit !important;
}

/* Specific overrides for consistency - ALL ICONS WHITE ON BLUE */
.service-icon .fas,
.service-icon .far,
.service-icon .fab,
.contact-item .fas,
.contact-item .far,
.contact-item .fab,
.feature .fas,
.feature .far,
.feature .fab {
    color: var(--white) !important;
}

.contact-item:hover .fas,
.contact-item:hover .far,
.contact-item:hover .fab,
.feature:hover .fas,
.feature:hover .far,
.feature:hover .fab {
    color: var(--white) !important;
}

/* Footer icons */
.footer-logo .fas,
.footer-logo .far,
.footer-logo .fab,
.footer-section .fas,
.footer-section .far,
.footer-section .fab {
    color: var(--primary-blue) !important;
}

/* Language switcher */
.lang-btn.active {
    background: var(--primary-blue) !important;
    color: var(--white) !important;
}

/* Form elements */
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: var(--primary-blue) !important;
    box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.2) !important;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .service-icon {
        background: linear-gradient(135deg, var(--primary-blue), var(--primary-blue-light)) !important;
    }
    
    .service-icon i {
        color: var(--white) !important;
    }
}

/* High contrast mode */
@media (prefers-contrast: high) {
    .service-icon {
        background: var(--primary-blue-darker) !important;
    }
    
    .feature i,
    .contact-item i {
        color: var(--primary-blue-darker) !important;
    }
}

/* Print styles */
@media print {
    .service-icon,
    .feature i,
    .contact-item i {
        background: none !important;
        color: var(--primary-blue) !important;
    }
}