:root {
    --qc-primary-gray-color: #f7f7f7;
    --qc-secondary-gray-color: #b7b7b7;
    --qc-dark-gray-color: #5A5A5A;
    --qc-raddish-brown-color: #DD5C5A;
    --qc-primary-blue-color: #0062FF;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-MediumItalic.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-SemiBoldItalic.ttf') format('truetype');
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-BoldItalic.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-ExtraBoldItalic.ttf') format('truetype');
    font-weight: 800;
    font-style: italic;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Plus Jakarta Sans';
    src: url('../path/static/PlusJakartaSans-ExtraLightItalic.ttf') format('truetype');
    font-weight: 200;
    font-style: italic;
}


/* Add more @font-face blocks for other weights/styles as needed */


body {
    font-family: 'Plus Jakarta Sans', sans-serif;
    /* min-height: 100vh; */
    margin: 0;
    padding: 0;
    height: 100%;
    /* Ensure full height for the body and html */
}

/* Hide the page initially */
body {
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

/* When the page loads, fade in */
body.loaded {
    opacity: 1;
}

/* Common CSS Start */
.qc-primary-gray {
    color: var(--qc-primary-gray-color);
}

.qc-secondary-gray {
    color: var(--qc-secondary-gray-color);
}

.qc-primary-blue {
    color: var(--qc-primary-blue-color);
}

.qc-column {
    /* height: 100vh; */
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    /* Ensure the wrapper fills the viewport height */
}

.qc-login-wrap {
    /* height: 100vh; */
}

/* Common CSS END */




/* Logo header Template CSS Start */
.qc-site-tagline {
    font-size: 14px;
    font-weight: 400;
}

/* Logo header Template CSS End */

/* cf7 css Start */
.qc-lable {
    font-size: 14px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
    padding: 0;
}

.qc-submit-btn {
    background-color: #000000;
    font-size: 14px;
    font-weight: 400;
    color: #ffffff;
    border: none;
    border-radius: 7px;
    line-height: 18.9px;
    padding: 12px;
}

.form-group.position-relative {
    position: relative !important;
    /* Ensure the eye icon is positioned relative to this container */
    width: 100%;
    /* Adjust as per your form layout */
}

.form-group.position-relative .wpcf7-form-control-wrap {
    position: relative;
    /* Position the eye icon relative to this wrap */
    display: block;
    /* Ensure consistent display for the input and icon */
}

.form-group.position-relative .wpcf7-password {
    width: 100%;
    /* Ensure the input spans the container width */
    padding-right: 40px;
    /* Add space for the eye icon */
}

.form-group.position-relative .fa-eye,
.form-group.position-relative .fa-eye-slash {
    position: absolute;
    /* Position the eye icon relative to its closest positioned ancestor */
    top: 50%;
    /* Vertically center the eye icon */
    right: 10px;
    /* Position 10px from the right */
    transform: translateY(-50%);
    /* Adjust centering */
    cursor: pointer;
    /* Change the cursor to pointer */
    font-size: 16px;
    /* Adjust icon size */
    z-index: 1;
    /* Ensure the icon appears above the input */
    display: inline-block;
    padding: 10px;
}

/* Target the parent container of the password field */
.form-group.position-relative:has(.wpcf7-not-valid-tip) #buttonEye-new-password,
.form-group.position-relative:has(.wpcf7-not-valid-tip) #buttonEye-qc-password,
.form-group.position-relative:has(.wpcf7-not-valid-tip) #buttonEye-confirm-password {
    top: 30%;
}

.qc-link-wrap a {
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    color: var(--qc-raddish-brown-color);
}

/* cf7 css End */

/* Login Page CSS Start */
.qc-login-wrap,
.qc-forgot-password-form-wrap {
    margin-top: 60px;
}

.qc-login-wrap .qc-login-header {
    font-size: 20px;
    font-weight: 800;
}

.qc-login-wrap .qc-login-heading {
    font-size: 16px;
    font-weight: 600;
}

input.qc-email.valid,
.qc-email.valid {
    background-image: url('../image/check.png') !important;
    background-repeat: no-repeat;
    background-position: right 10px center;
    /* Adjust positioning */
    background-size: 20px;
    /* Adjust size as needed */
    z-index: 130;
    /* background-color: red; */
}

/* input.qc-email.valid:-webkit-autofill  */
input.qc-email:-webkit-autofill:focus,
input.qc-email:autofill {
    background-image: url(../image/check.png) !important;
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 20px;
    z-index: 130;
    /* background-color: red; */
}


/* Login Page CSS End */

/* Forgot Password CSS Start */
.qc-back-link a {
    font-size: 16px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
    text-decoration: none;
}

