/* ========= BASE ========= */
table td,
th {
  vertical-align: middle;
}

.form-floating > label {
  color: var(--bs-secondary-color);
}

/* ========= TABELAS ========= */
.table {
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
  border-color: var(--bs-border-color);
}

.table-hover tbody tr:hover {
  background-color: var(--bs-tertiary-bg);
}

/* ========= INPUTS E FORMULÁRIOS ========= */
.form-control,
.form-select {
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
  border-color: var(--bs-border-color);
}

.form-control:focus,
.form-select:focus {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.2rem rgba(var(--bs-primary-rgb), 0.25);
}

/* ========= BOTÕES ========= */
.btn-outline-secondary {
  color: var(--bs-body-color);
  border-color: var(--bs-border-color);
}

.btn-outline-secondary:hover {
  background-color: var(--bs-tertiary-bg);
}

/* ========= NAVBAR ========= */
.navbar {
  background-color: var(--bs-body-bg) !important;
  border-bottom: 1px solid var(--bs-border-color);
}

.nav-link {
  color: var(--bs-body-color) !important;
}

.nav-link:hover {
  color: var(--bs-primary) !important;
}

/* ========= CONTAINER PRINCIPAL ========= */
body {
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
  transition: background-color 0.3s, color 0.3s;
}

.container {
  transition: background-color 0.3s, color 0.3s;
}
