/* v2-a11y.css — accessibility layer (Oct 2026). Loaded before v2-mobile.css. Visual design unchanged; adds focus rings, keyboard reveal, bigger hit areas. */
/* one focus ring everywhere — wins over older `outline:none` rules (e.g. .pfFt .backb:focus, .smBtn:focus-visible) */
:is(button,a[href],input,select,textarea,summary,[role="button"],[role="switch"],[role="tab"],[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid var(--gold,#E5A82E)!important;outline-offset:2px!important}
.shFr:focus-visible{outline-offset:-2px!important}
/* keyboard users see the per-frame controls that mouse users get on hover */
.shFr:focus-within .shActs{opacity:1;transform:none}
.shFr:focus-within .shDots,.shFr:focus-within .shRm,.shBc:focus-visible .shChg{opacity:1}
/* skip link */
.a11ySkip{position:fixed;left:12px;top:-60px;z-index:200;padding:10px 14px;border-radius:8px;background:var(--gold,#E5A82E);color:#242424;font:600 14px Inter,sans-serif;text-decoration:none;transition:top .15s}
.a11ySkip:focus{top:12px}
.a11ySr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* hit areas: small icon buttons keep their look but get a ≥44px invisible target (.shDots/.shRm/.shX are already absolute — don't touch their position) */
.tk3Stp button,.qbtn{position:relative}
.shDots::after,.shRm::after,.tk3Stp button::after{content:"";position:absolute;inset:-8px}

/* WCAG 2.2 pass (Oct 13 2026) */
/* 2.4.11 Focus not obscured — keep focused fields clear of the fixed dock / phone bar */
html{scroll-padding-bottom:calc(var(--safe-b,110px) + 16px);scroll-padding-top:72px}
/* 2.5.8 Target size (minimum 24×24) for small icon buttons */
:is(.mX,.oSend,.shX,.lgX,.pfBk,.stBack,button[aria-label="Close"]){min-width:24px;min-height:24px}
