/* НА СІРИХ ФОНАХ - ТЕМНА ТЕМА = СВІТЛА ТЕМА */

/* Коли активний світлий фон - форсуємо стилі світлої теми */
body.light-background-active {
    color: #000000 !important;
}

body.light-background-active *:not(button):not(.btn):not(.logo-text) {
    color: #000000 !important;
}

/* Картки як в світлій темі */
body.light-background-active .vacancy-item,
body.light-background-active .specialist-item,
body.light-background-active .specialist-card {
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

/* Форми як в світлій темі */
body.light-background-active .section,
body.light-background-active .filter-section {
    background: rgba(255, 255, 255, 0.8) !important;
    color: #000000 !important;
}

/* Поля введення як в світлій темі */
body.light-background-active input,
body.light-background-active select,
body.light-background-active .filter-select {
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #d1d5db !important;
}

body.light-background-active .filter-select option {
    background: #ffffff !important;
    color: #000000 !important;
}

/* Кнопки залишаються яскравими (крім вкладок/іконок у auth-модалці) */
body.light-background-active button:not(.unified-modal-tab):not(.unified-modal-close):not(.unified-password-toggle),
body.light-background-active .btn {
    color: #ffffff !important;
}

/* Іконки синіми (крім сердечок обраного) */
body.light-background-active .fa:not(.fa-heart),
body.light-background-active .fas:not(.fa-heart),
body.light-background-active .far:not(.fa-heart),
body.light-background-active .fab {
    color: #3498db !important;
}

/* ПРИ СВІТЛИХ ФОНАХ (сірий/білий) - ВСІ ТЕМИ ПРАЦЮЮТЬ ОДНАКОВО */
/* Картки стають прозорими з ЧОРНИМ ТЕКСТОМ для обох тем */

body.light-background-active .vacancy-item,
body.light-background-active .specialist-card,
body.light-background-active .specialist-item,
body.light-background-active .favorite-item,
body.light-background-active .application-item {
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    color: #000000 !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08) !important;
}

/* Форсуємо чорний колір для всіх елементів в картках (іконки/сердечка — виняток) */
body.light-background-active .vacancy-item *:not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.favorite-btn):not(.vacancy-card-favorite):not(.specialist-card-favorite),
body.light-background-active .specialist-item *:not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.favorite-btn):not(.vacancy-card-favorite):not(.specialist-card-favorite) {
    color: #000000 !important;
}

/* Обрані: сердечка лишаються червоними / сірими, не чорніють і не синіють */
body.light-background-active .vacancy-card-favorite.active,
body.light-background-active .vacancy-card-favorite.active i,
body.light-background-active .vacancy-card-favorite.active .fa,
body.light-background-active .vacancy-card-favorite.active .fas,
body.light-background-active .vacancy-card-favorite.active .far,
body.light-background-active .specialist-card-favorite.active,
body.light-background-active .specialist-card-favorite.active i,
body.light-background-active .specialist-card-favorite.active .fa,
body.light-background-active .specialist-card-favorite.active .fas,
body.light-background-active .specialist-card-favorite.active .far,
body.light-background-active .favorite-btn.active i.fa-heart,
body.light-background-active .favorite-btn.active .fa-heart {
    color: #e74c3c !important;
    -webkit-text-fill-color: #e74c3c !important;
}

body.light-background-active .vacancy-card-favorite:not(.active),
body.light-background-active .vacancy-card-favorite:not(.active) i,
body.light-background-active .specialist-card-favorite:not(.active),
body.light-background-active .specialist-card-favorite:not(.active) i {
    color: #64748b !important;
    -webkit-text-fill-color: #64748b !important;
}

/* Секції також прозорі */
body.light-background-active .section,
body.light-background-active .filter-section,
body.light-background-active .filters-section,
body.light-background-active .specialists-header,
body.light-background-active .panel-section,
body.light-background-active .form-container {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
}

/* ВСІ ЗАГОЛОВКИ ЧОРНІ на світлих фонах */
body.light-background-active h1,
body.light-background-active h2,
body.light-background-active h3,
body.light-background-active h4,
body.light-background-active h5,
body.light-background-active h6,
body.light-background-active .specialist-info h3,
body.light-background-active .vacancy-item h3,
body.light-background-active .vacancy-item h4,
body.light-background-active .vacancy-title,
body.light-background-active .company-name,
body.light-background-active .job-title,
body.light-background-active .position-title,
body.light-background-active .employer-name,
body.light-background-active .company {
    color: #000000 !important;
    font-weight: 700 !important;
}

/* ВСІ ТЕКСТИ ЧОРНІ на світлих фонах */
body.light-background-active p,
body.light-background-active label,
body.light-background-active span,
body.light-background-active .specialist-name,
body.light-background-active .specialist-occupation,
body.light-background-active .specialist-location,
body.light-background-active .specialist-description,
body.light-background-active .detail,
body.light-background-active .vacancy-description,
body.light-background-active .vacancy-meta,
body.light-background-active .vacancy-date,
body.light-background-active .salary,
body.light-background-active .location,
body.light-background-active .company-info,
body.light-background-active .job-location,
body.light-background-active .job-salary,
body.light-background-active .job-description,
body.light-background-active .published-date,
body.light-background-active .category-name {
    color: #000000 !important;
    font-weight: 500 !important;
}

/* Іконки залишаються синіми для кращої видимості */
body.light-background-active .detail i:not(.fa-heart),
body.light-background-active .fas:not(.fa-heart),
body.light-background-active .far:not(.fa-heart),
body.light-background-active .fab,
body.light-background-active .fa:not(.fa-heart) {
    color: #3498db !important;
}

/* ПОЛЯ ВВЕДЕННЯ ТА СЕЛЕКТИ з чорним текстом */
body.light-background-active input,
body.light-background-active select,
body.light-background-active textarea,
body.light-background-active .filter-select {
    background: rgba(255, 255, 255, 0.95) !important;
    color: #000000 !important;
    border: 2px solid #d1d5db !important;
    font-weight: 400 !important;
}

body.light-background-active .filter-select option {
    background: #ffffff !important;
    color: #000000 !important;
}

/* НАЙПОТУЖНІШЕ ПРАВИЛО - форсуємо чорний текст */
body.light-background-active *:not(.btn):not(button):not(.fa):not(.fas):not(.far):not(.fab):not(.logo-text):not(.vacancy-card-favorite):not(.specialist-card-favorite):not(.favorite-btn) {
    color: #000000 !important;
}

/*
 * Модалки спеціаліста мають ВЛАСНИЙ темний/світлий фон.
 * Глобальний «чорний текст» тут ламає читабельність — відновлюємо кольори модалки.
 * Кольори кнопок карток НЕ змінюємо (лише гарантуємо білий текст поверх їхніх градієнтів).
 */
