:root,
[data-bs-theme="light"] {
  color-scheme: light;
  --eco-body-bg: #f8f9fa;
  --eco-surface: #ffffff;
  --eco-surface-muted: #f1f5f9;
  --eco-surface-accent: #fff9e6;
  --eco-text: #212529;
  --eco-border: rgba(0, 0, 0, 0.08);
  --eco-navbar-bg: #ffffff;
  --eco-navbar-border: rgba(0, 0, 0, 0.08);
  --eco-section-title: #0b5a90;
}

[data-bs-theme="dark"] {
  color-scheme: dark;
  --eco-body-bg: #14171a;
  --eco-surface: #1e2226;
  --eco-surface-muted: #252a30;
  --eco-surface-accent: #2a2418;
  --eco-text: #e8eaed;
  --eco-border: rgba(255, 255, 255, 0.12);
  --eco-navbar-bg: #1a1e22;
  --eco-navbar-border: rgba(255, 255, 255, 0.1);
  --eco-section-title: #7ec8e3;
}

body {
  background-color: var(--eco-body-bg);
  color: var(--eco-text);
  transition: background-color 0.2s ease, color 0.2s ease;
}

.navbar {
  background-color: var(--eco-navbar-bg);
  border-bottom: 1px solid var(--eco-navbar-border);
}

.eco-theme-toggle {
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  flex-shrink: 0;
}

.eco-navbar-tools,
.eco-navbar-mobile {
  position: relative;
  z-index: 6;
}

.eco-theme-nav-item {
  list-style: none;
}

@media (min-width: 992px) {
  .navbar .navbar-nav {
    align-items: center;
  }
}

[data-bs-theme="dark"] a.navbar-brand {
  color: var(--eco-brand-green);
}

.eco-theme-toggle .bi {
  font-size: 1rem;
  line-height: 1;
}

.section-title {
  color: var(--eco-section-title);
}

[data-bs-theme="dark"] .text-muted {
  color: #adb5bd !important;
}

[data-bs-theme="dark"] .card {
  background-color: var(--eco-surface);
  border-color: var(--eco-border);
}

[data-bs-theme="dark"] .list-group-item {
  background-color: var(--eco-surface);
  border-color: var(--eco-border);
  color: var(--eco-text);
}

[data-bs-theme="dark"] .border,
[data-bs-theme="dark"] .border-top,
[data-bs-theme="dark"] .border-bottom {
  border-color: var(--eco-border) !important;
}

[data-bs-theme="dark"] .kpi {
  background: var(--eco-surface);
  border-color: var(--eco-border);
}

[data-bs-theme="dark"] .badge-soft {
  background: rgba(13, 110, 253, 0.2);
  color: #9ec5fe;
  border-color: rgba(13, 110, 253, 0.35);
}

[data-bs-theme="dark"] .small-muted,
[data-bs-theme="dark"] .conectar-dl dt {
  color: #adb5bd;
}

[data-bs-theme="dark"] .conectar-dl dd {
  color: var(--eco-text);
}

[data-bs-theme="dark"] .meu-cadastro-card {
  background: var(--eco-surface);
  border-color: var(--eco-border);
}

[data-bs-theme="dark"] .meu-cadastro-card.is-editing {
  background: var(--eco-surface-accent);
  border-color: #ffc107;
}

[data-bs-theme="dark"] .eco-user-chip {
  background: var(--eco-surface-muted);
}

[data-bs-theme="dark"] .eco-crud-toolbar {
  background: var(--eco-surface-muted);
  border-color: var(--eco-border);
}

[data-bs-theme="dark"] .em-dev-apoio-logos {
  border-bottom-color: var(--eco-border);
}

[data-bs-theme="dark"] .forma-trilha-codearena {
  border-color: rgba(126, 200, 227, 0.25);
  background: var(--eco-surface);
}

[data-bs-theme="dark"] .forma-trilha-jogos .list-group-item {
  background: var(--eco-surface-muted);
}

[data-bs-theme="dark"] .modal-content {
  background-color: var(--eco-surface);
  color: var(--eco-text);
}

[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select {
  background-color: var(--eco-surface-muted);
  border-color: var(--eco-border);
  color: var(--eco-text);
}

[data-bs-theme="dark"] .form-control:focus,
[data-bs-theme="dark"] .form-select:focus {
  background-color: var(--eco-surface-muted);
  color: var(--eco-text);
}

[data-bs-theme="dark"] .input-group-text {
  background-color: var(--eco-surface);
  border-color: var(--eco-border);
  color: var(--eco-text);
}

[data-bs-theme="dark"] .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--eco-text);
  --bs-table-border-color: var(--eco-border);
}

[data-bs-theme="dark"] .dropdown-menu {
  background-color: var(--eco-surface);
  border-color: var(--eco-border);
}

[data-bs-theme="dark"] .dropdown-item {
  color: var(--eco-text);
}

[data-bs-theme="dark"] .eco-apoio-bar {
  background-color: var(--eco-surface);
  border-top-color: var(--eco-border);
  border-bottom-color: var(--eco-border);
}

[data-bs-theme="dark"] .eco-auth-by-logo {
  border-color: var(--eco-border) !important;
}
