/* Shared recruitment admin UI — aligned with dashboard tokens */

.recruitment-list-page,
.recruitment-settings-page,
#page-content:has(.recruitment-table-shell),
#page-content:has(.nav-tabs.vertical.settings) {
    --recruitment-surface: #ffffff;
    --recruitment-page: #f6f8fb;
    --recruitment-border: #dbe4f0;
    --recruitment-border-soft: #edf1f6;
    --recruitment-ink: #172033;
    --recruitment-muted: #667085;
    --recruitment-soft: #eef3f8;
    --recruitment-blue: #2f80ed;
    --recruitment-green: #0f9f6e;
}

.recruitment-list-page #page-content,
.recruitment-settings-page #page-content,
#page-content:has(.recruitment-table-shell),
#page-content:has(.nav-tabs.vertical.settings) {
    padding-top: 10px;
}

/* List / detail cards */
.recruitment-list-card,
.recruitment-detail-card,
.candidate-profile-card,
.recruitment-interview-card,
#page-content:has(.recruitment-table-shell) > .row > [class*="col-"] > .card:not(.card-body),
#page-content:has(.candidate-profile-table-shell) > .row > [class*="col-"] > .card:not(.card-body),
#page-content:has(.recruitment-detail-card) > .row > [class*="col-"] > .card:not(.card-body) {
    background: var(--recruitment-surface, #fff);
    border: 1px solid var(--recruitment-border, #dbe4f0);
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
    overflow: hidden;
    padding: 0;
}

.recruitment-list-page,
#page-content:has(.recruitment-list-card),
#page-content:has(.recruitment-detail-card),
#page-content:has(.candidate-profile-card),
#page-content.recruitment-interview-page {
    padding-top: 10px;
}

/* Native headers — override legacy .page-title floats */
.recruitment-list-card .page-title,
.recruitment-list-card .recruitment-list-header,
.recruitment-detail-card .page-title,
.recruitment-detail-card .recruitment-detail-header,
.candidate-profile-card .page-title,
.candidate-profile-card .recruitment-list-header,
.recruitment-channel-card .page-title,
.recruitment-channel-card .recruitment-list-header,
.recruitment-interview-card .recruitment-list-header,
.recruitment-interview-card .recruitment-interview-header,
#page-content:has(.recruitment-table-shell) .page-title,
#page-content:has(.recruitment-table-shell) .recruitment-list-header,
#page-content:has(.candidate-profile-table-shell) .page-title {
    align-items: center;
    background: transparent;
    border-bottom: 1px solid var(--recruitment-border-soft, #edf1f6);
    border-radius: 0;
    display: flex !important;
    flex-wrap: wrap;
    float: none !important;
    gap: 12px 16px;
    justify-content: space-between;
    margin: 0;
    padding: 18px 22px 14px;
}

.recruitment-list-card .recruitment-list-heading,
.recruitment-detail-card .recruitment-detail-heading,
.candidate-profile-card .recruitment-list-heading,
.recruitment-channel-card .recruitment-list-heading,
.recruitment-interview-card .recruitment-list-heading,
.recruitment-interview-card .recruitment-interview-heading {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    float: none !important;
    gap: 10px;
    min-width: 0;
    width: auto;
}

.recruitment-list-card .page-title h4,
.recruitment-list-card .recruitment-list-heading h1,
.recruitment-detail-card .page-title h4,
.recruitment-detail-card .recruitment-detail-heading h1,
.candidate-profile-card .page-title h4,
.candidate-profile-card .recruitment-list-heading h1,
.recruitment-channel-card .recruitment-list-heading h1,
.recruitment-channel-card .page-title h1,
.recruitment-interview-card .recruitment-list-heading h1,
.recruitment-interview-card .recruitment-interview-heading h1,
#page-content:has(.recruitment-table-shell) .page-title h4,
#page-content:has(.recruitment-table-shell) .recruitment-list-heading h1,
#page-content:has(.candidate-profile-table-shell) .page-title h4 {
    color: var(--recruitment-ink, #172033);
    float: none !important;
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.25;
    margin: 0;
    padding: 0 !important;
}

