/**
 * ==========================================================================
 * VERIMUS - LEGACY STYLE OVERRIDES
 * ==========================================================================
 * 
 * This file contains page-specific overrides and legacy fixes.
 * Reduced from ~2700 lines to ~1900 lines during 2026-02-05 cleanup.
 * 
 * MIGRATION STATUS (Updated 2026-02-05):
 * 
 * MIGRATED TO COMPONENT FILES:
 * - .action-btn.send-btn, .action-btn.archive-btn → components/table-actions.css
 * - .form-actions, .form-actions .cancel-btn → components/forms.css, buttons.css
 * - Disabled button states → components/buttons.css
 * - .remove-document → components/buttons.css
 * - .button-blue, .button-outline → components/buttons.css
 * - .send-document-bottom → components/forms.css
 * - .upload-logo-label → components/forms.css
 * - .document-file-wrap → components/forms.css
 * - .modal-body table, .modal-hr-command-tip → components/modals.css
 * - .tag-div .separator → components/badges.css
 * - .task-message, .hr-command-tip → components/alerts.css
 * - .birthday-banner-container → components/birthday-banner.css
 * - .global-footer → layout/footer.css
 * - .content-body.with-table → components/cards.css
 * - WooCommerce checkout styles → pages/checkout.css
 * - .hrc-* integration styles → pages/integrations.css
 * - .dark-mode overrides → dark-mode.css
 * 
 * REMAINING (Page-specific - intentionally here):
 * - Single template styles (.single-template:not(.logged-in))
 * - Search page styles (.search-*) - overrides for search-result.css
 * - Select2 customizations - context-specific overrides
 * - DataTables overrides
 * - Registration/auth page styles - overrides for auth.css
 * - Third-party plugin overrides
 * 
 * DO NOT add new styles here. Use the design system instead.
 * ==========================================================================
 */

/* Migrated styles removed - see components/forms.css, buttons.css, table-actions.css, cards.css */

.to-be-sent-table i.fas {
    color: var(--gray-800)
}

.align-center {
    align-items: center;
}

.content-col-main {
    flex: 1;
}

/* .content-col-sidebar {
    width: 335px;
} */

#form-confirm-user-details input[type="checkbox"] {
    appearance: none;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin-top: 1px;
    color: inherit;
    font-size: var(--font-size-xl);
    line-height: 1em;
    height: 16px;
    width: 16px;
    border: solid 1px var(--grayscale-400);
    border-radius: var(--radius-md);
    top: -2px;
    margin-right: 10px;
}

#form-confirm-user-details input[type="checkbox"]:checked {
    background: url('../images/v.svg');
    border-color: var(--main);
    background-color: var(--main);
    color: white;
    box-shadow: 0 0 0 .25rem rgb(255 128 48 / 49%);
}

/* Radio button styling for add new employee form */
#form-confirm-user-details input[type="radio"] {
    appearance: none;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    color: inherit;
    font-size: var(--font-size-xl);
    line-height: 1em;
    height: 14px;
    width: 14px;
    border: solid 1px var(--grayscale-400);
    border-radius: 50%;
    margin-right: 10px;
}

#form-confirm-user-details input[type="radio"]:checked {
    appearance: none;
    -webkit-appearance: none;
    border-color: var(--main) !important;
    background-color: var(--main) !important;
    color: var(--white);
    box-shadow: 0 0 0 .25rem rgba(255, 128, 48, 0.49);
}

/* Ensure labels sit beside checkboxes/radios */
#form-confirm-user-details .form-field {
    display: flex;
    flex-direction: row;
    align-items: center;
}

#form-confirm-user-details .form-field label {
    display: inline;
    margin-bottom: 0;
}

/* Tag display is now handled by unified tag system in style.css */

.contract-template-selection .select2-container,
#form-update-employee .select2-container,
#whs-create-qr-form .select2-container{
    width: 100% !important;
}

/* .send-document-bottom migrated to components/forms.css */

@media (max-width: 1280px) {
    .content-col-main {
        width: 100%;
        flex: 0 auto;
    }

    .content-col-sidebar {
        width: 100%;
    }
}

/* Layout styles moved to layout/grid.css */

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    display: none;
}

body .select2-container--default .select2-selection--single .select2-selection__rendered{
    color: var(--text-muted);
}
.header-company .select2-container,
.header-company .select2-selection--single {
    min-height: 54px;
}

.header-company .select2.select2-container {
    max-width: 220px;
}

/* .dark-mode .sidebar-wrapper #menu-item-admin-site moved to dark-mode.css */

.dt-scroll .dt-scroll-body {
    border-bottom: 0;
}

.dt-container .terms-container .tag-div,
.dt-container td .tag-div {
    width: fit-content;
}

.form-group>label.mb-2 {
    font-weight: var(--font-weight-medium);
}
#create-document-form .form-group>label.mb-2{
    font-weight: var(--font-weight-semibold);
}
form hr:not(.field-hr) {
    opacity: .1;
    margin-block: var(--spacing-5);
}

/* Template field separator lines */
form hr.field-hr {
    opacity: 1;
    border-top: 1px solid var(--border-color, #E5E5E5);
    margin-block: var(--spacing-5);
}

/* .doc-table-button height now controlled by tag padding variables in style.css */

.employee-title-group+input {
    display: none;
}

/* .form-actions styles are in components/forms.css */

/* Cancel button override */
.form-actions .cancel-btn {
    padding: 0;
    border: 0;
    text-decoration: underline;
}

form .btn-outline-primary {
    border-color: var(--gray-900);
}

form .btn-outline-primary:hover {
    border-color: var(--color-info);
}

.counter-item-label,
.td-tags,
.my-task-label,
table.table.dataTable,
.table>thead>tr>th {
    font-size: var(--font-size-sm);
}

.content-body>.row>.col-lg-8.col-12 {
    width: 100%;
    max-width: 700px;
}

.content-body>.row>.col-lg-8.col-12 .select2-container {
    width: 100% !important;
}

/* .tag-div .separator styles migrated to components/badges.css */

#view-document-btn {
    align-items: center;
}

.content-body>div.d-flex:first-child {
    gap: 20px;
}

/* Note: a.verimus-btn button styles are in components/buttons.css */

ul#menu-sidebar li a {
    font-weight: var(--font-weight-medium);
}


.single-template:not(.logged-in) a>button,
.single-template:not(.logged-in) .btn-document-template {
    background-color: var(--main);
    border-radius: var(--btn-border-radius);
    line-height: var(--spacing-5);
    padding: var(--btn-padding-y-sm) var(--btn-padding-x-sm);
    margin-bottom: var(--spacing-2-5);
    --bs-text-opacity: 1;
    color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
    border: 0;
    font-weight: var(--btn-font-weight);
}

.single-template:not(.logged-in) a>button {
    font-size: var(--font-size-base);
    line-height: 60px;
    padding-inline: 15px;
    padding-block: 0;
    margin-bottom: 0;
}

.single-template:not(.logged-in) .left-side-content {
    padding-right: var(--spacing-10);
}

.single-template:not(.logged-in) header {
    padding-inline: 0;
}

.single-template:not(.logged-in) .notice-container-header-top-wraper {
    max-width: 1020px;
    margin-inline: auto;
}

.single-template:not(.logged-in) h1 {
    font-size: var(--font-size-5xl);
    line-height: 122%;
    max-width: 670px;
}

.single-template:not(.logged-in) .users-star-rate img {
    width: 95px;
}

.single-template:not(.logged-in) header .suitable {
    flex: 1;
}

.single-template:not(.logged-in) .right-side-content h2 {
    font-size: var(--font-size-4xl);
    line-height: 110%;
}

