/* SISPIL Premium Style - AdminLTE Inspired */

body {
    font-family: 'Source Sans Pro', sans-serif;
    background-color: #f4f6f9;
    margin: 0;
    min-height: 100vh; 
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 10px;
    -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;
}

.card-premium {
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
    background: #ffffff;
    width: 100%;
    max-width: 1100px;
    min-height: auto; 
    display: flex;
    position: relative;
}

.panel-header-line {
    height: 4px;
    width: 100%;
    background: linear-gradient(90deg, #25499c 50%, #2e9b8b 50%);
    position: absolute;
    top: 0;
    left: 0;
}

.left-panel {
    background: #25499c;
    color: white;
    padding: 60px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.right-panel {
    padding: 60px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #ffffff;
}

/* Antrean Table Style */
.table-antrean { font-size: 0.85rem; }
/*.table-antrean thead th {
    background-color: #f8f9fa;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 1px;
    border-bottom: 2px solid #dee2e6;
}*/


.table-antrean thead th {
    background-color: #f8f9fa;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 1px;
    border-bottom: 2px solid #dee2e6;
    
    /* Perbaikan Rata Tengah */
    text-align: center;       /* Rata tengah horizontal */
    vertical-align: middle;    /* Rata tengah vertikal */
    padding: 12px 8px;        /* Memberi ruang agar tidak terlalu mepet garis */
}

.form-control:focus {
            border-color: #2e9b8b;
            box-shadow: none;
        }

        .btn-submit {
            background: #2e9b8b;
            color: white;
            transition: 0.3s;
            font-weight: 700;
        }

        .btn-submit:hover {
            background: #237a6d;
            color: white;
            transform: translateY(-2px);
        }
        
        /* Garis dekoratif tipis sebagai pengganti border-top yang kasar */
        .panel-header-line {
            height: 4px;
            width: 100%;
            background: linear-gradient(90deg, #25499c 50%, #2e9b8b 50%);
            position: absolute;
            top: 0;
            left: 0;
        }


.badge-status {
    font-weight: 500;
    padding: 0.4em 0.8em;
    border-radius: 50rem;
}

.bg-proses {
    background-color: #fff3cd;
    color: #856404;
    border: 1px solid #ffeeba;
}

/* Pagination Style */
.pagination .page-link {
    color: #25499c;
    border: none;
    margin: 0 2px;
    border-radius: 4px;
}

.pagination .page-item.active .page-link {
    background-color: #25499c;
    border-color: #25499c;
}



/* Warna Sidebar & Brand Logo */
.main-sidebar {
    background-color: #25499c !important;
}

/* Warna Sidebar saat Menu di-Hover atau Aktif */
.nav-sidebar .nav-link.active {
    background-color: #009345 !important;
    color: #ffffff !important;
}

.nav-sidebar .nav-link:hover {
    background-color: rgba(0, 147, 69, 0.2) !important;
    color: #ffffff !important;
}

/* Navbar Atas */
.main-header {
    border-bottom: 3px solid #009345 !important;
}

/* Card & Small Box Premium */
.card-primary.card-outline {
    border-top: 3px solid #25499c !important;
}

.bg-info {
    background-color: #25499c !important;
}

.bg-success {
    background-color: #009345 !important;
}

/* Tombol Premium */
.btn-primary {
    background-color: #25499c !important;
    border-color: #25499c !important;
}

.btn-success {
    background-color: #009345 !important;
    border-color: #009345 !important;
}




/* Container Utama Sidebar */
.main-sidebar {
    background-color: #25499c !important; /* Biru BPJS */
}

/* Warna teks menu default (Putih) */
.nav-sidebar .nav-link {
    color: rgba(255, 255, 255, 0.8) !important;
}

/* Judul Header Kategori (Header kecil di sidebar) */
.nav-header {
    color: rgba(255, 255, 255, 0.6) !important;
    background-color: transparent !important;
}

/* Menu Aktif (Hijau BPJS) */
.nav-pills .nav-link.active, 
.nav-pills .show > .nav-link {
    background-color: #009345 !important; /* Hijau Emerald */
    color: #ffffff !important;
    box-shadow: 0 4px 5px rgba(0,0,0,0.2);
}

/* Efek Hover (Sorotan saat kursor lewat) */
.nav-sidebar .nav-link:hover {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
}

/* Garis pemisah antar menu agar lebih rapi */
.nav-sidebar .nav-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

/* Brand Logo (Bagian Atas) */
.brand-link {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    background-color: #ffffff !important; /* Putih bersih agar logo/tulisan kontras */
}


/* Memaksa semua teks di dalam sidebar menjadi putih */
.main-sidebar .nav-link p, 
.main-sidebar .nav-link i {
    color: #ffffff !important;
}

/* Memaksa teks header (KATEGORI LAYANAN) menjadi putih terang */
.main-sidebar .nav-header {
    color: rgba(255, 255, 255, 0.9) !important;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 0.8rem;
    padding-top: 15px;
}

/* Mengatur warna saat menu di-hover agar teks tetap putih */
.nav-sidebar .nav-link:hover p,
.nav-sidebar .nav-link:hover i {
    color: #ffffff !important;
}

/* Menyesuaikan warna icon spesifik agar tidak redup */
.nav-icon {
    opacity: 1 !important;
    margin-right: 10px;
}

/* Menargetkan langsung ke elemen p dan i di dalam sidebar agar tidak kalah dengan AdminLTE */
.main-sidebar.sidebar-light-primary .nav-sidebar .nav-link p,
.main-sidebar.sidebar-light-primary .nav-sidebar .nav-link i,
.main-sidebar.sidebar-light-primary .nav-header {
    color: #ffffff !important;
    opacity: 1 !important;
}

/* Memperbaiki warna teks saat hover agar tidak berubah jadi gelap */
.main-sidebar.sidebar-light-primary .nav-sidebar .nav-link:hover p,
.main-sidebar.sidebar-light-primary .nav-sidebar .nav-link:hover i {
    color: #ffffff !important;
}

/* Khusus untuk teks 'Keluar' yang berwarna merah, kita buat merahnya lebih terang agar kontras */
.main-sidebar.sidebar-light-primary .nav-sidebar .nav-link.text-danger p,
.main-sidebar.sidebar-light-primary .nav-sidebar .nav-link.text-danger i {
    color: #ff6b6b !important;
}

/* Membuat tulisan Dashboard di box biru (aktif) tetap putih bersih */
.nav-pills .nav-link.active p, 
.nav-pills .nav-link.active i {
    color: #ffffff !important;
    font-weight: 600;
}


/* Responsive Mobile */
@media (max-width: 768px) {
    body { align-items: flex-start; }
    .card-premium { flex-direction: column; }
    .left-panel, .right-panel { padding: 30px 20px; }
    .left-panel { order: 1; }
    .right-panel { order: 2; }
}

@media (min-width: 769px) {
    .card-premium { min-height: 580px; }
}

@media print { body { display: none !important; } }