/* Capa de la aplicación sobre main.css: navegación SPA, accesibilidad y formularios POST. */

/* Las regiones del layout son contenedores lógicos: no deben alterar el diseño heredado. */
[data-region] { display: contents; }

/* Barra de progreso de la navegación (solo aparece si la espera se nota). */
#spa-progress {
  position: fixed; top: 0; left: 0; height: 3px; width: 0; z-index: 1000;
  background: #ac8e45; opacity: 0; pointer-events: none;
}
#spa-progress.is-loading { opacity: 1; width: 80%; transition: width 8s cubic-bezier(.1, .8, .2, 1); }
#spa-progress.is-done { opacity: 0; width: 100%; transition: width .15s ease-out, opacity .3s ease .15s; }

/* Texto solo para lectores de pantalla (aviso del título de la página nueva). */
.sr-only {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden;
  clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

:focus-visible { outline: 2px solid #ac8e45; outline-offset: 2px; }

/* Formularios POST dentro de textos y listas (borrar, sumar, cerrar sesión…). */
.inline-form { display: inline; margin: 0; padding: 0; }
.logout-form { display: inline-block; margin: 0; padding: 0; }
.logout-form button, .link-button { background: none; border: 0; padding: 0; margin: 0; font: inherit; color: inherit; cursor: pointer; }
.link-button { text-decoration: underline; }
.carrito .btn-add, .carrito .borrar_producto, .carrito .vaciar_carrito { cursor: pointer; }

img { max-width: 100%; }

@media (prefers-reduced-motion: reduce) {
  #spa-progress { transition: none !important; }
}

/* Botones de acción (Borrar…) dentro de las listas del panel: mismo aspecto que los enlaces «Editar», «Galería». */
.content_body ul li span form.inline-form { float: right; margin: 0 2px; }
.content_body ul li span form.inline-form .link-button {
  font-family: "SemiBold"; font-size: 12px; background: #f2f2f2; color: #adb5bd; padding: 1px 6px; border-radius: 3px; text-decoration: none;
}
.content_body ul li span form.inline-form .link-button:hover { background: #d12937; color: #fff; }
