/* ============================================================
   GOLAZO — a11y.css · WCAG 2.2 AA fix layer (consolidated)
   Source: golazo-wcag-batch1..5.md audits, June 2026
   Enqueue LAST — after theme-dark.css. Everything here is
   additive; no existing rule needs editing.
   ============================================================ */

/* ---------- B1#3 · focused elements must not hide under the fixed nav ---------- */
html{scroll-padding-top:96px}

/* ---------- B1#1 · visible keyboard focus (never on mouse clicks) ---------- */
:focus-visible{outline:3px solid #086038;outline-offset:2px;border-radius:8px}
.nav :focus-visible,.utilbar :focus-visible,
html[data-theme="dark"] :focus-visible,
[data-cursor-theme="dark"] :focus-visible{outline-color:#E6B83C}
html:not([data-theme="dark"]) .nav.scrolled :focus-visible{outline-color:#086038}

/* ---------- B1#4 · skip link ---------- */
.skip-link{position:absolute;left:-9999px;top:0;z-index:99999;padding:12px 20px;
  background:#086038;color:#fff;border-radius:0 0 12px 0;font-weight:700;
  text-decoration:none;font-family:var(--font-ka)}
.skip-link:focus{left:0}

/* ---------- B1#6 · target sizes (hit-area only, zero visual change) ---------- */
.nav__menu a{padding-block:8px}
.footer__social a{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px}

/* ---------- B2#1 · card add-to-cart reachable by keyboard ---------- */
.card:focus-within .card__cta{display:flex;opacity:1;pointer-events:auto;transform:none}
.card:focus-within .card__img img.img-back{opacity:0}

/* ---------- B2#3 · dark-mode card prices (were #5C5C5C = 2.49:1) ---------- */
html[data-theme="dark"] .card__price{color:#A4AFA8!important}

/* ---------- B2#7 · light-mode review stars (were 1.61:1) ---------- */
html:not([data-theme="dark"]) .review__stars svg{fill:#8A6914}

/* ---------- B2#2 · theme switch without whole-page paint storm ---------- */
.theme-snap *,.theme-snap *::before,.theme-snap *::after{transition:none!important}

/* ---------- B2#4 + B3#1 · input & checkbox borders >=3:1 ---------- */
.formcard input,.formcard select,.formcard textarea{border-color:#767676}
html[data-theme="dark"] .formcard input,html[data-theme="dark"] .formcard select,html[data-theme="dark"] .formcard textarea{border-color:#5F6E64}
.fopt input[type="checkbox"]{border:1.5px solid #767676}
html[data-theme="dark"] .fopt input[type="checkbox"]{border-color:#5F6E64}

/* ---------- B2#5 · form errors: text + icon, never color-only ---------- */
.field .ferr{display:none;color:#9A2414;font-size:13px;margin-top:6px;font-family:var(--font-ka)}
html[data-theme="dark"] .field .ferr{color:#E66A4F}
.field.invalid .ferr{display:block}
.field.invalid input,.field.invalid textarea{border-color:#9A2414;border-width:2px}
html[data-theme="dark"] .field.invalid input,html[data-theme="dark"] .field.invalid textarea{border-color:#E66A4F}
.formstatus{display:none;margin-top:12px;padding:12px 16px;border-radius:12px;font-family:var(--font-ka)}
.formstatus.show{display:block}
.formstatus--ok{background:#E4F3EA;color:#08522F;border:1px solid #086038}
html[data-theme="dark"] .formstatus--ok{background:#18201B;color:#7BD2A5;border-color:#2A332D}
.formstatus--err{background:#FBEAE6;color:#7A1C0F;border:1px solid #9A2414}
html[data-theme="dark"] .formstatus--err{background:#201614;color:#E66A4F;border-color:#3A2A26}

/* ---------- B3#4 · fieldset/legend filter groups, no visual change ---------- */
fieldset.fgroup{border:0;margin:0;padding:0;min-width:0}
legend.fgroup__t{display:block;width:100%;padding:0}

/* ---------- B3#5 · size pills become real buttons ---------- */
button.size{font:inherit;background:none;cursor:pointer}

/* ---------- B4#1 · selected size: AA contrast + not color-only ---------- */
.size.active{background:#086038!important;border-color:#086038!important;color:#fff!important}
html[data-theme="dark"] .size.active{background:#34B375!important;border-color:#34B375!important;color:#0E1311!important}

/* ---------- B4#3 · cart remove link target >=24px ---------- */
.item__remove{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:4px 6px}

/* ---------- B5#1/2 · dark account menu (was 1.02:1 — invisible) + logout ---------- */
html[data-theme="dark"] .acct-layout .menu a{color:#F7F9F6}
html[data-theme="dark"] .acct-layout .menu a.active{color:#34B375}
html[data-theme="dark"] .acct-layout .menu a.out{color:#E66A4F}

/* ---------- B5#3 · Woo notices in dark ---------- */
html[data-theme="dark"] .woocommerce-message,
html[data-theme="dark"] .woocommerce-info,
html[data-theme="dark"] .woocommerce-error{background:#18201B;border-color:#2A332D;color:#F7F9F6}

/* ---------- shared utility ---------- */
.vh{position:absolute;width:1px;height:1px;margin:-1px;clip-path:inset(50%);overflow:hidden}
