/**
 * ShopUHIV - Responsive Styles
 * Медиа-запросы и адаптивные стили
 */

/* ────────────────────────────────────────────
   RESPONSIVE GRID
   ──────────────────────────────────────────── */

@media (min-width: 768px) {
    .md\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 1024px) {
    .lg\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* ────────────────────────────────────────────
   MOBILE FIRST (< 640px)
   ──────────────────────────────────────────── */

@media (max-width: 640px) {
    .container {
        padding: 0 var(--spacing-3);
    }
    
    .search-field-input {
        font-size: 16px; /* Предотвращает zoom на iOS */
    }
    
    .catalog-tab {
        padding: 0.875rem 0;
        font-size: 0.9375rem;
    }
}

/* ────────────────────────────────────────────
   SMALL MOBILE (< 375px)
   ──────────────────────────────────────────── */

@media (max-width: 375px) {
    .cart-item {
        padding: var(--spacing-3);
    }
    
    .cart-item img,
    .cart-item picture {
        width: 4rem;
        height: 4rem;
        min-width: 4rem;
        max-width: 4rem;
    }
    
    .cart-item h3 {
        font-size: var(--font-size-sm);
    }
    
    .cart-item .price-display {
        font-size: 0.9375rem;
    }
    
    /* Крестик удаления - всегда справа */
    .cart-item .remove-item {
        position: absolute !important;
        top: 0.5rem !important;
        right: 0.5rem !important;
        left: auto !important;
        bottom: auto !important;
    }
    
    .footer-add {
        padding: 0.875rem;
        gap: var(--spacing-2);
    }
    
    .footer-add #footer-price {
        font-size: var(--font-size-lg);
    }
    
    .footer-add .add-to-cart-button {
        padding: var(--spacing-3) var(--spacing-4);
        font-size: var(--font-size-sm);
    }
    
    .cart-summary-container {
        padding: var(--spacing-3) 0.875rem var(--spacing-3) 0.875rem;
    }
    
    .cart-summary-row {
        font-size: var(--font-size-xs);
        padding: var(--spacing-1) 0;
    }
    
    .cart-summary-label,
    .cart-summary-value {
        font-size: var(--font-size-xs);
    }
    
    .cart-summary-label-total {
        font-size: 0.8125rem;
    }
    
    .cart-summary-value-total {
        font-size: 0.9375rem;
    }
    
    .checkout-button {
        padding: var(--spacing-3) var(--spacing-4);
        font-size: var(--font-size-sm);
        margin-top: var(--spacing-2);
    }
}

/* ────────────────────────────────────────────
   TABLET & UP (>= 640px)
   ──────────────────────────────────────────── */

@media (min-width: 640px) {
    .cart-item {
        padding: var(--spacing-4);
    }
    
    .cart-item img,
    .cart-item picture {
        width: 6rem;
        height: 6rem;
        min-width: 6rem;
        max-width: 6rem;
    }
    
    .footer-add {
        padding: 1.25rem;
    }
    
    .cart-summary-container {
        padding: var(--spacing-4) 1.25rem var(--spacing-4) 1.25rem;
    }
}

/* ────────────────────────────────────────────
   LOADING STATES
   ──────────────────────────────────────────── */

.catalog-search-tabs.loading .search-submit-btn {
    pointer-events: none;
    opacity: 0.6;
}

.catalog-tabs.loading .catalog-tab {
    pointer-events: none;
    opacity: 0.7;
}