body.light-background-active:not(.light-theme) .specialist-info-modal-content,
body.light-background-active:not(.light-theme) .specialist-info-modal-content p,
body.light-background-active:not(.light-theme) .specialist-info-modal-content span,
body.light-background-active:not(.light-theme) .specialist-info-modal-content div,
body.light-background-active:not(.light-theme) .specialist-info-modal-content h2,
body.light-background-active:not(.light-theme) .specialist-info-modal-content h3,
body.light-background-active:not(.light-theme) .specialist-info-modal-content .detail-value,
body.light-background-active:not(.light-theme) .specialist-info-modal-content .specialist-description-large,
body.light-background-active:not(.light-theme) .specialist-info-modal-content .resume-filename,
body.light-background-active:not(.light-theme) .contact-specialist-modal .modal-content,
body.light-background-active:not(.light-theme) .contact-specialist-modal .modal-content p,
body.light-background-active:not(.light-theme) .contact-specialist-modal .modal-content span,
body.light-background-active:not(.light-theme) .contact-specialist-modal .modal-content div,
body.light-background-active:not(.light-theme) .contact-specialist-modal .modal-content h3,
body.light-background-active:not(.light-theme) .contact-specialist-modal .modal-content label {
    color: #ecf0f1 !important;
}

body.light-background-active:not(.light-theme) .specialist-info-modal-content .detail-label,
body.light-background-active:not(.light-theme) .specialist-info-modal-content .specialist-location-large,
body.light-background-active:not(.light-theme) .specialist-info-modal-content .resume-filesize,
body.light-background-active:not(.light-theme) .contact-specialist-modal .specialist-occupation,
body.light-background-active:not(.light-theme) .contact-specialist-modal .specialist-location {
    color: #bdc3c7 !important;
}

body.light-background-active:not(.light-theme) .specialist-info-modal-content .specialist-occupation-large,
body.light-background-active:not(.light-theme) .contact-specialist-modal .specialist-name {
    color: #5dade2 !important;
}

body.light-background-active:not(.light-theme) .specialist-info-modal-content i:not(.fa-heart),
body.light-background-active:not(.light-theme) .contact-specialist-modal i:not(.fa-heart) {
    color: #5dade2 !important;
}

/* Світла тема + світлий фон: темний текст у білій модалці (і видимий хрестик) */
body.light-theme.light-background-active .specialist-info-modal-content,
body.light-theme.light-background-active .specialist-info-modal-content p,
body.light-theme.light-background-active .specialist-info-modal-content span,
body.light-theme.light-background-active .specialist-info-modal-content h2,
body.light-theme.light-background-active .specialist-info-modal-content h3,
body.light-theme.light-background-active .specialist-info-modal-content .detail-value,
body.light-theme.light-background-active .specialist-info-modal-content .specialist-description-large {
    color: #2c3e50 !important;
}

body.light-theme.light-background-active .specialist-info-modal-content .detail-label {
    color: #6c757d !important;
}

body.light-theme .specialist-modal-close,
body.light-theme.light-background-active .specialist-modal-close {
    color: #2c3e50 !important;
    background: rgba(44, 62, 80, 0.08) !important;
}

body.light-theme .specialist-modal-close:hover,
body.light-theme.light-background-active .specialist-modal-close:hover {
    color: #e74c3c !important;
}

/* Виняток - кнопки: лише білий текст, БЕЗ зміни їхнього background/градієнта */
body.light-background-active .btn,
body.light-background-active .view-profile-btn,
body.light-background-active .contact-specialist-btn,
body.light-background-active .apply-btn,
body.light-background-active .create-vacancy-btn,
body.light-background-active .create-profile-btn,
body.light-background-active .reset-filters-btn {
    color: #ffffff !important;
    text-shadow: none !important;
}

body.light-background-active .detail i:not(.fa-heart),
body.light-background-active .fas:not(.fa-heart),
body.light-background-active .far:not(.fa-heart),
body.light-background-active .fab,
body.light-background-active .fa:not(.fa-heart) {
    color: #3498db !important;
}

/* Скіли та теги */
body.light-background-active .skill,
body.light-background-active .skill-tag {
    background: rgba(255, 255, 255, 0.8) !important;
    color: #000000 !important;
    border: 1px solid #ddd !important;
}

/*
 * РАНІШЕ тут було background:#3498db для всіх action-кнопок —
 * це збивало градієнти і давало «різкий» плоский колір + розмиття з text-shadow.
 * Background більше не форсуємо.
 */
body.light-background-active .view-profile-btn,
body.light-background-active .contact-specialist-btn,
body.light-background-active .create-profile-btn,
body.light-background-active .apply-btn {
    text-shadow: none !important;
    filter: none !important;
}

body.light-background-active .btn:hover,
body.light-background-active .view-profile-btn:hover,
body.light-background-active .contact-specialist-btn:hover,
body.light-background-active .apply-btn:hover {
    filter: none !important;
}

/* Форми фільтрів */
body.light-background-active .filters-section,
body.light-background-active .filter-section {
    background: none !important;
    border: none !important;
}

/* ГОЛОВНІ ЗАГОЛОВКИ СТОРІНОК - ЧОРНІ */
body.light-background-active .specialists-header h1,
body.light-background-active .vacancy-header h1,
body.light-background-active .page-title,
body.light-background-active .top-actions h2,
body.light-background-active .section h2,
body.light-background-active .vacancies-container h1,
body.light-background-active .container h1,
body.light-background-active .main-title {
    color: #000000 !important;
    font-weight: 800 !important;
}

/* Ховер ефекти */
body.light-background-active .vacancy-item:hover,
body.light-background-active .specialist-card:hover,
body.light-background-active .specialist-item:hover,
body.light-background-active .favorite-item:hover,
body.light-background-active .application-item:hover {
    background: #f8f9fa !important;
    border-color: #1a202c !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(26, 32, 44, 0.2) !important;
}

/* Заголовки та основний текст */
body.light-background-active .vacancy-item h3,
body.light-background-active .vacancy-item h4,
body.light-background-active .vacancy-item h2,
body.light-background-active .specialist-card .specialist-name,
body.light-background-active .specialist-card .specialist-occupation,
body.light-background-active .specialist-item .specialist-info h3,
body.light-background-active .specialist-item .specialist-occupation,
body.light-background-active .specialist-item h3,
body.light-background-active .vacancy-item .company-name,
body.light-background-active .vacancy-item .salary,
body.light-background-active .vacancy-item .job-title,
body.light-background-active .favorite-item h3,
body.light-background-active .application-item h3 {
    color: #1a202c !important;
    font-weight: 600 !important;
}

/* Вторинний текст */
body.light-background-active .vacancy-item p,
body.light-background-active .specialist-card p,
body.light-background-active .specialist-item p,
body.light-background-active .specialist-description,
body.light-background-active .specialist-details,
body.light-background-active .detail,
body.light-background-active .vacancy-description,
body.light-background-active .job-location,
body.light-background-active .job-type,
body.light-background-active .favorite-item p,
body.light-background-active .application-item p {
    color: #4a5568 !important;
}

/* Мета-інформація */
body.light-background-active .specialist-meta,
body.light-background-active .vacancy-meta,
body.light-background-active .published-date,
body.light-background-active .company-info,
body.light-background-active .application-date {
    color: #718096 !important;
}

