/* botones.css — sistema de botones. (DESIGN.md §4) */

.btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 16px;
  border-radius: var(--radius);
  font-family: var(--font-body);
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  border: 1.5px solid transparent;
  transition: background .15s, border-color .15s, color .15s;
  text-decoration: none;
  white-space: nowrap;
}
.btn:disabled,
.btn[disabled] { opacity: .5; cursor: not-allowed; }

/* Variantes — color. (marca FacturaLo: naranja sólido, texto blanco — DESIGN §4) */
.btn-orange    { background: var(--orange); color: white; }
.btn-orange:hover:not([disabled]) { background: var(--orange-hot); }

.btn-teal      { background: var(--teal-dark); color: white; }
.btn-teal:hover:not([disabled]) { background: var(--teal); }

.btn-navy      { background: var(--navy); color: white; }
.btn-navy:hover:not([disabled]) { background: var(--navy-mid); }

.btn-ghost     { background: transparent; color: var(--gray-500); border-color: var(--gray-200); }
.btn-ghost:hover:not([disabled]) { background: var(--gray-100); color: var(--navy); }

.btn-red-out   { background: white; color: var(--red); border-color: var(--red); }
.btn-red-out:hover:not([disabled]) { background: var(--red); color: white; }

.btn-teal-out  { background: white; color: var(--teal-dark); border-color: var(--teal-dark); }
.btn-teal-out:hover:not([disabled]) { background: var(--teal-dark); color: white; }

/* Verde tipo Excel — botón unificado de exportar CSV. */
.btn-green-out { background: white; color: var(--green); border-color: var(--green); }
.btn-green-out:hover:not([disabled]) { background: var(--green); color: white; }

/* Icon buttons (en celdas de tabla) */
.btn-ic {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px; height: 28px;
  border-radius: 6px;
  background: transparent;
  border: none;
  cursor: pointer;
  margin: 0 2px;
  color: var(--gray-500);
  text-decoration: none;
}
.btn-ic:hover { background: var(--gray-100); }
