/* ============================================
   CMS Admin Panel - Responsive Styles
   ============================================ */

@media (max-width: 1024px) {
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .form-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    :root {
        --sidebar-width: 0px;
    }

    .admin-sidebar {
        transform: translateX(-260px);
        width: 260px;
    }

    .admin-sidebar.open {
        transform: translateX(0);
    }

    .admin-main {
        margin-left: 0;
    }

    .sidebar-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .sidebar-overlay.active {
        display: block;
    }

    .admin-content {
        padding: 1rem;
    }

    .admin-header {
        padding: 0 1rem;
    }

    .admin-header__title {
        font-size: 1rem;
    }

    .admin-header__user span {
        display: none;
    }

    .stats-grid {
        grid-template-columns: 1fr;
    }

    .page-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .page-header .btn {
        width: 100%;
    }

    .card__header {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }

    .table th,
    .table td {
        padding: 0.625rem 0.75rem;
        font-size: 0.8rem;
    }

    .table__actions {
        flex-direction: column;
        align-items: flex-start;
    }

    .form-actions {
        flex-direction: column;
    }

    .form-actions .btn {
        width: 100%;
    }

    .guest-card {
        padding: 1.75rem;
    }

    .pagination a,
    .pagination span {
        min-width: 32px;
        height: 32px;
        font-size: 0.8rem;
    }
}

@media (max-width: 480px) {
    .admin-content {
        padding: 0.75rem;
    }

    .card__body {
        padding: 1rem;
    }

    .stat-card {
        padding: 1rem;
    }

    .stat-card__value {
        font-size: 1.5rem;
    }

    .page-header__title {
        font-size: 1.125rem;
    }

    .guest-wrapper {
        padding: 1rem;
    }

    .guest-card {
        padding: 1.5rem;
    }

    .guest-card__logo h1 {
        font-size: 1.25rem;
    }

    .admin-logo {
        max-width: 120px;
    }

    .admin-logo--sm {
        max-width: 140px;
    }
}