.recruitment-list-card .title-button-group,
.recruitment-list-card .recruitment-list-actions,
.recruitment-detail-card .title-button-group,
.recruitment-detail-card .recruitment-detail-actions,
.candidate-profile-card .title-button-group,
.candidate-profile-card .recruitment-list-actions,
.recruitment-channel-card .title-button-group,
.recruitment-channel-card .recruitment-list-actions,
.recruitment-interview-card .recruitment-list-actions,
.recruitment-interview-card .recruitment-interview-actions,
#page-content:has(.recruitment-table-shell) .title-button-group,
#page-content:has(.recruitment-table-shell) .recruitment-list-actions,
#page-content:has(.candidate-profile-table-shell) .title-button-group {
    align-items: center;
    display: flex !important;
    flex-wrap: wrap;
    float: none !important;
    gap: 8px;
    justify-content: flex-end;
    margin: 0 0 0 auto !important;
    width: auto;
}

.recruitment-list-card .page-title .title-button-group,
.recruitment-list-card .recruitment-list-actions,
.candidate-profile-card .page-title .title-button-group,
.candidate-profile-card .recruitment-list-actions {
    float: none !important;
    margin-left: auto;
}

.recruitment-list-card .page-title h1,
.recruitment-list-card .page-title h4,
.recruitment-list-card .recruitment-list-heading h1,
.candidate-profile-card .page-title h1,
.candidate-profile-card .recruitment-list-heading h1,
.recruitment-channel-card .page-title h1,
.recruitment-channel-card .recruitment-list-heading h1 {
    float: none !important;
    padding: 0 !important;
    text-align: left !important;
}

.recruitment-list-card .title-button-group .btn,
.recruitment-list-card .recruitment-list-actions .btn,
.recruitment-detail-card .title-button-group .btn,
.recruitment-detail-card .recruitment-detail-actions .btn,
.candidate-profile-card .title-button-group .btn,
.candidate-profile-card .recruitment-list-actions .btn,
.recruitment-channel-card .title-button-group .btn,
.recruitment-channel-card .recruitment-list-actions .btn,
.recruitment-interview-card .recruitment-list-actions .btn,
.recruitment-interview-card .recruitment-interview-actions .btn,
#page-content:has(.recruitment-table-shell) .title-button-group .btn,
#page-content:has(.recruitment-table-shell) .recruitment-list-actions .btn,
#page-content:has(.candidate-profile-table-shell) .title-button-group .btn {
    align-items: center;
    border-radius: 7px !important;
    display: inline-flex !important;
    float: none !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    gap: 6px;
    margin: 0 !important;
    min-height: 34px;
    padding: 6px 14px !important;
}

.recruitment-list-card .title-button-group .btn-default,
.recruitment-list-card .recruitment-list-actions .btn-default,
.candidate-profile-card .title-button-group .btn-default,
.recruitment-channel-card .title-button-group .btn-default,
.recruitment-channel-card .recruitment-list-actions .btn-default,
.recruitment-detail-card .title-button-group .btn-default,
.recruitment-detail-card .recruitment-detail-actions .btn-default {
    background: #fff !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
}

.recruitment-list-card .title-button-group .btn-default:hover,
.recruitment-list-card .recruitment-list-actions .btn-default:hover,
.candidate-profile-card .title-button-group .btn-default:hover,
.recruitment-channel-card .title-button-group .btn-default:hover,
.recruitment-channel-card .recruitment-list-actions .btn-default:hover,
.recruitment-detail-card .title-button-group .btn-default:hover,
.recruitment-detail-card .recruitment-detail-actions .btn-default:hover {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    color: #334155 !important;
}

/* Filter rows */
.recruitment-list-card > .row,
.recruitment-list-card .recruitment-list-filters,
.candidate-profile-card > .row,
.candidate-profile-card .recruitment-list-filters,
#page-content:has(.recruitment-table-shell) > .row > [class*="col-"] > .card > .row,
#page-content:has(.recruitment-table-shell) .recruitment-list-filters,
#page-content:has(.candidate-profile-table-shell) > .row > [class*="col-"] > .card > .row {
    background: #f8fafc;
    border-bottom: 1px solid var(--recruitment-border-soft, #edf1f6);
    margin: 0 !important;
    padding: 14px 22px 10px;
}

.recruitment-list-card > .row [class*="col-"],
#page-content:has(.recruitment-table-shell) > .row > [class*="col-"] > .card > .row [class*="col-"] {
    margin-bottom: 8px;
}

.recruitment-list-card .select2-container .select2-choice,
.recruitment-list-card .select2-container .select2-selection,
.recruitment-list-card .form-control,
#page-content:has(.recruitment-table-shell) .select2-container .select2-choice,
#page-content:has(.recruitment-table-shell) .select2-container .select2-selection,
#page-content:has(.recruitment-table-shell) .form-control {
    background: #fff;
    border-color: #e2e8f0 !important;
    border-radius: 7px !important;
    color: #4e5e6a;
    min-height: 34px;
}

