/* Public styles go here */
:root {
    --vc-clr-primary: #000;
    --vc-clr-secondary: #090f207f;
    --vc-clr-white: #ffffff;
    --vc-icn-width: 1.2em;
    --vc-nav-width: 30px;
    --vc-nav-height: 30px;
    --vc-nav-border-radius: 0;
    --vc-nav-color: var(--vc-clr-primary);
    --vc-nav-color-hover: var(--vc-clr-secondary);
    --vc-nav-background: transparent;
    --vc-pgn-width: 12px;
    --vc-pgn-height: 4px;
    --vc-pgn-margin: 4px;
    --vc-pgn-border-radius: 0;
    --vc-pgn-background-color: var(--vc-clr-secondary);
    --vc-pgn-active-color: var(--vc-clr-primary);
}

.required-field-border {
    border: 1px solid red !important;
}

.required-error {
    font-size: .7rem !important;
    color: red !important;
    /* font-weight: 500!important; */
}

/** new */

/* html #wpadminbar {
    margin-top: 0rem !important;
    display: none;
} */
.date-wrapper {
    position: relative;
    overflow: hidden;
}

/* 
.date-container {
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    display: flex;
    gap: 15px;
    padding: 20px 50px;  
} */

.carousel-wrapper {
    width: 100%;
    position: relative;
}

.date-container {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 15px;
    padding: 20px 0;
    -webkit-overflow-scrolling: touch;
    /* Untuk smooth scrolling di iOS */
}


/* Sembunyikan scrollbar */
.date-container::-webkit-scrollbar {
    display: none;
}


.active {
    background: #e6f7ff;
    border: 2px solid #0d6efd !important;
}

.date-name {
    font-size: .7143rem;
    line-height: 1;

}

.date-bulan {
    font-size: .7143rem;
    line-height: 1;
}

.past-day {
    opacity: 0.5;
    cursor: default !important;
    pointer-events: none !important;
}

.date-full {
    font-size: 0.9rem;
    color: #666;
}

.badge-today {
    background-color: #0d6efd;
    margin-top: 5px;
}

.item-date {
    scroll-snap-align: start;
    text-align: center;
    border: 1px solid rgb(206, 206, 206);
    border-radius: 8px;
    color: #3d70d1;
    padding: 12px 8px;
    min-width: 70px;
    cursor: pointer;
    white-space: nowrap;

}

.item-date:hover {
    background: #e6f7ff;
    border: 1px solid #0d6efd;
}

.item-date .date-day {
    font-size: .7143rem;
    font-weight: 500;
    line-height: 1;
    margin-bottom: 3px;
}

.item-date .date-number {
    font-weight: 700;
    font-size: 1.143rem;
    line-height: 1;
}


.carousel-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: calc(100% + 60px);
    /* calc(100% + 100px); */
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    /* Agar tidak menghalangi scroll */
    left: -30px;
}

.carousel-nav span {
    pointer-events: all;
    background: white;
    color: #ccc;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    border: 1px solid #ddd;
}

/* Untuk layar kecil, sembunyikan navigasi */
@media (max-width: 576px) {
    .carousel-nav {
        display: none;
    }
}

.field-option-container {
    background: #FFFFFF;
    box-shadow: 0px 2px 8px rgba(37, 40, 43, 0.06);
    border-radius: 8px;
    margin-bottom: 24px !important;
    padding: 0 30px;
}

.section-pilihan,
.section-pembayaran {
    padding: 20px 30px !important;

}


.pemisah {
    height: 1px;
    background: #E8E8E8;
}

.align-items-center {
    -ms-flex-align: center !important;
    align-items: center !important;
}

