:root {
    --bs-primary: #15803d;
    --bs-primary-rgb: 21, 128, 61;
    --bs-link-color: #15803d;
    --bs-link-color-rgb: 21, 128, 61;
    --bs-link-hover-color: #116932;

    /* Gold accent sampled directly from the al fath logo's crescent moon */
    --alfath-gold: #f7bb0a;
    --alfath-gold-rgb: 247, 187, 10;
    --bs-warning: #f7bb0a;
    --bs-warning-rgb: 247, 187, 10;
}

.text-gold {
    color: var(--alfath-gold) !important;
}

.badge.text-bg-warning {
    color: #4a3600 !important;
}

.btn-primary,
.badge.text-bg-primary,
.bg-primary {
    background-color: #15803d !important;
    border-color: #15803d !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: #116932 !important;
    border-color: #116932 !important;
}

.text-primary {
    color: #15803d !important;
}

a {
    color: #15803d;
}

a:hover {
    color: #116932;
}

/* Prevent wide tables/cards from pushing the page into horizontal
   scroll on mobile (which visually shifts content under the sidebar).
   Each table scrolls internally instead. */
body {
    overflow-x: hidden;
}

.tabulator {
    max-width: 100%;
    overflow-x: auto;
}

.table-responsive {
    max-width: 100%;
}

@media (max-width: 576px) {
    .card-body {
        padding-left: .75rem;
        padding-right: .75rem;
    }
}

/* Footer link tiap small-box dashboard: warna bawaan AdminLTE (putih
   transparan) pudar di atas box terang seperti warning/info. Dipaksa
   hitam agar terbaca di semua warna box. */
.small-box .small-box-footer {
    color: #000;
    opacity: .85;
}

.small-box .small-box-footer:hover,
.small-box .small-box-footer:focus {
    color: #000;
    opacity: 1;
}

/* AdminLTE 4 tidak lagi menyediakan .btn-xs, padahal dipakai di tombol aksi
   hampir semua tabel. Tanpa definisi ini tombolnya render seukuran normal
   sehingga kolom Aksi kepotong dan tombol Hapus tidak kelihatan. */
.btn-xs {
    --bs-btn-padding-y: .125rem;
    --bs-btn-padding-x: .35rem;
    --bs-btn-font-size: .75rem;
    --bs-btn-border-radius: .2rem;
    line-height: 1.5;
}
