/* ============================================================================
   Express Action Button Override Styles
   Matches Express design tokens for Spectrum action buttons.
   ============================================================================ */

sp-action-button {
  --mod-actionbutton-border-radius: var(--Corner-radius-corner-radius-100);
  --mod-button-border-radius: var(--Corner-radius-corner-radius-100);
  --mod-button-font-family: var(--body-font-family);
  --mod-button-line-height: var(--line-height-100);
  --mod-button-background-color-default: var(--color-white);
  --mod-button-background-color-hover: var(--color-light-gray);
  --mod-button-border-color-default: var(--color-gray-300);
  --mod-button-border-color-hover: var(--color-gray-800-variant);
  --mod-button-content-color-default: var(--color-gray-800-variant);
  --mod-button-content-color-hover: var(--color-gray-800-variant);
  --mod-button-animation-duration: 0.15s;
  font-family: var(--body-font-family);
}

sp-action-button[size="s"] {
  min-block-size: 28px;
  font-size: var(--body-font-size-xs);
}

sp-action-button[size="m"] {
  min-block-size: 32px;
  font-size: var(--body-font-size-s);
}

sp-action-button[size="l"] {
  min-block-size: 40px;
  font-size: var(--body-font-size-m);
}

sp-action-button[quiet] {
  --mod-button-background-color-default: transparent;
  --mod-button-background-color-hover: var(--color-light-gray);
  --mod-button-border-color-default: transparent;
}

sp-action-button[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  sp-action-button {
    /* stylelint-disable-next-line declaration-no-important */
    transition: none !important;
  }
}

@media (prefers-contrast: high) {
  sp-action-button:focus-visible {
    outline-width: 3px;
  }
}