.qc-back-login a {
    font-size: 14px;
    font-weight: 400;
}

.qc-forgot-password-form-wrap .qc-password-heading {
    font-size: 20px;
    font-weight: 600;
}

.qc-forgot-password-form-wrap .qc-password-subheading {
    font-size: 14px;
    font-weight: 400;
    color: var(--qc-dark-gray-color);
}

/* Forgot Password CSS End */

/* visior Page CSS Start */
.qc-csv-import {
    cursor: pointer;
}

.qc-logo-setting-header {
    /* position: sticky; */
    top: 0;
    border-bottom: 1px solid var(--qc-secondary-gray-color);
    background-color: #ffffff;
    /* z-index: 101; */
    flex: 0 0 auto;
    /* Prevent header and footer from stretching */
    position: sticky;
    /* Ensure they stay visible */
    z-index: 101;
}

.qc-logo-setting-header .qc-event-logo-wrap {
    width: 100px;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 3px 2px 15px 4px #00000050;
    background-color: #000000;
    border-radius: 7px;
}

.qc-logo-setting-header .qc-event-logo-wrap .qc-event-logo {
    width: 100%;
    height: auto;
}

.qc-visitor-page-body {
    /* height: 100vh; */
    flex: 1 0 auto;
    /* Allow the content to stretch and take remaining space */
}

.qc-event-lable {
    font-size: 14px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
    margin-bottom: 10px;
}

.qc-bootom-navbar {
    bottom: 0;
    flex: 0 0 auto;
    /* Prevent header and footer from stretching */
    position: sticky;
    /* Ensure they stay visible */
    z-index: 101;
}

.qc-bootom-navbar .nav-item .nav-link.active .qc-nav-icon-wrap span svg path {
    fill: #000000;
}

.qc-bootom-navbar .nav-item .nav-link.active .qc-nav-icon-wrap {
    background-color: #979797;
    border-radius: 5px;
}

/* .qc-bootom-navbar .nav-item .nav-link.active:not(.qc-nav-icon-wrap) {
    background-color: transparent !important;
} */

.qc-bootom-navbar .nav-item .nav-link.active .qc-nav-name-wrap {
    color: #000000;
    font-size: 14px;
    font-weight: 600;
}

.qc-bootom-navbar .qc-nav-icon-wrap span {
    display: inline-block;
    padding: 4px;
    border-radius: 10px;
}

.qc-bootom-navbar .qc-nav-name-wrap {
    font-size: 14px;
    font-weight: 400;
    color: #040404;
}

.qc-bootom-navbar .nav-item {
    max-width: 33.33%;
}

/* visior Page CSS End */

/* Footer css Start */
footer {
    width: 100%;
    position: fixed;
    bottom: 0;
}

/* Footer css End */

/* Page Name CSS Start */
.qc-page-name-wrapper {
    border-bottom: 1px solid var(--qc-secondary-gray-color);
    padding: 10px 0 15px 15px;
    align-items: center;
}

.qc-page-name-wrapper .qc-page-name-wrap {
    font-size: 18px;
    font-weight: 600;
    color: #040404;
}

/* Page Name CSS End */

/* visitor Page CSS Start */
.qc-event-selection {
    font-size: 14px;
    font-weight: 400;
    padding: 12px 10px;
    border-color: #B7B7B7;
    /*background-size: 20px 20px;*/
    /*background-image: url('../image/dropdown.png');*/

}

/* visitor Page CSS End */

/*Data table CSS Modification Start*/
/*Data table CSS Modification Start*/
.dataTables_filter input[type="search"] {
    /* Add your styles here */
    border: 1px solid #b7b7b7;
    padding: 7px 10px;
    -webkit-appearance: none;
    border-radius: 5px !important;
    margin-left: 0;
    font-size: 16px;
    font-weight: 400;
    color: var(--qc-dark-gray-color);
    background-color: #ffffff;
}

.dataTables_filter input[type="search"]:focus {
    outline: none;
}

table-bordered.card {
    border: 0 !important;
}

.dataTable.card,
.dataTable.card th,
.dataTable.card td {
    border: none;
}

.card thead {
    display: none;
}

/* #qc-visitor-list-tbl td:last-child {
    display: none;
} */

/* #qc-visitor-list-tbl.card td:last-child {
    display: block;
} */

#qc-visitor-list-tbl.qc-only-one-event tr td:nth-child(5),
.dataTable.qc-only-one-event tr td:nth-child(5) {
    /* display: none; */
}
/* Ensure table resizes properly */
.dataTable.qc-only-one-event {
    table-layout: auto !important;
    width: 100% !important;
}

