/* buttons.css */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  padding: 0.6rem 1.25rem;
  border: 2px solid transparent;
  border-radius: var(--r-s);
  background: none;
  font-size: var(--text-s);
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.15s, border-color 0.15s, color 0.15s;
}
.btn svg { width: 1.15em; height: 1.15em; flex: none; }

.btn--primary { background: var(--stitch); color: #fff; }
.btn--primary:hover { background: var(--stitch-deep); }

.btn--dark { background: var(--surface-strong); color: var(--on-surface-strong); }
.btn--dark:hover { background: var(--surface-strong-2); }

.btn--outline { border-color: var(--ink); color: var(--ink); }
.btn--outline:hover { background: var(--surface-strong); color: var(--on-surface-strong); }

.btn--quiet { padding-inline: 0.6rem; color: var(--ink); }
.btn--quiet:hover { background: var(--chalk); }

.btn--danger { border-color: var(--stitch); color: var(--stitch-deep); }
.btn--danger:hover { background: var(--stitch-tint); }

.btn--sm { min-height: 2.25rem; padding: 0.3rem 0.8rem; font-size: var(--text-xs); }

.btn[disabled], .btn[aria-disabled="true"] { opacity: 0.5; cursor: not-allowed; }

.btn-row { display: flex; flex-wrap: wrap; gap: var(--s-3); align-items: center; }
