body.contrast {
    background-color: #000;
    color: #fff;
}

body.contrast a {
    color: #ffff00; /* Желтый для лучшей видимости */
    text-decoration: underline;
}

body.contrast .bg-light {
    background-color: #000 !important;
    border-bottom: 1px solid #ffff00;
}

body.contrast .text-dark {
    color: #ffff00 !important;
}

body.contrast .header-top-bar a {
    color: #ffff00 !important;
}

body.contrast .navbar {
    background: #000 !important;
    border-bottom: 1px solid #ffff00;
}

body.contrast .navbar-brand, body.contrast .nav-link {
    color: #ffff00 !important;
}

body.contrast .btn-primary {
    background-color: #000;
    color: #fff !important;
    border: 2px solid #fff;
}

body.contrast .btn-outline-dark {
    color: #ffff00;
    border-color: #ffff00;
}

body.contrast img {
    filter: grayscale(100%) contrast(200%);
}

body.contrast iframe[name="ya-form-6879fb37e010db0705e8f4ef"] {
    filter: invert(1) hue-rotate(180deg);
}

body.contrast .list-group-item,
body.contrast .card,
body.contrast .rounded {
    background-color: #000 !important;
    color: #fff !important;
    border-color: #fff !important;
}

body.contrast footer.bg-dark {
    background: var(--dark-text-color) !important;
    color: var(--light-text-color) !important;
}

body.contrast .documents-text a,
body.contrast .links-text a {
    color: #ffff00 !important;
    text-decoration: underline !important;
}

body.contrast .card-title.text-dark {
    color: #ffff00 !important;
}

body.contrast .card a, 
body.contrast .card a:hover {
    text-decoration: none;
}

body.contrast .banner-text-container * {
    color: #fff !important;
    /* Mobile-first: Force a uniform, readable font size on small screens in contrast mode. */
    font-size: 1em !important;
}

/* For laptops and larger screens, revert to the original font sizes for semantic tags (h2, p, etc.) */
@media (min-width: 769px) {
    body.contrast .banner-text-container * {
        font-size: revert;
    }
}

body.contrast .btn-yellow {
    background-color: #ffff00;
    color: #000;
    border: 2px solid #000;
}

/* Styles for therapist.html and diagnostics.html */
body.contrast .services-title h1,
body.contrast .symptoms-card h3,
body.contrast .text-primary {
    color: #ffff00 !important; /* Yellow for high contrast */
}

body.contrast .intro-text,
body.contrast .text-muted {
    color: #fff !important; /* White for better readability */
}

body.contrast .symptoms-list li::before {
    color: #ffff00 !important; /* Yellow checkmark */
}

body.contrast .specialist-card {
    background-color: #000 !important;
    border: 1px solid #fff !important;
}

body.contrast .price-table th,
body.contrast .price-table td {
    background-color: #000 !important;
    color: yellow !important;
    font-weight: bold;
    border-color: #444 !important;
}

body.contrast .price-table .table-hover > tbody > tr:hover > * {
    background-color: #1a1a1a !important;
    color: yellow !important;
}

body.contrast .price-table table td::before {
    color: yellow;
    font-weight: bold;
}


body.contrast .btn-outline-primary {
    color: #ffff00 !important;
    border-color: #ffff00 !important;
}

body.contrast .btn-outline-primary:hover {
    background-color: #ffff00;
    color: #000;
}

body.contrast .specialist-img-container {
    background-color: #111 !important;
}

body.contrast .collapse {
    border-top: 1px solid #fff;
}

body.contrast .card-footer {
    background-color: #1a1a1a !important;
}

body.contrast .list-group-item {
    border-bottom: 1px solid #333;
}

body.contrast .symptoms-card {
    border: 1px solid #fff;
}

/* Accessibility for Tabs */
body.contrast .nav-tabs {
    border-bottom-color: #ffff00;
}

body.contrast .nav-tabs .nav-link {
    color: #ffff00;
    border-color: transparent;
    background-color: #000;
}

body.contrast .nav-tabs .nav-link.active {
    color: #000;
    background-color: #ffff00;
    border-color: #ffff00;
}

body.contrast .tab-content {
    background-color: #000 !important;
    border: 1px solid #ffff00 !important;
    border-top: none !important;
}

body.contrast .tab-content .text-primary {
    color: #ffff00 !important;
}

body.contrast .tab-content p, 
body.contrast .tab-content li, 
body.contrast .tab-content {
    color: #fff !important;
}