.recruitment-list-card .form-control::placeholder,
#page-content:has(.recruitment-table-shell) .form-control::placeholder {
    color: #64748b;
    opacity: 1;
}

.recruitment-table-shell,
.candidate-profile-table-shell {
    padding: 0 22px 18px !important;
}

.candidate-profile-table-shell.p15,
.recruitment-table-shell.p15 {
    padding: 0 22px 18px !important;
}

.recruitment-table-shell .table-responsive {
    margin-bottom: 0;
}

/* Shared datatable styling */
#page-content:has(.table-table_rec_campaign) table.dataTable,
#page-content:has(.table-table_interview) table.dataTable,
#page-content:has(.table-table_recruitment_channel) table.dataTable,
#page-content:has(.table-table_rec_candidate) table.dataTable,
#page-content:has(.table-table_rec_proposal) table.dataTable,
.recruitment-list-card table.dataTable,
.candidate-profile-card table.dataTable {
    border-top: 1px solid #f1f1f5;
    color: #4e5e6a;
    margin-bottom: 0 !important;
}

#page-content:has(.table-table_rec_campaign) table.dataTable thead th,
#page-content:has(.table-table_interview) table.dataTable thead th,
#page-content:has(.table-table_recruitment_channel) table.dataTable thead th,
#page-content:has(.table-table_rec_candidate) table.dataTable thead th,
#page-content:has(.table-table_rec_proposal) table.dataTable thead th,
.recruitment-list-card table.dataTable thead th,
.candidate-profile-card table.dataTable thead th {
    background: #f8fafc;
    border-bottom: 1px solid #e8ecf1 !important;
    color: #64748b;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.018em;
    padding: 12px 13px !important;
    text-transform: none !important;
    vertical-align: middle;
}

/* Datatable toolbar buttons on recruitment list pages */
.recruitment-list-card .dataTables_wrapper .btn,
.recruitment-list-card .dt-container .btn,
.candidate-profile-card .dataTables_wrapper .btn,
.candidate-profile-card .dt-container .btn,
.recruitment-list-card .btn-default-dt-options,
.candidate-profile-card .btn-default-dt-options {
    align-items: center;
    background: #fff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 7px !important;
    color: #475569 !important;
    display: inline-flex;
    font-size: 12px !important;
    font-weight: 500 !important;
    gap: 6px;
    min-height: 34px;
    padding: 6px 12px !important;
}

.recruitment-list-card .dataTables_wrapper .btn:hover,
.candidate-profile-card .dataTables_wrapper .btn:hover,
.recruitment-list-card .btn-default-dt-options:hover,
.candidate-profile-card .btn-default-dt-options:hover {
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
    color: #334155 !important;
}

.recruitment-list-card .recruitment-dt-toolbar,
.candidate-profile-card .recruitment-dt-toolbar {
    align-items: center;
    border-bottom: 1px solid #f1f5f9;
    margin: 0 !important;
    padding: 12px 0 10px;
}

.recruitment-list-card .recruitment-dt-footer,
.candidate-profile-card .recruitment-dt-footer {
    align-items: center;
    border-top: 1px solid #f1f5f9;
    margin: 0 !important;
    padding: 10px 0 4px;
}

