/* Mobile Responsive Styles */

/* Mobile First - Base styles are mobile by default, then scale up */

/* Tablets and Small Laptops (768px and up) */
@media (max-width: 1200px) {
    .container {
        max-width: 95%;
    }
}

/* Tablets (768px and below) */
@media (max-width: 768px) {
    /* Typography */
    h1 {
        font-size: 2rem !important;
    }
    
    h2 {
        font-size: 1.5rem !important;
    }
    
    /* Container */
    .container {
        max-width: 100%;
        padding: 0 1rem;
    }
    
    /* Navigation */
    .navbar-top-content {
        flex-direction: column;
        text-align: center;
        gap: 0.5rem;
    }
    
    .navbar-content {
        /* flex-direction: column; */
        gap: 1rem;
    }
    
    .logo {
        display: none;
        font-size: 1.5rem !important;
    }
    
    .search-bar {
        width: 100%;
        max-width: 100%;
    }
    
    .nav-actions {
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
    }
    
    /* Main Navigation */
    .nav-links {
        flex-direction: column;
        width: 100%;
    }
    
    .nav-links a {
        padding: 0.75rem;
        border-bottom: 1px solid var(--border);
    }
    
    /* Product Grid */
    .product-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 1rem !important;
    }
    
    /* Dashboard */
    .dashboard-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* Account Navigation */
    .account-nav {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    
    /* Footer */
    .footer-content {
        grid-template-columns: 1fr !important;
        text-align: center;
    }
    
    /* Filters Sidebar */
    .filters-sidebar {
        margin-bottom: 1.5rem;
    }
    
    /* Product Detail */
    .product-detail-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* Modal */
    .modal-content {
        max-width: 95% !important;
        padding: 1.5rem !important;
    }
    
    .modal-content > div {
        grid-template-columns: 1fr !important;
    }
    
    /* Buttons */
    .btn {
        padding: 0.6rem 1rem;
        font-size: 0.9rem;
    }
    
    /* Cards */
    .dashboard-card, .product-card {
        margin-bottom: 1rem;
    }
    
    /* Forms */
    input, select, textarea {
        font-size: 16px !important; /* Prevents iOS zoom */
    }
}

/* Mobile Phones (576px and below) */
@media (max-width: 576px) {
    /* Typography */
    h1 {
        font-size: 1.75rem !important;
    }
    
    h2 {
        font-size: 1.25rem !important;
    }
    
    /* Product Grid - Single Column */
    .product-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* Category Grid - Single Column */
    .category-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* Navigation Top Bar */
    .navbar-top {
        font-size: 0.75rem;
        padding: 0.25rem 0;
    }
    
    .navbar-top-content div {
        font-size: 0.75rem;
    }
    
    /* Search Button */
    .search-btn {
        padding: 0.5rem 1rem;
        font-size: 0.85rem;
    }
    
    /* Nav Actions */
    .nav-actions {
        gap: 0.75rem;
    }
    
    /* Buttons Smaller */
    .btn {
        padding: 0.5rem 0.75rem;
        font-size: 0.85rem;
    }
    
    /* Product Card */
    .product-image {
        height: 200px !important;
    }
    
    .product-info {
        padding: 1rem !important;
    }
    
    .product-name {
        font-size: 1rem !important;
    }
    
    /* Modal on Mobile */
    .modal-content {
        max-width: 100% !important;
        max-height: 100vh !important;
        border-radius: 0 !important;
        padding: 1rem !important;
    }
    
    /* Pagination */
    .pagination {
        gap: 0.25rem;
    }
    
    .page-link {
        min-width: 32px !important;
        height: 32px !important;
        padding: 0.25rem 0.5rem !important;
        font-size: 0.85rem !important;
    }
    
    /* Account Navigation */
    .account-nav div {
        flex-direction: column !important;
        width: 100%;
    }
    
    .account-nav .btn {
        width: 100%;
        margin-bottom: 0.5rem;
    }
    
    /* Dashboard Header */
    .dashboard-header {
        padding: 1.5rem 1rem !important;
    }
    
    .dashboard-header h1 {
        font-size: 1.5rem !important;
    }
    
    /* Quick View Modal */
    .modal-content div[style*="grid-template-columns"] {
        display: flex !important;
        flex-direction: column !important;
    }
    
    /* Checkout */
    .checkout-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* Order Detail */
    .order-detail-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* Profile Forms */
    .profile-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Extra Small Devices (320px and below) */
@media (max-width: 320px) {
    .container {
        padding: 0 0.5rem;
    }
    
    .logo {
        font-size: 1.25rem !important;
    }
    
    .product-image {
        height: 180px !important;
    }
    
    .btn {
        padding: 0.4rem 0.6rem;
        font-size: 0.8rem;
    }
}

/* Landscape Orientation Fix */
@media (max-height: 500px) and (orientation: landscape) {
    .navbar {
        position: relative;
    }
    
    .modal-content {
        max-height: 90vh;
        overflow-y: auto;
    }
}

/* Touch Device Optimizations */
@media (hover: none) and (pointer: coarse) {
    /* Increase touch targets */
    .btn, .nav-icon-btn, a {
        min-height: 44px;
        min-width: 44px;
    }
    
    /* Remove hover effects on touch devices */
    .btn:hover, .product-card:hover {
        transform: none;
    }
    
    /* Better tap feedback */
    .btn:active, .product-card:active {
        transform: scale(0.98);
    }
}

/* Print Styles */
@media print {
    .navbar, .footer, .btn, .nav-actions {
        display: none !important;
    }
    
    .container {
        max-width: 100%;
    }
}
