/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 1200px) {
    .grid-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .grid-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 992px) {
    .navbar {
        flex-direction: column;
        align-items: flex-start;
        padding: 14px 0;
    }

    .nav-links {
        flex-wrap: wrap;
        width: 100%;
    }

    .page-title {
        font-size: 1.7rem;
    }

    .grid-2,
    .grid-3,
    .grid-4 {
        grid-template-columns: 1fr;
    }

    .flex-between {
        flex-direction: column;
        align-items: flex-start;
    }

    .card {
        padding: 18px;
    }

    .stat-value {
        font-size: 1.55rem;
    }
}

@media (max-width: 768px) {
    .container {
        padding: 0 14px;
    }

    .section {
        padding: 22px 0;
    }

    .page-header {
        padding: 26px 0 8px;
    }

    .page-title {
        font-size: 1.45rem;
    }

    .page-subtitle {
        font-size: 0.92rem;
    }

    .btn,
    .btn-sm,
    .btn-lg {
        width: 100%;
    }

    .tabs {
        flex-direction: column;
    }

    .tab-btn {
        width: 100%;
    }

    .pagination {
        justify-content: center;
    }

    .table {
        min-width: 680px;
    }

    .modal-dialog {
        max-width: 100%;
    }
}

@media (max-width: 576px) {
    .logo {
        font-size: 1rem;
    }

    .logo-mark {
        width: 38px;
        height: 38px;
    }

    .card {
        border-radius: 16px;
        padding: 16px;
    }

    .card-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .stat-top {
        align-items: flex-start;
    }

    .stat-value {
        font-size: 1.35rem;
    }

    .search-input,
    .input,
    .select,
    .textarea {
        font-size: 16px;
    }

    .table th,
    .table td {
        padding: 12px 14px;
    }
}