/* Detail pages */
.recruitment-detail-card .recruitment-detail-meta,
.recruitment-detail-card > .row.ml2 {
    background: #f8fafc;
    border-bottom: 1px solid var(--recruitment-border-soft, #edf1f6);
    margin: 0 !important;
    padding: 12px 22px;
}

.recruitment-detail-card .recruitment-detail-body,
.recruitment-detail-card > .modal-body,
.recruitment-detail-card > .row.ml2 + .row {
    padding: 0 22px 22px;
}

.recruitment-detail-card .nav-tabs {
    border-bottom: 1.5px solid #f0f2f6 !important;
    margin: 0 0 16px;
}

.recruitment-detail-card .nav-tabs .nav-link {
    border: none !important;
    border-radius: 0 !important;
    color: #6b7280 !important;
    font-size: 0.83rem !important;
    font-weight: 500 !important;
    padding: 12px 15px 13px !important;
}

.recruitment-detail-card .nav-tabs .nav-link.active {
    background: transparent !important;
    color: var(--recruitment-blue, #2f80ed) !important;
    font-weight: 600 !important;
}

.recruitment-detail-card .page-title .badge,
.recruitment-detail-card .recruitment-detail-heading .badge {
    border-radius: 5px !important;
    font-size: 0.71rem !important;
    font-weight: 500 !important;
    margin-top: 0 !important;
    padding: 3px 9px !important;
}

#page-content:has(.table-table_rec_campaign) table.dataTable tbody td,
#page-content:has(.table-table_interview) table.dataTable tbody td,
#page-content:has(.table-table_recruitment_channel) table.dataTable tbody td,
#page-content:has(.table-table_rec_candidate) table.dataTable tbody td,
#page-content:has(.table-table_rec_proposal) table.dataTable tbody td,
.recruitment-list-card table.dataTable tbody td,
.candidate-profile-card table.dataTable tbody td {
    border-bottom: 1px solid #f1f3f6;
    color: #4e5e6a;
    vertical-align: middle;
}

#page-content:has(.table-table_rec_campaign) table.dataTable tbody tr:hover td,
#page-content:has(.table-table_interview) table.dataTable tbody tr:hover td,
#page-content:has(.table-table_recruitment_channel) table.dataTable tbody tr:hover td,
.recruitment-list-card table.dataTable tbody tr:hover td {
    background: #f8fbff !important;
}

#page-content:has(.table-table_rec_campaign) .badge,
#page-content:has(.table-table_interview) .badge,
#page-content:has(.table-table_recruitment_channel) .badge,
.recruitment-list-card .badge,
.recruitment-list-card .badge.large {
    border-radius: 5px !important;
    font-size: 0.71rem !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;
    padding: 3px 9px !important;
}

#page-content:has(.table-table_recruitment_channel) .badge.bg-info,
.recruitment-list-card .badge.bg-info,
.recruitment-list-card .application-style {
    background: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    color: #1d4ed8 !important;
}

#page-content:has(.table-table_recruitment_channel) .potential-style,
#page-content:has(.table-table_recruitment_channel) .interview-style,
#page-content:has(.table-table_recruitment_channel) .won_interview-style,
#page-content:has(.table-table_recruitment_channel) .send_offer-style,
#page-content:has(.table-table_recruitment_channel) .elect-style,
#page-content:has(.table-table_recruitment_channel) .non_elect-style,
#page-content:has(.table-table_recruitment_channel) .unanswer-style,
#page-content:has(.table-table_recruitment_channel) .transferred-style,
#page-content:has(.table-table_recruitment_channel) .freedom-style,
.recruitment-list-card .potential-style,
.recruitment-list-card .interview-style,
.recruitment-list-card .won_interview-style,
.recruitment-list-card .send_offer-style,
.recruitment-list-card .elect-style,
.recruitment-list-card .non_elect-style,
.recruitment-list-card .unanswer-style,
.recruitment-list-card .transferred-style,
.recruitment-list-card .freedom-style {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
}

#page-content:has(.table-table_recruitment_channel) .interview-style,
#page-content:has(.table-table_recruitment_channel) .send_offer-style,
.recruitment-list-card .interview-style,
.recruitment-list-card .send_offer-style {
    background: #eff6ff !important;
    border-color: #bfdbfe !important;
    color: #1d4ed8 !important;
}

#page-content:has(.table-table_recruitment_channel) .won_interview-style,
#page-content:has(.table-table_recruitment_channel) .elect-style,
#page-content:has(.table-table_recruitment_channel) .transferred-style,
.recruitment-list-card .won_interview-style,
.recruitment-list-card .elect-style,
.recruitment-list-card .transferred-style {
    background: #ecfdf5 !important;
    border-color: #a7f3d0 !important;
    color: #047857 !important;
}

#page-content:has(.table-table_recruitment_channel) .non_elect-style,
#page-content:has(.table-table_recruitment_channel) .unanswer-style,
.recruitment-list-card .non_elect-style,
.recruitment-list-card .unanswer-style {
    background: #fff1f2 !important;
    border-color: #fecdd3 !important;
    color: #e11d48 !important;
}

/* Native list row actions (dt-row-actions) */
.recruitment-list-card td.option,
.recruitment-list-card td.w100,
.recruitment-list-card td.w175,
.candidate-profile-card td.option,
.candidate-profile-card td.w175,
.recruitment-interview-card td.option,
.recruitment-interview-card td.w175,
#page-content:has(.table-table_rec_campaign) td.option,
#page-content:has(.table-table_rec_proposal) td.option,
#page-content:has(.table-table_recruitment_channel) td.option,
#page-content:has(.table-table_interview) td.option,
#page-content:has(.table-table_rec_candidate) td.option {
    min-width: 118px;
    text-align: center !important;
    vertical-align: middle;
    white-space: nowrap;
    width: 118px;
}

.recruitment-list-card td.option .dt-row-actions,
.candidate-profile-card td.option .dt-row-actions,
.recruitment-interview-card td.option .dt-row-actions,
#page-content:has(.table-table_rec_campaign) td.option .dt-row-actions,
#page-content:has(.table-table_rec_proposal) td.option .dt-row-actions,
#page-content:has(.table-table_recruitment_channel) td.option .dt-row-actions,
#page-content:has(.table-table_interview) td.option .dt-row-actions,
#page-content:has(.table-table_rec_candidate) td.option .dt-row-actions {
    align-items: center;
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 4px;
    justify-content: center;
}

