:root {
  --amber: #d4a039;
  --amber-dark: #b8860b;
  --oak: #4a2c0a;
  --bg-darker: #1a1a1a;
  --bg-dark: #212529;
}

body {
  min-height: 100vh;
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
}

.bg-darker { background-color: var(--bg-darker) !important; }
.text-amber { color: var(--amber) !important; }

.btn-amber {
  background-color: var(--amber);
  border-color: var(--amber-dark);
  color: #1a1a1a;
  font-weight: 600;
}
.btn-amber:hover {
  background-color: var(--amber-dark);
  border-color: var(--oak);
  color: #fff;
}

.btn-outline-amber {
  border-color: var(--amber);
  color: var(--amber);
}
.btn-outline-amber:hover {
  background-color: var(--amber);
  color: #1a1a1a;
}

.card-dark {
  background-color: var(--bg-darker);
  border: 1px solid #333;
}

.form-control:focus, .form-select:focus {
  border-color: var(--amber);
  box-shadow: 0 0 0 .2rem rgba(212, 160, 57, 0.25);
}

/* Make placeholder text visible on dark inputs */
.form-control::placeholder { color: #888; opacity: 1; }

/* Login card */
.login-container {
  max-width: 400px;
  margin: 5rem auto;
}

/* Toast styling */
.toast-container .toast {
  background-color: var(--bg-darker);
  border: 1px solid var(--amber);
  color: #fff;
}

/* Range slider amber track */
input[type="range"]::-webkit-slider-thumb {
  background: var(--amber);
}
input[type="range"]::-moz-range-thumb {
  background: var(--amber);
}
input[type="range"].form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 .2rem rgba(212, 160, 57, 0.25);
}

/* Table dark overrides */
.table-dark-custom th {
  color: var(--amber);
  border-bottom-color: #444;
}
.table-dark-custom td {
  border-bottom-color: #333;
}

/* Admin-only visibility handled by JS */
.admin-only { display: none !important; }
body.is-admin .admin-only { display: block !important; }
body.is-admin li.admin-only { display: list-item !important; }

/* Offline banner */
.offline-banner {
  background-color: #dc3545;
  color: #fff;
  text-align: center;
  padding: .5rem;
  font-weight: 600;
  font-size: .9rem;
}
