/**
 * SIANNA STARTER - Estilos Responsive
 *
 * Media queries para todos los breakpoints.
 *
 * @package SiannaStarter
 */

/* ============================================
   TABLET (max-width: 1024px)
   ============================================ */
@media (max-width: 1024px) {
    .sianna-products-grid,
    .sianna-products-grid-4,
    .sianna-products-grid[data-columns="4"] {
        grid-template-columns: repeat(3, 1fr);
        gap: var(--sianna-space-lg);
    }

    .sianna-product-layout {
        gap: var(--sianna-space-2xl);
    }

    .sianna-hero-title {
        font-size: 2.5rem;
    }

    /* Cart */
    .sianna-cart-layout {
        flex-direction: column;
    }

    .sianna-cart-summary {
        position: static;
        width: 100%;
    }

    /* Checkout */
    .sianna-checkout-layout {
        flex-direction: column;
    }

    .sianna-checkout-sidebar {
        position: static;
        width: 100%;
    }
}

/* ============================================
   TABLET PORTRAIT (max-width: 768px)
   ============================================ */
@media (max-width: 768px) {
    :root {
        --sianna-space-3xl: 48px;
    }

    .sianna-container {
        padding: 0 var(--sianna-space-md);
    }

    h1, .sianna-page-title { font-size: 1.75rem; }
    h2, .sianna-section-title { font-size: 1.5rem; }

    /* Products Grid */
    .sianna-products-grid,
    .sianna-products-grid-4,
    .sianna-products-grid[data-columns="3"],
    .sianna-products-grid[data-columns="4"] {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--sianna-space-md);
    }

    /* Single Product */
    .sianna-product-layout {
        grid-template-columns: 1fr;
        gap: var(--sianna-space-xl);
    }

    .sianna-product-gallery {
        position: static;
    }

    .sianna-product-title {
        font-size: 1.5rem;
    }

    .sianna-product-price {
        font-size: 1.5rem;
    }

    /* Hero */
    .sianna-hero {
        padding: var(--sianna-space-2xl) 0;
    }

    .sianna-hero-title {
        font-size: 2rem;
    }

    .sianna-hero-subtitle {
        font-size: 1rem;
    }

    /* Categories */
    .sianna-categories-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Promo Banner */
    .sianna-promo-title {
        font-size: 1.75rem;
    }

    /* Shop Controls */
    .sianna-shop-controls {
        flex-direction: column;
        gap: var(--sianna-space-md);
        align-items: stretch;
    }

    .sianna-shop-ordering {
        justify-content: space-between;
    }

    /* Tabs */
    .sianna-tabs-nav {
        flex-wrap: wrap;
    }

    .sianna-tab-btn {
        flex: 1;
        text-align: center;
        padding: var(--sianna-space-sm) var(--sianna-space-md);
        font-size: 0.875rem;
    }

    /* Cart Items */
    .sianna-cart-header {
        display: none;
    }

    .sianna-cart-item {
        flex-wrap: wrap;
        padding: var(--sianna-space-md);
        border: 1px solid var(--sianna-border);
        border-radius: var(--sianna-radius);
        margin-bottom: var(--sianna-space-md);
    }

    .sianna-cart-col-product {
        width: 100%;
        margin-bottom: var(--sianna-space-md);
    }

    .sianna-cart-col-price {
        display: none;
    }

    .sianna-cart-mobile-price {
        display: block !important;
        margin-top: var(--sianna-space-sm);
        font-weight: 600;
    }

    .sianna-cart-col-quantity,
    .sianna-cart-col-subtotal,
    .sianna-cart-col-remove {
        width: auto;
    }

    .sianna-cart-actions {
        flex-direction: column;
    }

    /* Mini Cart */
    .sianna-mini-cart-sidebar {
        width: 100%;
        max-width: 100%;
    }

    /* Checkout */
    .sianna-form-row-2col,
    .sianna-form-row-3col {
        grid-template-columns: 1fr;
    }

    .sianna-order-item {
        flex-wrap: wrap;
    }

    .sianna-order-item-image {
        flex-shrink: 0;
    }

    .sianna-order-item-details {
        flex: 1;
        min-width: 0;
    }

    .sianna-order-item-price {
        width: 100%;
        text-align: left;
        margin-top: var(--sianna-space-sm);
    }

    /* Account */
    .sianna-account-layout {
        flex-direction: column;
    }

    .sianna-account-nav {
        position: static;
        width: 100%;
    }

    .sianna-account-menu {
        display: flex;
        flex-wrap: wrap;
        gap: var(--sianna-space-sm);
    }

    .sianna-account-menu-item {
        flex: 1;
        min-width: 100px;
    }

    /* Thank You */
    .sianna-order-info-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sianna-order-addresses {
        flex-direction: column;
    }

    /* Auth */
    .sianna-auth-container {
        padding: var(--sianna-space-lg);
    }
}