/* #qc-visitor-list-tbl tr td:last-child,
.dataTable thead tr td:last-child {
    display: none;
} */

table.dataTable thead tr {
    color: #000000;
    font-size: 16px;
    font-weight: 600;
}

table.dataTable thead tr td {
    border: 1px solid #b7b7b7;
    border-collapse: collapse;
}

.bottom-info {
    display: flex;
    justify-content: space-between;
    /* Align them to both sides */
    align-items: baseline;
    width: 100%;
    margin-top: 10px;
}

#qc-visitor-list-tbl th,
#qc-visitor-list-tbl td {

    border: 1px solid #b7b7b7;
    border-collapse: collapse;
}

.card tbody tr {
    float: left;
    /* width: 100%; */
    border: 1px solid var(--qc-secondary-gray-color);
    border-radius: 7px;
    background-color: transparent !important;
    margin: 5px 0;
}

.card tbody tr td {
    display: block;
    border-bottom: none !important;
}

#qc-visitor-list-tbl input[type="search"] {
    border: 1px solid #b7b7b7;
    border-radius: 5px;
}

#qc-visitor-list-tbl.card th,
#qc-visitor-list-tbl.card td {
    border: none;
}

#qc-visitor-list-tbl.card {
    /* display: block; */
    /* Break the table structure */
    width: 100%;
    border: none;
}

.qc-card-title {
    font-size: 16px;
    font-weight: 600;
}

.qc-job-title {
    font-size: 16px;
    font-weight: 400;
}

.qc-card-comment {
    font-size: 14px;
    color: var(--qc-dark-gray-color);
    font-weight: 400;
}

/* Style each row */
#qc-visitor-list-tbl.card tbody tr.child {
    display: none;
}

#qc-visitor-list-tbl.card tbody tr {
    display: flex;
    flex-direction: column;
    /* Stack cells vertically */
    margin-bottom: 15px;
    background: #fff;
    /* Background for the row */
    border: 1px solid #ddd;
    padding: 10px;
    border-radius: 5px;
    width: 100%;
}

/* Style each cell */
#qc-visitor-list-tbl.card tbody tr td {
    display: block;
    /* Ensure each cell takes full width */
    width: 100% !important;
    /* Force full width, overriding inline styles */
    /* padding: 8px 0; */
    padding: 0;
    text-align: left;
    border-bottom: 1px solid #eee;
    /* Divider between cells */
}

/* Remove bottom border from the last cell in a row */
#qc-visitor-list-tbl.card tbody tr td:last-child {
    border-bottom: none;
}

/* Add header text in each cell */
#qc-visitor-list-tbl.card tbody tr td::before {
    content: attr(data-header);
    /* Use data-header attribute for labels */
    font-weight: bold;
    display: block;
    /* margin-bottom: 5px; */
    color: #333;
}


#qc-visitor-list-tbl thead tr td:first-child,
#qc-visitor-list-tbl tbody tr td:first-child,
.dataTable thead tr td:first-child,
.dataTable tbody tr td:first-child {
    position: sticky;
    left: 0;
    background-color: #ffffff;
    z-index: 100;
    text-align: left;
}

#qc-visitor-list-tbl thead tr td {
    padding: 8px 10px;
}

/* Setting Page CSS Start */
.qc-setting-links-wrapper .qc-setting-link {
    display: inline-block;
    align-items: center;
    text-decoration: none;

}

.qc-setting-links-wrapper .qc-setting-link .qc-setting-name {
    font-size: 16px;
    font-weight: 400;
    color: #000000;
}

.dataTables_wrapper.no-footer .dataTables_scrollBody {
    border-bottom: none !important;
}

/* Setting Page CSS End */

/* Profile Page CSS Start */
.qc-page-contain-wrap {
    padding: 15px 20px;
}

.qc-profile-detail-wrapper .qc-profile-detail {
    display: inline-block;
    width: 100%;
    text-decoration: none;
}

.qc-profile-detail-title-wrap .qc-profile-detail-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
}

.qc-profile-detail-title-wrap .qc-profile-edit {
    font-size: 16px;
    font-weight: 600;
    color: var(--qc-raddish-brown-color);
}

.qc-profile-detail-wrapper .qc-profile-detail {
    color: #040404;
    font-size: 16px;
    font-weight: 400;
}

/* Profile Page CSS End */

/* Logout Popup CSS Start */
#qc-logout-account-popup .modal-header .modal-title {
    font-size: 16px;
    font-weight: 600;
    color: #040404;
}

#qc-logout-account-popup .qc-modal-des {
    font-size: 14px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
}

/* Logout Popup CSS End */

