:root{
  color-scheme: light;
  --lgs-bg:#ffffff;
  --lgs-text:#212529;
  --lgs-muted:#6c757d;
  --lgs-border:rgba(0,0,0,.125);
  --lgs-card-bg:#ffffff;
  --lgs-nav-bg:#f8f9fa;
  --lgs-soft-bg:#f8f9fa;
}

html,body{height:100%}
body{
  background:var(--lgs-bg);
  color:var(--lgs-text);
}

html[data-theme="dark"]{
  color-scheme: dark;
  --lgs-bg:#0b1220;
  --lgs-text:#e5e7eb;
  --lgs-muted:#d1d5db;
  --lgs-border:rgba(255,255,255,.14);
  --lgs-card-bg:#111827;
  --lgs-nav-bg:#111827;
  --lgs-soft-bg:#0f172a;
  --bs-body-color:var(--lgs-text);
  --bs-body-bg:var(--lgs-bg);
  --bs-secondary-color:var(--lgs-muted);
  --bs-tertiary-color:var(--lgs-muted);
  --bs-emphasis-color:var(--lgs-text);
  --bs-border-color:var(--lgs-border);
}

.navbar{
  background:var(--lgs-nav-bg)!important;
  border-bottom:1px solid var(--lgs-border);
}
.navbar .navbar-brand,
.navbar .nav-link{
  color:var(--lgs-text)!important;
}
html[data-theme="dark"] .navbar .navbar-toggler{border-color:var(--lgs-border)}
html[data-theme="dark"] .navbar .navbar-toggler-icon{filter:invert(1) grayscale(1) brightness(2)}
.navbar .btn{border-color:var(--lgs-border)}
.card{
  background:var(--lgs-card-bg);
  border-color:var(--lgs-border)!important;
}
.hero{
  background:var(--lgs-soft-bg);
  border:1px solid var(--lgs-border);
  border-radius:.5rem;
}
.soft-panel{
  background:var(--lgs-soft-bg);
  border:1px solid var(--lgs-border);
  border-radius:.5rem;
}
.section-title{font-weight:700}

html[data-theme="dark"] .text-muted{color:var(--lgs-muted)!important}
html[data-theme="dark"] .text-secondary,
html[data-theme="dark"] .text-body-secondary,
html[data-theme="dark"] .text-dark{color:var(--lgs-text)!important}
html[data-theme="dark"] .card,
html[data-theme="dark"] .hero,
html[data-theme="dark"] .soft-panel{color:var(--lgs-text)!important}
html[data-theme="dark"] .text-bg-light{background:var(--lgs-soft-bg)!important;color:var(--lgs-text)!important}
html[data-theme="dark"] .btn-outline-dark{color:var(--lgs-text);border-color:var(--lgs-border)}
html[data-theme="dark"] .btn-outline-dark:hover{background:rgba(255,255,255,.08)}
html[data-theme="dark"] .table{color:var(--lgs-text)}
html[data-theme="dark"] .list-group-item{background:var(--lgs-card-bg);color:var(--lgs-text);border-color:var(--lgs-border)}
html[data-theme="dark"] .list-group-item.bg-light{background:var(--lgs-soft-bg)!important;color:var(--lgs-text)!important}
html[data-theme="dark"] .modal-content{background:var(--lgs-card-bg);color:var(--lgs-text)}
html[data-theme="dark"] .card-header,
html[data-theme="dark"] .card-footer{background:var(--lgs-soft-bg);color:var(--lgs-text);border-color:var(--lgs-border)}
html[data-theme="dark"] .bg-white{background:var(--lgs-card-bg)!important}
html[data-theme="dark"] .bg-light{background:var(--lgs-soft-bg)!important}
html[data-theme="dark"] .border,
html[data-theme="dark"] .border-top,
html[data-theme="dark"] .border-bottom,
html[data-theme="dark"] .border-start,
html[data-theme="dark"] .border-end{border-color:var(--lgs-border)!important}

@media (prefers-reduced-motion: reduce){
  *{scroll-behavior:auto!important; transition:none!important; animation:none!important}
}
