:root{
  --lm-bg-0:#0b1020;
  --lm-bg-1:#0f172a;
  --lm-card:#0b1224cc;
  --bs-body-color: rgba(255,255,255,.92);
}

html, body { height: 100%; }
body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: radial-gradient(1200px 600px at 20% 10%, rgba(56,189,248,.18), transparent 60%),
              radial-gradient(900px 500px at 90% 20%, rgba(168,85,247,.18), transparent 60%),
              linear-gradient(180deg, var(--lm-bg-0), var(--lm-bg-1));
  color: rgba(255,255,255,.92);
}

h1, h2, h3, h4, h5, h6,
.form-label,
label {
  color: #fff !important;
}

.page { min-height: calc(100vh - 64px); }

.border-white-10{ border-color: rgba(255,255,255,.10)!important; }

.navbar-glass{
  background: rgba(13, 20, 40, .75);
  backdrop-filter: blur(10px);
}

.site-logo{
  display: block;
  height: 40px;
  width: auto;
  max-width: 220px;
  object-fit: contain;
}

@media (max-width: 576px){
  .site-logo{
    height: 34px;
    max-width: 180px;
  }
}

.card-glass{
  background: rgba(10, 17, 34, .62);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  color: rgba(255,255,255,.92);
}

.card-glass .fw-semibold{
  color: #fff !important;
}

.card{
  color: #fff !important;
}

.dropdown-menu{
  background: none !important;
}

.text-muted-strong { color: rgba(255,255,255,.70)!important; }
.link-muted { color: rgba(255,255,255,.78); text-decoration: none; }
.link-muted:hover { color: rgba(255,255,255,.95); text-decoration: underline; }

.form-control, .form-select{
  background-color: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.12);
  color: rgba(255,255,255,.92);
}
.form-control:focus, .form-select:focus{
  background-color: rgba(255,255,255,.08);
  border-color: rgba(56,189,248,.55);
  box-shadow: 0 0 0 .25rem rgba(56,189,248,.15);
  color: rgba(255,255,255,.92);
}
.form-control::placeholder{ color: rgba(255,255,255,.45); }

.btn-light{ box-shadow: 0 10px 20px rgba(0,0,0,.25); }

/* Tables aligned with dark glass UI */
.table{
  --bs-table-bg: transparent;
  --bs-table-color: rgba(255,255,255,.92);
  --bs-table-border-color: rgba(255,255,255,.12);
  --bs-table-striped-bg: rgba(255,255,255,.03);
  --bs-table-striped-color: rgba(255,255,255,.92);
  --bs-table-hover-bg: rgba(56,189,248,.10);
  --bs-table-hover-color: #fff;
  margin-bottom: 0;
}

.table > :not(caption) > * > *{
  background-color: transparent !important;
  color: #ffffff !important;
  border-bottom-color: rgba(255,255,255,.12);
}

.table thead th{
  font-weight: 600;
  color: rgba(255,255,255,.88);
  border-bottom-width: 1px;
}

.table td, .table th{
  vertical-align: middle;
  color: #ffffff !important;
}

.table-responsive{
  border: 1px solid rgba(255,255,255,.10);
  border-radius: .75rem;
  overflow: hidden;
  background: rgba(255,255,255,.02);
}