/* Іконки (сердечка обраного — окремо, червоні/сірі) */
body.light-background-active .detail i:not(.fa-heart),
body.light-background-active .vacancy-item i:not(.fa-heart),
body.light-background-active .specialist-item i:not(.fa-heart),
body.light-background-active .fa:not(.fa-heart),
body.light-background-active .icon {
    color: #2d3748 !important;
}

/* Скіли та теги */
body.light-background-active .skill,
body.light-background-active .skill-tag,
body.light-background-active .category-badge,
body.light-background-active .tag {
    background: #e2e8f0 !important;
    color: #2d3748 !important;
    border: 1px solid #cbd5e0 !important;
    border-radius: 20px !important;
    padding: 4px 12px !important;
}

/* Кнопки в картках: не перефарбовувати градієнти — лише читабельний білий текст */
body.light-background-active .view-profile-btn,
body.light-background-active .contact-specialist-btn,
body.light-background-active .create-profile-btn,
body.light-background-active .vacancy-item .btn,
body.light-background-active .apply-btn,
body.light-background-active .view-btn {
    color: #ffffff !important;
    text-shadow: none !important;
}

body.light-background-active .favorite-btn:not(.specialist-card-favorite):not(.vacancy-card-favorite) {
    background: #3182ce !important;
    color: #ffffff !important;
    border: 1px solid #2c5282 !important;
    border-radius: 6px !important;
    padding: 8px 16px !important;
    font-weight: 500 !important;
}

body.light-background-active .view-profile-btn:hover,
body.light-background-active .contact-specialist-btn:hover,
body.light-background-active .create-profile-btn:hover,
body.light-background-active .vacancy-item .btn:hover,
body.light-background-active .apply-btn:hover,
body.light-background-active .view-btn:hover {
    color: #ffffff !important;
    text-shadow: none !important;
}

body.light-background-active .favorite-btn:not(.specialist-card-favorite):not(.vacancy-card-favorite):hover {
    background: #2c5282 !important;
    color: #ffffff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(44, 82, 130, 0.3) !important;
}

/* Кнопки видалення та небезпечні дії */
body.light-background-active .remove-favorite-btn,
body.light-background-active .delete-btn,
body.light-background-active .reject-btn {
    background: #e53e3e !important;
    color: #ffffff !important;
    border: 1px solid #c53030 !important;
}

body.light-background-active .remove-favorite-btn:hover,
body.light-background-active .delete-btn:hover,
body.light-background-active .reject-btn:hover {
    background: #c53030 !important;
    color: #ffffff !important;
}

/* Статуси */
body.light-background-active .status {
    border-radius: 20px !important;
    padding: 4px 12px !important;
    font-weight: 500 !important;
    font-size: 0.85rem !important;
}

body.light-background-active .status.pending {
    background: #fef5e7 !important;
    color: #744210 !important;
    border: 1px solid #f6e05e !important;
}

body.light-background-active .status.approved {
    background: #f0fff4 !important;
    color: #22543d !important;
    border: 1px solid #68d391 !important;
}

body.light-background-active .status.rejected {
    background: #fed7d7 !important;
    color: #742a2a !important;
    border: 1px solid #fc8181 !important;
}

/* Фільтри та форми при світлих фонах */
body.light-background-active .filter-section,
body.light-background-active .search-form {
    background: #f7fafc !important;
    border: 2px solid #e2e8f0 !important;
    color: #2d3748 !important;
}

body.light-background-active .form-control,
body.light-background-active .filter-select,
body.light-background-active input[type="text"],
body.light-background-active input[type="email"],
body.light-background-active textarea,
body.light-background-active select {
    background: #ffffff !important;
    border: 1px solid #cbd5e0 !important;
    color: #2d3748 !important;
}

body.light-background-active .form-control:focus,
body.light-background-active .filter-select:focus,
body.light-background-active input:focus,
body.light-background-active textarea:focus,
body.light-background-active select:focus {
    border-color: #3182ce !important;
    box-shadow: 0 0 0 3px rgba(49, 130, 206, 0.1) !important;
}

/* При світлій темі - форми та поля вводу без фонів */
body.light-theme.light-background-active .form-control,
body.light-theme.light-background-active .filter-select,
body.light-theme.light-background-active input[type="text"],
body.light-theme.light-background-active input[type="email"],
body.light-theme.light-background-active textarea,
body.light-theme.light-background-active select {
    background: #ffffff !important;
    border: 1px solid #cbd5e0 !important;
    color: #000000 !important;
}

/* При світлій темі - лейбли чорні */
body.light-theme.light-background-active label,
body.light-theme.light-background-active .form-group label {
    color: #000000 !important;
    font-weight: 600 !important;
}

/* Заголовки сторінок */
body.light-background-active .page-title,
body.light-background-active h1,
body.light-background-active h2 {
    color: #1a202c !important;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8) !important;
}

/* Підзаголовки та описи */
body.light-background-active .page-description,
body.light-background-active .section-description {
    color: #4a5568 !important;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.6) !important;
}

/* При світлій темі на світлих фонах - всі заголовки чорні */
body.light-theme.light-background-active h1,
body.light-theme.light-background-active h2,
body.light-theme.light-background-active h3,
body.light-theme.light-background-active h4,
body.light-theme.light-background-active .page-title,
body.light-theme.light-background-active .section-title,
body.light-theme.light-background-active .specialist-name,
body.light-theme.light-background-active .specialist-occupation,
body.light-theme.light-background-active .vacancy-item h3,
body.light-theme.light-background-active .company-name {
    color: #000000 !important;
    text-shadow: none !important;
    font-weight: 600 !important;
}

/* При світлій темі - всі описи та текст чорні */
body.light-theme.light-background-active p,
body.light-theme.light-background-active .page-description,
body.light-theme.light-background-active .section-description,
body.light-theme.light-background-active .specialist-description,
body.light-theme.light-background-active .specialist-details,
body.light-theme.light-background-active .detail,
body.light-theme.light-background-active .vacancy-description {
    color: #000000 !important;
    text-shadow: none !important;
}

/* При світлій темі - мета-інформація темно-сіра */
body.light-theme.light-background-active .specialist-meta,
body.light-theme.light-background-active .vacancy-meta,
body.light-theme.light-background-active .published-date,
body.light-theme.light-background-active .company-info {
    color: #333333 !important;
}

/* При світлій темі - іконки чорні (крім сердечок обраного) */
body.light-theme.light-background-active .detail i:not(.fa-heart),
body.light-theme.light-background-active .vacancy-item i:not(.fa-heart),
body.light-theme.light-background-active .specialist-item i:not(.fa-heart),
body.light-theme.light-background-active .fa:not(.fa-heart),
body.light-theme.light-background-active .icon {
    color: #000000 !important;
}

/* При світлій темі - скіли та теги з чорним текстом */
body.light-theme.light-background-active .skill,
body.light-theme.light-background-active .skill-tag,
body.light-theme.light-background-active .category-badge {
    background: #f8f9fa !important;
    color: #000000 !important;
    border: 1px solid #dee2e6 !important;
}

/* Пагінація */
body.light-background-active .pagination a,
body.light-background-active .pagination span {
    background: #ffffff !important;
    border: 1px solid #cbd5e0 !important;
    color: #2d3748 !important;
}

