/*
Theme Name: UN MILLÓN DE ANUNCIOS Theme
Theme URI: https://multiserviciosvero.com
Author: UN MILLÓN DE ANUNCIOS
Author URI: https://multiserviciosvero.com
Description: Tema WordPress nativo estable para UN MILLÓN DE ANUNCIOS con marketplace, anuncios, búsqueda, perfiles, servicios internos y publicación frontend.
Version: 10.1.64
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPL v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: multiservicios-vero
Tags: marketplace, classifieds, responsive, custom-logo, custom-menu, featured-images, translation-ready
*/

:root {
  --mv-background: hsl(140 20% 98%);
  --mv-foreground: hsl(150 30% 10%);
  --mv-card: hsl(0 0% 100%);
  --mv-card-foreground: hsl(150 30% 10%);
  --mv-primary: hsl(145 63% 32%);
  --mv-primary-foreground: hsl(0 0% 100%);
  --mv-primary-glow: hsl(145 63% 22%);
  --mv-secondary: hsl(140 15% 94%);
  --mv-secondary-foreground: hsl(150 30% 15%);
  --mv-muted: hsl(140 10% 94%);
  --mv-muted-foreground: hsl(150 10% 45%);
  --mv-accent: hsl(330 65% 45%);
  --mv-accent-foreground: hsl(0 0% 100%);
  --mv-border: hsl(140 15% 88%);
  --mv-danger: hsl(0 84% 60%);
  --mv-radius: 0.75rem;
  --mv-radius-lg: 1.25rem;
  --mv-shadow-soft: 0 4px 20px -4px hsl(145 63% 32% / 0.12);
  --mv-shadow-card: 0 2px 12px -2px hsl(150 30% 10% / 0.08);
  --mv-shadow-hover: 0 8px 30px -6px hsl(145 63% 32% / 0.2);
  --mv-gradient-primary: linear-gradient(135deg, hsl(145 63% 32%), hsl(145 63% 22%));
  --mv-gradient-hero: linear-gradient(135deg, hsl(145 63% 32%), hsl(160 50% 28%), hsl(145 63% 22%));
  --mv-gradient-accent: linear-gradient(135deg, hsl(330 65% 45%), hsl(340 70% 50%));
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: auto;
}

body {
  margin: 0;
  background: var(--mv-background);
  color: var(--mv-foreground);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  color: var(--mv-primary);
  text-decoration: none;
  transition: color .2s ease;
}

a:hover {
  color: hsl(145 63% 26%);
}

button,
input,
select,
textarea {
  font: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 .75rem;
  font-family: 'Poppins', sans-serif;
  line-height: 1.15;
}

p {
  margin: 0 0 1rem;
}

.mv-fade-in,
.mv-slide-up {
  animation: none !important;
}

@keyframes mv-fade-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes mv-slide-up {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

/* v7.11.0 — estabilidad crítica: grid e imágenes sin loaders ni content-visibility agresivo */
body .mv-listings-grid,
body .mv-listing-grid,
body .mv-search-results-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}

body .mv-listings-grid > .mv-card,
body .mv-search-results-grid > .mv-card {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  height: 100% !important;
}

body .mv-card-media {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  min-height: 0 !important;
  background: hsl(140 15% 94%) !important;
  overflow: hidden !important;
}

body .mv-card-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body .mv-card-media--logo img,
body .mv-card--logo-fallback .mv-card-media img {
  object-fit: contain !important;
  padding: 18px !important;
}

body main,
body .mv-main,
body .site-main,
body .site-content,
body .mv-listings-grid,
body .mv-listings-grid > *,
body .mv-card,
body .mv-section,
body article,
body section,
body img,
body video {
  content-visibility: visible !important;
  contain-intrinsic-size: auto !important;
}

