/*     Table    */

.table>thead>tr>th,
.table>tbody>tr>th,
.table>tfoot>tr>th,
.table>thead>tr>td,
.table>tbody>tr>td,
.table>tfoot>tr>td {
    vertical-align: top;
}


/* .table>tbody>tr>td,
.table>tbody>tr>th {
    padding: 8px;
} */

.table>tfoot>tr>td,
.table>tfoot>tr>th {
    padding: 0px;
}

.table thead th {
    border-bottom-width: 2px;
    font-weight: 600;
}

.table td,
.table th {
    font-size: 14px;
    border-top-width: 0px;
    border-bottom: 1px solid;
    border-color: #ebedf2 !important;
    /* padding: 0 25px !important; */
    height: 40px;
    vertical-align: top !important;
}


/* table full-width */

.table-full-width {
    margin-left: -15px;
    margin-right: -15px;
}


/* table bordered states */

.table-bordered-bd-black td,
.table-bordered-bd-black th {
    border: 1px solid #1a2035 !important;
}

.table-bordered-bd-primary td,
.table-bordered-bd-primary th {
    border: 1px solid #1572E8 !important;
}

.table-bordered-bd-secondary td,
.table-bordered-bd-secondary th {
    border: 1px solid #6861CE !important;
}

.table-bordered-bd-info td,
.table-bordered-bd-info th {
    border: 1px solid #48ABF7 !important;
}

.table-bordered-bd-success td,
.table-bordered-bd-success th {
    border: 1px solid #31CE36 !important;
}

.table-bordered-bd-warning td,
.table-bordered-bd-warning th {
    border: 1px solid #FFAD46 !important;
}

.table-bordered-bd-danger td,
.table-bordered-bd-danger th {
    border: 1px solid #F25961 !important;
}

.table-striped td,
.table-striped th {
    border-top: 0 !important;
    border-bottom: 0 !important;
}


/* table head background states*/

.table-head-bg-black thead {
    border: 1px solid #1a2035 !important;
}

.table-head-bg-primary thead {
    border: 1px solid #1572E8 !important;
}

.table-head-bg-secondary thead {
    border: 1px solid #6861CE !important;
}

.table-head-bg-info thead {
    border: 1px solid #48ABF7 !important;
}

.table-head-bg-success thead {
    border: 1px solid #31CE36 !important;
}

.table-head-bg-warning thead {
    border: 1px solid #FFAD46 !important;
}

.table-head-bg-danger thead {
    border: 1px solid #F25961 !important;
}

.table-head-bg-black thead th,
.table-striped-bg-black tbody tr:nth-of-type(odd) {
    background: #1a2035 !important;
    color: #ffffff !important;
    border: 0px !important;
}

.table-head-bg-primary thead th,
.table-striped-bg-primary tbody tr:nth-of-type(odd) {
    background: #1572E8 !important;
    color: #ffffff !important;
    border: 0px !important;
}

.table-head-bg-secondary thead th,
.table-striped-bg-secondary tbody tr:nth-of-type(odd) {
    background: #6861CE !important;
    color: #ffffff !important;
    border: 0px !important;
}

.table-head-bg-info thead th,
.table-striped-bg-info tbody tr:nth-of-type(odd) {
    background: #48ABF7 !important;
    color: #ffffff !important;
    border: 0px !important;
}

.table-head-bg-success thead th,
.table-striped-bg-success tbody tr:nth-of-type(odd) {
    background: #31CE36 !important;
    color: #ffffff !important;
    border: 0px !important;
}

.table-head-bg-warning thead th,
.table-striped-bg-warning tbody tr:nth-of-type(odd) {
    background: #FFAD46 !important;
    color: #ffffff !important;
    border: 0px !important;
}

.table-head-bg-danger thead th,
.table-striped-bg-danger tbody tr:nth-of-type(odd) {
    background: #F25961 !important;
    color: #ffffff !important;
    border: 0px !important;
}


/* table-responsive */

.table-responsive {
    width: 100% !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
}


/*     Pagination     */

.pagination>li>a,
.pagination>li:first-child>a,
.pagination>li:last-child>a,
.pagination>li>span,
.pagination>li:first-child>span,
.pagination>li:last-child>span {
    border-radius: 100px !important;
    margin: 0 2px;
    color: #777777;
    border-color: #ddd;
}

.pagination.pg-black>li.active>a,
.pagination.pg-black>li.active:first-child>a,
.pagination.pg-black>li.active:last-child>a,
.pagination.pg-black>li.active>span,
.pagination.pg-black>li.active:first-child>span,
.pagination.pg-black>li.active:last-child>span {
    background: #1a2035;
    border-color: #1a2035;
    color: #ffffff;
}

