/* GLOBAL STYLE - VPN MANAGER */
:root {
    --primary-color: #0d6efd;
    --maroon-color: #800000;
    --dark-sidebar: #1a1d20;
    --bg-light: #f0f2f5;
}

body { 
    font-family: 'Inter', 'Plus Jakarta Sans', sans-serif; 
    background-color: var(--bg-light); 
    overflow-x: hidden; 
}

/* Navbar Style */
.navbar-brand img {
    max-height: 40px;
    object-fit: contain;
    border-radius: 5px;
}

@media (max-width: 576px) {
    .navbar-brand img {
        max-height: 30px;
    }
}

/* Sidebar Styling - VERSI RAPAT */
.sidebar {
    width: 250px; 
    height: 100vh; 
    background: var(--dark-sidebar);
    position: fixed; 
    left: 0;
    top: 0;
    transition: all 0.3s ease; 
    z-index: 1050;
    overflow-y: auto; /* Memungkinkan scroll jika layar sangat kecil */
}

/* Mengatur jarak antar menu agar lebih rapat */
.sidebar .nav-link {
    padding-top: 5px !important;    /* Mengurangi padding atas (sebelumnya py-2) */
    padding-bottom: 5px !important; /* Mengurangi padding bawah */
    margin-bottom: 1px !important;  /* Mengurangi jarak antar menu (sebelumnya mb-2) */
    font-size: 0.875rem;            /* Ukuran font sedikit dikecilkan */
    display: flex;
    align-items: center;
}

/* Mengatur jarak judul seksi (Monitoring, Sistem, dll) */
.sidebar small.text-uppercase {
    margin-top: 12px !important;    /* Mengurangi jarak atas seksi (sebelumnya mt-3) */
    margin-bottom: 4px !important;  /* Mengurangi jarak bawah seksi (sebelumnya mb-2) */
    display: block;
    opacity: 0.6;
}

/* Mempercantik Scrollbar Sidebar */
.sidebar::-webkit-scrollbar {
    width: 4px;
}
.sidebar::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
}

.main-content { 
    margin-left: 250px; 
    padding: 20px; 
    transition: all 0.3s ease; 
}

/* Mobile Adaptability */
@media (max-width: 991px) {
    .sidebar { margin-left: -250px; }
    .sidebar.active { margin-left: 0; }
    .main-content { margin-left: 0; padding: 15px; }
}

/* UI Components */
.card-custom { 
    border: none; 
    border-radius: 12px; 
    box-shadow: 0 4px 12px rgba(0,0,0,0.05); 
}

.table-responsive { 
    border-radius: 12px; 
    background: white; 
    padding: 10px; 
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* Code Box (Dark Theme) */
.code-box, .code-block {
    background: #1e1e1e; 
    color: #d4d4d4; 
    padding: 12px;
    border-radius: 8px; 
    font-family: 'Courier New', monospace;
    font-size: 0.8rem; 
    white-space: pre-wrap;
    position: relative;
}

/* Warna Active Menu */
.nav-link.active {
    background-color: var(--primary-color) !important;
}

.btn-maroon {
    background-color: var(--maroon-color);
    color: white;
    border-radius: 50px;
}