body.light-background-active .pagination a:hover,
body.light-background-active .pagination .current {
    background: #3182ce !important;
    color: #ffffff !important;
    border-color: #2c5282 !important;
}

/* При світлій темі - кнопки: білий текст, без примусового перефарбування background */
body.light-theme.light-background-active .view-profile-btn,
body.light-theme.light-background-active .contact-specialist-btn,
body.light-theme.light-background-active .apply-btn,
body.light-theme.light-background-active .create-vacancy-btn,
body.light-theme.light-background-active .create-profile-btn {
    color: #ffffff !important;
    text-shadow: none !important;
}

body.light-theme.light-background-active .view-profile-btn:hover,
body.light-theme.light-background-active .contact-specialist-btn:hover,
body.light-theme.light-background-active .apply-btn:hover,
body.light-theme.light-background-active .create-vacancy-btn:hover,
body.light-theme.light-background-active .create-profile-btn:hover {
    color: #ffffff !important;
}

/* При світлій темі - фільтри прозорі */
body.light-theme.light-background-active .reset-filters-btn {
    background: #e53e3e !important;
    color: #ffffff !important;
}

/* СПЕЦІАЛЬНІ СТИЛІ ДЛЯ СТОРІНКИ ВАКАНСІЙ В ТЕМНІЙ ТЕМІ З СІРИМИ ФОНАМИ */
/* Темна тема + сірі фони = білі картки з чорними рамками */
body.dark-theme.light-background-active .vacancy-item,
body.dark-theme[style*="f5f7fa"] .vacancy-item,
body.dark-theme[style*="c3cfe2"] .vacancy-item,
body.dark-theme[style*="e3ffe7"] .vacancy-item,
body.dark-theme[style*="d9e7ff"] .vacancy-item,
body.dark-theme[style*="e2e8f0"] .vacancy-item,
body.dark-theme[style*="cbd5e0"] .vacancy-item {
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08) !important;
    border-radius: 8px !important;
}

/* Секції та фільтри теж мають рамки */
body.dark-theme.light-background-active .section,
body.dark-theme[style*="f5f7fa"] .section,
body.dark-theme[style*="c3cfe2"] .section,
body.dark-theme[style*="e3ffe7"] .section,
body.dark-theme[style*="d9e7ff"] .section,
body.dark-theme[style*="e2e8f0"] .section,
body.dark-theme[style*="cbd5e0"] .section {
    background: rgba(255, 255, 255, 0.95) !important;
    color: #000000 !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08) !important;
    border-radius: 10px !important;
}

body.dark-theme.light-background-active .filter-section,
body.dark-theme[style*="f5f7fa"] .filter-section,
body.dark-theme[style*="c3cfe2"] .filter-section,
body.dark-theme[style*="e3ffe7"] .filter-section,
body.dark-theme[style*="d9e7ff"] .filter-section,
body.dark-theme[style*="e2e8f0"] .filter-section,
body.dark-theme[style*="cbd5e0"] .filter-section {
    background: rgba(255, 255, 255, 0.95) !important;
    color: #000000 !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08) !important;
    border-radius: 8px !important;
}

/* Поля пошуку ШІ також з рамками */
body.dark-theme.light-background-active .search-column,
body.dark-theme[style*="f5f7fa"] .search-column,
body.dark-theme[style*="c3cfe2"] .search-column,
body.dark-theme[style*="e3ffe7"] .search-column,
body.dark-theme[style*="d9e7ff"] .search-column,
body.dark-theme[style*="e2e8f0"] .search-column,
body.dark-theme[style*="cbd5e0"] .search-column {
    background: rgba(255, 255, 255, 0.95) !important;
    color: #000000 !important;
    border: 2px solid #333333 !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
    border-radius: 8px !important;
}

/* Текстареї з рамками */
body.dark-theme.light-background-active .job-description,
body.dark-theme.light-background-active .resume-summary,
body.dark-theme[style*="f5f7fa"] .job-description,
body.dark-theme[style*="f5f7fa"] .resume-summary,
body.dark-theme[style*="c3cfe2"] .job-description,
body.dark-theme[style*="c3cfe2"] .resume-summary,
body.dark-theme[style*="e3ffe7"] .job-description,
body.dark-theme[style*="e3ffe7"] .resume-summary,
body.dark-theme[style*="d9e7ff"] .job-description,
body.dark-theme[style*="d9e7ff"] .resume-summary,
body.dark-theme[style*="e2e8f0"] .job-description,
body.dark-theme[style*="e2e8f0"] .resume-summary,
body.dark-theme[style*="cbd5e0"] .job-description,
body.dark-theme[style*="cbd5e0"] .resume-summary {
    background: #ffffff !important;
    color: #000000 !important;
    border: 2px solid #333333 !important;
    border-radius: 5px !important;
}

/* Заголовки та тексти чорні */
body.dark-theme.light-background-active .vacancy-item h3,
body.dark-theme.light-background-active .vacancy-item .company-name,
body.dark-theme.light-background-active .vacancy-item p,
body.dark-theme.light-background-active .section h2,
body.dark-theme.light-background-active h1,
body.dark-theme.light-background-active h2,
body.dark-theme[style*="f5f7fa"] .vacancy-item h3,
body.dark-theme[style*="f5f7fa"] .vacancy-item .company-name,
body.dark-theme[style*="f5f7fa"] .vacancy-item p,
body.dark-theme[style*="f5f7fa"] .section h2,
body.dark-theme[style*="f5f7fa"] h1,
body.dark-theme[style*="f5f7fa"] h2,
body.dark-theme[style*="c3cfe2"] .vacancy-item h3,
body.dark-theme[style*="c3cfe2"] .vacancy-item .company-name,
body.dark-theme[style*="c3cfe2"] .vacancy-item p,
body.dark-theme[style*="c3cfe2"] .section h2,
body.dark-theme[style*="c3cfe2"] h1,
body.dark-theme[style*="c3cfe2"] h2,
body.dark-theme[style*="e3ffe7"] .vacancy-item h3,
body.dark-theme[style*="e3ffe7"] .vacancy-item .company-name,
body.dark-theme[style*="e3ffe7"] .vacancy-item p,
body.dark-theme[style*="e3ffe7"] .section h2,
body.dark-theme[style*="e3ffe7"] h1,
body.dark-theme[style*="e3ffe7"] h2,
body.dark-theme[style*="d9e7ff"] .vacancy-item h3,
body.dark-theme[style*="d9e7ff"] .vacancy-item .company-name,
body.dark-theme[style*="d9e7ff"] .vacancy-item p,
body.dark-theme[style*="d9e7ff"] .section h2,
body.dark-theme[style*="d9e7ff"] h1,
body.dark-theme[style*="d9e7ff"] h2,
body.dark-theme[style*="e2e8f0"] .vacancy-item h3,
body.dark-theme[style*="e2e8f0"] .vacancy-item .company-name,
body.dark-theme[style*="e2e8f0"] .vacancy-item p,
body.dark-theme[style*="e2e8f0"] .section h2,
body.dark-theme[style*="e2e8f0"] h1,
body.dark-theme[style*="e2e8f0"] h2,
body.dark-theme[style*="cbd5e0"] .vacancy-item h3,
body.dark-theme[style*="cbd5e0"] .vacancy-item .company-name,
body.dark-theme[style*="cbd5e0"] .vacancy-item p,
body.dark-theme[style*="cbd5e0"] .section h2,
body.dark-theme[style*="cbd5e0"] h1,
body.dark-theme[style*="cbd5e0"] h2 {
    color: #000000 !important;
    font-weight: 700 !important;
}