.field-option-date-row {
    position: relative;
    max-width: 100%;
    overflow-x: scroll;
    overflow-y: hidden;
    white-space: nowrap;
    transition: all 0.2s;
    user-select: none;
    cursor: pointer;
    scrollbar-color: rgba(0, 0, 0, 0.5);
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.row-custom-5 {
    margin-left: -5px !important;
    margin-right: -5px !important;
}

.row-custom-5 .col-custom-5 {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

.container-lapanganslot,
.container-waktuslot {
    /* height: 310px; */
    padding: 15px;
    overflow-y: auto;
    position: relative;
}

.font-11 {
    font-size: .7857rem !important;
}

.font-10 {
    font-size: 10px !important;
}

.color-grey {
    color: #7c7c7c !important;
}


.field-slot-item-disabled {
    /* border: none !important; */
    border: 1px solid #E8E8E8;
    cursor: default;

}

.field-slot-item {
    border: 1px solid #E8E8E8;
    border-radius: 8px;
    padding: 12px 8px;
}

.field-slot-item:not(.field-slot-item-disabled) {
    border: 1px solid #7aaffe;
}

.field-not-allowed {
    cursor: not-allowed !important;
}

.pointer {
    cursor: pointer;
}


.field-slot-item-time {
    line-height: 20px;
    letter-spacing: 0.25px;
    color: #25282B;
}

.field-slot-item-selected .field-slot-item-time,
.field-slot-item-selected .field-slot-item-price {
    color: #0d6efd !important;
}

.s14-500 {
    font-weight: 500;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0.2em;
    color: #A0A4A8;
}

.field-slot-item-selected {
    background: #e6f7ff;
    border: 2px solid #0d6efd !important;
}

.field-slot-item-check {
    display: none;
    height: 16px;
    width: 16px;
    position: absolute;
    top: 15px;
    right: calc(10% - 0.5%);
}

.field-slot-item-time {
    line-height: 20px;
    letter-spacing: 0.25px;
    color: #25282B;
}

.duration-per-session-text {
    color: #A0A4A8;
    text-align: center;
    /* font-family: Rubik; */
    font-size: 10px;
    /*  font-style: normal; */
    font-weight: 500;
    line-height: 12px;
    letter-spacing: 0.1px;
    display: block;
}

.field-slot-item-price {
    line-height: 20px;
    letter-spacing: 0.25px;
    color: #52575C;
}

.s14-400 {
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0.2em;
    color: #A0A4A8;
}

.field-slot-item-price-disabled {
    color: #A0A4A8 !important;
}

.item-lapanganslot {
    padding-left: 0;
    margin-bottom: 10px;
}

.item-lapanganslot .form-check-input[type=checkbox] {
    display: none;
    /* border-radius: 0;
    margin-left: 0;
    margin-right: 0;
    margin-top: 0;
    float: left;
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0; */
}

.item-lapanganslot .form-check-label {
    display: block;
    border: 1px solid rgb(206, 206, 206);
    font-weight: 700;
    font-size: .8571rem;
    color: #3d70d1;
    border-radius: 8px;
    padding: 10px 12px;
    cursor: pointer;
}

.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: .125rem;
}

.item-lapanganslot .form-check-input:disabled~.form-check-label {
    cursor: not-allowed;
    opacity: 1;
    border-color: #cecece;
    color: #cecece;
}

.item-lapanganslot:hover .form-check-label {
    background: #e6f7ff;
    border: 1px solid #0d6efd;
}


.item-lapanganslot.checked .form-check-label {
    background: #e6f7ff;
    border: 2px solid #0d6efd;
}


.item-lapanganslot.checked:hover .form-check-label {
    color: #0d6efd;
    /*  background: #0d6efd; */
}


.form-check-input:disabled {
    pointer-events: none;
    filter: none;
    opacity: .5;
}

.item-lapanganslot .form-check-label .icon-check-lapanganslot {
    margin-left: 6px;
    margin-right: -2px;
}

.sport-title-slot {
    margin-bottom: 10px;
    font-size: 25px;
    font-weight: 600;
    color: #343a40;
}

.sport-title-slot img.icon-sport {
    width: 50px;
}

.sport-title-slot.t-next {
    margin-top: 30px;
    margin-bottom: 10px;
}

.container-waktuslot .field-slot-item:not(.field-slot-item-disabled):hover {
    background: #e6f7ff;
    border: 1px solid #0d6efd;
}

/* .container-waktuslot .field-slot-item.field-slot-item-disabled:hover{
    background: #e6f7ff;
}
 */

.loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    /* semi transparent bg */
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

/* .card-detail-fee {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
    gap: 16px;
    background: #fff;
    box-shadow: 0 1px 6px rgba(37, 40, 43, 0.08);
    border-radius: 8px;
}
 */
.voucher-title,
h3.summary-title {
    display: flex;
    flex: 1;
    flex-direction: row;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 22px;
    color: #25282B;
    /* font-family: 'Rubik'; */
    margin-bottom: 0;
}

.summary-product-title {
    /* display: flex; */
    flex: 1;
    flex-direction: row;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: #25282B;
    /* font-family: 'Rubik'; */
    margin-bottom: 10px;
}

.biaya-container,
.discount-container,
.total-price-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
}

.biaya-container span {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    /* font-family: 'Rubik'; */
    text-align: right !important;
    padding: 5px 0;
}

.biaya-label,
.biaya,
.summary-label,
.profile-label {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    padding: 5px 0;
}

.profile-label {}

.biaya {
    text-align: right !important;

}

.divider-dash {
    width: 100%;
    height: 1px;
    display: block;
    border-bottom: 1px dashed #E8E8E8;
    margin: 5px 0;

}