/* Accept invitation CSS Start */
.qc-join-us-wrap .qc-join-heading {
    font-size: 20px;
    font-weight: 600;
}

.qc-join-us-wrap .qc-join-subheading {
    font-size: 14px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
    margin-bottom: 10px;
}

.qc-join-us-wrap .qc-join-subheading span {
    font-size: 14px;
    font-weight: 600;
    color: #000000;
}

/* Accept invitation CSS End */

/* QR Code CSS Start */
.qc-scan-qr-header .qc-scan-heading-text {
    font-size: 20px;
    font-weight: 600;
}

.custom-upload-button {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--qc-dark-gray-color);
    border-radius: 8px;
    padding: 10px 20px;
    color: var(--qc-dark-gray-color);
    font-size: 16px;
    cursor: pointer;
    font-weight: 600;
    transition: background-color 0.3s, color 0.3s;
    text-decoration: none;
}

.qc-video-tag-wrap {
    background-image: url('../image/Scanner-boundry.png');
    width: 230px;
    height: 230px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    margin: auto;
    padding: 3px;
}

/* .qc-video-tag-wrap {
    --b: 5px;
    --c: #ff0000;
    --w: 50px;
    --r: 30px;
    padding: var(--b);
    position: relative;
    width: 230px;
    height: 230px;
    box-sizing: border-box;
    margin: 5px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.qc-video-tag-wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--c, red);
    padding: var(--b);
    border-radius: var(--r);
    -webkit-mask:
        linear-gradient(0deg, #000 calc(2*var(--b)), #0000 0) 50% var(--b)/calc(100% - 2*var(--w)) 100% repeat-y,
        linear-gradient(-90deg, #000 calc(2*var(--b)), #0000 0) var(--b) 50%/100% calc(100% - 2*var(--w)) repeat-x,
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: destination-out;
    mask-composite: exclude;
} */
.qc-video-tag {
    width: 100%;
    height: 98.5%;
    background-color: var(--qc-primary-gray-color);
    border-radius: 21px;
    object-fit: cover;
    margin-top: 1.5px;
}

/* QR Code CSS End */


/* Report Page CSS Start */
.qc-report-heading-wrap {
    margin-bottom: 10px;
}

.qc-report-heading-wrap .qc-report-heading .qc-upper-header {
    font-size: 14px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
}

.qc-report-heading-wrap .qc-report-heading .qc-lower-header {
    font-size: 18px;
    font-weight: 800;
    color: var(--qc-raddish-brown-color);
}

.qc-pie-chart-wrraper {
    /* margin-bottom: 20px; */
    width: 60%;
    margin: 0 auto 20px auto;
}

.qc-pie-chart-wrraper .qc-pie-chart {}

/* Report Page CSS End */

/* Empty Screen CSS Start */
.qc-visitor-empty-screen,
.qc-rate-empty-screen {
    display: flex;
    align-items: center;
    justify-content: center;
}

.qc-empty-screen-wrap .qc-empty-screen-img {}

.qc-empty-screen-wrap .qc-empty-screen-text {
    font-size: 14px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
}

.qc-empty-screen-wrap .qc-empty-screen-link .qc-empty-new-record {
    display: inline-block;
    text-decoration: none;
    padding: 12px 15px;
    border: 1px solid var(--qc-dark-gray-color);
    border-radius: 5px;
    font-size: 14px;
    font-weight: 600;
    color: var(--qc-dark-gray-color);
    margin-top: 30px;
    background-color: #ffffff;
}

/* Empty Screen CSS End */

/* Scan Detail CSS Start */
.qc-rating-container {
    display: flex;
    gap: 10px;
}

.qc-rating-container div p,
.qc-rating-field p {
    margin-bottom: 0;
}

.qc-rating-container div {
    border: 1px solid var(--qc-secondary-gray-color);
    border-radius: 5px;
    padding: 5px;
}

.star {
    cursor: pointer;
    transition: all 0.3s ease;
}

.star.filled path {
    fill: #040404;
}

.star.empty path {
    fill: none;
    stroke: #040404;
}