/* Метадані та дати */
body.dark-theme.light-background-active .vacancy-meta,
body.dark-theme.light-background-active .vacancy-date,
body.dark-theme[style*="f5f7fa"] .vacancy-meta,
body.dark-theme[style*="f5f7fa"] .vacancy-date,
body.dark-theme[style*="c3cfe2"] .vacancy-meta,
body.dark-theme[style*="c3cfe2"] .vacancy-date,
body.dark-theme[style*="e3ffe7"] .vacancy-meta,
body.dark-theme[style*="e3ffe7"] .vacancy-date,
body.dark-theme[style*="d9e7ff"] .vacancy-meta,
body.dark-theme[style*="d9e7ff"] .vacancy-date,
body.dark-theme[style*="e2e8f0"] .vacancy-meta,
body.dark-theme[style*="e2e8f0"] .vacancy-date,
body.dark-theme[style*="cbd5e0"] .vacancy-meta,
body.dark-theme[style*="cbd5e0"] .vacancy-date {
    color: #555555 !important;
    font-weight: 500 !important;
}

/* Поля введення та селекти з рамками */
body.dark-theme.light-background-active .filter-select,
body.dark-theme.light-background-active input,
body.dark-theme[style*="f5f7fa"] .filter-select,
body.dark-theme[style*="f5f7fa"] input,
body.dark-theme[style*="c3cfe2"] .filter-select,
body.dark-theme[style*="c3cfe2"] input,
body.dark-theme[style*="e3ffe7"] .filter-select,
body.dark-theme[style*="e3ffe7"] input,
body.dark-theme[style*="d9e7ff"] .filter-select,
body.dark-theme[style*="d9e7ff"] input,
body.dark-theme[style*="e2e8f0"] .filter-select,
body.dark-theme[style*="e2e8f0"] input,
body.dark-theme[style*="cbd5e0"] .filter-select,
body.dark-theme[style*="cbd5e0"] input {
    background: #ffffff !important;
    color: #000000 !important;
    border: 2px solid #333333 !important;
    border-radius: 5px !important;
}

/* Опції селектів */
body.dark-theme.light-background-active .filter-select option,
body.dark-theme[style*="f5f7fa"] .filter-select option,
body.dark-theme[style*="c3cfe2"] .filter-select option,
body.dark-theme[style*="e3ffe7"] .filter-select option,
body.dark-theme[style*="d9e7ff"] .filter-select option,
body.dark-theme[style*="e2e8f0"] .filter-select option,
body.dark-theme[style*="cbd5e0"] .filter-select option {
    background: #ffffff !important;
    color: #000000 !important;
}

/* Лейбли та тексти */
body.dark-theme.light-background-active label,
body.dark-theme.light-background-active span,
body.dark-theme[style*="f5f7fa"] label,
body.dark-theme[style*="f5f7fa"] span,
body.dark-theme[style*="c3cfe2"] label,
body.dark-theme[style*="c3cfe2"] span,
body.dark-theme[style*="e3ffe7"] label,
body.dark-theme[style*="e3ffe7"] span,
body.dark-theme[style*="d9e7ff"] label,
body.dark-theme[style*="d9e7ff"] span,
body.dark-theme[style*="e2e8f0"] label,
body.dark-theme[style*="e2e8f0"] span,
body.dark-theme[style*="cbd5e0"] label,
body.dark-theme[style*="cbd5e0"] span {
    color: #000000 !important;
    font-weight: 600 !important;
}

body.dark-theme.light-background-active label,
body.dark-theme.light-background-active span,
body.dark-theme.light-background-active p {
    color: #000000 !important;
    font-weight: 600 !important;
}

/* ДОДАТКОВІ ПОТУЖНІ ПРАВИЛА ДЛЯ ВАКАНСІЙ НА СВІТЛИХ ФОНАХ */

/* Універсальне правило для всіх світлих фонів - карточки вакансій */
body[style*="f5f7fa"] .vacancy-item,
body[style*="c3cfe2"] .vacancy-item,
body[style*="e3ffe7"] .vacancy-item,
body[style*="d9e7ff"] .vacancy-item,
body[style*="ffffff"] .vacancy-item,
body[style*="e2e8f0"] .vacancy-item,
body[style*="cbd5e0"] .vacancy-item,
body.light-background-active .vacancy-item {
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.08) !important;
    color: #000000 !important;
}

/* Заголовки вакансій */
body[style*="f5f7fa"] .vacancy-item h3,
body[style*="c3cfe2"] .vacancy-item h3,
body[style*="e3ffe7"] .vacancy-item h3,
body[style*="d9e7ff"] .vacancy-item h3,
body[style*="ffffff"] .vacancy-item h3,
body[style*="e2e8f0"] .vacancy-item h3,
body[style*="cbd5e0"] .vacancy-item h3,
body.light-background-active .vacancy-item h3 {
    color: #000000 !important;
    font-weight: 800 !important;
    text-shadow: none !important;
}

/* Назви компаній */
body[style*="f5f7fa"] .vacancy-item .company-name,
body[style*="c3cfe2"] .vacancy-item .company-name,
body[style*="e3ffe7"] .vacancy-item .company-name,
body[style*="d9e7ff"] .vacancy-item .company-name,
body[style*="ffffff"] .vacancy-item .company-name,
body[style*="e2e8f0"] .vacancy-item .company-name,
body[style*="cbd5e0"] .vacancy-item .company-name,
body.light-background-active .vacancy-item .company-name {
    color: #1d4ed8 !important;
    font-weight: 700 !important;
}

/* Весь текст в картках вакансій */
body[style*="f5f7fa"] .vacancy-item p,
body[style*="c3cfe2"] .vacancy-item p,
body[style*="e3ffe7"] .vacancy-item p,
body[style*="d9e7ff"] .vacancy-item p,
body[style*="ffffff"] .vacancy-item p,
body[style*="e2e8f0"] .vacancy-item p,
body[style*="cbd5e0"] .vacancy-item p,
body.light-background-active .vacancy-item p,
body[style*="f5f7fa"] .vacancy-item span,
body[style*="c3cfe2"] .vacancy-item span,
body[style*="e3ffe7"] .vacancy-item span,
body[style*="d9e7ff"] .vacancy-item span,
body[style*="ffffff"] .vacancy-item span,
body[style*="e2e8f0"] .vacancy-item span,
body[style*="cbd5e0"] .vacancy-item span,
body.light-background-active .vacancy-item span,
body[style*="f5f7fa"] .vacancy-meta,
body[style*="c3cfe2"] .vacancy-meta,
body[style*="e3ffe7"] .vacancy-meta,
body[style*="d9e7ff"] .vacancy-meta,
body[style*="ffffff"] .vacancy-meta,
body[style*="e2e8f0"] .vacancy-meta,
body[style*="cbd5e0"] .vacancy-meta,
body.light-background-active .vacancy-meta,
body[style*="f5f7fa"] .vacancy-date,
body[style*="c3cfe2"] .vacancy-date,
body[style*="e3ffe7"] .vacancy-date,
body[style*="d9e7ff"] .vacancy-date,
body[style*="ffffff"] .vacancy-date,
body[style*="e2e8f0"] .vacancy-date,
body[style*="cbd5e0"] .vacancy-date,
body.light-background-active .vacancy-date {
    color: #374151 !important;
    font-weight: 500 !important;
}

