/* Shared storefront focus: a single muted border, never a nested copper ring.
   A contrasting focus boundary remains visible for mouse, touch and keyboard. */
:root{--mkm-field-focus-outline:none;--mkm-field-focus-border:#748b99}
body:not(.wp-admin) :is(
 input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=reset]):not([type=range]):not([type=color]):not([type=file]),
 textarea,select
):focus:not([aria-invalid=true]):not(.woocommerce-invalid *) {
 outline:var(--mkm-field-focus-outline)!important;
 box-shadow:none!important;
 border-color:var(--mkm-field-focus-border)!important;
}

/* Search, newsletter and quantity controls already have an outer field frame. */
body :is(.mkm-search-form,.mkm-catalog-search,.syou-nl-input-row,.mkm-pdp-cart-form .quantity):focus-within {
 border-color:#748b99;
 box-shadow:none;
 outline:none;
}
body .syou-nl-input-row:focus-within{border-color:#a4bac8}
body :is(.mkm-search-form,.mkm-catalog-search,.syou-nl-input-row,.mkm-pdp-cart-form .quantity) input:focus:not([aria-invalid=true]):not(.woocommerce-invalid *) {
 border-color:transparent!important;
 outline:var(--mkm-field-focus-outline)!important;
 box-shadow:none!important;
}

/* Preserve recognizable keyboard focus on choice controls without the orange halo. */
body:not(.wp-admin) :is(input[type=checkbox],input[type=radio]):focus-visible {
 outline:2px solid #748b99!important;
 outline-offset:3px;
 box-shadow:none!important;
}
body .syou-cf-topics input:focus-visible+span{outline:2px solid #748b99;outline-offset:3px}

/* Error states retain their meaning; focus must not conceal validation errors. */
body:not(.wp-admin) :is(input,select,textarea)[aria-invalid=true]:focus,
body:not(.wp-admin) .woocommerce-invalid :is(input,select,textarea):focus {
 border-color:#a34e43!important;
}

@media(forced-colors:active){
 :root{--mkm-field-focus-outline:2px solid Highlight;--mkm-field-focus-border:Highlight}
 body:not(.wp-admin) :is(input,textarea,select):focus{outline:2px solid Highlight!important;outline-offset:2px;box-shadow:none!important}
}