.qc-loader {
    border: 16px solid #f3f3f3;
    /* Light grey */
    border-top: 16px solid #3498db;
    /* Blue */
    border-radius: 50%;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.qc-rating-progress-container .progress {
    background-color: #ECECEC;
}

.qc-rating-progress-container .qc-progress-lable {
    font-weight: 600;
    font-size: 18px;
}

.qc-rating-progress-container .qc-progress-per {
    font-weight: 600;
    font-size: 14px;
    color: var(--qc-dark-gray-color);
}

.qc-rating-progress-container .d-flex .qc-progress-lable {
    flex-basis: 10%;
}

.qc-rating-progress-container .d-flex .progress {
    flex-basis: 74%;
}

.qc-rating-progress-container .d-flex .qc-progress-per {
    flex-basis: 16%;
}

/* Scan Detail CSS End */

/* Submit Page CSS Start */
.qc-lable-div p {
    margin-bottom: 0;
}

.qc-lable-div div {
    font-size: 14px;
    font-weight: 400;
    color: #040404;
    margin-bottom: 15px;
}

.qc-cancel-button {
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    color: var(--qc-dark-gray-color);
    border: none;
    border-radius: 7px;
    line-height: 18.9px;
    padding: 12px;
    text-decoration: none;
    border: 1px solid var(--qc-dark-gray-color);
    width: 100%;
    text-align: center;
    margin-top: -15px;
}

.qc-clickable-row {
    cursor: pointer;
}

/* Submit Page CSS End */

/* Event Faqs CSS Start */
.qc-faqs-container {
    padding-top: 20px;
}

.qc-faqs-container .accordion {
    border-color: none;
}

.qc-faqs-container .accordion-item {
    border: none !important;
}

.qc-faqs-container .accordion-item:has(.accordion-button:not(.collapsed)) {
    border: 1px solid var(--qc-dark-gray-color) !important;
    border-radius: 7px;
    margin-bottom: 15px;
}

.qc-faqs-container .accordion-item:has(.accordion-button.collapsed) {
    border: none;
}

.qc-faqs-container .accordion-button {
    padding: 0 !important;
    margin-bottom: 20px !important;
}

.qc-faqs-container .accordion-item:not(:first-of-type) {
    border: none !important;
}

.qc-faqs-container .accordion-button:not(.collapsed) {
    background-color: #040404;
    color: #ffffff;
    font-size: 14px;
    font-weight: 400;
    border-radius: 7px 7px 0 0;
    padding: 1rem 1.25rem !important;
    margin-bottom: 0 !important;
}

.qc-faqs-container .accordion-button:not(.collapsed)::after {
    background-image: url(../image/Symbols.png);
    transform: rotate(360deg) !important;
}

button:focus:not(:focus-visible) {
    outline: none !important;
}

.accordion-button:focus {
    z-index: 3;
    outline: none !important;
    box-shadow: none !important;
}

/* Event Faqs CSS End */

/* T&C CSS Start */
.qc-tnc-wrap {
    text-align: justify;
}

.qc-tnc-wrap ul li {
    text-align: left;
}

/* T&C CSS End */

/* .datatable-container {
    display: flex;
    flex-direction: column;
  }
  
  .datatable-header,
  .datatable-footer {
    position: sticky;
    top: 0; 
    z-index: 1;
    background: white;
    padding: 10px;
  }
  
  .table-responsive {
    overflow-x: auto;
  }
  
  table {
    width: 100%;
  }
   */

.dt-buttons {
    text-align: right;
}

.dt-buttons .dt-button {
    background: transparent !important;
    border: none !important;
    margin: 0 !important;
    padding: 0.5em !important;
}

div.dt-container div.dt-search {
    text-align: inherit !important;
}

div.dt-container div.dt-search input {
    margin-left: 0 !important;
    font-size: 14px;
    border-color: #B7B7B7;
}



.dataTables_paginate {
    display: flex !important;
    justify-content: center !important;
    gap: 5px;
}

.dataTables_paginate .pagination {
    margin: 0;
}

.dt-paging-button.first,
.dt-paging-button.last {
    display: none;
}

.dt-paging {
    padding: 8px;
}

.dt-paging-button {
    background: transparent;
    border: 1px solid var(--qc-dark-gray-color);
    color: var(--qc-dark-gray-color);
}

.dt-paging-button.current {
    background: var(--qc-dark-gray-color);
    color: white;
    border-color: var(--qc-dark-gray-color);
}

.dt-paging-button.disabled {
    opacity: 0.5;
}

.dt-paging-button.previous {
    border-radius: 5px 0 0 5px;
}

.dt-paging-button.next {
    border-radius: 0 5px 5px 0;
}

tr td {
    padding: 8px 10px;
    font-size: 14px;
}

@media screen and (max-width: 640px) {
    div.dt-buttons {
        text-align: right;
    }
}

.dt-search label {
    display: none;
}

.wpcf7-spinner {
    margin-left: 10px;
    /* Add some space between button and spinner */
    vertical-align: middle;
    /* Align it properly with the button */
}

.dt-info {
    padding: 8px;
    color: var(--qc-dark-gray-color);
}

/* 404 CSS Start */
.qc-404-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
}

/* 404 CSS End */