/* Заголовки сторінки вакансій */
body[style*="f5f7fa"] h1,
body[style*="c3cfe2"] h1,
body[style*="e3ffe7"] h1,
body[style*="d9e7ff"] h1,
body[style*="ffffff"] h1,
body[style*="e2e8f0"] h1,
body[style*="cbd5e0"] h1,
body.light-background-active h1,
body[style*="f5f7fa"] h2,
body[style*="c3cfe2"] h2,
body[style*="e3ffe7"] h2,
body[style*="d9e7ff"] h2,
body[style*="ffffff"] h2,
body[style*="e2e8f0"] h2,
body[style*="cbd5e0"] h2,
body.light-background-active h2 {
    color: #000000 !important;
    font-weight: 800 !important;
    text-shadow: none !important;
}

/* Секції фільтрів та основні секції */
body[style*="f5f7fa"] .filter-section,
body[style*="c3cfe2"] .filter-section,
body[style*="e3ffe7"] .filter-section,
body[style*="d9e7ff"] .filter-section,
body[style*="ffffff"] .filter-section,
body[style*="e2e8f0"] .filter-section,
body[style*="cbd5e0"] .filter-section,
body.light-background-active .filter-section,
body[style*="f5f7fa"] .section,
body[style*="c3cfe2"] .section,
body[style*="e3ffe7"] .section,
body[style*="d9e7ff"] .section,
body[style*="ffffff"] .section,
body[style*="e2e8f0"] .section,
body[style*="cbd5e0"] .section,
body.light-background-active .section {
    background: rgba(255, 255, 255, 0.9) !important;
    border: 2px solid #000000 !important;
    color: #000000 !important;
}

/* Найвищий пріоритет для всіх текстових елементів на світлих фонах */
body[style*="f5f7fa"] *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="c3cfe2"] *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="e3ffe7"] *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="d9e7ff"] *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="ffffff"] *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="e2e8f0"] *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="cbd5e0"] *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text) {
    color: #000000 !important;
}

/*
 * Header / footer chrome: blanket `* :not(.btn):not(.fa)...` має ВИЩУ специфічність,
 * ніж звичайні `header nav a` — тому дублюємо той самий ланцюг :not(), щоб перебити чорний текст.
 */
body.light-background-active header *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body.light-background-active header button,
body.light-background-active header .btn,
body.light-background-active header .change-bg-button,
body.light-background-active header .auth-main-btn,
body.light-background-active header .language-btn,
body.light-background-active header .hamburger,
body[style*="f5f7fa"] header *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="c3cfe2"] header *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="e3ffe7"] header *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="d9e7ff"] header *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="ffffff"] header *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="e2e8f0"] header *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="cbd5e0"] header *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i):not(.logo-text),
body[style*="f5f7fa"] header button,
body[style*="c3cfe2"] header button,
body[style*="ffffff"] header button,
body[style*="e2e8f0"] header button,
body[style*="cbd5e0"] header button {
    color: #ffffff !important;
}

body.light-background-active header .logo-text,
body.light-background-active header .logo .logo-text,
body.light-background-active header .logo-container .logo-text,
body[style*="f5f7fa"] header .logo-text,
body[style*="c3cfe2"] header .logo-text,
body[style*="e3ffe7"] header .logo-text,
body[style*="d9e7ff"] header .logo-text,
body[style*="ffffff"] header .logo-text,
body[style*="e2e8f0"] header .logo-text,
body[style*="cbd5e0"] header .logo-text {
    color: #2ecc71 !important;
    -webkit-text-fill-color: #2ecc71 !important;
    text-shadow: 0 0 8px rgba(46, 204, 113, 0.3) !important;
}

body.light-background-active header nav a:hover,
body.light-background-active header nav a.active,
body[style*="f5f7fa"] header nav a:hover,
body[style*="f5f7fa"] header nav a.active,
body[style*="c3cfe2"] header nav a:hover,
body[style*="c3cfe2"] header nav a.active,
body[style*="ffffff"] header nav a:hover,
body[style*="ffffff"] header nav a.active,
body[style*="e2e8f0"] header nav a:hover,
body[style*="e2e8f0"] header nav a.active,
body[style*="cbd5e0"] header nav a:hover,
body[style*="cbd5e0"] header nav a.active {
    color: #e2e8f0 !important;
}

/* Темна тема + світлий фон сторінки: footer темний — світлий текст (не чорний!) */
body.light-background-active:not(.light-theme) footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-background-active:not(.light-theme) footer.site-footer,
body.light-background-active:not(.light-theme) footer.site-footer button,
body.light-background-active:not(.light-theme) footer.site-footer .footer-toggle,
body:not(.light-theme)[style*="f5f7fa"] footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="c3cfe2"] footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="e3ffe7"] footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="d9e7ff"] footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="ffffff"] footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="e2e8f0"] footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="cbd5e0"] footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i) {
    color: #ffffff !important;
    opacity: 1 !important;
}

body.light-background-active:not(.light-theme) footer.site-footer a,
body.light-background-active:not(.light-theme) footer.site-footer a *:not(i),
body:not(.light-theme)[style*="f5f7fa"] footer.site-footer a,
body:not(.light-theme)[style*="c3cfe2"] footer.site-footer a,
body:not(.light-theme)[style*="ffffff"] footer.site-footer a,
body:not(.light-theme)[style*="e2e8f0"] footer.site-footer a,
body:not(.light-theme)[style*="cbd5e0"] footer.site-footer a {
    color: #7dd3fc !important;
}

body.light-background-active:not(.light-theme) footer.site-footer a:hover,
body:not(.light-theme)[style*="f5f7fa"] footer.site-footer a:hover,
body:not(.light-theme)[style*="c3cfe2"] footer.site-footer a:hover,
body:not(.light-theme)[style*="ffffff"] footer.site-footer a:hover,
body:not(.light-theme)[style*="e2e8f0"] footer.site-footer a:hover,
body:not(.light-theme)[style*="cbd5e0"] footer.site-footer a:hover {
    color: #bae6fd !important;
}

/* Світла тема: footer світлий — темний текст */
body.light-theme.light-background-active footer.site-footer *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme.light-background-active footer.site-footer,
body.light-theme.light-background-active footer.site-footer a,
body.light-theme.light-background-active footer.site-footer .footer-toggle {
    color: #1f2937 !important;
    opacity: 1 !important;
}

/* Мобільне меню — як на index:
   темна тема → сірий градієнт + білий текст;
   світла тема → біла стрічка + темний текст */