.pagination.pg-primary>li.active>a,
.pagination.pg-primary>li.active:first-child>a,
.pagination.pg-primary>li.active:last-child>a,
.pagination.pg-primary>li.active>span,
.pagination.pg-primary>li.active:first-child>span,
.pagination.pg-primary>li.active:last-child>span {
    background: #1572E8;
    border-color: #1572E8;
    color: #ffffff;
}

.pagination.pg-secondary>li.active>a,
.pagination.pg-secondary>li.active:first-child>a,
.pagination.pg-secondary>li.active:last-child>a,
.pagination.pg-secondary>li.active>span,
.pagination.pg-secondary>li.active:first-child>span,
.pagination.pg-secondary>li.active:last-child>span {
    background: #6861CE;
    border-color: #6861CE;
    color: #ffffff;
}

.pagination.pg-info>li.active>a,
.pagination.pg-info>li.active:first-child>a,
.pagination.pg-info>li.active:last-child>a,
.pagination.pg-info>li.active>span,
.pagination.pg-info>li.active:first-child>span,
.pagination.pg-info>li.active:last-child>span {
    background: #48ABF7;
    border-color: #48ABF7;
    color: #ffffff;
}

.pagination.pg-success>li.active>a,
.pagination.pg-success>li.active:first-child>a,
.pagination.pg-success>li.active:last-child>a,
.pagination.pg-success>li.active>span,
.pagination.pg-success>li.active:first-child>span,
.pagination.pg-success>li.active:last-child>span {
    background: #31CE36;
    border-color: #31CE36;
    color: #ffffff;
}

.pagination.pg-warning>li.active>a,
.pagination.pg-warning>li.active:first-child>a,
.pagination.pg-warning>li.active:last-child>a,
.pagination.pg-warning>li.active>span,
.pagination.pg-warning>li.active:first-child>span,
.pagination.pg-warning>li.active:last-child>span {
    background: #FFAD46;
    border-color: #FFAD46;
    color: #ffffff;
}

.pagination.pg-danger>li.active>a,
.pagination.pg-danger>li.active:first-child>a,
.pagination.pg-danger>li.active:last-child>a,
.pagination.pg-danger>li.active>span,
.pagination.pg-danger>li.active:first-child>span,
.pagination.pg-danger>li.active:last-child>span {
    background: #F25961;
    border-color: #F25961;
    color: #ffffff;
}

.switch {
    position: relative;
    display: inline-block;
    width: 36px;
    height: 18px;
}


/* Menyembunyikan checkbox asli bawaan browser */

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}


/* Slider / Latar belakang tombol (Kondisi Nonaktif) */

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #d8dbdf;
    /* Abu-abu terang sesuai gambar */
    border: 1px solid #c8cbd0;
    transition: .3s;
    border-radius: 24px;
}


/* Bulatan penanda di dalam tombol */

.slider:before {
    position: absolute;
    content: "";
    height: 12px;
    width: 12px;
    left: 2px;
    bottom: 2px;
    background-color: #a0a5b0;
    /* Abu-abu bulatan saat nonaktif */
    transition: .3s;
    border-radius: 50%;
}


/* --- KONDISI KETIKA AKTIF (CHECKED) --- */


/* Mengubah warna latar belakang menjadi biru ketika dicentang */

.switch input:checked+.slider {
    background-color: #007bff;
    /* Biru cerah sesuai gambar */
    border-color: #0069d9;
}


/* Mengubah warna bulatan menjadi putih */

.switch input:checked+.slider:before {
    background-color: white;
    transform: translateX(18px);
}

fieldset.scheduler-border {
    padding: 0 1.4em 1.4em 1.4em !important;
    margin: 0 0 1.5em 0 !important;
    -webkit-box-shadow: 0px 0px 0px 0px #000;
    box-shadow: 0px 0px 0px 0px #000;
    border: 5px solid #6f92d3 !important;
    border-radius: 12px;
}

legend.scheduler-border {
    font-size: 1.2em !important;
    font-weight: bold !important;
    text-align: left !important;
    /* --- PERBAIKAN UTAMA UNTUK BOOTSTRAP 5 --- */
    float: none !important;
    /* Menghancurkan float left bawaan Bootstrap */
    width: auto !important;
    /* Mencegah judul melebar 100% */
    padding: 0 10px !important;
    /* Memberi ruang kosong di kiri-kanan teks agar garis terputus rapi */
    margin-bottom: 0 !important;
    /* Menghilangkan margin bawah bawaan */
    background: #fff !important;
    /* WAJIB: Sesuaikan dengan warna background halaman Anda agar garis tertutup */
}