/*
 * Penyelarasan komponen tambahan (DataTables, SweetAlert2) dengan gaya Falcon.
 * Warna, font, kartu, tabel, dan sidebar memakai CSS Falcon apa adanya (public/falcon/assets/css/theme.css).
 * File ini dimuat sesudah semua CSS vendor.
 */

/* ------------------------------------------------------------------ Belang baris tabel [Fariz] */

/* Semua tabel table-striped (form transaksi, modal detail) memakai belang yang sama dengan tabel DataTables:
   baris ganjil sedikit lebih gelap (mode gelap: sedikit lebih terang, --dt-row-stripe dari CSS DataTables).
   Belang bawaan Falcon (#f9fafd) hampir sama dengan putih, jadi tidak terlihat. */
.table.table-striped > tbody > tr:nth-of-type(odd) > * {
    box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-stripe, 0, 0, 0), 0.05);
}

/* Tabel isian di halaman form (SP, penerimaan, saldo awal, retur): berlatar kartu di atas card-body bg-body-tertiary,
   putih di mode terang dan biru gelap di mode gelap */
.tabel-form {
    background-color: var(--falcon-emphasis-bg);
}

/* ------------------------------------------------------------------ Halaman daftar [Fariz] */

/* Kotak cari di kiri atas tabel (layouts/be/cari_tabel) */
.cari-tabel {
    width: 260px;
    max-width: 100%;
}

/* ------------------------------------------------------------------ DataTables di dalam kartu Falcon */

/* Tabel di dalam card-body p-0: info jumlah data dan nomor halaman tampil seperti card-footer Falcon */
.card-body.p-0 div.dt-container div.dt-layout-row:not(.dt-layout-table) {
    margin: 0;
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--falcon-border-color);
}

div.dt-container div.dt-layout-table {
    margin: 0;
}

div.dt-container .dt-info {
    font-size: 0.8333333333rem;
    color: var(--falcon-gray-600);
    padding-top: 0;
}

/* Nomor halaman seperti tombol btn-falcon-default btn-sm */
div.dt-container .dt-paging .pagination {
    margin: 0;
    gap: 0.25rem;
}

div.dt-container .dt-paging .page-link {
    border: 0;
    border-radius: 0.25rem !important;
    min-width: 1.9rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.8333333333rem;
    text-align: center;
    color: var(--falcon-gray-700);
    background-color: var(--falcon-card-bg);
    box-shadow: var(--falcon-btn-falcon-box-shadow, 0 0 0 1px rgba(43, 45, 80, 0.1), 0 2px 5px 0 rgba(43, 45, 80, 0.08), 0 1px 1.5px 0 rgba(0, 0, 0, 0.07), 0 1px 2px 0 rgba(0, 0, 0, 0.08));
}

div.dt-container .dt-paging .page-item.active .page-link {
    color: #fff;
    background-color: var(--falcon-primary);
}

div.dt-container .dt-paging .page-item.disabled .page-link {
    opacity: 0.5;
}

/* Animasi "Memuat..." DataTables ikut warna utama Falcon */
:root {
    --dt-row-selected: 44, 123, 229;
}

div.dt-container div.dt-processing {
    border-radius: 0.375rem;
    background-color: var(--falcon-card-bg);
    box-shadow: 0 7px 14px 0 rgba(65, 69, 88, 0.1), 0 3px 6px 0 rgba(0, 0, 0, 0.07);
}

/* Kolom aksi ("...") hanya selebar tombolnya, sisa lebar tabel dibagi ke kolom data */
.table th.no-sort {
    width: 1%;
    white-space: nowrap;
}

/* Judul kolom tabel selalu rata tengah [Fariz], termasuk kolom angka yang oleh DataTables diratakan kanan */
.table thead th {
    text-align: center !important;
}

table.dataTable thead > tr > th div.dt-column-header {
    flex-direction: row !important;
}

table.dataTable thead > tr > th div.dt-column-header span.dt-column-title {
    text-align: center;
}

/* Isi sel tabel rata tengah secara vertikal, dengan jarak baris yang lega dan seragam */
.table > tbody > tr > td {
    vertical-align: middle;
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
}

.table > thead > tr > th {
    vertical-align: middle;
    padding-top: 0.65rem;
    padding-bottom: 0.65rem;
}

/* DataTables 2 meratakan kanan sel angka (dt-type-numeric); perataan isi diatur sendiri lewat className kolom
   (text-center / text-start / text-end), jadi aturan bawaan itu dimatikan */
table.dataTable tbody td.dt-type-numeric,
table.dataTable tbody td.dt-type-date {
    text-align: inherit;
}

table.dataTable tbody td.text-center { text-align: center !important; }
table.dataTable tbody td.text-end { text-align: right !important; }
table.dataTable tbody td.text-start { text-align: left !important; }

/* Pilihan jumlah data (10 / 25 / 50 / 100) di kiri bawah tabel, sebaris dengan info jumlah data */
div.dt-container .dt-layout-start {
    gap: 1rem;
    align-items: center;
}

div.dt-container .dt-length {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8333333333rem;
    color: var(--falcon-gray-600);
}

div.dt-container .dt-length label {
    margin-bottom: 0;
}

div.dt-container .dt-length select.dt-input {
    width: auto;
    padding: 0.2rem 1.75rem 0.2rem 0.5rem;
    font-size: 0.8333333333rem;
    border-radius: 0.25rem;
    margin-right: 0;
}

/* Saringan tanggal dari-sampai (layouts/be/filter_tanggal): tetap satu baris, kedua kotak tanggal berbagi lebar */
.input-group.filter-tanggal {
    flex-wrap: nowrap;
}

.input-group.filter-tanggal .form-control {
    min-width: 0;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

/* Ikon urut kolom DataTables dibuat lebih samar supaya judul kolom tetap bersih seperti tabel Falcon */
table.dataTable thead > tr > th span.dt-column-order {
    opacity: 0.6;
}

/* ------------------------------------------------------------------ SweetAlert2 */

.swal2-popup {
    font-family: var(--falcon-body-font-family);
    border-radius: 0.5rem;
}

.swal2-title {
    font-family: var(--falcon-font-sans-serif);
}

/* ------------------------------------------------------------------ Form */

/* Isian kode yang otomatis huruf besar: contoh di placeholder tetap ditulis biasa */
.form-control.text-uppercase::placeholder {
    text-transform: none;
}