body.light-background-active:not(.light-theme) .mobile-menu,
body:not(.light-theme)[style*="ffffff"] .mobile-menu,
body:not(.light-theme)[style*="e2e8f0"] .mobile-menu,
body:not(.light-theme)[style*="cbd5e0"] .mobile-menu {
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%) !important;
}

body.light-theme.light-background-active .mobile-menu,
body.light-theme[style*="ffffff"] .mobile-menu,
body.light-theme[style*="e2e8f0"] .mobile-menu,
body.light-theme[style*="cbd5e0"] .mobile-menu {
    background: rgba(255, 255, 255, 0.98) !important;
    background-color: rgba(255, 255, 255, 0.98) !important;
    border-left: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15) !important;
}

body.light-background-active:not(.light-theme) .mobile-menu *:not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-background-active:not(.light-theme) .mobile-menu a,
body.light-background-active:not(.light-theme) .mobile-menu button,
body:not(.light-theme)[style*="ffffff"] .mobile-menu *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="e2e8f0"] .mobile-menu *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="cbd5e0"] .mobile-menu *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body:not(.light-theme)[style*="ffffff"] .mobile-menu a,
body:not(.light-theme)[style*="e2e8f0"] .mobile-menu a,
body:not(.light-theme)[style*="cbd5e0"] .mobile-menu a,
body:not(.light-theme)[style*="ffffff"] .mobile-menu button,
body:not(.light-theme)[style*="e2e8f0"] .mobile-menu button,
body:not(.light-theme)[style*="cbd5e0"] .mobile-menu button {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

body.light-theme.light-background-active .mobile-menu *:not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme.light-background-active .mobile-menu a,
body.light-theme.light-background-active .mobile-menu button,
body.light-theme.light-background-active .mobile-menu ul li a,
body.light-theme[style*="ffffff"] .mobile-menu *:not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme[style*="e2e8f0"] .mobile-menu *:not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme[style*="cbd5e0"] .mobile-menu *:not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme[style*="ffffff"] .mobile-menu a,
body.light-theme[style*="e2e8f0"] .mobile-menu a,
body.light-theme[style*="cbd5e0"] .mobile-menu a,
body.light-theme[style*="ffffff"] .mobile-menu button,
body.light-theme[style*="e2e8f0"] .mobile-menu button,
body.light-theme[style*="cbd5e0"] .mobile-menu button {
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

body.light-theme.light-background-active .mobile-menu button,
body.light-theme[style*="ffffff"] .mobile-menu button,
body.light-theme[style*="e2e8f0"] .mobile-menu button,
body.light-theme[style*="cbd5e0"] .mobile-menu button {
    background: rgba(0, 0, 0, 0.04) !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
}

/* Світла тема: випадаючий список мов — темний текст на білій панелі (не білий!) */
body.light-theme.light-background-active header .language-flags,
body.light-theme.light-background-active header .language-flags *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme.light-background-active header .language-option,
body.light-theme.light-background-active header .flag-label,
body.light-theme[style*="ffffff"] header .language-flags *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme[style*="e2e8f0"] header .language-flags *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme[style*="cbd5e0"] header .language-flags *:not(button):not(.btn):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-theme[style*="ffffff"] header .flag-label,
body.light-theme[style*="e2e8f0"] header .flag-label,
body.light-theme[style*="cbd5e0"] header .flag-label {
    color: #1e293b !important;
}

body.light-theme.light-background-active header .language-flags,
body.light-theme[style*="ffffff"] header .language-flags,
body.light-theme[style*="e2e8f0"] header .language-flags,
body.light-theme[style*="cbd5e0"] header .language-flags {
    background: #ffffff !important;
    border-color: #d1d5db !important;
}

/* Copyright / footer text weight — як на інших сторінках */
body.light-background-active footer.site-footer p,
body.light-background-active footer.site-footer .footer-main p,
body.light-background-active footer.site-footer .footer-bottom p,
body.light-background-active footer.site-footer [data-lang-key],
body[style*="ffffff"] footer.site-footer p,
body[style*="e2e8f0"] footer.site-footer p,
body[style*="cbd5e0"] footer.site-footer p {
    font-weight: 400 !important;
}

body.light-background-active:not(.light-theme) footer.site-footer .footer-main p,
body.light-background-active:not(.light-theme) footer.site-footer .footer-bottom p,
body.light-background-active:not(.light-theme) footer.site-footer [data-lang-key="copyright"],
body.light-background-active:not(.light-theme) footer.site-footer [data-lang-key="all_rights_reserved"],
body:not(.light-theme)[style*="ffffff"] footer.site-footer .footer-main p,
body:not(.light-theme)[style*="e2e8f0"] footer.site-footer .footer-main p,
body:not(.light-theme)[style*="cbd5e0"] footer.site-footer .footer-main p {
    color: #f8fafc !important;
    opacity: 1 !important;
    font-weight: 400 !important;
}

/* Фільтри на світлому фоні: світла картка, темний текст, клікабельні */
body.light-background-active .filter-section,
body.light-background-active .filters-section,
body.light-background-active .vacancies-container .section,
body[style*="ffffff"] .filter-section,
body[style*="e2e8f0"] .filter-section,
body[style*="cbd5e0"] .filter-section,
body[style*="ffffff"] .filters-section,
body[style*="e2e8f0"] .filters-section,
body[style*="cbd5e0"] .filters-section {
    background: #ffffff !important;
    color: #0f172a !important;
    border: 1px solid #cbd5e1 !important;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08) !important;
    pointer-events: auto !important;
    opacity: 1 !important;
}

body.light-background-active .filter-section label,
body.light-background-active .filter-section h2,
body.light-background-active .filter-section h3,
body.light-background-active .filters-section label,
body[style*="ffffff"] .filter-section label,
body[style*="e2e8f0"] .filter-section label,
body[style*="cbd5e0"] .filter-section label {
    color: #0f172a !important;
    font-weight: 400 !important;
}

body.light-background-active .filter-section input,
body.light-background-active .filter-section select,
body.light-background-active .filter-section .filter-select,
body.light-background-active .filters-section input,
body.light-background-active .filters-section select,
body[style*="ffffff"] .filter-section input,
body[style*="ffffff"] .filter-section select,
body[style*="e2e8f0"] .filter-section input,
body[style*="e2e8f0"] .filter-section select,
body[style*="cbd5e0"] .filter-section input,
body[style*="cbd5e0"] .filter-section select {
    background: #ffffff !important;
    color: #0f172a !important;
    border: 1px solid #cbd5e1 !important;
    pointer-events: auto !important;
    opacity: 1 !important;
    font-weight: 400 !important;
}

/* =====================================================================
   Спеціалісти / сірий+білий фон: фінальні перевизначення (мають бути в кінці)
   ===================================================================== */

/* «Скинути фільтри» — знову червона (force-dark-cards її білив) */
body.light-background-active .reset-filters-btn,
body.force-dark-cards .reset-filters-btn,
body.dark-theme.light-background-active .reset-filters-btn,
body.light-theme.light-background-active .reset-filters-btn,
body.dark-theme.force-dark-cards .reset-filters-btn,
body.dark-theme.force-dark-cards button.reset-filters-btn,
html body.dark-theme.force-dark-cards .reset-filters-btn {
    background: #e74c3c !important;
    background-color: #e74c3c !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
    font-weight: 500 !important;
}

body.light-background-active .reset-filters-btn:hover,
body.force-dark-cards .reset-filters-btn:hover,
body.dark-theme.light-background-active .reset-filters-btn:hover,
body.light-theme.light-background-active .reset-filters-btn:hover {
    background: #c0392b !important;
    background-color: #c0392b !important;
    color: #ffffff !important;
}

/* Фільтри: звичайна товщина шрифту (не 600/700) */
body.light-background-active .filter-select,
body.light-background-active .filter-select option,
body.light-background-active select.filter-select,
body.light-background-active .filters-section .filter-select,
body.light-background-active .filter-section .filter-select,
body.light-background-active .filters-section input,
body.light-background-active .filter-section input,
body.light-background-active .filters-section label,
body.light-background-active .filter-section label,
body.dark-theme.light-background-active .filter-select,
body.dark-theme.light-background-active .filter-select option,
body.dark-theme.light-background-active label,
body.force-dark-cards .filter-select,
body.force-dark-cards .filter-select option,
body.force-dark-cards label,
body[style*="ffffff"] .filter-select,
body[style*="e2e8f0"] .filter-select,
body[style*="cbd5e0"] .filter-select,
body[style*="ffffff"] .filter-section label,
body[style*="e2e8f0"] .filter-section label,
body[style*="cbd5e0"] .filter-section label {
    font-weight: 400 !important;
}

/* Темна тема + світлий фон: світлий текст у модалках (перебиває span/label/p чорним) */
body.dark-theme.light-background-active .specialist-info-modal-content,
body.dark-theme.light-background-active .specialist-info-modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.force-dark-cards:not(.light-theme) .specialist-info-modal-content,
body.force-dark-cards:not(.light-theme) .specialist-info-modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-background-active:not(.light-theme) .specialist-info-modal-content,
body.light-background-active:not(.light-theme) .specialist-info-modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body[style*="ffffff"]:not(.light-theme) .specialist-info-modal-content,
body[style*="ffffff"]:not(.light-theme) .specialist-info-modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body[style*="e2e8f0"]:not(.light-theme) .specialist-info-modal-content,
body[style*="e2e8f0"]:not(.light-theme) .specialist-info-modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body[style*="cbd5e0"]:not(.light-theme) .specialist-info-modal-content,
body[style*="cbd5e0"]:not(.light-theme) .specialist-info-modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.dark-theme.light-background-active .contact-specialist-modal .modal-content,
body.dark-theme.light-background-active .contact-specialist-modal .modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.force-dark-cards:not(.light-theme) .contact-specialist-modal .modal-content,
body.force-dark-cards:not(.light-theme) .contact-specialist-modal .modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body.light-background-active:not(.light-theme) .contact-specialist-modal .modal-content,
body.light-background-active:not(.light-theme) .contact-specialist-modal .modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body[style*="ffffff"]:not(.light-theme) .contact-specialist-modal .modal-content,
body[style*="ffffff"]:not(.light-theme) .contact-specialist-modal .modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body[style*="e2e8f0"]:not(.light-theme) .contact-specialist-modal .modal-content,
body[style*="e2e8f0"]:not(.light-theme) .contact-specialist-modal .modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i),
body[style*="cbd5e0"]:not(.light-theme) .contact-specialist-modal .modal-content,
body[style*="cbd5e0"]:not(.light-theme) .contact-specialist-modal .modal-content *:not(button):not(.fa):not(.fas):not(.far):not(.fab):not(i) {
    color: #ecf0f1 !important;
    font-weight: 400 !important;
}

body.dark-theme.light-background-active .specialist-info-modal-content .detail-label,
body.dark-theme.light-background-active .specialist-info-modal-content .specialist-location-large,
body.dark-theme.light-background-active .specialist-info-modal-content .resume-filesize,
body.light-background-active:not(.light-theme) .specialist-info-modal-content .detail-label,
body.light-background-active:not(.light-theme) .specialist-info-modal-content .specialist-location-large,
body.force-dark-cards:not(.light-theme) .specialist-info-modal-content .detail-label,
body.dark-theme.light-background-active .contact-specialist-modal .specialist-occupation,
body.dark-theme.light-background-active .contact-specialist-modal .specialist-location,
body.light-background-active:not(.light-theme) .contact-specialist-modal .specialist-occupation,
body.light-background-active:not(.light-theme) .contact-specialist-modal .specialist-location {
    color: #bdc3c7 !important;
}

body.dark-theme.light-background-active .specialist-info-modal-content .specialist-occupation-large,
body.dark-theme.light-background-active .contact-specialist-modal .specialist-name,
body.light-background-active:not(.light-theme) .specialist-info-modal-content .specialist-occupation-large,
body.light-background-active:not(.light-theme) .contact-specialist-modal .specialist-name,
body.force-dark-cards:not(.light-theme) .contact-specialist-modal .specialist-name {
    color: #5dade2 !important;
}

body.dark-theme.light-background-active .specialist-info-modal-content h2,
body.dark-theme.light-background-active .specialist-info-modal-content h3,
body.dark-theme.light-background-active .contact-specialist-modal h3,
body.light-background-active:not(.light-theme) .specialist-info-modal-content h2,
body.light-background-active:not(.light-theme) .specialist-info-modal-content h3,
body.light-background-active:not(.light-theme) .contact-specialist-modal h3 {
    font-weight: 600 !important;
    color: #ecf0f1 !important;
}

body.dark-theme.light-background-active .specialist-info-modal-content i:not(.fa-heart),
body.dark-theme.light-background-active .contact-specialist-modal i:not(.fa-heart),
body.light-background-active:not(.light-theme) .specialist-info-modal-content i:not(.fa-heart),
body.force-dark-cards:not(.light-theme) .specialist-info-modal-content i:not(.fa-heart) {
    color: #5dade2 !important;
}

/* Кнопки всередині модалок — білий текст на кольоровому фоні
   (btn-secondary / Закрити — окремо: у світлій темі темний текст) */
body.dark-theme.light-background-active .specialist-info-modal-content button,
body.dark-theme.light-background-active .contact-specialist-modal button:not(.btn-secondary):not(#contact-close-btn),
body.light-background-active:not(.light-theme) .specialist-info-modal-content button,
body.light-background-active:not(.light-theme) .contact-specialist-modal button:not(.btn-secondary):not(#contact-close-btn),
body.force-dark-cards:not(.light-theme) .specialist-info-modal-content button,
body.force-dark-cards:not(.light-theme) .contact-specialist-modal button:not(.btn-secondary):not(#contact-close-btn) {
    color: #ffffff !important;
}

body.dark-theme.light-background-active .specialist-modal-close,
body.light-background-active:not(.light-theme) .specialist-modal-close,
body.force-dark-cards:not(.light-theme) .specialist-modal-close {
    color: #ecf0f1 !important;
    background: rgba(255, 255, 255, 0.1) !important;
} 