.btn{border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;padding:.7rem 1.15rem;font-size:.86rem;font-weight:700;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--block{width:100%}.btn--sm{padding:.45rem .75rem;font-size:.72rem}.btn--primary{background:var(--cta);border-color:var(--cta);color:var(--cta-text)}.btn--primary:hover:not(:disabled){background:var(--cta-hover);border-color:var(--cta-hover);color:var(--cta-text)}.btn--primary:has(.count-badge){background:var(--purple);border-color:var(--purple);color:#fff}.btn--primary:has(.count-badge):hover:not(:disabled){background:var(--purple-deep);border-color:var(--purple-deep);color:#fff}.btn--secondary{background:var(--bg-elevated);border-color:var(--border-strong);color:var(--text)}.btn--secondary:hover:not(:disabled){background:var(--surface-muted)}.btn--ghost{border-color:var(--border-strong);color:var(--text-muted);background:0 0}.btn--ghost:hover:not(:disabled){border-color:var(--text);color:var(--text)}.btn--danger{background:var(--danger-muted);color:var(--danger)}