.recruitment-list-card td.option .dt-row-actions a,
.candidate-profile-card td.option .dt-row-actions a,
.recruitment-interview-card td.option .dt-row-actions a,
#page-content:has(.table-table_rec_campaign) td.option .dt-row-actions a,
#page-content:has(.table-table_rec_proposal) td.option .dt-row-actions a,
#page-content:has(.table-table_recruitment_channel) td.option .dt-row-actions a,
#page-content:has(.table-table_interview) td.option .dt-row-actions a,
#page-content:has(.table-table_rec_candidate) td.option .dt-row-actions a {
    float: none !important;
    margin: 0 !important;
}

/* Settings submenu */
.recruitment-settings-page .settings,
#page-content:has(.nav-tabs.vertical.settings) .settings {
    position: sticky;
    top: 12px;
    padding: 4px 2px 20px 0;
}

.recruitment-settings-page .settings .settings-anchor,
#page-content:has(.nav-tabs.vertical.settings) .settings .settings-anchor {
    color: #4e5e6a;
    cursor: default;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.018em;
    margin: 0;
    padding: 4px 8px 10px;
}

.recruitment-settings-page .help-catagory.list-group,
#page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group {
    gap: 2px;
    margin-bottom: 0;
}

.recruitment-settings-page .help-catagory.list-group .list-group-item,
#page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item {
    background: transparent;
    border: 1px solid transparent !important;
    border-radius: 5px !important;
    color: #4e5e6a;
    display: block;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.35;
    margin: 0;
    padding: 9px 12px;
    text-decoration: none !important;
    transition: background-color 150ms ease, border-color 150ms ease, color 150ms ease;
    white-space: normal;
    word-break: break-word;
}

.recruitment-settings-page .help-catagory.list-group .list-group-item:hover,
.recruitment-settings-page .help-catagory.list-group .list-group-item:focus,
#page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item:hover,
#page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item:focus {
    background: rgba(0, 0, 0, 0.03);
    border-color: transparent !important;
    border-left: 1px solid transparent !important;
    color: #1e293b;
    text-indent: 0;
}

.recruitment-settings-page .help-catagory.list-group .list-group-item.active,
.recruitment-settings-page .help-catagory.list-group .list-group-item.active:hover,
.recruitment-settings-page .help-catagory.list-group .list-group-item.active:focus,
#page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item.active,
#page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item.active:hover,
#page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item.active:focus {
    background: rgba(0, 0, 0, 0.04);
    border: 1px solid transparent !important;
    border-left: 2px solid #4e5e6a !important;
    color: #1e293b;
    font-weight: 600;
    text-indent: 0;
}

.recruitment-settings-page .col-sm-9 > .card,
.recruitment-settings-page .col-lg-10 > .card,
#page-content:has(.nav-tabs.vertical.settings) .col-sm-9 > .card,
#page-content:has(.nav-tabs.vertical.settings) .col-lg-10 > .card {
    border: 1px solid #f1f1f5;
    border-radius: 10px;
    box-shadow: none;
}

.recruitment-settings-page .col-sm-9 > .card .page-title,
.recruitment-settings-page .col-lg-10 > .card .page-title,
#page-content:has(.nav-tabs.vertical.settings) .col-sm-9 > .card .page-title,
#page-content:has(.nav-tabs.vertical.settings) .col-lg-10 > .card .page-title {
    border-bottom: 1px solid #f1f1f5;
    padding: 18px 20px 14px;
}

