/* Owner-approved exact logo teal uses white text. Darker teal supports hover and focus rings.
   Native controls, validation and disabled behavior remain authoritative. */
.mediaheld-theme:is(.woocommerce, .woocommerce-page) input.input-text,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) select,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) textarea {
    background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast);
    border: 1px solid var(--wp--preset--color--muted); border-radius: .3rem;
}
.mediaheld-theme:is(.woocommerce, .woocommerce-page) input.input-text:hover:not(:disabled):not([readonly]),
.mediaheld-theme:is(.woocommerce, .woocommerce-page) select:hover:not(:disabled),
.mediaheld-theme:is(.woocommerce, .woocommerce-page) textarea:hover:not(:disabled):not([readonly]),
.mediaheld-theme:is(.woocommerce, .woocommerce-page) .select2-selection:hover:not([aria-disabled="true"]) { border-color: var(--wp--preset--color--primary-dark); }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) input.input-text:focus-visible,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) select:focus-visible,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) textarea:focus-visible,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) .select2-selection:focus-visible {
    border-color: var(--wp--preset--color--primary-dark); outline: 2px solid var(--wp--preset--color--primary-dark); outline-offset: 3px;
}
.mediaheld-theme:is(.woocommerce, .woocommerce-page) input[type="checkbox"],
.mediaheld-theme:is(.woocommerce, .woocommerce-page) input[type="radio"] { accent-color: var(--wp--preset--color--primary-dark); }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) form .form-row.woocommerce-invalid input.input-text,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) form .form-row.woocommerce-invalid select,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) form .form-row.woocommerce-invalid .select2-selection,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) form .form-row [aria-invalid="true"] { border-color: var(--wp--preset--color--error, #b42318); }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) form .form-row.woocommerce-invalid label { color: var(--wp--preset--color--error, #b42318); }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) input.input-text:disabled,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) select:disabled,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) textarea:disabled,
.mediaheld-theme:is(.woocommerce, .woocommerce-page) input.input-text[readonly],
.mediaheld-theme:is(.woocommerce, .woocommerce-page) textarea[readonly] { background: var(--wp--preset--color--surface); color: var(--wp--preset--color--muted); }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) .select2-selection[aria-disabled="true"] { background: var(--wp--preset--color--surface); }
.mediaheld-theme .select2-container--default .select2-results__option[aria-selected="true"] { background: var(--wp--preset--color--surface); color: var(--wp--preset--color--secondary); font-weight: 600; }
.mediaheld-theme .select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--wp--preset--color--primary-hover); color: var(--wp--preset--color--base); }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) :disabled { cursor: not-allowed; }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) :is(a.button, button.button, input.button, #respond input#submit, #payment #place_order):hover:not(:disabled):not(.disabled):not([aria-disabled="true"]),
.mediaheld-theme .wp-block-button__link:hover:not([aria-disabled="true"]),
.mediaheld-theme .mh-contact-form .wpcf7 .wpcf7-submit:hover:not(:disabled) { background: var(--mh-button-hover-background, var(--wp--preset--color--primary-hover)); color: var(--mh-button-hover-text, var(--wp--preset--color--base)); box-shadow: none; }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) :is(a.button, button.button, input.button, #respond input#submit, #payment #place_order):active:not(:disabled):not(.disabled):not([aria-disabled="true"]),
.mediaheld-theme .wp-block-button__link:active:not([aria-disabled="true"]),
.mediaheld-theme .mh-contact-form .wpcf7 .wpcf7-submit:active:not(:disabled) { background: var(--wp--preset--color--primary-dark); color: var(--wp--preset--color--base); box-shadow: none; }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) :is(a.button, button.button, input.button, #respond input#submit, #payment #place_order):focus-visible,
.mediaheld-theme .wp-block-button__link:focus-visible { outline: 2px solid var(--wp--preset--color--primary-dark); outline-offset: 3px; }
.mediaheld-theme .mh-home-cta .wp-block-button__link:focus-visible { outline-color: var(--wp--preset--color--base); }
.mediaheld-theme:is(.woocommerce, .woocommerce-page) :is(a.button, button.button, input.button, #respond input#submit, #payment #place_order):is(:disabled, .disabled, [aria-disabled="true"]) { background: var(--mh-button-background, var(--wp--preset--color--primary)); color: var(--mh-button-text, var(--wp--preset--color--base)); opacity: .6; cursor: not-allowed; box-shadow: none; }
.mediaheld-theme.woocommerce-checkout #payment #place_order { appearance: none; border: 0; box-shadow: none; min-height: 48px; cursor: pointer; }
.mediaheld-theme.woocommerce-checkout #payment #place_order:active:not(:disabled) { transform: translateY(1px); }
.mediaheld-theme.woocommerce-checkout #payment #place_order:disabled { cursor: not-allowed; }
.mediaheld-theme .mh-primary-navigation a:hover,
.mediaheld-theme .mh-footer-navigation a:hover { color: var(--wp--preset--color--primary-dark); text-decoration: underline; text-underline-offset: .2em; }
.mediaheld-theme .mh-primary-navigation a[aria-current="page"] { font-weight: 600; text-decoration: underline; text-underline-offset: .2em; }
/* The one general-contact provider shares brand states; CF7 owns validation and submission. */
.mediaheld-theme .mh-contact-form .wpcf7 label { display: block; font-weight: 600; }
.mediaheld-theme .mh-contact-form .wpcf7 :is(input, select, textarea) { font: inherit; max-width: 100%; }
.mediaheld-theme .mh-contact-form .wpcf7 :is(.wpcf7-text, .wpcf7-textarea, .wpcf7-select, .wpcf7-number, .wpcf7-date, .wpcf7-file) {
    width: 100%; min-height: 44px; padding: .6rem .75rem; margin-block: .4rem 1rem;
    background: var(--wp--preset--color--base); color: var(--wp--preset--color--contrast); border: 1px solid var(--wp--preset--color--muted); border-radius: .3rem;
}
.mediaheld-theme .mh-contact-form .wpcf7 textarea { min-height: 10rem; resize: vertical; }
.mediaheld-theme .mh-contact-form .wpcf7 :is(input, select, textarea):hover:not(:disabled):not([readonly]):not([aria-invalid="true"]) { border-color: var(--wp--preset--color--primary-dark); }
.mediaheld-theme .mh-contact-form .wpcf7 :is(input, select, textarea):focus-visible { outline: 2px solid var(--wp--preset--color--primary-dark); outline-offset: 3px; }
.mediaheld-theme .mh-contact-form .wpcf7 :is(.wpcf7-not-valid, [aria-invalid="true"]) { border-color: var(--wp--preset--color--error); }
.mediaheld-theme .mh-contact-form .wpcf7 .wpcf7-not-valid-tip { color: var(--wp--preset--color--error); font-size: .875rem; }
.mediaheld-theme .mh-contact-form .wpcf7 :is(:disabled, [readonly]) { background: var(--wp--preset--color--surface); color: var(--wp--preset--color--muted); }
.mediaheld-theme .mh-contact-form .wpcf7 :disabled { cursor: not-allowed; }
.mediaheld-theme .mh-contact-form .wpcf7 .wpcf7-submit { min-height: 44px; padding: .75rem 1.25rem; border: 1px solid var(--wp--preset--color--primary-dark); border-radius: var(--wp--custom--button--radius, .25rem); background: var(--wp--preset--color--primary); color: var(--wp--preset--color--base); cursor: pointer; }
.mediaheld-theme .mh-contact-form .wpcf7 .wpcf7-submit:disabled { opacity: .6; cursor: not-allowed; }
.mediaheld-theme .mh-contact-form .wpcf7 .wpcf7-response-output { margin: 1rem 0; padding: 1rem; border-radius: .3rem; }
.mediaheld-theme .mh-contact-form .wpcf7 form:is(.invalid, .failed, .spam, .aborted, .unaccepted) .wpcf7-response-output { border-color: var(--wp--preset--color--error); }
.mediaheld-theme .mh-contact-form .wpcf7 form.sent .wpcf7-response-output { border-color: var(--wp--preset--color--primary); }
/* CookieYes retains its native consent logic and receives the shared brand states. */
.mediaheld-theme :is(.cky-consent-container, .cky-preference-center) .cky-btn:is(.cky-btn-accept, .cky-btn-reject, .cky-btn-preferences):hover:not(:disabled),
.mediaheld-theme .cky-btn-revisit-wrapper:hover {
    background: var(--wp--preset--color--primary-hover) !important; color: var(--wp--preset--color--base) !important; opacity: 1;
}
.mediaheld-theme :is(.cky-consent-container, .cky-preference-center) .cky-btn:is(.cky-btn-accept, .cky-btn-reject, .cky-btn-preferences):active:not(:disabled),
.mediaheld-theme .cky-btn-revisit-wrapper:active {
    background: var(--wp--preset--color--primary-dark) !important; color: var(--wp--preset--color--base) !important;
}
.mediaheld-theme :is(.cky-consent-container, .cky-preference-center) :is(.cky-btn, .cky-btn-close):focus-visible,
.mediaheld-theme .cky-btn-revisit:focus-visible { outline: 2px solid var(--wp--preset--color--primary-dark); outline-offset: 3px; }
.mediaheld-theme :is(.cky-consent-container, .cky-preference-center) .cky-btn:disabled { opacity: .6; cursor: not-allowed; }
