/* =====================================
   LAYOUT UTAMA
   ===================================== */

/* Biar row utama minimal setinggi viewport (dikurangi tinggi navbar) */
.layout-main-row {
    min-height: calc(100vh - 70px);
}

/* Sidebar bisa di-scroll terpisah jika konten tinggi */
.sidebar-scroll {
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    padding-right: 4px;
}

/* Kadang di beberapa browser, navbar-toggler-icon nggak muncul dengan baik.
   Ini fallback supaya icon pasti terlihat di navbar-dark. */
.navbar-dark .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.8%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* =====================================
   MOBILE TWEAKS
   ===================================== */
@media (max-width: 767.98px) {

    body {
        font-size: 14px;
    }

    .navbar-brand {
        font-size: 1rem;
    }

    .list-group-item {
        padding: 0.45rem 0.65rem;
        font-size: 0.9rem;
    }

    .btn {
        font-size: 0.85rem;
        padding: 0.35rem 0.65rem;
    }

    /* Supaya konten agak mepet di HP */
    .container,
    .container-fluid {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

    /* Tabel panjang bisa di-scroll horizontal di HP */
    table.table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        font-size: 0.85rem;
    }

    table.table thead,
    table.table tbody,
    table.table tr,
    table.table th,
    table.table td {
        white-space: nowrap;
    }

    /* Card sedikit rapat */
    .card {
        margin-bottom: 0.75rem;
    }
}
