/* Bootstrap 5.3 — Button classes only
   Extraído para uso pontual sem carregar o framework completo.
   Uso: class="btn btn-success", class="btn btn-danger", etc.
*/

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: .375rem .75rem;
  font-size: 1rem;
  border-radius: .375rem;
  transition: color .15s ease-in-out,
              background-color .15s ease-in-out,
              border-color .15s ease-in-out,
              box-shadow .15s ease-in-out;
}

.btn:hover:not(:disabled):not(.disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px -4px rgba(0,0,0,.18), 0 3px 8px -2px rgba(0,0,0,.12);
}
.btn:active {
  transform: scale(.98);
  box-shadow: none;
}
.btn:disabled,
.btn.disabled {
  pointer-events: none;
  opacity: .65;
}

/* Tamanhos */
.btn-sm { padding: .25rem .5rem; font-size: .875rem; border-radius: .25rem; }
.btn-lg { padding: .5rem 1rem;   font-size: 1.25rem; border-radius: .5rem; }

/* Primary */
.btn-primary { color:#fff; background-color:#0d6efd; border-color:#0d6efd; }
.btn-primary:hover { color:#fff; background-color:#0b5ed7; border-color:#0a58ca; }
.btn-outline-primary { color:#0d6efd; border-color:#0d6efd; }
.btn-outline-primary:hover { color:#fff; background-color:#0d6efd; border-color:#0d6efd; }

/* Secondary */
.btn-secondary { color:#fff; background-color:#6c757d; border-color:#6c757d; }
.btn-secondary:hover { color:#fff; background-color:#5c636a; border-color:#565e64; }
.btn-outline-secondary { color:#6c757d; border-color:#6c757d; }
.btn-outline-secondary:hover { color:#fff; background-color:#6c757d; border-color:#6c757d; }

/* Success */
.btn-success { color:#fff; background-color:#10B981; border-color:#10B981; }
.btn-success:hover { color:#fff; background-color:#0d9f6e; border-color:#0c9468; }
.btn-outline-success { color:#198754; border-color:#198754; }
.btn-outline-success:hover { color:#fff; background-color:#198754; border-color:#198754; }

/* Danger */
.btn-danger { color:#fff; background-color:#dc3545; border-color:#dc3545; }
.btn-danger:hover { color:#fff; background-color:#bb2d3b; border-color:#b02a37; }
.btn-outline-danger { color:#dc3545; border-color:#dc3545; }
.btn-outline-danger:hover { color:#fff; background-color:#dc3545; border-color:#dc3545; }

/* Warning */
.btn-warning { color:#000; background-color:#ffc107; border-color:#ffc107; }
.btn-warning:hover { color:#000; background-color:#ffca2c; border-color:#ffc720; }
.btn-outline-warning { color:#ffc107; border-color:#ffc107; }
.btn-outline-warning:hover { color:#000; background-color:#ffc107; border-color:#ffc107; }

/* Info */
.btn-info { color:#000; background-color:#0dcaf0; border-color:#0dcaf0; }
.btn-info:hover { color:#000; background-color:#31d2f2; border-color:#25cff2; }
.btn-outline-info { color:#0dcaf0; border-color:#0dcaf0; }
.btn-outline-info:hover { color:#000; background-color:#0dcaf0; border-color:#0dcaf0; }

/* Light */
.btn-light { color:#000; background-color:#f8f9fa; border-color:#f8f9fa; }
.btn-light:hover { color:#000; background-color:#f9fafb; border-color:#f9fafb; }
.btn-outline-light { color:#f8f9fa; border-color:#f8f9fa; }
.btn-outline-light:hover { color:#000; background-color:#f8f9fa; border-color:#f8f9fa; }

/* Dark */
.btn-dark { color:#fff; background-color:#212529; border-color:#212529; }
.btn-dark:hover { color:#fff; background-color:#1c1f23; border-color:#1a1e21; }
.btn-outline-dark { color:#212529; border-color:#212529; }
.btn-outline-dark:hover { color:#fff; background-color:#212529; border-color:#212529; }
