/* Offset for fixed navbar */
body {
  padding-top: 56px;
}

/* Sidebar */
.sidebar {
  position: sticky;
  top: 56px;
  height: calc(100vh - 56px);
  overflow-x: hidden;
  overflow-y: auto;
  border-right: 1px solid #dee2e6;
}

.sidebar .nav-link {
  color: #333;
  padding: 0.75rem 1rem;
}

.sidebar .nav-link.active {
  color: #0d6efd;
  font-weight: 600;
}

.sidebar .nav-link:hover {
  background-color: #e9ecef;
}

.sidebar .nav-link i {
  margin-right: 0.5rem;
}

/* WBGT Day-level badges */
.badge-wbgt-stop {
  background-color: #DC3545;
  color: #FFFFFF;
}

.badge-wbgt-high-alert {
  background-color: #FD7E14;
  color: #FFFFFF;
}

.badge-wbgt-caution {
  background-color: #FFC107;
  color: #212529;
}

.badge-wbgt-normal {
  background-color: #28A745;
  color: #FFFFFF;
}

/* Site cards */
.site-card {
  transition: box-shadow 0.2s;
  cursor: pointer;
}

.site-card:hover {
  box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.15);
}

.site-card .peak-value {
  font-size: 1.5rem;
  font-weight: 700;
}

/* Chart container */
.chart-container {
  position: relative;
  height: 350px;
  width: 100%;
}

/* Auth pages */
.auth-card {
  border: none;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
}

.auth-card .card-header {
  background: #343a40;
  color: #fff;
  text-align: center;
  padding: 1.5rem;
}

/* Tables */
.table-hover tbody tr {
  cursor: default;
}

/* htmx indicator */
.htmx-indicator {
  display: none;
}

.htmx-request .htmx-indicator {
  display: inline-block;
}
