/**
 * Correcciones adicionales para dispositivos móviles
 * Soluciona problemas específicos de visualización en pantallas pequeñas
 */

/* Corregir el espacio vacío en el encabezado */
@media (max-width: 576px) {
    /* Eliminar el espacio vacío en el lado izquierdo del encabezado */
    .dark-header .container {
        padding-left: 0;
        padding-right: 0;
        max-width: 100%;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    
    /* Eliminar cualquier margen que pueda estar causando el espacio */
    .dark-header {
        margin-left: 0;
        margin-right: 0;
        padding-left: 0;
        padding-right: 0;
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }
    
    /* Ajustar el logo para que no tenga margen izquierdo */
    .dark-header .logo {
        margin-left: 0;
        margin-right: 0;
    }
    
    /* Asegurar que el contenido del encabezado esté bien alineado */
    .header-top {
        padding-left: 10px;
        padding-right: 10px;
    }
    
    /* Ajustar el tamaño del logo */
    .logo img {
        max-width: 150px;
        height: auto;
    }
    
    /* Corregir la alineación de los botones de visualización de productos */
    .view-options {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 5px;
        margin-right: 0;
    }
    
    /* Hacer que los botones de visualización sean más pequeños y compactos */
    .view-options .btn {
        padding: 4px 8px;
        font-size: 14px;
        line-height: 1;
    }
    
    /* Ajustar el dropdown de ordenamiento */
    .dropdown button {
        padding: 4px 8px;
        font-size: 14px;
        white-space: nowrap;
    }
    
    /* Mejorar la visualización de los controles de productos */
    .d-flex.justify-content-between.align-items-center {
        flex-wrap: wrap;
        gap: 10px;
    }
    
    /* Ajustar el título de la sección para que no ocupe demasiado espacio */
    .section-title {
        font-size: 1.2rem;
        margin-bottom: 0.5rem;
    }
    
    /* Asegurar que los botones de visualización estén bien alineados */
    #grid-view, #list-view {
        width: 38px;
        height: 38px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    /* Corregir el espacio entre los botones de visualización */
    .d-flex.align-items-center {
        gap: 5px;
    }
    
    /* Corrección específica para el espacio vacío en el lado izquierdo del encabezado */
    body {
        overflow-x: hidden;
    }
    
    .dark-header {
        width: 100vw;
        max-width: 100%;
        overflow-x: hidden;
    }
    
    /* Corrección para los botones de visualización de productos */
    .view-controls-container {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        width: 100%;
        margin-top: 10px;
    }
    
    /* Asegurar que los botones de visualización estén bien alineados en la segunda imagen */
    .products-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        padding: 10px 15px;
        background-color: #f8f9fa;
        border-radius: 5px;
        margin-bottom: 15px;
    }
    
    /* Eliminar cualquier margen o padding extra que pueda causar el espacio vacío */
    html, body {
        margin: 0;
        padding: 0;
        width: 100%;
        overflow-x: hidden;
    }
}

/* ============================================================
   Mejoras táctiles y de cuadrícula para móviles (2026)
   ============================================================ */

