/* HCF button variants. Use button for actions and anchor for navigation. */
.hc-button { align-items: center; border: 1px solid transparent; border-radius: var(--hc-radius-sm); cursor: pointer; display: inline-flex; font-size: 1rem; font-weight: 600; gap: var(--hc-space-2); justify-content: center; letter-spacing: .02em; min-height: 2.75rem; padding: .625rem 1rem; text-align: center; text-decoration: none; transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.hc-button:hover { transform: translateY(-1px); }
.hc-button--primary, .hc-button:not(.hc-button--secondary):not(.hc-button--ghost):not(.hc-button-light) { background: var(--hc-color-accent-600); color: #fff; }
.hc-button--primary:hover, .hc-button:not(.hc-button--secondary):not(.hc-button--ghost):not(.hc-button-light):hover { background: #bc2162; }
.hc-button--secondary { background: #fff; border-color: var(--hc-color-brand-700); color: var(--hc-color-brand-900); }
.hc-button--secondary:hover { background: var(--hc-color-brand-100); }
.hc-button--ghost { background: transparent; color: var(--hc-color-brand-700); }
.hc-button--ghost:hover { background: var(--hc-color-brand-100); }
.hc-button:disabled, .hc-button[aria-disabled="true"] { cursor: not-allowed; opacity: .55; pointer-events: none; }
