/* ==========================================================================
   Responsive Breakpoint Rules (Mobile First, 320px to 1920px)
   ========================================================================== */

/* Large Desktop (1440px and up) */
@media (min-width: 1440px) {
    .container {
        max-width: 1380px;
    }
}

/* Standard Desktop / Laptop (1200px - 1439px) */
@media (max-width: 1200px) {
    .admin-stats-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .admin-charts-grid {
        grid-template-columns: 1fr;
    }
    .dashboard-grid {
        grid-template-columns: 1fr 300px;
        gap: 20px;
    }
}

/* Tablet Layout (769px - 1024px) */
@media (max-width: 1024px) {
    .hero-grid {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .hero-illustration {
        display: none;
    }
    .dashboard-grid {
        grid-template-columns: 1fr;
    }
    .side-column {
        position: static;
    }
    .steps-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Mobile Devices (max-width: 768px) - Matches Mockup 3 */
@media (max-width: 768px) {
    :root {
        --topbar-height: 64px;
    }

    body {
        padding-bottom: var(--bottom-nav-height);
    }

    .app-sidebar,
    .admin-sidebar {
        transform: translateX(-100%);
        box-shadow: var(--shadow-xl);
    }

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

    .app-main,
    .admin-main {
        margin-left: 0 !important;
        width: 100%;
    }

    .public-nav-links {
        display: none;
    }

    .mobile-bottom-nav {
        display: block;
    }

    .app-topbar,
    .admin-topbar {
        padding: 0 16px;
    }

    .app-content {
        padding: 16px;
    }

    .hero-section {
        padding: 24px 16px;
        border-radius: var(--radius-lg);
    }

    .hero-title {
        font-size: 26px;
    }

    .downloader-input-box {
        flex-direction: column;
        align-items: stretch;
        padding: 10px;
        gap: 10px;
    }

    .downloader-input {
        height: 40px;
    }

    .btn-paste {
        width: 100%;
        justify-content: center;
    }

    .btn-download-hero {
        width: 100%;
        justify-content: center;
    }

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

    .admin-stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .server-status-list {
        grid-template-columns: 1fr;
    }

    .media-row-card {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .media-thumb-wrapper {
        width: 100%;
        height: 160px;
    }

    .media-actions-group {
        width: 100%;
        justify-content: space-between;
    }

    .admin-search {
        display: none;
    }

    #theme-toggle-btn,
    .public-header .btn-icon[title="Language Selector"],
    #notif-btn,
    #notif-dropdown {
        display: none !important;
    }
}

/* Small Mobile Screens (max-width: 480px) */
@media (max-width: 480px) {
    .admin-stats-grid {
        grid-template-columns: 1fr;
    }
    .platform-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .footer-content {
        flex-direction: column;
        align-items: flex-start;
    }
}