body .mv-page-loader,
body .mv-fullscreen-spinner,
body .mv-loading-overlay,
body .mv-preloader,
body .mv-page-transition,
body .mv-route-overlay,
body .mv-logo-overlay,
body .mv-brand-splash,
body .lovable-splash {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

@media (min-width: 1200px) {
  body .mv-listings-grid,
  body .mv-listing-grid,
  body .mv-search-results-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  body .mv-listings-grid,
  body .mv-listing-grid,
  body .mv-search-results-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
}

@media (max-width: 560px) {
  body .mv-listings-grid,
  body .mv-listing-grid,
  body .mv-search-results-grid {
    grid-template-columns: 1fr !important;
  }
}


/* Final compatibility overrides */
@import url('msv-final-overrides.css');

/* V5 — Importaciones: centrar las secciones desde «¿Cómo funciona?» sin tocar el hero/banner. */
@media (max-width: 767px) {
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block,
  body:has(.mv-v1046-import) .mv-v1046-import > section.mv-v1045-block,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1046-form-wrap,
  body:has(.mv-v1046-import) .mv-v1046-import > section.mv-v1046-form-wrap {
    position: relative !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: calc(100vw - 8px) !important;
    max-width: calc(100vw - 8px) !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block > .mv-v1045-cards,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block > .mv-v1045-block-title,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1046-form-wrap > form,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1046-form-wrap > h2,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1046-form-wrap > p {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block .mv-v1045-card,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block .mv-v1045-card * {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block .mv-v1045-card p,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block .mv-v1045-card h3,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block .mv-v1045-card a,
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1045-block .mv-v1045-card span {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    white-space: normal !important;
  }

  /* Los formularios inferiores también se centran respecto al viewport. */
  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1046-form-wrap {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
    padding: 8px !important;
  }

  body:has(.mv-v1046-import) .mv-v1046-import > .mv-v1046-form-wrap .mv-v1046-grid2 {
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
  }
}

/* V6 — Importaciones mobile: full-bleed real respecto al viewport.
   El contenedor estaba heredando el ancho/offset del wrapper de contenido.
   No usamos left:50% ni translate, porque un ancestro transformado puede
   alterar su referencia. Se usa el patrón matemático de full-bleed del viewport. */
@media (max-width: 767px){
  body:has(.mv-v1046-import){
    overflow-x:hidden !important;
  }
  body:has(.mv-v1046-import) .mv-v1046-import.mv-v1045-page{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    transform:none !important;
    width:calc(100vw - 8px) !important;
    max-width:calc(100vw - 8px) !important;
    margin-left:calc(50% - 50vw + 4px) !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
    overflow-x:clip !important;
  }
  body:has(.mv-v1046-import) .mv-v1046-import.mv-v1045-page > *{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1045-block,
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1046-form-wrap{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
    overflow:visible !important;
  }
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1045-block-title,
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1046-form-wrap > h2,
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1046-form-wrap > p{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding-left:4px !important;
    padding-right:4px !important;
    box-sizing:border-box !important;
    overflow-wrap:anywhere !important;
  }
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1045-cards{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
    margin:0 !important;
    box-sizing:border-box !important;
  }
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1045-card,
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1045-card > *{
    width:auto !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  body:has(.mv-v1046-import) .mv-v1046-import .mv-v1045-card{
    overflow:hidden !important;
  }
  body:has(.mv-v1046-import) .mv-v1046-import h1,
  body:has(.mv-v1046-import) .mv-v1046-import h2,
  body:has(.mv-v1046-import) .mv-v1046-import h3,
  body:has(.mv-v1046-import) .mv-v1046-import h4,
  body:has(.mv-v1046-import) .mv-v1046-import p,
  body:has(.mv-v1046-import) .mv-v1046-import li,
  body:has(.mv-v1046-import) .mv-v1046-import label,
  body:has(.mv-v1046-import) .mv-v1046-import legend,
  body:has(.mv-v1046-import) .mv-v1046-import a,
  body:has(.mv-v1046-import) .mv-v1046-import span,
  body:has(.mv-v1046-import) .mv-v1046-import strong{
    max-width:100% !important;
    min-width:0 !important;
    white-space:normal !important;
    overflow-wrap:anywhere !important;
    word-break:break-word !important;
    box-sizing:border-box !important;
  }
}
/* v10.77: legacy export controls are superseded by the unified Exportar flow. */
.mv-admin-fe-card .mv-v1070-exportbar,.mv-admin-fe-card [data-mv-legacy-export],.mv-admin-fe-card .mv-export-csv,.mv-admin-fe-card .mv-export-word{display:none!important}


/* v10.1.22 — Portada: carruseles horizontales con tamaños diferenciados. */
.mv-community-stats{padding:1rem 0;background:var(--mv-card,#fff);border-top:1px solid var(--mv-border,#dbe4df);border-bottom:1px solid var(--mv-border,#dbe4df)}
.mv-community-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.mv-community-stat{min-width:0;padding:12px 14px;border-radius:14px;background:var(--mv-secondary,#f5f7f6);text-align:center;box-sizing:border-box}
.mv-community-stat strong{display:block;font-size:1.2rem;line-height:1.1}.mv-community-stat span{display:block;margin-top:4px;font-size:.78rem;line-height:1.25;white-space:normal}.mv-community-stat em{display:block;margin-top:3px;font-size:.68rem;font-style:normal;opacity:.7}
.mv-home-primary-listings .mv-listings-grid.is-carousel{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;grid-template-columns:none!important;grid-auto-flow:column!important;grid-auto-columns:none!important;gap:16px!important;padding:4px 2px 12px!important;scroll-snap-type:x proximity!important;-webkit-overflow-scrolling:touch!important}
.mv-home-primary-listings .mv-listings-grid.is-carousel>.mv-card{flex:0 0 292px!important;width:292px!important;max-width:292px!important;min-width:0!important;scroll-snap-align:start!important;align-self:stretch!important}
.mv-home-recientes .mv-listings-grid.is-carousel>.mv-card{flex-basis:305px!important;width:305px!important;max-width:305px!important}.mv-home-vistas .mv-listings-grid.is-carousel>.mv-card{flex-basis:275px!important;width:275px!important;max-width:275px!important}.mv-home-destacados .mv-listings-grid.is-carousel>.mv-card{flex-basis:255px!important;width:255px!important;max-width:255px!important}.mv-home-verificados .mv-listings-grid.is-carousel>.mv-card,.mv-home-recomendados .mv-listings-grid.is-carousel>.mv-card{flex-basis:280px!important;width:280px!important;max-width:280px!important}
@media(max-width:768px){.mv-community-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mv-community-stat{padding:10px 9px}.mv-home-primary-listings .mv-listings-grid.is-carousel{gap:12px!important;padding-bottom:10px!important}.mv-home-primary-listings .mv-listings-grid.is-carousel>.mv-card{flex-basis:78vw!important;width:78vw!important;max-width:330px!important}.mv-home-recientes .mv-listings-grid.is-carousel>.mv-card{flex-basis:82vw!important;width:82vw!important;max-width:340px!important}.mv-home-vistas .mv-listings-grid.is-carousel>.mv-card{flex-basis:72vw!important;width:72vw!important;max-width:310px!important}.mv-home-destacados .mv-listings-grid.is-carousel>.mv-card{flex-basis:68vw!important;width:68vw!important;max-width:295px!important}.mv-home-verificados .mv-listings-grid.is-carousel>.mv-card,.mv-home-recomendados .mv-listings-grid.is-carousel>.mv-card{flex-basis:74vw!important;width:74vw!important;max-width:315px!important}}
@media(max-width:430px){.mv-community-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mv-community-stat strong{font-size:1rem}.mv-community-stat span{font-size:.7rem}}
