/* WCAG 2.5.5 (AAA) / 2.5.8 (AA) Large Targets — 44 px minimum touch area.
   Applies to all interactive elements except the admin bar and widget.
   Every :not() chain stays on one unbroken line. */

body.blum-a11y--large-targets a:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *) { min-height: 44px !important; display: inline-flex !important; align-items: center !important; }

body.blum-a11y--large-targets button:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *) { min-height: 44px !important; }

body.blum-a11y--large-targets [role="button"]:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *) { min-height: 44px !important; display: inline-flex !important; align-items: center !important; }

body.blum-a11y--large-targets input[type="button"]:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *),
body.blum-a11y--large-targets input[type="submit"]:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *),
body.blum-a11y--large-targets input[type="reset"]:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *) { min-height: 44px !important; min-width: 44px !important; }

/* Content-less controls (e.g. dot-navigation bullets — real <a>/<button>
   elements with no visible text, styled purely via background/pseudo-
   elements) also get a matching min-width so the 44 px minimum forms a
   square touch target instead of a tall, narrow sliver. Text-bearing
   links/buttons keep their natural width: forcing min-width on those would
   blow inline text links up into oversized boxes, which the WCAG 2.5.8
   inline-text exception doesn't call for. */
body.blum-a11y--large-targets a:empty:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *),
body.blum-a11y--large-targets button:empty:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *),
body.blum-a11y--large-targets [role="button"]:empty:not(#wpadminbar):not(#wpadminbar *):not(#blum-a11y-widget):not(#blum-a11y-widget *) { min-width: 44px !important; }
