/*
Theme Name: Astra Child Francesca
Theme URI: https://francescashowroom.com
Description: Tema hijo oficial de Astra para Francesca Showroom. Implementa la plantilla personalizada editorial basada directamente en el prototipo maestro de localhost:8080 con separación de capas (Presentación en Astra Child, Contenido editable en WordPress/Elementor, Ecommerce en WooCommerce/Dux) y sistema Hero Multibanner dinámico.
Author: Francesca Showroom
Author URI: https://francescashowroom.com
Template: astra
Version: 1.0.0
Text Domain: astra-child-francesca
*/

/* Estilos adicionales específicos del tema hijo pueden añadirse aquí.
   La carga principal de hojas modulares se realiza en functions.php */

/* Accesibilidad global Francesca — navegación por teclado */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid #795F49 !important;
  outline-offset: 3px;
}


/* Francesca variation selectors: premium swatches, native Woo selects stay as engine */
.single-product .variations_form table.variations .fs-variation-native{
  position:absolute!important;
  width:1px!important;height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  clip:rect(0 0 0 0)!important;
  overflow:hidden!important;
}
.single-product .variations_form table.variations td.value{position:relative}
.fs-variation-swatches{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:8px 0 4px;
}
.fs-variation-swatch{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid #d7d2ca;
  background:#fff;
  color:#111;
  font:600 12px/1.1 inherit;
  letter-spacing:.03em;
  cursor:pointer;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease;
}
.fs-variation-swatches--size .fs-variation-swatch{
  min-width:46px;
  height:42px;
  padding:0 13px;
  border-radius:7px;
}
.fs-variation-swatches--size .fs-variation-swatch:hover,
.fs-variation-swatches--size .fs-variation-swatch.is-active{
  border-color:#111;
  box-shadow:inset 0 0 0 1px #111;
}
.fs-variation-swatches--color .fs-variation-swatch{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:6px 10px 6px 7px;
  border-radius:999px;
  text-transform:none;
}
.fs-variation-color-dot{
  width:27px;height:27px;
  flex:0 0 27px;
  display:block;
  border-radius:50%;
  border:1px solid rgba(0,0,0,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);
}
.fs-variation-color-name{
  font-size:11px;
  font-weight:600;
  letter-spacing:.02em;
}
.fs-variation-swatches--color .fs-variation-swatch:hover,
.fs-variation-swatches--color .fs-variation-swatch.is-active{
  border-color:#111;
  box-shadow:inset 0 0 0 1px #111;
}
.fs-variation-swatch.is-active{transform:translateY(-1px)}
.fs-variation-swatch:disabled,
.fs-variation-swatch.is-disabled{
  opacity:.32;
  cursor:not-allowed;
  text-decoration:line-through;
  box-shadow:none;
  transform:none;
}
.single-product .variations_form .reset_variations{
  display:inline-block;
  margin-top:10px;
  font-size:11px;
  color:#6d6d6d;
  text-decoration:underline;
}
@media(max-width:640px){
  .fs-variation-swatches{gap:8px}
  .fs-variation-swatches--color .fs-variation-swatch{
    padding-right:8px;
  }
  .fs-variation-color-name{font-size:10px}
}