/* ============================================
   MOBILE (max-width: 480px)
   ============================================ */
@media (max-width: 480px) {
    :root {
        --sianna-font-size: 15px;
        --sianna-space-2xl: 32px;
        --sianna-space-3xl: 40px;
    }

    h1, .sianna-page-title { font-size: 1.5rem; }
    h2, .sianna-section-title { font-size: 1.25rem; }

    /* Products Grid - Single Column */
    .sianna-products-grid,
    .sianna-products-grid-4,
    .sianna-products-grid[data-columns="2"],
    .sianna-products-grid[data-columns="3"],
    .sianna-products-grid[data-columns="4"] {
        grid-template-columns: 1fr;
    }

    /* Product Card - Show button on mobile */
    .sianna-product-card-button {
        display: block;
    }

    .sianna-product-card-actions {
        opacity: 1;
        transform: none;
    }

    /* Categories */
    .sianna-categories-grid {
        grid-template-columns: 1fr;
    }

    /* Hero */
    .sianna-hero-title {
        font-size: 1.5rem;
    }

    /* Newsletter */
    .sianna-newsletter-form {
        flex-direction: column;
    }

    /* Add to cart */
    .sianna-add-to-cart-row {
        flex-direction: column;
    }

    .sianna-add-to-cart-row .sianna-quantity-selector {
        width: 100%;
        justify-content: space-between;
    }

    .sianna-add-to-cart-row .sianna-qty-input {
        flex: 1;
    }

    /* Gallery Thumbs */
    .sianna-product-gallery-thumbs {
        overflow-x: auto;
        padding-bottom: var(--sianna-space-sm);
    }

    .sianna-gallery-thumb {
        flex: 0 0 60px;
        height: 60px;
    }

    /* Buttons */
    .sianna-btn {
        padding: var(--sianna-space-sm) var(--sianna-space-md);
    }

    .sianna-btn-lg {
        padding: var(--sianna-space-md) var(--sianna-space-lg);
    }

    /* Order Info */
    .sianna-order-info-grid {
        grid-template-columns: 1fr;
    }

    /* Dashboard Stats */
    .sianna-dashboard-stats {
        flex-direction: column;
    }

    .sianna-stat-card {
        width: 100%;
    }

    /* Order Row */
    .sianna-order-row {
        flex-direction: column;
        gap: var(--sianna-space-sm);
        padding: var(--sianna-space-md);
        border: 1px solid var(--sianna-border);
        border-radius: var(--sianna-radius);
        margin-bottom: var(--sianna-space-md);
    }

    .sianna-order-row-action {
        width: 100%;
    }

    .sianna-order-row-action .sianna-btn {
        width: 100%;
    }

    /* Account Menu */
    .sianna-account-menu-item {
        flex: 0 0 100%;
    }

    /* Quick View */
    .sianna-quick-view-content {
        flex-direction: column;
    }

    .sianna-qv-gallery,
    .sianna-qv-info {
        width: 100%;
    }
}

/* ============================================
   DESKTOP LARGE (min-width: 1400px)
   ============================================ */
