/* Compatibilidad de Safari/iOS. Esta capa se carga al final para corregir
   detalles del motor WebKit sin cambiar la composicion del resto de navegadores. */
html {
  -webkit-text-size-adjust: 100%;
}

a,
button,
input,
select,
summary,
textarea {
  touch-action: manipulation;
}

/* Safari necesita el prefijo hasta versiones recientes. */
.landing-sticky-bar {
  -webkit-backdrop-filter: blur(10px);
}

.campaign-bar,
.campaign-nav {
  -webkit-backdrop-filter: blur(8px);
}

/* El panel lateral debe tener una alternativa anterior a dvh. */
.store-favorites-panel {
  height: 100vh;
  height: -webkit-fill-available;
  height: 100dvh;
  padding-bottom: calc(24px + env(safe-area-inset-bottom));
}

/* Las barras de Safari cambian la altura visual durante el scroll. La variable
   se actualiza desde safari-compat.js y evita imagenes o controles ocultos. */
.client-lightbox,
.product-lightbox {
  height: var(--anaduran-viewport-height, 100vh);
}

.client-lightbox figure {
  max-height: calc(var(--anaduran-viewport-height, 100vh) - 100px);
}

.client-lightbox__image {
  max-height: calc(var(--anaduran-viewport-height, 100vh) - 135px);
}

.product-lightbox__image {
  max-height: calc(var(--anaduran-viewport-height, 100vh) - 92px);
}

@supports (-webkit-touch-callout: none) {
  @media (max-width: 760px) {
    /* iOS amplia la pagina al enfocar controles de menos de 16 px. */
    input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
    select,
    textarea {
      font-size: 16px !important;
    }
  }
}

@media (max-width: 760px) {

  .landing-sticky-bar {
    padding-right: calc(16px + env(safe-area-inset-right)) !important;
    padding-left: calc(16px + env(safe-area-inset-left)) !important;
  }

  .client-lightbox {
    padding-bottom: calc(55px + env(safe-area-inset-bottom));
    padding-left: calc(38px + env(safe-area-inset-left));
    padding-right: calc(38px + env(safe-area-inset-right));
    padding-top: calc(55px + env(safe-area-inset-top));
  }

  .client-lightbox figure {
    max-height: calc(var(--anaduran-viewport-height, 100vh) - 110px);
  }

  .client-lightbox__image {
    max-height: calc(var(--anaduran-viewport-height, 100vh) - 150px);
  }

  .product-lightbox {
    padding-top: calc(16px + env(safe-area-inset-top));
    padding-right: calc(8px + env(safe-area-inset-right));
    padding-bottom: calc(16px + env(safe-area-inset-bottom));
    padding-left: calc(8px + env(safe-area-inset-left));
  }

  .product-lightbox__image {
    max-height: calc(var(--anaduran-viewport-height, 100vh) - 80px);
  }
}

/* Inercia tactil para los carriles horizontales en versiones antiguas de iOS. */
.rooms-rail,
.selection__rail,
.landing-reasons__grid,
.landing-inspiration__rail,
.catalog-family-tabs,
.catalog-subfamily-tabs,
.product-thumbnails,
.variation-chip-viewport {
  -webkit-overflow-scrolling: touch;
}