.single-template:not(.logged-in) .right-side-content {
    padding-left: var(--spacing-10);
}

.single-template:not(.logged-in) .right-side-content .section {
    font-size: var(--font-size-base);
    line-height: 130%;
}

.single-template:not(.logged-in) header .btn-view-sample {
    display: flex;
}

.single-template:not(.logged-in) header .btn-view-sample img {
    filter: brightness(1000) contrast(100) grayscale(1);
}

h1.entry-title {
    font-size: var(--font-size-3xl);
    font-weight: var(--font-weight-extrabold);
}

.knowledge-center-card .knowledge-center-card-text {
    padding: var(--spacing-5);
}

.knowledge-center-card .knowledge-center-link {
    margin-bottom: var(--spacing-2-5);
}

/* dashboard icon */
.menu-item-66 img {
    width: 22px;
}

/* documeent icon */
.menu-item-559 img {
    width: 22px;
    margin-inline: 3px -3px;
}

/* template icon */
.menu-item-103 img {
    width: 18px;
    margin-inline: 2px -2px;
}

/* .col-12.col-md-6:has(.signature-container) {
    background-color: #f1f1f1;
    padding: 30px;
    border-radius: 10px;
} */

/* .upload-logo-label styles migrated to components/forms.css */

.page-template-advice .sidebar,
.page-template-advice .advice-sidebar {
    display: none;
}

.select2-container .select2-selection {
    position: relative;
    transition: all 200ms;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: var(--grayscale-200);
    outline: 0;
    box-shadow: 0 0 10px 0px rgba(0, 0, 0, .075);
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow {
    right: 12px;
}

.select2-container {
    width: unset;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    display: block;
    border: 0;
    width: 20px;
    height: 20px;
    background-size: unset;
    left: 0;
    right: 0;
    margin: auto;
    top: 0;
    bottom: 0;
}

.main-content .banner-full-w {
    margin-right: -20px;
    margin-left: -20px;
    margin-top: -20px;
    color: var(--wc-highligh-text);
    padding: 20px 10px;
    border-radius: var(--radius-2xl) var(--radius-2xl) 0 0;
}

.banner-full-w h1 {
    font-size: var(--font-size-5xl);
    line-height: 100%;
    margin-top: var(--spacing-2-5);
    color: var(--wc-highligh-text);
    max-width: 1000px;
}

.banner-full-w .category-label {
    margin-bottom: 0;
}

#knowledge-center>#knowledge-center {
    padding-inline: 15px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow,
.select2-selection__arrow {
    background: unset;
}

.gform_wrapper .gfield input.datepicker {
    width: 100%;
    background-color: var(--input-bg);
    color: var(--input-text-color);
    font-size: var(--input-font-size);
    border-color: var(--input-border-color);
    border-radius: var(--input-border-radius);
    box-shadow: none;
    height: var(--input-height);
}

body .select2-container .select2-selection--single .select2-selection__arrow b {
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hldnJvbi1kb3duIj48cG9seWxpbmUgcG9pbnRzPSI2IDkgMTIgMTUgMTggOSI+PC9wb2x5bGluZT48L3N2Zz4=) no-repeat;
    border: 0;
    width: 20px;
    height: 20px;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
}


/* .global-footer styles migrated to layout/footer.css */

.title-card {
    margin-bottom: var(--spacing-2-5);
}

/* form .upload-logo-label styles migrated to components/forms.css */

form input:not([type="checkbox"]):not([type="submit"]),
form textarea.form-control {
    background-color: var(--white-100);
}

/* .modal-header h2, .modal-body h3, and .modal-body table styles are in components/modals.css */

.entry-header .step-wrap {
    gap: var(--spacing-2-5);
    align-items: center;
    margin-bottom: var(--spacing-2-5);
}

.entry-header .step-wrap h2 {
    font-size: var(--font-size-xl);
    line-height: 122%;
    margin: 0;
}

.entry-header h1.step-heading-title {
    font-size: var(--font-size-3xl);
    line-height: 36px;
    max-width: 580px;
}

@media (max-width: 1400px) {
    .single-template:not(.logged-in) .notice-container-header-top-wraper {
        max-width: 840px;
    }
}

@media (max-width: 1280px) {

    .dt-table-title,
    .dt-table-search-filter {
        width: unset;
    }

    /* .main-content .content-body>.row:has(.template-contaier) {
        flex-direction: column-reverse;
    }

    .main-content .template-left-content,
    .main-content .template-contaier {
        width: 100%;
        padding: 0;
    }

    .main-content .template-left-content {
        padding-block: 0 40px;
    }

    .main-content .template-contaier .template-content {
        padding: 0;
    }

    .main-content .template-contaier .template-content>article {
        border: 0;
    } */
    .single-template:not(.logged-in) .notice-container-header-top-wraper {
        max-width: 100%;
        padding-inline: 40px;
    }
}



@media (max-width: 1024px) {
    .global-footer p>span {
        display: block;
        padding-top: 5px;
    }

    .main-content {
        padding-bottom: var(--spacing-12);
    }
}

@media (max-width: 1024px) {

    .dt-table-search-filter .dt-table-search-wrap,
    .dt-table-search-filter .dt-table-select-wrap {
        width: auto;
    }
}

@media (max-width: 1024px) {

    .single-template:not(.logged-in) .left-side-content,
    .single-template:not(.logged-in) .right-side-content {
        padding-inline: 0;
    }
}

@media (max-width: 1024px) {
    .main-content {
        padding-bottom: var(--spacing-12);
    }
}

@media screen and (max-width: 767px) {
    .main-content {
        padding: 20px 10px;
        width: 100%;
    }

    .single-template:not(.logged-in) .notice-container-header-top-wraper .notice-sign {
        /* display: block !important;
        text-align: center; */
        align-items: center;
        flex-direction: column;
        gap: 10px;
    }

    .single-template:not(.logged-in) .notice-container-header-top-wraper .notice-sign>.d-flex {
        margin-inline: 0 !important;
    }

    .single-template:not(.logged-in) .notice-container-header-top-wraper .notice-sign .suitable {
        justify-content: center;
        width: 100% !important;
    }

    .single-template:not(.logged-in) .notice-container-header-top-wraper .notice-sign .suitable div {
        text-align: left;
    }

    .single-template:not(.logged-in) .notice-container-header-top-wraper .notice-button {
        align-items: center;
    }

    .single-template:not(.logged-in) h1 {
        font-size: var(--font-size-3xl);
        line-height: 112%;
    }

    .single-template:not(.logged-in) .right-side-content h2 {
        font-size: var(--font-size-2xl);
        line-height: 100%;
    }

    .global-footer {
        position: static;
        padding: 0 10px 10px;
        text-align: center;
    }
}

.notice-content {
    max-width: unset;
}

.action-btn.archive-btn {
    padding-left: 0;
}

.search-header {
    margin-top: -5px;
}

.search-header h4 {
    font-size: var(--font-size-3xl);
    font-weight: var(--font-weight-bold);
    line-height: var(--spacing-8);
}

.search-header h4 span {
    font-size: var(--font-size-sm);
    display: block;
}

.search-result-section .title-card {
    font-size: var(--font-size-2xl);
}

.search-result-section .dt-table-wrap {
    margin-top: var(--spacing-2-5);
}

.search-result-section {
    margin-bottom: var(--spacing-8);
}

.search-result-section .inner-wrap {
    border-bottom: 1px solid var(--gray-200);
}

/* .dark-mode .search-result-section moved to dark-mode.css */

.search-result-section a.view-more-results {
    display: none;
    margin-top: var(--spacing-2-5);
    text-decoration: underline;
}

.search-result-section a.view-more-results:hover {
    text-decoration-color: transparent;
}

