/* Antolim V2 accessibility patch — WCAG 2.5.8 target size + 2.4.7 focus visibility.
   Conservative and scoped: min-height/min-width act as floors; complex product/category
   card links and inline paragraph links are left untouched to avoid layout breakage. */
button, .btn, [role="button"], .checkout-btn, .cart-button, .checkout-button,
input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), select, textarea {
  min-height: 44px;
}
button, .btn, [role="button"], .checkout-btn, .cart-button, .checkout-button {
  min-width: 44px; display: inline-flex; align-items: center; justify-content: center;
}
.pagination a, .pagination span, .size-option, .color-option {
  min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center;
}
nav a, header nav a, footer a, .policy-links a, .contact a {
  min-height: 44px; display: inline-flex; align-items: center;
}
a:focus-visible, button:focus-visible, [role="button"]:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 2px solid currentColor; outline-offset: 2px;
}

/* ---- Antolim V3 ---- */
/* Patch 1: women/category pagination containment at mobile widths — fixes 360px horizontal overflow.
   Breakpoint 480px so the fix also covers the 390px viewport in the audit set; flex-wrap only wraps
   when the row would overflow, so wider mobile widths are unaffected. Hrefs/active/disabled states untouched. */
@media (max-width: 480px) {
  .pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 4px;
    padding-right: 4px;
    box-sizing: border-box;
    overflow: visible;
    list-style: none;
  }
  .pagination li { margin: 0; flex: 0 0 auto; }
  .pagination a, .pagination span {
    min-width: 44px;
    min-height: 44px;
    padding: 8px 10px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
  }
}
/* Patch 3: footer policy/FAQ links get a comfortable 44px-wide target (medium target-size cleanup).
   Incremental over the V2 inline-flex footer rule; low risk (widens only narrow links). */
footer .policy-links a, .policy-links a {
  min-width: 44px;
  justify-content: center;
}

/* ---- Antolim V4 ---- */
/* Patch 1: footer policy links one per line. The base CSS intended `.policy-links a{display:block}`,
   but the V2 accessibility rule overrode it to inline-flex (causing multiple-per-line). Restore a
   stacked, full-width, centered column while keeping the 44px target. Higher specificity + later source. */
footer .policy-links {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  gap: 4px;
  width: 100%;
}
footer .policy-links > a,
footer .policy-links a {
  display: flex;
  width: 100%;
  min-height: 44px;
  padding: 8px 4px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}
/* Patch 2: footer copyright spacing (after links stack) */
footer .copyright {
  margin-top: 10px;
}
footer .copyright p {
  line-height: 1.5;
  margin-top: 4px;
  margin-bottom: 4px;
}
/* Patch 3: header/nav category links centered as a balanced group (logo/hero untouched).
   Explicit flex centering; wraps on narrow widths without horizontal overflow. */
header nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
  text-align: center;
}
header nav a {
  text-align: center;
  justify-content: center;
}
