.lib-btn {
  appearance: none;
  cursor: pointer;
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  font-weight: 750;
  font-size: 0.92rem;
  padding: 0.7rem 1.15rem;
  border-radius: 11px;
  text-decoration: none;
  transition: transform 0.15s, background 0.2s, box-shadow 0.2s;
  font-family: inherit;
}
.lib-btn:active { transform: scale(0.98); }
.lib-btn-primary {
  color: #fff;
  background: var(--accent, #0d9488);
  box-shadow: 0 8px 18px rgba(13, 148, 136, 0.28);
}
.lib-btn-primary:hover { background: var(--accent-2, #0f766e); }
.lib-btn-ghost {
  color: var(--text, #152033);
  background: var(--surface, #fff);
  border: 1px solid var(--line, #e2e8f0);
}
.lib-btn-ghost:hover { background: var(--bg, #f8fafc); }
.lib-btn-soft {
  color: var(--accent-2, #0f766e);
  background: var(--accent-soft, #f0fdfa);
  border: 1px solid transparent;
}
.lib-btn-sm { font-size: 0.84rem; padding: 0.5rem 0.85rem; border-radius: 9px; }
.lib-btn-xs { font-size: 0.78rem; padding: 0.35rem 0.65rem; border-radius: 8px; }