.search-result-section.search-result-templates .bottom {
    display: none;
}

.search-result-section tbody>tr:nth-child(n+6) {
    display: none;
}

.error404 .global-footer {
    right: 0;
    padding-left: 0;
    width: 100%;
    text-align: center;
    position: fixed;
    display: block;
}

.search-tabs {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: var(--font-size-xs);
    border: var(--card-border);
    border-radius: var(--radius-input);
    background-color: var(--white);
    padding: var(--spacing-5) var(--spacing-8);
    margin-bottom: var(--spacing-9);
}

.search-tabs .search-tab {
    flex: 1;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
}

.search-tabs a.search-tab:hover {
    text-decoration: none;
    color: inherit;
}

.search-tabs .search-tab:hover .count {
    color: var(--color-primary)
}

.search-tabs .count {
    display: block;
    font-size: var(--font-size-4xl);
    margin-top: var(--spacing-1);
    transition: var(--transition-base) all;
}

.search-tabs .divider {
    height: 72px;
    width: 1px;
    background-color: var(--gray-200);
    margin-inline: var(--spacing-10);
}

.add-task-gr-btn {
    display: flex;
}

.archive-employee-btn .icon-verimus-2>svg>path,
.delete-employee-btn .icon-verimus-2>svg>path {
    stroke: unset;
    fill: var(--gray-400);
}

/* .dark-mode employee button icons moved to dark-mode.css */

.user-role-changer-container .select2-container {
    width: 100% !important;
    margin-bottom: var(--spacing-2-5);
}

a.fit-content {
    width: fit-content;
}

.notifications-list>.notification-link-card {
    border-bottom: 1px solid var(--gray-100);
}

/* Notification list page styles - scoped to .notifications-list context */
.notifications-list .notification-link-card:hover .notification-card {
    box-shadow: unset;
    background-color: unset;
}

.notifications-list .notification-link-card .notification-content>h3 {
    transition: all 200ms;
}

.notifications-list .notification-link-card:hover .notification-content>h3 {
    color: var(--color-primary);
}

.notifications-list .notification-card {
    padding-left: 0;
    border-radius: 0;
    background-color: unset;
    box-shadow: unset;
    border: 0;
}

/* .task-message styles migrated to components/alerts.css */

.notice-button:hover {
    width: fit-content;
}

.notice-container-header-top-wraper button,
.notice-button button {
    transition: 200ms all;
}

.notice-container-header-top-wraper button:hover,
.notice-button button:hover {
    background-color: var(--main-hover);
    border-color: var(--main-hover);
    color: var(--white);
    transition: var(--transition-base) all;
}

.task__title {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
}

.table-user_task tr td {
    vertical-align: unset;
}

#employees-table_wrapper .terms-container .tag-div {
    padding: var(--tag-padding-y) var(--tag-padding-x);
    border-radius: var(--tag-border-radius);
    font-size: var(--tag-font-size);
}

/* h5.modal-title styles are in components/modals.css */

.training-template-default .training>h1 {
    font-size: var(--font-size-3xl);
    padding-block: var(--spacing-5) 0;
}

#send-collection-submit:hover {
    color: var(--white);
}

.task-header .task-header-right {
    flex: 1;
}

a.my-task-label,
svg path {
    transition: 200ms all;
}

a.notification-link:hover .notification-item svg path {
    stroke: var(--color-primary);
}

a.my-task-label {
    border-radius: var(--radius-card);
}

a.my-task-label.active svg path,
a.my-task-label:hover svg path {
    stroke: var(--main);
}

/* .dark-mode notification items moved to dark-mode.css */

.employee-title-group {
    align-items: center;
}

.employee-title-group h3.title-card {
    margin-bottom: 0;
}

/* toggle-view now uses ghost-verimus-btn - see buttons.css */

.dt-table-wrap.hide {
    display: none;
}

/* .hr-command-tip styles migrated to components/alerts.css */

/* .modal-hr-command-tip styles migrated to components/modals.css */

.job-actions .contractor-jobs-btn {
    padding: var(--spacing-1) var(--spacing-2-5);
    font-size: var(--font-size-xs);
}

.job-actions .actions-wrap {
    display: flex;
    gap: var(--spacing-1);
    align-items: center;
}

.rate-radios {
    display: flex;
    flex-direction: column;
}

.rate-radios input {
    height: unset !important;
}

.contractor-jobs-container .contractor-jobs-form-container {
    border: 0;
}

/* Contractor jobs form uses .form-control for uniformity with employee-detail (label, placeholder, bg via design system) */

/* .birthday-banner-container and .birthday-card styles migrated to components/birthday-banner.css */
/* Dark mode .form-control styles are in components/forms.css */
/* Carousel and birthday-related styles migrated to components/birthday-banner.css */

#employment-types ul li {
    margin-bottom: var(--spacing-1);
}

/* Dark mode birthday banner migrated to components/birthday-banner.css */

.page-template-password-reset .global-footer,
.page-template-recovery-password .global-footer {
    position: unset;
    text-align: center;
    padding-left: 0;
    max-width: 800px;
    margin-inline: auto;
    margin-top: var(--spacing-5);
}

#forgot-password-form-wrapper .auth-form-success:last-child {
    margin-bottom: 0;
}

.auth-form-success a {
    color: var(--white);
    text-decoration: underline;
}

.auth-form-success a:hover {
    text-decoration: none;
}


/* .modal-bday-preview, .bday-email-banner, #preview-bday-message, #birthdayCarousel styles migrated to components/birthday-banner.css */

.notifications-list-wrap {
    position: absolute;
    z-index: 10020;
    width: min(340px, calc(100vw - 32px));
    top: calc(100% + 15px);
    right: -20px;
    opacity: 0;
    pointer-events: none;
    transition: all 200ms;
    transform: translateY(-10px);
}

.notifications-list-wrap .notifications-list-container {
    position: relative;
    background-color: var(--white);
    border-radius: var(--radius-input);
    box-shadow: var(--shadow-lg);
    padding: var(--spacing-1) 22px 25px;
    max-height: min(70vh, 520px);
    overflow-y: auto;
}

.notifications-list-wrap:after,
.notifications-list-wrap:before {
    content: "";
    height: 0;
    width: 0;
    border: 15px solid transparent;
    border-bottom-color: var(--white);
    position: absolute;
    top: -30px;
    right: 18px;
}

.notifications-list-wrap:before {
    border-bottom-color: rgba(0, 0, 0, .2);
    filter: blur(3px);
}

.notifications-list-wrap.active {
    opacity: 1;
    pointer-events: all;
    transform: translateY(0);
}

.notifications-list-wrap .notifications-list-container>a {
    transition: all 200ms;
    text-decoration: underline;
}

.notifications-list-wrap .notifications-list-container>a:hover {
    text-decoration-color: transparent;
}

.notifications-list-wrap .notifications-list {
    margin: 0;
    padding: 0 0 15px;
}

.notifications-list-wrap .notification-link-card .notification-content>h3 {
    font-size: var(--font-size-sm);
    line-height: 20px;
    margin: 0;
}

/* Notification badge sizing now handled in cards.css */

.notifications-list-wrap .notification-tag {
    margin: 0;
}

.notifications-list-wrap .notification-card {
    padding: 17px 0;
    gap: 18px;
    border: 0;
}