@media (min-width: 1400px) {
    :root {
        --sianna-container: 1320px;
    }

    .sianna-hero-title {
        font-size: 3.5rem;
    }
}

/* ============================================
   PRINT STYLES
   ============================================ */
@media print {
    .sianna-mini-cart-sidebar,
    .sianna-mini-cart-overlay,
    .sianna-product-card-actions,
    .sianna-cart-actions,
    .sianna-checkout-submit,
    .sianna-account-nav,
    .sianna-newsletter,
    .sianna-promo-banner {
        display: none !important;
    }

    .sianna-container {
        max-width: 100%;
        padding: 0;
    }

    body {
        font-size: 12pt;
        color: #000;
        background: #fff;
    }
}

/* ============================================
   REDUCED MOTION
   ============================================ */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

    html {
        scroll-behavior: auto;
    }
}

/* ============================================
   DARK MODE SUPPORT (optional)
   ============================================ */
@media (prefers-color-scheme: dark) {
    /* Uncomment and customize for dark mode support
    :root {
        --sianna-bg: #1a1a1a;
        --sianna-bg-alt: #2d2d2d;
        --sianna-text: #ffffff;
        --sianna-text-light: #cccccc;
        --sianna-text-muted: #888888;
        --sianna-border: #404040;
        --sianna-border-dark: #555555;
    }
    */
}

/* ============================================
   SIANNA PREMIUM RESPONSIVE
   ============================================ */
@media (max-width: 1024px) {
    .sianna-products-premium-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sianna-products-all {
        grid-template-columns: repeat(3, 1fr);
    }

    .sianna-hero-premium .sianna-hero-title {
        font-size: 3rem;
    }

    .sianna-trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sianna-categories-premium-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sianna-corporate-benefits {
        grid-template-columns: 1fr;
    }

    .sianna-contact-grid {
        grid-template-columns: 1fr;
    }

    .sianna-contact-image {
        display: none;
    }
}

@media (max-width: 768px) {
    .sianna-hero-premium {
        min-height: auto;
        padding: var(--sianna-space-3xl) 0;
    }

    .sianna-hero-premium .sianna-hero-content {
        text-align: center;
    }

    .sianna-hero-premium .sianna-hero-title {
        font-size: 2.25rem;
    }

    .sianna-hero-cta {
        justify-content: center;
    }

    .sianna-trust-grid {
        grid-template-columns: 1fr 1fr;
        gap: var(--sianna-space-md);
    }

    .sianna-trust-item {
        flex-direction: column;
        text-align: center;
    }

    .sianna-products-premium-grid,
    .sianna-products-all {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--sianna-space-md);
    }

    .sianna-premium .sianna-section-title {
        font-size: 1.75rem;
    }

    .sianna-categories-premium-grid {
        grid-template-columns: 1fr;
    }

    .sianna-corporate-content h2 {
        font-size: 1.75rem;
    }

    .sianna-filter-pills {
        overflow-x: auto;
        flex-wrap: nowrap;
        justify-content: flex-start;
        padding-bottom: var(--sianna-space-sm);
        -webkit-overflow-scrolling: touch;
    }

    .sianna-filter-pill {
        flex-shrink: 0;
    }
}

@media (max-width: 480px) {
    .sianna-hero-premium .sianna-hero-title {
        font-size: 1.75rem;
    }

    .sianna-hero-tagline {
        font-size: 0.65rem;
        padding: 6px 14px;
    }

    .sianna-hero-cta {
        flex-direction: column;
    }

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

    .sianna-products-premium-grid,
    .sianna-products-all {
        grid-template-columns: 1fr;
    }

    .sianna-premium .sianna-product-card-info {
        padding: var(--sianna-space-md);
    }

    .sianna-premium .sianna-product-card-title {
        font-size: 1.1rem;
    }

    .sianna-contact-methods {
        gap: var(--sianna-space-sm);
    }

    .sianna-contact-method {
        padding: var(--sianna-space-sm);
    }

    .sianna-contact-icon {
        width: 40px;
        height: 40px;
    }
}