.recruitment-settings-page .col-sm-9 > .card .page-title h4,
.recruitment-settings-page .col-lg-10 > .card .page-title h4,
#page-content:has(.nav-tabs.vertical.settings) .col-sm-9 > .card .page-title h4,
#page-content:has(.nav-tabs.vertical.settings) .col-lg-10 > .card .page-title h4 {
    color: #1e293b;
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0;
}

.recruitment-settings-page .col-sm-9 > .card .table-responsive,
.recruitment-settings-page .col-lg-10 > .card .table-responsive,
#page-content:has(.nav-tabs.vertical.settings) .col-sm-9 > .card .table-responsive,
#page-content:has(.nav-tabs.vertical.settings) .col-lg-10 > .card .table-responsive {
    padding: 0 20px 18px;
}

/* Dark mode */
body[data-color="1E202D"] .recruitment-list-card,
body[data-color="1E202D"] #page-content:has(.recruitment-table-shell) > .row > [class*="col-"] > .card:not(.card-body),
body[data-color="1E202D"] .recruitment-settings-page .col-sm-9 > .card,
body[data-color="1E202D"] .recruitment-settings-page .col-lg-10 > .card,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .col-sm-9 > .card,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .col-lg-10 > .card {
    background: #252932;
    border-color: #2f3541;
    box-shadow: none;
}

body[data-color="1E202D"] .recruitment-list-card .page-title h4,
body[data-color="1E202D"] #page-content:has(.recruitment-table-shell) .page-title h4,
body[data-color="1E202D"] .recruitment-settings-page .col-sm-9 > .card .page-title h4,
body[data-color="1E202D"] .recruitment-settings-page .col-lg-10 > .card .page-title h4,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .col-sm-9 > .card .page-title h4,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .col-lg-10 > .card .page-title h4 {
    color: #e5e7eb;
}

body[data-color="1E202D"] .recruitment-list-card .page-title,
body[data-color="1E202D"] #page-content:has(.recruitment-table-shell) .page-title,
body[data-color="1E202D"] .recruitment-settings-page .col-sm-9 > .card .page-title,
body[data-color="1E202D"] .recruitment-settings-page .col-lg-10 > .card .page-title,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .col-sm-9 > .card .page-title,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .col-lg-10 > .card .page-title {
    border-color: #2f3541;
}

body[data-color="1E202D"] .recruitment-list-card .select2-container .select2-choice,
body[data-color="1E202D"] .recruitment-list-card .select2-container .select2-selection,
body[data-color="1E202D"] .recruitment-list-card .form-control,
body[data-color="1E202D"] #page-content:has(.recruitment-table-shell) .select2-container .select2-choice,
body[data-color="1E202D"] #page-content:has(.recruitment-table-shell) .select2-container .select2-selection,
body[data-color="1E202D"] #page-content:has(.recruitment-table-shell) .form-control {
    background: #20242c;
    border-color: #2f3541 !important;
    color: #e5e7eb;
}

body[data-color="1E202D"] #page-content:has(.table-table_rec_campaign) table.dataTable thead th,
body[data-color="1E202D"] #page-content:has(.table-table_interview) table.dataTable thead th,
body[data-color="1E202D"] #page-content:has(.table-table_recruitment_channel) table.dataTable thead th,
body[data-color="1E202D"] .recruitment-list-card table.dataTable thead th {
    background: #20242c;
    border-color: #2f3541 !important;
    color: #aab2c5;
}

body[data-color="1E202D"] #page-content:has(.table-table_rec_campaign) table.dataTable tbody td,
body[data-color="1E202D"] #page-content:has(.table-table_interview) table.dataTable tbody td,
body[data-color="1E202D"] #page-content:has(.table-table_recruitment_channel) table.dataTable tbody td,
body[data-color="1E202D"] .recruitment-list-card table.dataTable tbody td {
    border-color: #2f3541;
    color: #e5e7eb;
}

body[data-color="1E202D"] #page-content:has(.table-table_rec_campaign) table.dataTable tbody tr:hover td,
body[data-color="1E202D"] #page-content:has(.table-table_interview) table.dataTable tbody tr:hover td,
body[data-color="1E202D"] #page-content:has(.table-table_recruitment_channel) table.dataTable tbody tr:hover td,
body[data-color="1E202D"] .recruitment-list-card table.dataTable tbody tr:hover td {
    background: #20242c !important;
}

body[data-color="1E202D"] .recruitment-settings-page .help-catagory.list-group .list-group-item,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item {
    color: #aab2c5;
}