@media (max-width: 767px) {
    .notifications-list-wrap {
        position: fixed;
        top: 72px;
        left: 16px;
        right: 16px;
        width: auto;
        /* Override pointer-events:none — mobile relies on .active class for visibility */
        visibility: hidden;
        pointer-events: none;
    }

    .notifications-list-wrap.active {
        visibility: visible;
        pointer-events: all;
    }

    .notifications-list-wrap:after,
    .notifications-list-wrap:before {
        display: none;
    }

    .notifications-list-wrap .notifications-list-container {
        padding: 12px 16px 20px;
        border-radius: 14px;
        max-height: calc(100vh - 104px);
    }

    .notifications-list-wrap .notification-card {
        align-items: flex-start;
        gap: 12px;
    }
}

.data-removal-notice {
    padding: var(--spacing-5);
    border-radius: var(--radius-input);
    background-color: var(--color-error-light);
}

.data-removal-notice h3 {
    font-size: var(--font-size-xl);
}

.data-removal-notice a {
    text-decoration: underline;
    transition: all 200ms;
}

.data-removal-notice p {
    max-width: 685px;
}

.data-removal-notice a:hover {
    text-decoration-color: transparent;
}

.page-template-templates .gfield textarea {
    background-color: var(--white-100);
    color: var(--grayscale-400);
    font-size: var(--font-size-sm);
    border-color: var(--grayscale-200);
    border-radius: var(--radius-input);
    box-shadow: none;
}

.page-template-templates .gfield label {
    font-weight: var(--font-weight-bold);
}

.page-template-templates .gform-theme--foundation .gform_fields {
    grid-row-gap: 25px;
}

.button-wrap {
    display: flex;
    align-items: center;
    gap: var(--spacing-2-5);
}

a.underline {
    text-decoration: underline;
    transition: 200ms all;
}

a.underline:hover {
    text-decoration-color: transparent;
}

/* .button-blue and .button-outline styles migrated to components/buttons.css */

.gform_wrapper .gfield input[type="text"] {
    font-size: var(--font-size-sm);
    outline: none;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    box-sizing: border-box;
    padding: var(--spacing-4) var(--spacing-5);
    height: var(--input-height);
    background-color: var(--gray-100);
    border: 1px solid var(--gray-150);
    border-radius: var(--radius-input);
    color: var(--grayscale-900);
}

.posts-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    background: inherit;
}

.post-container {
    border-radius: var(--card-radius, var(--radius-lg));
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
    background-color: var(--card-bg, var(--white));
    border: var(--card-border);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.post-container:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.posts-grid .post-thumbnail {
    margin-bottom: 0;
    height: 250px;
    min-width: 159px;
    width: 100%;
    object-fit: cover;
    border-radius: var(--card-radius, var(--radius-lg)) var(--card-radius, var(--radius-lg)) 0 0;
}

.post-content {
    padding: var(--spacing-6);
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.post-category {
    margin-bottom: var(--spacing-2-5);
    border-radius: var(--radius-sm);
}

.post-category a,
.post-category span {
    display: inline-block;
    background-color: var(--color-primary);
    color: var(--white);
    font-size: var(--font-size-xs);
    text-decoration: none;
    padding: var(--spacing-0-5) 7px;
    border-radius: var(--radius-full);
    width: fit-content;
    transition: all var(--transition-base);
}

.post-category a:hover {
    background-color: var(--main-hover);
}


.post-content h3 {
    font-size: var(--font-size-2xl);
    margin-bottom: 0;
    letter-spacing: -0.7px;
}

.post-content h3 a:hover {
    color: var(--color-primary);
}

.post-date {
    background-color: var(--white-950);
    color: var(--gray-500);
    width: fit-content;
    padding: var(--spacing-1) var(--spacing-2-5);
    border-radius: var(--radius-full);
    font-size: var(--font-size-sm);
    margin: var(--spacing-2-5) 0;
}

.post-excerpt {
    font-size: var(--font-size-base);
    margin-bottom: 0.8rem;
    flex-grow: 1;
    line-height: 1.6;
}

.read-more {
    margin-top: auto;
}

.read-more {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-sm);
    color: var(--gray-900);
    text-decoration: underline;
    text-decoration-color: var(--color-primary);
    text-underline-offset: 6px;
    text-decoration-thickness: 2px;
}

.read-more:hover {
    text-decoration-color: transparent;
}

@media screen and (max-width: 1280px) {
    .posts-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 768px) {
    .posts-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}

.page-template-registration-template .main-content {
    max-width: 700px;
    margin-inline: auto;
    width: unset;
    padding-bottom: var(--spacing-8);
}

.page-template-registration-template .main-content .entry-title {
    text-align: center;
}

.page-template-registration-template .global-footer {
    position: static;
    text-align: center;
    padding: 0;
    justify-content: center;
}

.page-template-register-successful .empty-page-header,
.page-template-register .empty-page-header {
    display: none;
}

#multisite-registration-form .flex {
    display: flex;
    gap: var(--spacing-3-5);
}

#multisite-registration-form label {
    font-size: var(--font-size-base);
    margin-bottom: var(--spacing-2-5);
}

.page-template-register .register-form-wrap {
    padding: 0;
}

#multisite-registration-form p {
    width: 100%;
}

#multisite-registration-form .select2-container {
    width: 100% !important;
}

#register-form-wrapper .auth-logo img {
    margin-bottom: var(--spacing-5);
}

#register-form-wrapper .or-container {
    margin-block: 25px var(--spacing-5);
}

#register-form-wrapper .verimus-btn {
    height: 60px;
    font-size: var(--font-size-base);
    font-weight: var(--btn-font-weight);
    border-radius: var(--btn-border-radius);
}

#register-form-wrapper p.checkbox-offer {
    margin-bottom: var(--spacing-2-5);
}

#register-form-wrapper p.checkbox-terms {
    margin-bottom: 25px;
}

#register-form-wrapper p.checkbox-terms label,
#register-form-wrapper p.checkbox-offer label {
    margin-bottom: 0;
}

#register-form-wrapper .auth-form-footer {
    margin-top: var(--spacing-2-5);
}

#register-form-wrapper label+span.description {
    display: block;
    margin-block: -5px var(--spacing-2-5);
    opacity: .7;
}

#multisite-registration-message p {
    padding: var(--spacing-5);
    border-radius: var(--radius-sm);
    border: 1px solid var(--gray-300);
    background-color: var(--gray-100);
    margin-bottom: var(--spacing-5);
}

#multisite-registration-message p.error {
    border-color: var(--color-error);
    background-color: var(--color-error-light);
}

#multisite-registration-message p.success {
    border-color: var(--color-success);
    background-color: var(--color-success-light);
}

#employee-tasks .dashboard-task-item .task__tags {
    text-align: right;
}

@media (min-width: 1400px) {
    .task__label {
        width: unset;
    }
}

@media screen and (max-width: 767px) {
    .sidebar-content {
        width: 100%;
    }
}

.employee-detail-document .td-tags {
    width: 160px;
}

h4.logo-title {
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-bold);
}

.archive.category .search-posts-container,
.page-template-page-insights .search-posts-container {
    padding: 0;
    position: relative;
}

.page-template-page-insights .content-body {
    /* padding: 0 10px; */
}

.category-filter .select2-container .select2-selection {
    background-color: var(--white);
}

.task__tags .tag-author {
    margin-left: unset;
    padding: 4px 7px;
    background-color: var(--grayscale-100);
    width: fit-content;
    border-radius: var(--tag-border-radius);
    gap: 4px;
}

.task__tags .tag-author img {
    margin: 0;
    width: 14px;
    height: 14px;
}

.task__tags .tag-author .author-name {
    padding: 0;
    width: unset;
    min-width: unset;
    font-size: var(--font-size-xs);
    background: none;
    line-height: 1;
}

.cta-error {
    margin-block: var(--spacing-1) var(--spacing-3-5);
    padding: var(--spacing-2-5);
    background-color: var(--color-error-light);
    color: var(--color-error-dark);
    border: 1px solid var(--color-error-light);
    border-radius: var(--radius-sm);
}

