/* Optimizaciones ultra-agresivas para móviles - Reducir scroll excesivo */

/* Reset general para móviles */
@media (max-width: 768px) {
    * {
        box-sizing: border-box;
    }
    
    body {
        margin: 0;
        padding: 0;
        font-size: 14px;
        line-height: 1.4;
    }
    
    /* Reducir márgenes y padding globales */
    h1, h2, h3, h4, h5, h6 {
        margin: 0 0 8px 0;
        padding: 0;
    }
    
    p {
        margin: 0 0 6px 0;
        padding: 0;
    }
    
    section {
        margin-bottom: 10px !important;
    }
    
    .container {
        padding: 5px !important;
    }
}

/* Optimización extrema del header */
@media (max-width: 768px) {
    .header {
        position: sticky;
        top: 0;
        z-index: 1000;
        padding: 0 !important;
    }
    
    .header-content {
        padding: 4px 6px !important;
    }
    
    .header-top {
        padding: 2px 0 !important;
        gap: 4px !important;
        flex-direction: row !important;
        align-items: center !important;
    }
    
    .logo-search-section {
        flex-direction: row !important;
        gap: 4px !important;
        align-items: center !important;
    }
    
    .logo-image {
        height: 25px !important;
        max-width: 80px !important;
    }
    
    .search-container {
        flex: 1 !important;
    }
    
    .search-input {
        height: 28px !important;
        padding: 4px 20px 4px 6px !important;
        font-size: 12px !important;
    }
    
    .search-btn-icon {
        width: 20px !important;
        height: 20px !important;
        right: 2px !important;
    }
    
    .nav-actions-section {
        flex-direction: row !important;
        gap: 3px !important;
        width: auto !important;
    }
    
    .user-actions {
        gap: 2px !important;
        flex-wrap: nowrap !important;
    }
    
    .btn {
        padding: 2px 4px !important;
        font-size: 8px !important;
        min-width: 40px !important;
        height: 22px !important;
    }
    
    .nav-container {
        display: none !important;
    }
}

/* Optimización extrema del contenido principal */
@media (max-width: 768px) {
    .main-content {
        padding: 4px 3px !important;
    }
    
    .hero-section {
        padding: 8px 4px !important;
        margin-bottom: 6px !important;
        border-radius: 4px !important;
    }
    
    .hero-title {
        font-size: 1.1em !important;
        margin-bottom: 4px !important;
        line-height: 1.1 !important;
    }
    
    .hero-subtitle {
        font-size: 0.75em !important;
        margin-bottom: 6px !important;
        line-height: 1.2 !important;
    }
    
    .hero-stats {
        flex-direction: row !important;
        gap: 8px !important;
        margin-bottom: 6px !important;
        justify-content: center !important;
    }
    
    .stat-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 1px;
    }
    
    .stat-number {
        font-size: 1em !important;
    }
    
    .stat-label {
        font-size: 0.6em !important;
    }
    
    .hero-actions {
        flex-direction: row !important;
        gap: 4px !important;
        justify-content: center !important;
    }
    
    .hero-btn {
        flex: 1 !important;
        max-width: 80px !important;
        padding: 4px 6px !important;
        font-size: 9px !important;
        text-align: center !important;
    }
}

