/* These styles are generated from project.scss. */

.alert-debug {
  color: black;
  background-color: white;
  border-color: #d6e9c6;
}

.alert-error {
  color: #b94a48;
  background-color: #f2dede;
  border-color: #eed3d7;
}

/* Ensure the bell link is the positioning container */
#alertsDropdown {
  position: relative !important
}

/* Position the badge on the top-right corner of the bell */

/* Badge: perfectly centered vertically/horizontally within itself, and aligned to bell corner */
#alertsBadge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  line-height: 1;
  padding: 0.25em 0.55em;
  min-width: 1.25rem;
  height: 1.25rem;
}

.custom-dropdown {
    min-width: 20rem;
}

.sidebar {
  width: 250px;
}
/* Remove underline inside the sidebar and ensure the anchor fills the pill */
.sidebar a.nav-link {
  text-decoration: none !important;
  display: block; /* ensure full-width hit area */
}

/* Hover/Focus: use a solid color darker than primary so it's noticeable on dark */
.sidebar a.nav-link:hover,
.sidebar a.nav-link:focus {
  background-color: #0a58ca !important; /* Bootstrap's link-hover tone */
  color: #fff !important;
}

/* Active: keep your primary */
.sidebar .nav-pills .nav-link.active {
  background-color: var(--bs-primary) !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* Optional: only apply hover when not active */
.sidebar .nav-pills .nav-link:hover:not(.active) {
  background-color: #0a58ca !important;
}

.sidebar .nav-pills .nav-link {
  border-radius: .375rem;            /* match Bootstrap default */
  padding: .5rem 1rem;               /* consistent interior spacing */
}

@media (prefers-color-scheme: dark) {
  :root {
    /* Custom tokens */
    --bg: #0d1117;
    --text: #e6edf3;
    --muted-text: #9aa6b2;
    --card-bg: #161b22;
    --border: #2b3240;
    --primary: #4f7dff;
    --primary-hover: #3c6ae6;
    --navbar-bg: #161b22;
    --sidebar-bg: #161b22;

    /* Bootstrap overrides */
    --bs-body-bg: var(--bg);
    --bs-body-color: var(--text);
    --bs-card-bg: var(--card-bg);
    --bs-card-border-color: var(--border);
    --bs-navbar-bg: var(--navbar-bg);
    --bs-navbar-color: var(--text);
    --bs-primary: var(--primary);
    --bs-primary-hover-bg: var(--primary-hover);
    --bs-border-color: var(--border);
    --bs-link-color: var(--primary);
    --bs-link-hover-color: var(--primary-hover);
  }

  /* Override SB Admin defaults */
  #content-wrapper,
  .content-wrapper,
  .container-fluid,
  .bg-white {
    background-color: var(--bg) !important;
    color: var(--text);
  }


  body {
    background-color: var(--bg);
    color: var(--text);
  }

  .navbar, .sidebar {
    background-color: var(--navbar-bg);
    color: var(--text);
  }

  .card,
  .card-body {
    background-color: var(--card-bg);
    color: var(--text);
    border-color: var(--border);
  }

  .card-title { color: #f1f3f5; font-weight: 600; }
  .card-text { color: #d0d4d8; }

  /* Override Materialize card colors */
  .card.white,
  .card.yellow,
  .card.blue,
  .card.green,
  .card.red,
  .card.purple,
  .card.orange,
  .card.teal,
  .card.indigo,
  .card {
    background-color: var(--card-bg) !important; /* Dark background */
    color: var(--text) !important;
    border-color: var(--border);
  }

  .card-content,
  .card-title {
    color: var(--text) !important;
  }

  .btn-primary {
    background-color: var(--primary);
    border-color: var(--primary);
  }
  .btn-primary:hover {
    background-color: var(--primary-hover);
    border-color: var(--primary-hover);
  }

  /* Override list group items */
  .list-group-item {
    background-color: var(--card-bg) !important; /* or var(--bg) for full dark */
    color: var(--text);
    border-color: var(--border);
  }

  /* Optional: buttons inside list items */
  .list-group-item .btn-outline-secondary {
    color: var(--primary);
    border-color: var(--primary);
  }
  .list-group-item .btn-outline-secondary:hover {
    background-color: var(--primary);
    color: #fff;
  }


  /* Footer override */
  .sticky-footer,
  .sticky-footer  .sticky-footer .container {
    background-color: var(--card-bg) !important; /* or var(--bg) for full dark */
    color: var(--text)
  }


  /* Force dark header for tables */
  table.table thead.table-light,
  table.table thead,
  .table-light,
  .bg-light,
  .bg-white {
    background-color: var(--card-bg) !important; /* Dark header */
    color: var(--text) !important;
    border-color: var(--border) !important;
  }


  /* Table cells */
  table.table td,
  table.table th {
    color: var(--text) !important;
    border-color: var(--border) !important;
  }


  /* Table header cells */
  table.table thead th {
    background-color: var(--card-bg) !important;
    color: var(--text) !important;
  }

  /* Hover rows */
  .table-hover tbody tr:hover {
    background-color: var(--card-bg);
  }

  /* Table body rows */
  .table tbody tr {
    background-color: var(--bg);
    color: var(--text);
  }

  /* Buttons inside table */
  .table .btn-outline-primary {
    color: var(--primary);
    border-color: var(--primary);
  }
  .table .btn-outline-primary:hover {
    background-color: var(--primary);
    color: #fff;
  }

  .table .btn-outline-secondary {
    color: var(--muted-text);
    border-color: var(--border);
  }
  .table .btn-outline-secondary:hover {
    background-color: var(--border);
    color: var(--text);
  }

  /* Dropdown menu background and text */
  .dropdown-menu {
    background-color: var(--card-bg) !important; /* Dark background */
    color: var(--text) !important;
    border-color: var(--border);
  }

  /* Dropdown items */
  .dropdown-item {
    color: var(--text) !important;
  }

  /* Hover and active states */
  .dropdown-item:hover {
    background-color: var(--primary-hover) !important;
  }

  .dropdown-item:focus,
  .dropdown-item.active {
    background-color: var(--border) !important; /* Slightly lighter for hover */
    color: var(--text) !important;
  }

  /* Placeholder text */
  .form-control::placeholder {
    color: var(--muted-text) !important;
  }

  /* Focus state */
  .form-control:focus {
    background-color: var(--card-bg) !important;
    color: var(--text) !important;
    border-color: var(--primary) !important;
    box-shadow: 0 0 0 0.2rem rgba(79, 125, 255, 0.25); /* Optional highlight */
  }

  /* Bootstrap form controls */
  .form-control {
    background-color: var(--card-bg) !important; /* Dark background */
    color: var(--text) !important;
    border-color: var(--border) !important;
  }

  /* Placeholder text */
  .form-control::placeholder {
      color: var(--muted-text) !important;
    }



  /* Floating label input */
  .form-floating .form-control {
    background-color: var(--card-bg) !important; /* Dark background */
    color: var(--text) !important;
    border-color: var(--border) !important;
  }

  /* Label color */
  .form-floating label {
    color: var(--muted-text) !important;
  }

  /* Focus state */
  .form-floating .form-control:focus {
    background-color: var(--card-bg) !important;
    color: var(--text) !important;
    border-color: var(--primary) !important;
    box-shadow: 0 0 0 0.2rem rgba(79, 125, 255, 0.25);
  }

/* Target placeholder text */
.form-control::placeholder {
    color: transparent; /* Adjust to match your dark background */
}

}