.cta-error a {
    text-decoration: underline;
}

.cta-error a:hover {
    text-decoration: none;
}

input#accept-risk {
    margin-right: var(--spacing-1);
}

#my-tasks .task__tags,
#my-tasks .dashboard-task-item .task__tags {
    max-width: 100%;
    width: 100%;
    text-align: left;
}

.page-template-sites .site-header h2 {
    font-size: var(--font-size-3xl);
}

/* .content-body styles moved to layout/grid.css */

.auth-form-wrapper input[type="submit"] {
    border-radius: var(--btn-border-radius);
}

.auth-form-wrapper input:not([type="checkbox"]):not([type="submit"]) {
    border-radius: var(--input-border-radius);
}

#main-sidebar {
    padding-top: 0;
    border-right: 1px solid var(--gray-100);
}

.select2-container--default .select2-selection--single {
    border-color: transparent;
}

.notice-content-button {
    flex-direction: column;
    align-items: start;
}

.header-logo.top-header-logo-logout .verimus-icon {
    height: 40px;
}

/* WooCommerce checkout styles moved to pages/checkout.css */

button[disabled] {
    opacity: .5;
}

.select2-container--default .select2-selection--single {
    border: 1px solid var(--gray-150);
    background-color: var(--white-100);
    height: var(--input-height) !important;
}

.signature-container h2.settings-title {
    font-size: var(--font-size-3xl);
    font-weight: var(--font-weight-extrabold);
    margin: 0;
    margin-bottom: 25px;
}

.signature-wrap {
    display: flex;
    margin-inline: -5px;
    gap: var(--spacing-2-5) 0;
}

.signature-value-item {
    width: 50%;
    padding-inline: 5px;
}

.signature-value-item .image-wrap {
    background-color: var(--white-100);
    border-radius: var(--radius-input);
    overflow: hidden;
    padding: var(--spacing-2-5);
    border: 1px solid var(--gray-150);
    position: relative;
}

.signature-value-item .image-wrap a {
    position: absolute;
    top: var(--spacing-2-5);
    right: var(--spacing-2-5);
}

.signature-value-item .image-wrap img {
    mix-blend-mode: multiply;
    margin: 0;
    max-width: 100%;
    height: 175px;
    object-fit: contain;
}

.signature-value-item .image-wrap+.wrap {
    margin-top: var(--spacing-2-5);
}

#contract-preview-modal .modal-dialog {}

#close-preview-document-modal {
    position: absolute;
    top: var(--spacing-8);
    right: var(--spacing-8);
    background-color: var(--gray-900);
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
    width: 30px;
    padding: var(--spacing-2-5);
    border-radius: var(--radius-sm);
    transition: var(--transition-base) all;
}

#close-preview-document-modal:hover {
    opacity: .75;
}

#contract-preview-modal article {
    padding: 0;
    border: 0;
}

.archive-employee-btn:hover path {
    fill: var(--main);
}


table.dataTable tr td {
    transition: 200ms all;
}

table.dataTable tr:hover td {
    background-color: rgba(0, 0, 0, .05);
}

table.dataTable tr:hover .tag-div {
    background-color: var(--white);
}

/* FixedColumns (DataTables) paints frozen cells with an opaque white
   background at all times, which sits on top of the hover tint above
   and makes the row hover look like it's missing from the frozen
   start/end columns. Match the hover tint there too. */
table.dataTable tbody tr:hover > .dtfc-fixed-start,
table.dataTable tbody tr:hover > .dtfc-fixed-end {
    background-color: rgba(0, 0, 0, .05);
}

/* #employees-table-status / #archived-employees-table-status — kept here
   (global, unconditional) rather than in parts/employees-table.css, which
   only enqueues on templates/page-employees.php + page-contractors.php;
   this table's markup also renders on pages that don't match those
   templates, so those rules never applied there.

   IMPORTANT: these rules are scoped to the DataTables-generated
   "#<id>_wrapper" container, NOT "#<id>" itself. With scrollX (set in
   datatable-defaults.js) DataTables splits the table in two: the *visible*
   header lives in a cloned <table> inside .dt-scroll-head, and that clone
   has its id attribute stripped (see dataTables.js _fnFeatureHtmlTable /
   headerClone.removeAttr('id')) to avoid a duplicate-id document. The only
   copy of the table that keeps "#employees-table-status" is the one in
   .dt-scroll-body — and DataTables replaces ITS <thead> on every draw with
   a hidden sizing-only clone (_fnScrollDraw), never the one users see.
   So "#employees-table-status thead th { ... }" only ever painted the
   invisible sizing clone — never the header people actually look at —
   which is why the header background and the Type/Employment
   Type/Groups/Documents widths below silently failed to apply and the
   visible header drifted out of alignment with the body columns (worse
   the narrower the viewport, e.g. at/under ~1542px). "#<id>_wrapper" is
   the ancestor div wrapping both .dt-scroll-head and .dt-scroll-body, so
   scoping to it reaches the real visible header as well as the body. */

/* Action column divider — FixedColumns' own boundary shadow only renders
   reliably in the header clone, not the body rows, so draw a real border
   that's consistent in both instead of relying on it. Width is pinned to
   content (1%) so the frozen clone can't inherit a stray wider column and
   read as extra empty space before the icons. */
#employees-table-status_wrapper th.no-sort:not(.dt-mobile),
#archived-employees-table-status_wrapper th.no-sort:not(.dt-mobile),
#employees-table-status_wrapper .td-action-wrap,
#archived-employees-table-status_wrapper .td-action-wrap {
	border-left: 1px solid var(--gray-100);
	width: 1%;
	white-space: nowrap;
}

#employees-table-status_wrapper tbody td.td-action-wrap,
#archived-employees-table-status_wrapper tbody td.td-action-wrap {
	background-color: var(--grayscale-50);
}

/* Action column keeps its own opaque background above, which otherwise
   sits on top of the generic row-hover tint (style-fix.css) and makes
   hover look like it stops dead at the Action column. Give it its own
   (slightly darker) hover shade so the row still reads as hovered there. */
#employees-table-status_wrapper tbody tr:hover td.td-action-wrap,
#archived-employees-table-status_wrapper tbody tr:hover td.td-action-wrap {
	background-color: var(--gray-100);
}

/* Header background — every column, not just the frozen ones. Wrapper-
   scoped so it beats both the transparent default (components/tables.css)
   and DataTables' own hardcoded white on frozen (.dtfc-fixed-*) header
   cells, and so it actually reaches the visible header clone (see note
   above). --gray-100 (not --gray-50, #FAFAFA vs the card's #FFFFFF) —
   --gray-50 is a ~2% luminance difference from the white card background
   and reads as no background at all against a plain white card. */
#employees-table-status_wrapper thead th,
#archived-employees-table-status_wrapper thead th {
	background-color: var(--gray-100);
}

.dark-mode #employees-table-status_wrapper thead th,
.dark-mode #archived-employees-table-status_wrapper thead th {
	background-color: var(--dark-bg-tertiary);
}

/* Type / Employment Type / Groups / Documents have no explicit width and
   often render short or empty (no groups, no docs yet). With autoWidth:
   false + scrollX, DataTables sizes columns from that rendered content,
   so these can collapse to near-0px while Email — the longest column —
   soaks up all the freed space. That both opens a visible dead gap before
   the frozen Documents/Action columns and pushes the FixedColumns
   scroll-boundary shadow on top of the Email column instead of sitting at
   the real edge, which is what makes row hover look broken there. Fixed
   minimum widths keep every column its own real width. Applied to both
   th and td, wrapper-scoped, so the visible header clone and the body
   agree on the same widths (see note above). */