/* Optimización extrema de las tarjetas de anuncios */
@media (max-width: 768px) {
    .ads-grid {
        grid-template-columns: 1fr !important;
        gap: 3px !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .ad-card {
        margin-bottom: 2px !important;
        border-radius: 4px !important;
        box-shadow: 0 1px 2px rgba(0,0,0,0.1) !important;
    }
    
    .ad-image-container {
        height: 80px !important;
    }
    
    .ad-content {
        padding: 4px !important;
    }
    
    .ad-title {
        font-size: 0.7rem !important;
        line-height: 1.1 !important;
        min-height: 1.2em !important;
        margin-bottom: 2px !important;
    }
    
    .ad-price {
        font-size: 0.8rem !important;
        margin-bottom: 3px !important;
    }
    
    .ad-meta {
        gap: 1px !important;
    }
    
    .ad-meta-item {
        font-size: 0.6rem !important;
    }
    
    .ad-price-badge {
        padding: 1px 3px !important;
        font-size: 0.6rem !important;
        top: 2px !important;
        right: 2px !important;
    }
    
    .category-badge {
        font-size: 0.5rem !important;
        padding: 1px 2px !important;
        margin-bottom: 2px !important;
    }
}

/* Optimización extrema del footer */
@media (max-width: 768px) {
    .footer {
        padding: 4px 0 !important;
    }
    
    .footer-main {
        grid-template-columns: 1fr !important;
        gap: 6px !important;
        padding: 0 4px !important;
    }
    
    .footer-section {
        margin-bottom: 4px !important;
    }
    
    .footer-section h3 {
        font-size: 10px !important;
        margin-bottom: 3px !important;
    }
    
    .footer-section ul li {
        margin-bottom: 1px !important;
    }
    
    .footer-section ul li a {
        font-size: 8px !important;
    }
    
    .footer-bottom {
        padding: 4px !important;
        gap: 3px !important;
        flex-direction: column !important;
        text-align: center !important;
    }
    
    .footer-legal {
        flex-direction: column !important;
        gap: 2px !important;
    }
    
    .newsletter-form {
        flex-direction: column !important;
        gap: 3px !important;
    }
    
    .newsletter-input {
        padding: 3px 4px !important;
        font-size: 9px !important;
    }
    
    .newsletter-btn {
        padding: 3px 6px !important;
        font-size: 9px !important;
    }
}

/* Optimizaciones para móviles muy pequeños */
@media (max-width: 480px) {
    .header-top {
        padding: 1px 0 !important;
        gap: 2px !important;
    }
    
    .logo-image {
        height: 20px !important;
        max-width: 60px !important;
    }
    
    .search-input {
        height: 24px !important;
        padding: 3px 15px 3px 4px !important;
        font-size: 11px !important;
    }
    
    .search-btn-icon {
        width: 16px !important;
        height: 16px !important;
        right: 1px !important;
    }
    
    .btn {
        padding: 1px 2px !important;
        font-size: 7px !important;
        min-width: 30px !important;
        height: 18px !important;
    }
    
    .hero-section {
        padding: 4px 2px !important;
        margin-bottom: 3px !important;
    }
    
    .hero-title {
        font-size: 0.9em !important;
        margin-bottom: 2px !important;
    }
    
    .hero-subtitle {
        font-size: 0.65em !important;
        margin-bottom: 3px !important;
    }
    
    .hero-stats {
        gap: 4px !important;
        margin-bottom: 3px !important;
    }
    
    .stat-number {
        font-size: 0.8em !important;
    }
    
    .stat-label {
        font-size: 0.5em !important;
    }
    
    .hero-actions {
        gap: 2px !important;
    }
    
    .hero-btn {
        max-width: 60px !important;
        padding: 2px 3px !important;
        font-size: 7px !important;
    }
    
    .ads-grid {
        gap: 2px !important;
    }
    
    .ad-card {
        margin-bottom: 1px !important;
    }
    
    .ad-image-container {
        height: 60px !important;
    }
    
    .ad-content {
        padding: 2px !important;
    }
    
    .ad-title {
        font-size: 0.6rem !important;
        min-height: 1em !important;
        margin-bottom: 1px !important;
    }
    
    .ad-price {
        font-size: 0.7rem !important;
        margin-bottom: 1px !important;
    }
    
    .ad-meta-item {
        font-size: 0.5rem !important;
    }
    
    .ad-price-badge {
        padding: 0 2px !important;
        font-size: 0.5rem !important;
        top: 1px !important;
        right: 1px !important;
    }
    
    .category-badge {
        font-size: 0.4rem !important;
        padding: 0 1px !important;
        margin-bottom: 1px !important;
    }
}

/* Optimizaciones para móviles extra pequeños */
@media (max-width: 360px) {
    .header-content {
        padding: 2px 3px !important;
    }
    
    .logo-image {
        height: 18px !important;
        max-width: 50px !important;
    }
    
    .search-input {
        height: 22px !important;
        padding: 2px 12px 2px 3px !important;
        font-size: 10px !important;
    }
    
    .search-btn-icon {
        width: 14px !important;
        height: 14px !important;
    }
    
    .btn {
        padding: 1px 1px !important;
        font-size: 6px !important;
        min-width: 25px !important;
        height: 16px !important;
    }
    
    .hero-section {
        padding: 3px 1px !important;
        margin-bottom: 2px !important;
    }
    
    .hero-title {
        font-size: 0.8em !important;
        margin-bottom: 1px !important;
    }
    
    .hero-subtitle {
        font-size: 0.6em !important;
        margin-bottom: 2px !important;
    }
    
    .hero-stats {
        gap: 3px !important;
        margin-bottom: 2px !important;
    }
    
    .stat-number {
        font-size: 0.7em !important;
    }
    
    .stat-label {
        font-size: 0.45em !important;
    }
    
    .hero-actions {
        gap: 1px !important;
    }
    
    .hero-btn {
        max-width: 50px !important;
        padding: 1px 2px !important;
        font-size: 6px !important;
    }
    
    .ads-grid {
        gap: 1px !important;
    }
    
    .ad-image-container {
        height: 50px !important;
    }
    
    .ad-content {
        padding: 1px !important;
    }
    
    .ad-title {
        font-size: 0.55rem !important;
        min-height: 0.9em !important;
    }
    
    .ad-price {
        font-size: 0.6rem !important;
    }
    
    .ad-meta-item {
        font-size: 0.45rem !important;
    }
    
    .ad-price-badge {
        font-size: 0.45rem !important;
    }
    
    .category-badge {
        font-size: 0.35rem !important;
    }
}

/* Mejoras de rendimiento para móviles */
@media (max-width: 768px) {
    /* Reducir animaciones */
    * {
        transition: none !important;
        animation: none !important;
    }
    
    /* Optimizar imágenes */
    img {
        max-width: 100%;
        height: auto;
        object-fit: cover;
    }
    
    /* Mejorar el scroll */
    html {
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
    }
    
    /* Reducir sombras */
    .ad-card {
        box-shadow: 0 1px 2px rgba(0,0,0,0.1) !important;
    }
    
    .header {
        box-shadow: 0 1px 3px rgba(0,0,0,0.1) !important;
    }
}