body[data-color="1E202D"] .recruitment-settings-page .help-catagory.list-group .list-group-item:hover,
body[data-color="1E202D"] .recruitment-settings-page .help-catagory.list-group .list-group-item:focus,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item:hover,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item:focus {
    background: rgba(255, 255, 255, 0.04);
    color: #e5e7eb;
}

body[data-color="1E202D"] .recruitment-settings-page .help-catagory.list-group .list-group-item.active,
body[data-color="1E202D"] #page-content:has(.nav-tabs.vertical.settings) .help-catagory.list-group .list-group-item.active {
    background: rgba(255, 255, 255, 0.06);
    border-left-color: #aab2c5 !important;
    color: #e5e7eb;
}

@media (max-width: 767.98px) {
    .recruitment-list-card .page-title,
    .recruitment-list-card .recruitment-list-header,
    .recruitment-detail-card .page-title,
    .recruitment-detail-card .recruitment-detail-header,
    .candidate-profile-card .page-title,
    #page-content:has(.recruitment-table-shell) .page-title,
    #page-content:has(.recruitment-table-shell) .recruitment-list-header {
        align-items: stretch;
        flex-direction: column;
    }

    .recruitment-list-card .title-button-group,
    .recruitment-list-card .recruitment-list-actions,
    .recruitment-detail-card .title-button-group,
    .recruitment-detail-card .recruitment-detail-actions,
    .candidate-profile-card .title-button-group,
    #page-content:has(.recruitment-table-shell) .title-button-group,
    #page-content:has(.recruitment-table-shell) .recruitment-list-actions {
        justify-content: flex-start;
    }

    .recruitment-list-card .title-button-group .btn,
    .recruitment-list-card .recruitment-list-actions .btn,
    .recruitment-detail-card .title-button-group .btn,
    .candidate-profile-card .title-button-group .btn,
    #page-content:has(.recruitment-table-shell) .title-button-group .btn,
    #page-content:has(.recruitment-table-shell) .recruitment-list-actions .btn {
        flex: 1 1 145px;
        justify-content: center;
    }

    .recruitment-settings-page .settings,
    #page-content:has(.nav-tabs.vertical.settings) .settings {
        position: static;
    }
}

/* Recruitment Campaign list: theme-safe filters and wide-table navigation. */
.recruitment-campaign-card {
    --campaign-surface: #ffffff;
    --campaign-surface-raised: #f8fafc;
    --campaign-ink: #1e293b;
    --campaign-text: #4e5e6a;
    --campaign-muted: #64748b;
    --campaign-border: #dbe4f0;
    --campaign-divider: #cbd5e1;
    --campaign-hover: #f1f5fa;
}

body[data-color="1E202D"] .recruitment-campaign-card {
    --campaign-surface: #252932;
    --campaign-surface-raised: #2b2e3b;
    --campaign-ink: #f1f5fa;
    --campaign-text: #d8deee;
    --campaign-muted: #bdc4d6;
    --campaign-border: #4a5263;
    --campaign-divider: #737b8f;
    --campaign-hover: #303544;
}

.recruitment-campaign-card .recruitment-list-header,
.recruitment-campaign-card .recruitment-list-filters,
.recruitment-campaign-card .recruitment-table-shell {
    border-color: var(--campaign-border) !important;
    background: var(--campaign-surface) !important;
}

.recruitment-campaign-card .recruitment-list-heading h1 {
    color: var(--campaign-ink) !important;
}

.recruitment-campaign-card .recruitment-list-filters {
    background: var(--campaign-surface-raised) !important;
}

.recruitment-campaign-card .recruitment-list-filters label {
    color: var(--campaign-muted) !important;
}

.recruitment-campaign-card .recruitment-list-filters .form-control,
.recruitment-campaign-card .recruitment-list-filters .select2-selection,
.recruitment-campaign-card .recruitment-list-filters .select2-choice,
.recruitment-campaign-card .recruitment-list-filters .select2-choices {
    border-color: var(--campaign-border) !important;
    background: var(--campaign-surface) !important;
    color: var(--campaign-text) !important;
}

.recruitment-campaign-card .recruitment-list-filters .select2-selection__rendered,
.recruitment-campaign-card .recruitment-list-filters .select2-search__field,
.recruitment-campaign-card .recruitment-list-filters .select2-input,
.recruitment-campaign-card .recruitment-list-filters .form-control::placeholder {
    color: var(--campaign-muted) !important;
    opacity: 1;
}

.recruitment-campaign-card .table-responsive {
    position: relative;
    overflow-x: auto;
    scrollbar-color: var(--campaign-divider) var(--campaign-surface);
}