#employees-table-status_wrapper th:nth-child(2),
#employees-table-status_wrapper td:nth-child(2),
#archived-employees-table-status_wrapper th:nth-child(2),
#archived-employees-table-status_wrapper td:nth-child(2) {
	width: 8%;
	white-space: nowrap;
}

#employees-table-status_wrapper th:nth-child(3),
#employees-table-status_wrapper td:nth-child(3),
#archived-employees-table-status_wrapper th:nth-child(3),
#archived-employees-table-status_wrapper td:nth-child(3) {
	width: 10%;
	white-space: nowrap;
}

#employees-table-status_wrapper th:nth-child(4),
#employees-table-status_wrapper td:nth-child(4),
#archived-employees-table-status_wrapper th:nth-child(4),
#archived-employees-table-status_wrapper td:nth-child(4) {
	width: 12%;
}

#employees-table-status_wrapper th:nth-child(6),
#employees-table-status_wrapper td:nth-child(6),
#archived-employees-table-status_wrapper th:nth-child(6),
#archived-employees-table-status_wrapper td:nth-child(6) {
	width: 8%;
	white-space: nowrap;
}

@media (max-width: 1024px) {
    #customer_details {
        width: 100%;
        padding-right: 0;
    }
}

/* Birthday banner responsive styles migrated to components/birthday-banner.css */

@media screen and (min-width: 768px) {

    #my-tasks .toggle-content,
    #employee-tasks .toggle-content {
        display: block !important;
    }
}

@media screen and (max-width: 767px) {

    .quick-actions__header .quick-actions__title,
    .quick-actions__header .quick-actions__btn-create {
        width: fit-content;
        margin: 0 !important;
    }

    #my-tasks .toggle-content .task__item:last-child {
        border-bottom: 0;
    }

    .quick-actions__main>.row>.col-12:last-child {
        border-top: 1px solid var(--grayscale-200);
        margin-top: var(--spacing-2-5);
        padding-top: var(--spacing-3-5);
    }

    .dataTable .dt-mobile {
        display: block !important;
    }

    /* WooCommerce checkout responsive styles moved to pages/checkout.css */
}

/* Dark mode styles moved to dark-mode.css */

/* .content-body padding/border moved to layout/grid.css */

/* .dark-mode .hr-command-tip styles migrated to components/alerts.css */

.action-btn.archive-btn svg path {
    stroke-width: 25px;
    fill: var(--gray-400);
}

.action-btn.archive-btn:hover svg path {
    stroke: transparent !important;
    fill: var(--main) !important;
}

/* Dark mode archive-btn, post-container, search-posts-container, data-removal-notice moved to dark-mode.css */

/* Modal border styles are managed in components/modals.css */

.dt-container td .tag-div a,
.dt-container td .tag-div span,
.dt-container td .tag-div {
    transition: all 200ms;
}

td .terms-container a.tag-div:hover {
    border-color: var(--color-primary);
    background-color: var(--color-primary);
    color: var(--white);
}

.dt-table-search-wrap {
    position: relative;
}

.to-be-sent-table .list-group-item a {
    text-decoration: underline;
    transition: 200ms all;
}

.to-be-sent-table .list-group-item a:hover {
    text-decoration-color: transparent;
}

.collection-name a {
    transition: 200ms all;
}

.collection-name a:hover {
    color: var(--color-primary);
}

.wc_payment_methods li.wc_payment_method>input.input-radio {
    height: unset;
}

/* Dark mode contract-preview-modal and iframe styles moved to dark-mode.css */

/* WooCommerce message styles moved to pages/checkout.css */

/* WooCommerce payment and table styles moved to pages/checkout.css */

.header-company .select2-container--default .select2-selection--single {
    border: var(--input-border-width, 1px) solid var(--input-border-color);
    border-radius: var(--radius-input);
    margin: 0;
    min-height: var(--spacing-7);
}

.header-company .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--main);
    box-shadow: var(--input-focus-shadow);
}

/* Stripe express checkout styles moved to pages/checkout.css */


@media screen and (max-width: 767px) {
    /* .birthday-banner-container responsive styles migrated to components/birthday-banner.css */

    .page-template-sites .content-body {
        padding-inline: var(--spacing-md);
    }

}

.search-tabs-front-page,
.search-tabs-page {
    margin-bottom: var(--spacing-4);
    border: var(--card-border);
    border-radius: var(--radius-xl);
}

/* .dark-mode .search-tabs .search-tab moved to dark-mode.css */

#register-notice:hover {
    background-color: var(--color-primary);
    color: var(--white);
    border-color: var(--color-primary);
}

textarea.form-control {
    height: 200px;
}

#menu-sidebar>li {
    margin-bottom: var(--spacing-1);
}

#menu-sidebar>li a {
    transition: 100ms all;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-background-clip: text;
    -webkit-text-fill-color: var(--gray-800);
    box-shadow: inset 0 0 0 100px var(--gray-50);
}

.employee-detail-left-container {
    padding-right: var(--spacing-12);
}

.select2-container--default .select2-search--inline .select2-search__field {
    height: 37px;
}

.action-buttons {
    white-space: nowrap;
}

a.tag-div {
    color: var(--gray-500);
    border: none;
}

a.tag-div:hover {
    color: var(--white);
}

a.tag-div.doc-table-button:hover {
    color: var(--bs-btn-hover-color);
}

.certificate-img {
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 1400px) {
    .entry-meta-category {
        font-size: var(--font-size-xs);
    }
}

.page-template-register .sso-group-btn,
.page-template-register .or-container {
    display: none;
}

[data-bs-target^="#archive-document-"] svg path {
    stroke: unset;
}

/* [data-bs-target^="#archive-document-"] svg path:nth-child(3), */
[data-bs-target^="#archive-document-"] svg path:nth-child(4) {
    display: none;
}

.icon-verimus-2:hover>svg>path {
    stroke: unset;
    fill: var(--main);
}

.single-template .entry-content>p.mb-2+div {
    padding: 0;
}

.single-template .templates-head-info {
    display: none;
}

.templates-head-info-right h4 {
    text-align: center;
    font-weight: var(--font-weight-semibold);
    font-size: var(--font-size-base);
    margin-bottom: var(--spacing-3-5);
}

.templates-head-info-right>.d-flex {
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}



/* HRC Integration styles moved to pages/integrations.css */

.flatpickr-hour,
.flatpickr-minute {
    width: 100px !important;
    padding: 2px !important;
    height: 30px !important;
}

.dt-scroll+.bottom .custom-bottom-wrapper {
    padding: var(--spacing-3) var(--spacing-4);
    border-top: 1px solid var(--gray-300);
}

.alert {
    border: 0;
    border-radius: var(--radius-input);
    color: var(--gray-900);
}

.alert-primary {
    background: var(--color-primary-light);
}

.alert .btn,
.draft-item .btn {
    border-color: var(--main);
    background-color: var(--main);
    color: var(--white);
}

.alert .btn:hover,
.draft-item .btn:hover {
    background-color: var(--main-hover);
}

.draft-item .btn-danger:hover {
    background-color: var(--bs-btn-hover-bg);
    border-color: var(--bs-btn-hover-border-color);
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
    color: var(--gray-900);
}

.template-left-content .browse-drafts-btn {
    height: 46.4px;
    font-weight: var(--btn-font-weight);
    font-size: var(--btn-font-size);
    border-radius: var(--btn-border-radius);
}

/* Google Maps Places Autocomplete Styles */
.pac-container {
    z-index: 99999 !important;
    border-radius: var(--radius-lg);
    border: 1px solid var(--gray-200);
    box-shadow: var(--shadow-lg);
    font-family: var(--font-family-base);
    margin-top: var(--spacing-1);
}

