
* {
    box-sizing: border-box;
}

body {
    margin: 0;
    padding-top: 95px;
    background: #f4f6f9;
    font-family: Arial, sans-serif;
    color: #26332b;
}

/* NAVBAR */

.navbar-kopsi {
    background: #fff;
    min-height: 76px;
    border-bottom: 1px solid #e8eee9;
    box-shadow: 0 3px 15px rgba(0,0,0,.06);
    z-index: 1030;
}

.navbar-kopsi .container {
    max-width: 1200px;
}

/* LOGO */

.logo-kopsi {
    display: block;
    width: 50px !important;
    height: 50px !important;
    max-width: 50px !important;
    max-height: 50px !important;
    object-fit: contain;
    flex-shrink: 0;
}

/* BRAND */

.brand-info {
    line-height: 1.4;
}

.brand-title {
    font-size: 15px;
    font-weight: 800;
    color: #075b35;
    white-space: nowrap;
}

.brand-subtitle {
    font-size: 11px;
    color: #a27a19;
    font-weight: 700;
    letter-spacing: 2px;
}

/* MENU */

.navbar-kopsi .nav-link {
    padding: 11px 16px !important;
    color: #53615a;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    transition: .2s;
}

.navbar-kopsi .nav-link:hover,
.navbar-kopsi .nav-link.active {
    background: #eaf4ed;
    color: #075b35;
}

/* TOMBOL MOBILE */

.navbar-kopsi .navbar-toggler {
    border: 1px solid #dce5df;
    padding: 7px 10px;
    box-shadow: none;
}

.navbar-kopsi .navbar-toggler:focus {
    box-shadow: 0 0 0 .2rem rgba(25,135,84,.12);
}

/* CONTAINER HALAMAN */

.container-main {
    width: calc(100% - 30px);
    max-width: 1200px;
    margin: 0 auto;
    padding: 25px 0;
}

/* CARD */

.card {
    border: none;
    border-radius: 12px;
}

.card-body {
    padding: 24px;
}

/* JUDUL */

.page-title {
    font-size: 25px;
    font-weight: 700;
    color: #26332b;
}

.page-description {
    font-size: 14px;
    color: #7b8790;
}

/* FORM */

.form-control {
    min-height: 42px;
    border-radius: 8px;
    border: 1px solid #dce3e8;
}

.form-control:focus {
    border-color: #198754;
    box-shadow: 0 0 0 .2rem rgba(25,135,84,.12);
}

/* TOMBOL */

.btn {
    border-radius: 8px;
}

/* TABEL */

.table th {
    background: #f1f5f9;
    white-space: nowrap;
}

.table td {
    vertical-align: middle;
}

.table-responsive {
    width: 100%;
}

/* TABLET DAN HP */

@media (max-width: 991.98px) {

    body {
        padding-top: 85px;
    }

    .navbar-kopsi .navbar-collapse {
        padding: 12px 0 8px;
        margin-top: 10px;
        border-top: 1px solid #eee;
    }

    .navbar-kopsi .nav-link {
        padding: 12px 14px !important;
    }

}

/* HP */

@media (max-width: 576px) {

    body {
        padding-top: 80px;
    }

    .container-main {
        width: calc(100% - 24px);
        padding: 20px 0;
    }

    .card-body {
        padding: 17px;
    }

    .page-title {
        font-size: 22px;
    }

    .brand-title {
        font-size: 13px;
    }

    .logo-kopsi {
        width: 44px !important;
        height: 44px !important;
        max-width: 44px !important;
        max-height: 44px !important;
    }

}
/* FIX LOGO KOPSI */
.navbar-kopsi img.logo-kopsi {
    display: block !important;
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    min-height: 50px !important;
    max-height: 50px !important;
    object-fit: contain !important;
    position: static !important;
}