/* Objetivos de toque más grandes (mínimo 44px recomendado) */
@media (max-width: 768px) {
    .btn,
    .dropdown-toggle,
    .nav-link,
    .pagination .page-link,
    .round-btn,
    .category-item,
    .store-card .btn,
    .product-card .btn {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    /* Espacios de toque cómodos en tarjetas */
    .product-card,
    .store-card {
        cursor: pointer;
        -webkit-tap-highlight-color: rgba(255, 122, 0, 0.15);
    }

    /* Tarjetas de productos: 2 columnas en pantallas pequeñas */
    .row-cols-1:not(.row-cols-md-2):not(.row-cols-lg-4) > .col {
        flex: 0 0 50%;
        max-width: 50%;
    }

    /* Imágenes de productos para que llenen la tarjeta sin estirarse */
    .product-card .card-img-top,
    .product-card-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    /* Bajar el tamaño del título de las tarjetas en 2 columnas */
    .product-card .card-title {
        font-size: 0.9rem;
        line-height: 1.3;
        min-height: 2.4em;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    /* Precio compacto y legible */
    .product-card .product-price {
        font-size: 1rem !important;
        font-weight: 700;
    }

    /* Botones de llamada de precio bien separados */
    .call-price-buttons {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
    }

    .call-price-buttons .btn {
        flex: 1 1 auto;
        min-width: 0;
    }

    /* Barra de búsqueda: ancho completo con botón accesible */
    .search-form,
    .search-container {
        width: 100%;
    }

    .search-form .search-input {
        min-height: 44px;
        font-size: 16px; /* evita el zoom automático del navegador */
    }

    /* Filtros superiores: mejor empaquetado */
    .page-header .d-flex,
    .products-header {
        flex-wrap: wrap;
        row-gap: 10px;
        padding: 8px;
    }

    /* Dropdowns de ordenamiento: cabecera legible */
    .dropdown-menu {
        min-width: 180px;
    }

    /* Evitar zoom doble punta (doble toque) en enlaces */
    a, button {
        touch-action: manipulation;
    }

    /* Reducir saltos de imagen al cargar (aspect ratio estable) */
    .card-img-top,
    .category-image {
        background: #f1f3f5;
    }

    /* Contenedor principal sin desbordes */
    .container,
    .container-fluid {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/* Pantallas muy pequeñas (hasta 400px) */
@media (max-width: 400px) {
    .row-cols-1 > .col {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .product-card .card-title {
        font-size: 0.85rem;
    }
}

/* ============================================================
   Mejoras táctiles para la navegación móvil del encabezado
   ============================================================ */
@media (max-width: 768px) {
    /* Botones de usuario y menú de cuenta */
    .user-btn,
    .mobile-account-link,
    .cart-btn,
    .category-toggle,
    .navbar-toggler {
        min-width: 44px;
        min-height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 12px;
    }

    /* Filas de enlaces dentro de la guía móvil */
    .mobile-account-links a,
    .mobile-menu a {
        min-height: 48px;
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 10px 14px;
    }

    /* Zona del menú móvil: encaja con las barras del teclado */
    #mobileAccountMenu {
        padding-bottom: env(safe-area-inset-bottom, 16px);
    }

    /* Botones de pago / acciones fijas */
    .btn-primary,
    .btn-success,
    .btn-danger,
    .btn-warning {
        min-height: 44px;
    }

    /* Enlaces de categorías en la lista: no se dividen en columnas muy juntas */
    .mobile-categories a,
    .category-item {
        min-height: 48px;
    }

    /* Iconos de carrito y notificaciones: área de toque respetable */
    .bi-cart,
    .bi-bell,
    .bi-person {
        font-size: 1.25rem;
    }
}

/* ============================================================
   شريط التنقل السفلي للجوال (Bottom Navigation Bar)
   ============================================================ */
.mobile-bottom-nav {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1050;
    background: #ffffff;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.15);
    padding-bottom: env(safe-area-inset-bottom, 0);
}

@media (max-width: 768px) {
    .mobile-bottom-nav {
        display: flex;
    }

    .mobile-bottom-nav-item {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        min-height: 58px;
        padding: 6px 2px;
        color: #666666;
        font-size: 11px;
        text-decoration: none;
        transition: color 0.2s ease;
        position: relative;
    }

    .mobile-bottom-nav-item i {
        font-size: 22px;
        line-height: 1;
    }

    .mobile-bottom-nav-item.active {
        color: #FF7A00;
        font-weight: 600;
    }

    .mobile-bottom-nav-item.active::before {
        content: '';
        position: absolute;
        top: 0;
        left: 25%;
        right: 25%;
        height: 3px;
        background: #FF7A00;
        border-radius: 0 0 4px 4px;
    }

    .mobile-bottom-nav-item:active {
        background: rgba(255, 122, 0, 0.08);
    }

    .mobile-nav-badge {
        position: absolute;
        top: 8px;
        left: calc(50% + 6px);
        background: #FF7A00;
        color: #fff;
        font-size: 10px;
        font-weight: 700;
        min-width: 16px;
        height: 16px;
        padding: 0 4px;
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
    }

    /* إضافة مسافة سفلية لأجسام الصفحة كي لا تحجبها القائمة */
    body {
        padding-bottom: 64px;
    }

    /* الأزرار العائمة (مثل back-to-top) فوق الشريط السفلي */
    .back-to-top,
    .floating-action-btn {
        bottom: calc(76px + env(safe-area-inset-bottom, 0));
    }
}

/* ============================================================
   تحسين قسم الهيرو والكاتيغوري على الجوال
   ============================================================ */
@media (max-width: 768px) {
    /* تقليص حشوة القسم */
    .hero-section {
        padding: 20px 0 !important;
    }

    /* شريط تمرير السلايدر أصبح أكثر انضغاطاً */
    .hero-slider {
        margin-bottom: 20px !important;
    }

    .slick-hero-slider,
    .slick-list,
    .slick-track,
    .slick-slide,
    .slide-item {
        height: 180px !important;
        max-height: 180px;
        padding: 0 !important;
    }

    .slick-hero-slider {
        margin: 0 !important;
        width: 100% !important;
    }

    .slide-caption {
        padding: 12px !important;
    }

    .slide-caption h2 {
        font-size: 1.2rem !important;
        margin-bottom: 4px !important;
    }

    .slide-caption p {
        font-size: 0.85rem !important;
        margin-bottom: 8px !important;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .slide-caption .btn {
        padding: 6px 14px;
        font-size: 0.85rem;
        min-height: 40px;
    }

    /* العنوان الرئيسي مع صف خفيف */
    .hero-title {
        margin-bottom: 16px !important;
    }

    .hero-title h1 {
        font-size: 1.4rem !important;
        line-height: 1.3;
    }

    .hero-title p {
        font-size: 0.9rem !important;
    }

    /* بطاقات المزايا: عمودان صغيران بدل كومة عالية */
    .feature-cards {
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 10px;
    }

    .feature-card {
        width: calc(50% - 5px) !important;
        height: auto !important;
        min-height: 130px;
        margin-bottom: 0 !important;
    }

    .feature-card .card-content {
        padding: 12px !important;
    }

    .feature-card .card-icon {
        font-size: 1.6rem !important;
    }

    .feature-card .card-title {
        font-size: 0.95rem !important;
    }

    .feature-card .card-text {
        font-size: 0.8rem !important;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
    }

    .feature-card .card-btn {
        font-size: 0.8rem !important;
        padding: 6px 10px !important;
    }

    /* كرتات التصنيفات: أبنية مناسبة */
    .category-slide-item {
        padding: 10px;
    }

    .category-slide-content {
        padding: 12px !important;
    }

    .category-name {
        font-size: 1rem !important;
    }

    .category-description {
        font-size: 0.8rem !important;
    }
}

/* شاشات صغيرة جداً: بطاقات المزايا عمود واحد */
@media (max-width: 400px) {
    .feature-card {
        width: 100% !important;
        min-height: 120px;
    }
}

/* ============================================================
   شريط بحث علوي ثابت أثناء التمرير (الجوال)
   ============================================================ */
@media (max-width: 768px) {
    /* إبقاء حاوية البحث أعلى الشاشة أثناء التمرير مع تظليل خفيف */
    .header-top .search-container,
    .dark-header .search-container,
    .header-top {
        transition: box-shadow 0.3s ease;
    }

    /* الهيدر نفسه غير لزج حتى لا يستهلك مساحة شاشة */
    .dark-header {
        position: relative;
    }

    /* أزرار المستخدم في الهيدر الصغير قد تزاحم البحث */
    .dark-header .user-actions {
        gap: 4px;
    }

    /* توحيد ارتفاع عناصر الهيدر للجوال */
    .dark-header .logo img {
        display: block;
    }
}

/* ============================================================
   منع شريط التنقل السفلي من تغطية المحتوى داخل النوافذ
   المنبثقة (modals) — دفعها للأعلى قليلاً
   ============================================================ */
@media (max-width: 768px) {
    .modal-dialog {
        margin-bottom: 72px;
    }
}