.pac-item {
    padding: var(--spacing-2-5) var(--spacing-3-5);
    cursor: pointer;
    font-size: var(--font-size-sm);
    line-height: var(--line-height-normal);
    border-bottom: 1px solid var(--gray-100);
}

.pac-item:hover,
.pac-item-selected {
    background-color: var(--gray-50);
}

.pac-item:last-child {
    border-bottom: none;
}

.pac-icon {
    margin-right: var(--spacing-2-5);
}

.pac-item-query {
    font-weight: var(--font-weight-medium);
    color: var(--gray-800);
}

.pac-matched {
    font-weight: var(--font-weight-semibold);
    color: var(--color-primary);
}

/* Visual indicator for autocomplete-enabled inputs */
.google-autocomplete-enabled {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23687588' viewBox='0 0 16 16'%3E%3Cpath d='M8 16s6-5.686 6-10A6 6 0 0 0 2 6c0 4.314 6 10 6 10zm0-7a3 3 0 1 1 0-6 3 3 0 0 1 0 6z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 16px;
    padding-right: 36px !important;
}

/* Ensure pac-container appears above modals */
.modal-open .pac-container {
    z-index: 100000 !important;
}

/* ==========================================================================
   DESKTOP: Force hide dt-mobile column (must be at end to override mobile rules)
   ========================================================================== */
@media screen and (min-width: 1024px) {

    .dt-mobile,
    td.dt-mobile,
    th.dt-mobile,
    table .dt-mobile,
    table td.dt-mobile,
    table th.dt-mobile,
    .dataTable .dt-mobile,
    .dataTable td.dt-mobile,
    .dataTable th.dt-mobile,
    [id*="table"] .dt-mobile,
    [id*="table"] td.dt-mobile,
    [class*="table"] .dt-mobile,
    [class*="table"] td.dt-mobile {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        min-width: 0 !important;
        max-width: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        overflow: hidden !important;
    }
}

/* ==========================================================================
   MIGRATED FROM CUSTOMIZER - Additional CSS
   Dead rules pruned 2026-04-24 (unused in any theme/plugin markup):
     - `.optional-textarea-wrapper`        (class never rendered)
     - `.single-template h1`               (body class doesn't exist)
     - `#main ol` counter stack + generic  (no nested-numbered content
       `ol ol ol ol` list-style cascade    authored inside #main)
     - `.dt-container .tag-div` comment    (handled in components/badges.css)
     - `.select2-results__options` comment (handled in custom-select2.css)
   ========================================================================== */

/* Checkbox group (Bootstrap/GF form-check structure) —
   used in parts/onboarding-form/{documents,tax}.php and
   functions/documents/document-field-rendering.php */
.checkbox-group {
    display: flex;
    align-items: flex-start;
    gap: var(--spacing-2);
    margin-bottom: var(--spacing-3);
}

.checkbox-group .form-check-input {
    margin-top: 4px;
    width: 20px;
    height: 20px;
    cursor: pointer;
    accent-color: var(--charcoal, #000);
    border-radius: var(--radius-sm);
}

.checkbox-group .form-check-label {
    flex: 1;
    text-align: left;
    padding-top: 2px;
    padding-left: var(--spacing-1-5);
}

/* Gutenberg list - hide stray br (content-filters.php renders the matching markup) */
.wp-block-list ol>br {
    display: none !important;
}

/* Sidebar - no left padding (used by single-collection.php, category.php, index.php, etc.) */
.sidebar-content {
    padding-left: 0;
}

/* Single template CPT - mobile (single-template.php renders `template` CPT) */
@media (max-width: 600px) {
    .single .template.type-template {
        border-right: none;
        padding-right: 0;
    }
}

/* Gravity Forms - hide form heading (GF auto-wraps headings in this class) */
.gform_heading {
    display: none !important;
}

/* Footer (footer.php + parts/common/site-footer.php) */
.global-footer {
    pointer-events: auto;
}

div.pagination {
    padding-top: 20px;
    gap: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

div.pagination .page-numbers {
    width: 32px;
    height: 32px;
    margin-bottom: 0;
    border-radius: var(--radius-input);
    font-size: var(--font-size-sm);
    color: var(--text-primary);
    border-color: transparent;
    outline: none;
    box-shadow: none;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background-color: var(--bs-pagination-bg);
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    font-weight: var(--font-weight-semibold);
}

div.pagination .page-numbers.current {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: var(--white);
}

div.pagination .page-numbers.previous,
div.pagination .page-numbers.next {
    text-overflow: clip;
    position: relative;
    overflow: hidden;
    border: 1px solid var(--grayscale-200);
}

div.pagination .page-numbers:hover {
    background-color: var(--bs-pagination-hover-bg);
}

.wtp-form-container input[type="text"],
.wtp-form-container input[type="date"] {
    background-color: var(--white-100);
    height: var(--input-height);
    padding: var(--input-padding-y) var(--input-padding-x);
    font-family: inherit;
    font-size: var(--input-font-size);
    font-weight: var(--font-weight-normal);
    color: var(--input-text-color);
    border: var(--input-border-width) solid var(--input-border-color);
    border-radius: var(--input-border-radius);
    transition: border-color var(--transition-base) var(--ease-in-out), box-shadow var(--transition-base) var(--ease-in-out);
}

.page-template-advice .entry-content .gform_wrapper.gform-theme .select2-container--default .select2-selection--single,
.page-template-advice .entry-content .gform_wrapper.gform-theme .gform_body .gfield input[type="text"],
.page-template-advice .entry-content .gform_wrapper.gform-theme .gform_body .gfield textarea {
    background-color: var(--white-100);
}

.wtp-form-container input[type="text"]:focus,
.wtp-form-container input[type="date"]:focus,
.page-template-advice .entry-content .gform_wrapper.gform-theme .select2-container--default .select2-selection--single[aria-expanded="true"],
.page-template-advice .entry-content .gform_wrapper.gform-theme .gform_body .gfield input[type="text"]:focus,
.page-template-advice .entry-content .gform_wrapper.gform-theme .gform_body .gfield textarea:focus {
    outline: none;
    border-color: var(--input-focus-border-color);
    box-shadow: var(--input-focus-shadow), 0px 0px 0px 6px rgba(255, 128, 48, 0.2);
}

.page-template-advice .entry-content .gform_wrapper.gform-theme .select2-container--default .select2-selection--single[aria-expanded="true"] {
    border-radius: var(--input-border-radius);
}

.site-lists li:not(:last-child) {
    border-bottom: 1px solid var(--gray-200);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.site-lists {
    list-style: none;
}

#positions-table.dataTable [data-dt-column]:last-child,
#positions-table.dataTable td:last-child {
    text-align: left !important;
}

#positions-table.dataTable [data-dt-column]:last-child,
#modern-awards-table.dataTable [data-dt-column]:last-child {
    display: table-cell;
}

#modern-awards-table.dataTable [data-dt-column]:first-child {
    min-width: 100%;
}

.empty-page-header>.header-logo {
    grid-template-columns: repeat(3, 1fr);
    display: grid !important;
    padding: 20px;
}

.empty-page-header>.header-logo>* {
    display: flex;
    align-items: center;
}

.empty-page-header>.header-logo>span {
    justify-content: center;
}

.empty-page-header .my-auto {
    justify-content: end;
}

.empty-page-header+.site-main {
    padding-top: 10vh;
}

@media (max-width: 860px) {
    .empty-page-header>.header-logo>a span {
        display: none;
    }
}

@media (max-width: 540px) {
    .empty-page-header .me-2 {
        display: none;
    }
}

