/* Accessibility Fixes for Color Contrast Issues */

/* Fix text-info color contrast - original #0dcaf0 fails WCAG AA */
.text-info {
    color: #0c7a91 !important; /* Darker teal for better contrast */
}

/* Fix text-warning color contrast - original #ffc107 fails WCAG AA */
.text-warning {
    color: #d39e00 !important; /* Darker yellow/orange for better contrast */
}

/* Fix text-primary color contrast issues */
.text-primary {
    color: #0056b3 !important; /* Darker blue for better contrast */
}

/* Fix btn-outline-info contrast issues */
.btn-outline-info {
    color: #0c7a91 !important;
    border-color: #0c7a91 !important;
}

.btn-outline-info:hover {
    background-color: #0c7a91 !important;
    border-color: #0c7a91 !important;
    color: #ffffff !important;
}

/* Fix editor-toolbar background contrast */
.editor-toolbar.bg-white {
    background-color: #f8f9fa !important; /* Lighter gray background */
    border: 1px solid #dee2e6 !important;
}

/* Ensure proper contrast for headings on gradient backgrounds */
.hero-section .h3.fw-bold.mb-2 {
    color: #ffffff !important; /* Ensure white text on gradient background */
    text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
}

.hero-section .mb-2 {
    color: #ffffff !important; /* Ensure white text on gradient background */
    text-shadow: 0 1px 2px rgba(0,0,0,0.3) !important;
}

/* Fix contrast for outline buttons on light backgrounds */
.btn-outline-secondary,
.btn-outline-primary,
.btn-outline-success,
.btn-outline-warning {
    border-width: 2px !important;
}

.btn-outline-secondary:hover,
.btn-outline-primary:hover,
.btn-outline-success:hover,
.btn-outline-warning:hover {
    color: #ffffff !important;
}

/* Ensure proper contrast for badges */
.badge.bg-light.text-dark {
    background-color: #e9ecef !important;
    color: #212529 !important;
    border: 1px solid #adb5bd !important;
}

/* Fix contrast for card elements */
.feature-card .text-muted {
    color: #495057 !important; /* Darker gray for better contrast */
}

/* Ensure proper contrast for form elements */
.form-control {
    border-color: #6c757d !important;
}

.form-control:focus {
    border-color: #0056b3 !important;
    box-shadow: 0 0 0 0.2rem rgba(0, 86, 179, 0.25) !important;
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .text-info {
        color: #004d61 !important;
    }
    
    .text-warning {
        color: #b8860b !important;
    }
    
    .text-primary {
        color: #003d80 !important;
    }
    
    .btn-outline-info {
        color: #004d61 !important;
        border-color: #004d61 !important;
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}