.recruitment-campaign-card table.table-table_rec_campaign {
    min-width: 1100px;
    border-color: var(--campaign-border) !important;
    background: var(--campaign-surface) !important;
    color: var(--campaign-text) !important;
}

.recruitment-campaign-card table.table-table_rec_campaign thead th {
    border-color: var(--campaign-divider) !important;
    background: var(--campaign-surface-raised) !important;
    color: var(--campaign-text) !important;
}

.recruitment-campaign-card table.table-table_rec_campaign tbody td {
    border-color: var(--campaign-border) !important;
    background: var(--campaign-surface) !important;
    color: var(--campaign-text) !important;
}

body[data-color="1E202D"] .recruitment-campaign-card table.table-table_rec_campaign tbody td {
    border-color: var(--campaign-border) !important;
    background: var(--campaign-surface) !important;
    color: var(--campaign-text) !important;
}

body[data-color="1E202D"] .recruitment-campaign-card table.table-table_rec_campaign tbody tr:hover td {
    background: var(--campaign-hover) !important;
}

body[data-color="1E202D"] .recruitment-campaign-card table.table-table_rec_campaign tbody td a:not(.btn) {
    color: #b8c1ff !important;
}

.recruitment-campaign-card table.table-table_rec_campaign tbody tr:hover td {
    background: var(--campaign-hover) !important;
    color: var(--campaign-ink) !important;
}

.recruitment-campaign-card table.table-table_rec_campaign th:first-child,
.recruitment-campaign-card table.table-table_rec_campaign td:first-child {
    position: sticky;
    inset-inline-start: 0;
    z-index: 2;
}

.recruitment-campaign-card table.table-table_rec_campaign th:last-child,
.recruitment-campaign-card table.table-table_rec_campaign td:last-child {
    position: sticky;
    inset-inline-end: 0;
    z-index: 2;
}

.recruitment-campaign-card table.table-table_rec_campaign thead th:first-child,
.recruitment-campaign-card table.table-table_rec_campaign thead th:last-child {
    z-index: 3;
}

.recruitment-campaign-card table.table-table_rec_campaign a:not(.btn) {
    color: var(--dc-primary-link, #5867dd);
}

.recruitment-campaign-card .dataTables_wrapper .btn-default,
.recruitment-campaign-card .dataTables_wrapper .form-control,
.recruitment-campaign-card .dataTables_wrapper select,
.recruitment-campaign-card .dt-container .btn-default,
.recruitment-campaign-card .dt-container .form-control,
.recruitment-campaign-card .dt-container select {
    border-color: var(--campaign-border) !important;
    background: var(--campaign-surface-raised) !important;
    color: var(--campaign-text) !important;
}

.recruitment-campaign-card .dataTables_info,
.recruitment-campaign-card .dt-info,
.recruitment-campaign-card .dataTables_length label,
.recruitment-campaign-card .dt-length label {
    color: var(--campaign-muted) !important;
}

@media (max-width: 767.98px) {
    .recruitment-list-page:has(.recruitment-campaign-card) {
        padding: 15px !important;
    }

    .recruitment-campaign-card .recruitment-list-header,
    .recruitment-campaign-card .recruitment-list-filters {
        padding-inline: 16px;
    }

    .recruitment-campaign-card .recruitment-list-actions,
    .recruitment-campaign-card .recruitment-list-actions .btn,
    .recruitment-campaign-card .recruitment-list-filters > [class*="col-"] {
        width: 100%;
    }

    .recruitment-campaign-card .recruitment-list-actions .btn,
    .recruitment-campaign-card .dataTables_wrapper .btn,
    .recruitment-campaign-card .dt-container .btn,
    .recruitment-campaign-card .dataTables_wrapper input,
    .recruitment-campaign-card .dt-container input,
    .recruitment-campaign-card .dataTables_wrapper select,
    .recruitment-campaign-card .dt-container select,
    .recruitment-campaign-card .recruitment-list-filters .form-control,
    .recruitment-campaign-card .recruitment-list-filters .select2-container,
    .recruitment-campaign-card .recruitment-list-filters .select2-selection,
    .recruitment-campaign-card .recruitment-list-filters .select2-choice,
    .recruitment-campaign-card .recruitment-list-filters .select2-choices {
        min-height: 44px !important;
    }

    .recruitment-campaign-card .recruitment-list-filters .select2-selection__rendered,
    .recruitment-campaign-card .recruitment-list-filters .select2-input {
        line-height: 42px;
    }
}