#delete-employee i svg path,
#send-employee-invite i svg path {
    stroke: none;
    fill: var(--icon-color-default);
    transition: all 0.2s ease;
}

#delete-employee:hover i svg path,
#send-employee-invite:hover i svg path {
    stroke: none !important;
    fill: var(--main) !important;
}

#add-employee-collections-table thead th:first-child .dt-column-order {
    display: none;
}

.select2-results__option--highlighted .text-muted,
.select2-results__option:hover .text-muted {
    color: #fff !important;
}

.hrc-asset-registry .hrc-quick-action-btn {
    background-color: var(--grayscale-100);
    color: var(--charcoal, #1F2937);
    border: 1px solid var(--grayscale-200, #E5E5E5);
}

.hrc-asset-registry .hrc-quick-action-btn:hover:not(:disabled) {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: var(--white);
}

.hrc-asset-header:has(h1) {
    border-bottom: 1px solid var(--gray-200);
    padding-bottom: 20px;
    align-items: end !important;
}

.page-template-register-successful .auth-logo {
    padding-block: 20px 10vw;
}

.back-to-assets.tag-div {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    border-radius: var(--tag-border-radius);
    font-size: var(--tag-font-size);
    justify-content: center;
    gap: var(--spacing-1);
    text-align: center;
    height: var(--tag-height);
    padding: var(--tag-padding-y) var(--tag-padding-x);
    background-color: var(--tag-bg);
    border: none;
    color: var(--tag-color);
    margin-bottom: var(--spacing-2-5);
}

.back-to-assets.tag-div:hover {
    background-color: transparent;
    color: #000;
}

@media (min-width: 561px) {
    #event-notice>.p-3 {
        max-width: 52vw;
    }
}

@media (min-width: 1199px) {
    #event-notice>.p-3 {
        max-width: 50%;
    }
}



.page-template-only-available-in-australia-and-new-zealand .auth-logo {
    margin-bottom: 10vh
}

.page-template-only-available-in-australia-and-new-zealand .primary-verimus-btn {
    margin-block: 40px;
}

#employment-checklist table tr:nth-child(even) {
    background-color: rgba(0, 0, 0, 0.05);
}

#employment-checklist table th,
#employment-checklist table td {
    padding-inline: 10px;
}

#employment-checklist table th {
    padding-bottom: 10px;
}

#assets-table .dt-column-title {
    padding-right: 15px;
}

.link-verimus-btn.v-action--edit,
.link-verimus-btn.v-action--delete {
    border: 0;
}

#documents-table_wrapper .dataTable [data-dt-column]:last-child {
    display: table-cell;
    width: 120px;
}

body.whs-page-dashboard button.whs-view-report {
    background: 0;
    border: 0;
    appearance: none;
}

.review-overview-page .form-label {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--grayscale-400, #687588);
    margin-bottom: 6px;
}

.review-overview-page .table>thead>tr>th {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--grayscale-400, #687588);
    padding: 12px 16px;
    white-space: nowrap;
}

.review-row .expand-row-btn {
    border: 0;
}

.review-overview-page .summary-card {
    background: var(--card-bg, #ffffff);
    border: var(--card-border);
    border-radius: var(--card-radius);
    padding: var(--spacing-5);
    display: flex;
    align-items: center;
    gap: var(--spacing-4);
    transition: all 0.2s ease;
}

.review-overview-page .summary-card-icon {
    font-size: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: var(--card-radius);
    color: var(--main, #FF8030);
    background: rgba(255, 128, 48, 0.08) !important;
}

.review-overview-page .summary-card-value {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--charcoal, #1F2937);
}

.review-overview-page .summary-card-label {
    font-size: 13px;
    color: var(--grayscale-400, #687588);
    margin-top: 2px;
}

.org-person[draggable="true"] {
    margin: 5px;
}

.org-children {
    padding-inline: 5px;
}

.whs-report-detail .v-badge+.v-badge {
    margin-top: 0;
}

.v-badge-group {
    gap: 10px;
}

.v-badge-group-item {
    display: flex;
    align-items: center;
    gap: 5px;
}

.v-badge-group-item span:not(.v-badge) {
    font-size: 0.75rem;
    font-weight: 600;
}

.grey-verimus-btn {
    background-color: var(--gray-100);
    color: var(--text-secondary);
}

.grey-verimus-btn:hover {
    color: #fff;
    background-color: var(--color-primary);
}

.hrc-integration-info .col-md-6 {
    width: fit-content;
}

.hrc-integration-info .col-md-6>.hrc-status-badge {
    margin-inline: auto;
}

.site-main {
    position: relative;
}

.global-footer {
    right: 0;
}

body.whs-page-report {
    position: relative;
}

.page-template-sites .site-lists {
    max-width: 500px;
    margin-inline: auto;
    margin-top: 40px;
}

.page-template-sites .site-logo {
    padding-bottom: 30px;
}

.page-template-sites .site-lists>li:first-child {
    border-top: 1px solid var(--gray-200);
    padding-top: 20px;
}

@media (max-width: 500px) {
    .page-template-sites .site-logo {
        padding-bottom: 0;
    }

    .page-template-sites .site-lists {
        margin-top: 0;
    }
}

.card.filters-bar {
    border: 0;
}

.card.filters-bar .card-body .mb-2 {
    margin-bottom: 0 !important;
}

.card.filters-bar .card-body {
    padding-inline: 0;
}

.card.filters-bar .card-body.align-items-center {
    align-items: end !important;
}

#assets-table thead th,
.hrc-asset-filters.card+.card,
.card.reviews-table-container {
    border: 0;
}

.hrc-asset-filters.card+.card .card-body,
.card.reviews-table-container .card-body {
    padding: 0;
}

#reviewsTable tr td {
    transition: 200ms all;
}

#reviewsTable tr:hover td {
    background-color: rgba(0, 0, 0, .05);
}

.menu-item .sub-menu li svg {
    display: none;
}

.header-profile>.notifications {
    position: relative;
}

.current-plan-status-bar {
    border: 1px solid rgba(0, 0, 0, .1);
}

.site-main.page-template-advice .content-body>.row>.order-2 {
    order: unset !important;
}

@media (max-width: 1199px) {
    .global-footer {
        position: unset !important;
    }

    .main-content {
        padding-bottom: 0 !important;
    }
}

.hrc-employee-management>.mb-4 {
    border-bottom: 1px solid var(--gray-100, #e9ecef);
    padding-bottom: 20px;
}

.hrc-xero-integration .hrc-status-badge {
    width: 100%;
}

#onboarding-first-collection-message ul {
    padding-left: 15px !important;
}

.search-tabs+.row>.col-12:last-child .content-body {
    margin-top: 0 !important;
}

.nav li.nav-item {
    margin-bottom: 0;
}

.main-content.col-12 .hrc-xero-integration>.card {
    border: 0;
}

.hrc-asset-header:not(:has(h1)) {
    border-top: 1px solid var(--gray-200);
    padding-top: 20px;
}
.main-content{
    border-top: var(--card-border);
}
.submit-btn-row .form-group{
    padding:0;
}
table.dataTable thead>tr{
    background: none;
}
table.table thead>tr th{
    border-bottom: 0;
    padding: 12px 16px;
    white-space: nowrap;
    background-color: var(--white-100);
}
table.table thead>tr th:first-child,
.um-wrapper table thead th:first-child{
    border-radius:var(--radius-input)  0 0 var(--radius-input) ;
  }
  table.table thead > tr th:last-child,
  .um-wrapper table thead th:last-child,
  table.table thead > tr th:not(.dt-mobile):has(+ .dt-mobile:last-child) {
    border-radius: 0 var(--radius-input) var(--radius-input) 0;
  }