.divider-block {
    display: block;
    content: '';
    width: 100%;
    height: 1px;
    border-bottom: 1px solid #E8E8E8;
    margin: 5px 0;
}

.total-price-container span {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    color: #52575C;
    letter-spacing: .1px;
}

.menu-tab-user-form .tab-user-form.active {
    background: #f8f9fa !important;
    border: 0 !important;
}

.bd-callout+.bd-callout {
    margin-top: -.25rem;
}

.bd-callout-warning {
    --bd-callout-color: var(--bs-warning-text-emphasis);
    --bd-callout-bg: var(--bs-warning-bg-subtle);
    --bd-callout-border: var(--bs-warning-border-subtle);
}

.bd-callout {
    --bs-link-color-rgb: var(--bd-callout-link);
    --bs-code-color: var(--bd-callout-code-color);
    padding: .8rem 1.25rem;
    margin-top: 1rem;
    margin-bottom: 1.25rem;
    color: var(--bd-callout-color, inherit);
    background-color: var(--bd-callout-bg, var(--bs-gray-100));
    border-left: 0.25rem solid var(--bd-callout-border, var(--bs-gray-300));
    font-size: 14px;
}

table.table.use-datatable {
    font-size: 13px !important;
}

/* .table-borderless, .page-template-page-dashboard-ldmn .table-borderless td,.page-template-page-dashboard-ldmn .table-borderlessth {
    border: 0px!important;
}
   */
.dt-layout-row .dt-layout-cell .dt-length,
.dt-layout-row .dt-layout-cell .dt-searchX {
    display: none !important;
}

.dt-layout-row .dt-layout-cell .dt-search {
    display: none !important;

}

.dt-length {
    max-width: 80px;

}

.dt-length label {
    display: none;
}


/* Pastikan toolbar (length, buttons, search) tetap dalam satu baris */
.dt-container .dt-mytoolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin: 20px 20px 10px;
    gap: 20px;

}

/* Agar dt-length dan dt-buttons tetap di kiri */
.dt-container .dt-length,
.dt-container .dt-buttons {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dt-buttons .buttons-excel.buttons-html5 {
    background: #198754;
    color: #fff;
    border: 1px solid #198754;
}

.dt-buttons .buttons-excel.buttons-html5:hover,
.dt-buttons .buttons-excel.buttons-html5:active {
    background: #fff !important;
    color: #198754 !important;
    border: 1px solid #198754 !important;
}

/* Agar search tetap di kanan */
.dt-container .dt-search {
    margin-left: auto;
    max-width: 200px;
}

/* Agar pagination tetap di kanan */
.dt-container .dataTables_paginate {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
}

.dt-container .dt-layout-row .dt-layout-start .dt-info {
    font-size: 13px !important;
}

div.dt-container .dt-paging .dt-paging-button {
    min-width: unset !important;
    padding: 3px 10px !important;
    font-size: 12px !important;
}

/* Agar responsif di layar kecil */
@media (max-width: 768px) {



    .container-waktuslot .field-slot-item:not(.field-slot-item-selected):hover {
        background: #FFF;
    }

    .container-waktuslot {
        max-height: 400px;
        overflow: auto;
        margin-bottom: 15px;
    }

    .dt-container .dt-toolbar {
        flex-direction: column;
        align-items: stretch;
    }

    .dt-container .dt-search {
        margin-left: 0;
        margin-top: 10px;
    }

    .dt-container .dataTables_paginate {
        justify-content: center;
        /* Supaya pagination ke tengah di layar kecil */
    }
}

.amount-transaksi.cancel,
.amount-transaksi.cancelled,
.amount-transaksi.failed,
.amount-transaksi.expired {
    text-decoration: line-through !important;
    font-weight: 400 !important;
}

.swal-text {
    display: block;
    margin: 22px;
    text-align: center;
}

.swal-button.swal-button--cancel {}

.swal-button.swal-button--confirm {
    background: #0d6efd;
}

body #section-profile-user {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

body #section-profile-user .field-option-container {
    padding: 10px 15px 30px !important;

}


@media (min-width: 922px) {
    body.page-template-page-dashboard .ast-container {
        max-width: unset !important;
    }
}

@media (min-width: 1200px) {
    body.page-template-page-dashboard.ast-plain-container.ast-no-sidebar #primary {
        margin-top: 0px !important;
    }
}

@media only screen and (max-width: 564px) {
    body .booking-arena-content ul.nav-tabs {
        padding-left: 0 !important;
    }


    body #section-profile-user .field-option-container {
        padding: 0 15px;
    }

    body #section-profile-user .row>* {
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

}