/* HHD Action System — canonical final-layer interaction/feedback authority. R02-I01-FIX02. */
:where(.hhd-primary-button, .hhd-button-primary, .fitdata-primary-button-small, .hhd-private-primary-button, .hhd-private-button-primary, .hhd-operational-primary-cta, .hhd-public-experience-action.is-primary, .hhd-agentic-web-launcher-v2) {
    background: var(--hhd-action-primary-bg) !important;
    color: var(--hhd-action-primary-fg) !important;
    border-color: var(--hhd-action-primary-border) !important;
    -webkit-text-fill-color: var(--hhd-action-primary-fg) !important;
}
:where(.hhd-primary-button, .hhd-button-primary, .fitdata-primary-button-small, .hhd-private-primary-button, .hhd-private-button-primary, .hhd-operational-primary-cta, .hhd-public-experience-action.is-primary, .hhd-agentic-web-launcher-v2):hover:not(:disabled) {
    background: var(--hhd-action-primary-hover-bg) !important;
    color: var(--hhd-action-primary-fg) !important;
    -webkit-text-fill-color: var(--hhd-action-primary-fg) !important;
}
:where(.hhd-secondary-button, .hhd-button-secondary, .hhd-auth-action-secondary, .hhd-private-secondary-button, .hhd-private-button-secondary, .hhd-public-experience-action.is-secondary) {
    background: var(--hhd-action-secondary-bg) !important;
    color: var(--hhd-action-secondary-fg) !important;
    border-color: var(--hhd-action-secondary-border) !important;
    -webkit-text-fill-color: var(--hhd-action-secondary-fg) !important;
}
:where(.hhd-primary-button, .hhd-button-primary, .fitdata-primary-button-small, .hhd-private-primary-button, .hhd-private-button-primary, .hhd-operational-primary-cta, .hhd-public-experience-action, .hhd-agentic-web-launcher-v2, .hhd-secondary-button, .hhd-private-secondary-button, .hhd-private-button-secondary):disabled,
:where(.hhd-primary-button, .hhd-button-primary, .fitdata-primary-button-small, .hhd-private-primary-button, .hhd-private-button-primary, .hhd-operational-primary-cta, .hhd-public-experience-action, .hhd-agentic-web-launcher-v2, .hhd-secondary-button, .hhd-private-secondary-button, .hhd-private-button-secondary)[aria-disabled="true"] {
    background: var(--hhd-action-disabled-bg) !important;
    color: var(--hhd-action-disabled-fg) !important;
    border-color: var(--hhd-action-disabled-bg) !important;
    -webkit-text-fill-color: var(--hhd-action-disabled-fg) !important;
    opacity: 1 !important;
}

/* R02-I01-FIX02 — canonical semantic feedback and form-control authority.
   Kept in the final interaction layer so historical app.css declarations cannot
   invert contrast or stretch controls differently by page composition. */
:where(.hhd-status-notice, .hhd-private-alert) {
    margin: 0 0 1rem;
    padding: .8rem 1rem;
    border: 1px solid var(--hhd-status-info-border) !important;
    border-radius: var(--hhd-radius-md);
    background: var(--hhd-status-info-bg) !important;
    color: var(--hhd-status-info-fg) !important;
    -webkit-text-fill-color: var(--hhd-status-info-fg) !important;
    line-height: 1.45;
}
:where(.hhd-status-notice.is-info, .hhd-private-alert-info) {
    border-color: var(--hhd-status-info-border) !important;
    background: var(--hhd-status-info-bg) !important;
    color: var(--hhd-status-info-fg) !important;
    -webkit-text-fill-color: var(--hhd-status-info-fg) !important;
}
:where(.hhd-status-notice.is-success, .hhd-private-alert-success) {
    border-color: var(--hhd-status-success-border) !important;
    background: var(--hhd-status-success-bg) !important;
    color: var(--hhd-status-success-fg) !important;
    -webkit-text-fill-color: var(--hhd-status-success-fg) !important;
}
:where(.hhd-status-notice.is-warning, .hhd-private-alert-warning, .hhd-platform-warning) {
    border-color: var(--hhd-status-warning-border) !important;
    background: var(--hhd-status-warning-bg) !important;
    color: var(--hhd-status-warning-fg) !important;
    -webkit-text-fill-color: var(--hhd-status-warning-fg) !important;
}
:where(.hhd-status-notice.is-error, .hhd-private-alert-error) {
    border-color: var(--hhd-status-error-border) !important;
    background: var(--hhd-status-error-bg) !important;
    color: var(--hhd-status-error-fg) !important;
    -webkit-text-fill-color: var(--hhd-status-error-fg) !important;
}
:where(.hhd-status-notice, .hhd-private-alert) :where(strong, span, p, a) {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

:where(.hhd-form-field, .hhd-r02-field) {
    display: grid;
    gap: .35rem;
    align-content: start;
    align-self: start;
    grid-auto-rows: max-content;
    min-width: 0;
}
:where(.hhd-form-field, .hhd-r02-field) :where(input:not([type="checkbox"]):not([type="radio"]), select) {
    box-sizing: border-box;
    width: 100%;
    height: var(--hhd-control-height) !important;
    min-height: var(--hhd-control-height) !important;
    max-height: var(--hhd-control-height) !important;
}
