/* ===============================
   GLOBAL RESET
================================ */
* {
    box-sizing: border-box;
}

body {
    margin: 0;
    font-family: Arial, sans-serif;
}

/* ===============================
   HEADER
================================ */

.header{
display:flex;
align-items:center;
gap:15px;
}

/* ===============================
   RESPONSIVE HEADER
================================ */
@media (max-width: 768px) {

    .header {
        flex-direction: row !important;
        align-items: center !important;
    }

    .nav {
        margin-top: 10px;
        width: 100%;
    }

    .nav a {
        display: inline-block;
        margin: 5px 10px 0 0;
    }
}

/* ===============================
   RESPONSIVE CONTAINER
================================ */
@media (max-width: 768px) {

    .container {
        padding: 15px !important;
    }

    .section {
        padding: 15px !important;
    }
}

/* ===============================
   RESPONSIVE FORM
================================ */
@media (max-width: 768px) {

    input,
    select,
    textarea,
    button {
        width: 100% !important;
        margin-bottom: 10px !important;
    }
}

/* ===============================
   RESPONSIVE TABLE
================================ */
.table-wrapper {
    overflow-x: auto;
}

@media (max-width: 768px) {

    table {
        font-size: 12px;
        min-width: 600px;
    }

    th, td {
        padding: 8px !important;
    }
}

/* ===============================
   CARD / BOX FIX
================================ */
@media (max-width: 768px) {

    .box,
    .card {
        width: 100% !important;
    }
}

/* ===============================
   BUTTON AKSI FIX
================================ */

.aksi {
    white-space: nowrap;
}

.btn-reset,
.btn-keluar {
    display: inline-block;
    padding: 6px 12px;
    border-radius: 4px;
    color: white;
    text-decoration: none;
    font-size: 13px;
    margin-right: 6px;
}

.btn-reset {
    background: #f59e0b;
}

.btn-keluar {
    background: #dc2626;
}

/* Mobile */
@media (max-width: 768px) {
    .aksi {
        white-space: normal;
    }

    .btn-reset,
    .btn-keluar {
        display: block;
        width: 100%;
        margin-bottom: 6px;
        text-align: center;
    }
}

/* =========================
   SIDEBAR MOBILE
========================= */

.menu-btn{
font-size:26px;
cursor:pointer;
margin-right:15px;
display:none;
color:white;
}

.sidebar{
position:fixed;
left:-260px;
top:0;
width:260px;
height:100%;
background:#1e3a8a;
padding-top:80px;
transition:0.3s;
z-index:2000;
}

.sidebar a{
display:block;
padding:15px 20px;
color:white;
text-decoration:none;
font-size:16px;
}

.sidebar a:hover{
background:#162e6b;
}

.sidebar.active{
left:0;
}

/* =========================
   OVERLAY
========================= */

.overlay{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.4);
display:none;
z-index:1500;
}

.overlay.active{
display:block;
}

/* =========================
   MOBILE MODE
========================= */

@media(max-width:768px){

.nav{
display:none !important;
}

.menu-btn{
display:block;
}

}
/* BUTTON GLOBAL */

.btn{
display:block;
width:100%;
padding:12px;
border-radius:6px;
text-decoration:none;
font-size:14px;
color:white;
text-align:center;
box-sizing:border-box;
margin-top:15px;
}

.btn-primary{
background:#2563eb;
}

.btn-warning{
background:#f59e0b;
}

.btn-danger{
background:#dc2626;
}

.btn:hover{
opacity:0.9;
}

