/* ==================================================================
   buttons.css — shared button styles for the landing site.

   Loaded via <link rel="stylesheet" href="partials/buttons.css"> in
   every page. Pages may override individual rules in their inline
   <style> block (e.g. Home.html bumps .btn-lg for the hero CTAs).
   ================================================================ */

.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 36px;
  padding: 0 14px;
  border-radius: 100px;
  font-size: 14px;
  font-weight: var(--font-weight-medium);
  letter-spacing: -0.1px;
  transition: background .15s, border-color .15s, color .15s, transform .1s;
  cursor: pointer;
  border: 1px solid transparent;
  white-space: nowrap;
}
.btn:active { transform: translateY(1px); }
.btn:disabled,
.btn[aria-disabled="true"] {
  opacity: 0.5;
  cursor: not-allowed;
}
.btn:disabled:active,
.btn[aria-disabled="true"]:active { transform: none; }

.btn-primary { background: var(--primary); color: var(--primary-foreground); }
.btn-primary:hover { background: oklch(0.28 0 0); }

.btn-ghost {
  background: transparent;
  color: var(--text-primary);
  border-color: var(--surface-border);
}
.btn-ghost:hover { background: var(--muted); }

.btn-white-bordered {
  background: var(--background);
  color: var(--text-primary);
  border-color: var(--surface-border);
}
.btn-white-bordered:hover { background: var(--muted); }

.btn-white { background: #fff; color: var(--text-primary); }
.btn-white:hover { background: oklch(0.96 0 0); }

.btn-dark-ghost {
  background: oklch(0.22 0 0);
  color: oklch(0.85 0 0);
  border-color: oklch(0.28 0 0);
}
.btn-dark-ghost:hover { background: oklch(0.26 0 0); }

.btn-sm { height: 36px; padding: 0 12px; font-size: 13px; border-radius: 100px; }
.btn-lg { height: 44px; padding: 0 18px; font-size: 15px; border-radius: 100px; }
