:root {
  --bg: #0b1120;
  --bg2: #10182c;
  --text: #eef2ff;
  --muted: #9aa5c0;
  --card: rgba(255,255,255,.04);
  --line: rgba(255,255,255,.1);
  --line-strong: rgba(255,255,255,.14);
}
:root[data-theme="light"] {
  --bg: #f6f8ff;
  --bg2: #edf2ff;
  --text: #0f172a;
  --muted: #556175;
  --card: rgba(255,255,255,.9);
  --line: rgba(15,23,42,.08);
  --line-strong: rgba(15,23,42,.14);
}

html { scroll-behavior: smooth; }
body {
  background: linear-gradient(180deg, var(--bg) 0%, var(--bg2) 100%);
  color: var(--text);
}
.mobile-topbar {
  background: rgba(8,12,22,.9);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line);
  z-index: 1035;
}
.brand-badge {
  width: 28px; height: 28px; border-radius: 8px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, #4f8cff, #7b5cff);
  color: #fff; font-size: .75rem; font-weight: 700;
}
.mobile-card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(0,0,0,.25);
}
.form-control, .form-select {
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.12);
  color: #eef2ff;
}
.form-control::placeholder { color: #9aa5c0; }
.form-control:focus, .form-select:focus {
  background: rgba(255,255,255,.05);
  color: #fff;
  border-color: rgba(79,140,255,.55);
  box-shadow: 0 0 0 .25rem rgba(79,140,255,.12);
}
.btn-primary {
  background: linear-gradient(135deg, #4f8cff, #7b5cff);
  border: none;
}
.history-item {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: .5rem;
  align-items: center;
  padding: .6rem .7rem;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.06);
  background: rgba(255,255,255,.02);
  font-size: .85rem;
}
.history-item span { color: #b9c2da; }
.history-item em { font-style: normal; font-weight: 600; }

.hero-eyebrow-mobile {
  color: #b9c3ff;
  font-weight: 600;
}
:root[data-theme="light"] .hero-eyebrow-mobile { color: #2454d9; }
.mobile-theme-switch {
  display: inline-flex; align-items: center; gap: .3rem;
  padding: .15rem .35rem;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255,255,255,.04);
  color: var(--muted);
}
.mobile-theme-switch .form-check-input {
  width: 2rem; margin: 0; cursor: pointer;
  background-color: rgba(255,255,255,.12);
  border-color: var(--line-strong);
}
:root[data-theme="light"] .mobile-topbar { background: rgba(255,255,255,.9); }
:root[data-theme="light"] .mobile-topbar .btn-outline-light { color: #0f172a; border-color: rgba(15,23,42,.18); }
:root[data-theme="light"] .offcanvas.text-bg-dark {
  --bs-offcanvas-bg: #ffffff;
  --bs-offcanvas-color: #0f172a;
}
:root[data-theme="light"] .btn-outline-light { color: #0f172a; border-color: rgba(15,23,42,.18); }
:root[data-theme="light"] .btn-outline-light:hover { color: #0f172a; background: rgba(15,23,42,.06); }
:root[data-theme="light"] .text-secondary { color: var(--muted) !important; }
:root[data-theme="light"] .mobile-card { box-shadow: 0 10px 24px rgba(15,23,42,.08); }
.form-control, .form-select {
  background: rgba(255,255,255,.03);
  border-color: var(--line-strong);
  color: var(--text);
}
:root[data-theme="light"] .form-control,
:root[data-theme="light"] .form-select {
  background: rgba(255,255,255,.92);
  color: #0f172a;
}
select.form-select option { background: #0f172a; color: #eef2ff; }
:root[data-theme="light"] select.form-select option { background: #fff; color: #0f172a; }
.history-item span { color: var(--muted); }
:root[data-theme="light"] .history-item {
  background: rgba(15,23,42,.015);
  border-color: rgba(15,23,42,.08);
}
/* MOBILE MENU FIX */

@media (max-width: 991px) {

  :root[data-theme="light"] .navbar-collapse {
    background: #ffffff;
    border-radius: 14px;
    padding: 10px;
    margin-top: 10px;
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
  }

  :root[data-theme="light"] .navbar-collapse .nav-link {
    color: #0f172a;
  }

  :root[data-theme="light"] .navbar-collapse .nav-link:hover {
    background: #f1f5ff;
    border-radius: 8px;
  }

}
.navbar-toggler {
  border: 1px solid var(--line);
}

:root[data-theme="light"] .navbar-toggler-icon {
  filter: invert(1);
}
@media (max-width: 991px) {

  .navbar-collapse {
    backdrop-filter: blur(18px);
  }

}
/* MOBILE SIDEMENU LIGHT FIX */

:root[data-theme="light"] .mobile-menu,
:root[data-theme="light"] .offcanvas,
:root[data-theme="light"] .offcanvas-end {

  background: #ffffff;
  color: #0f172a;
}

/* ссылки меню */
:root[data-theme="light"] .offcanvas a,
:root[data-theme="light"] .offcanvas .nav-link {
  color: #0f172a;
}

/* hover */
:root[data-theme="light"] .offcanvas a:hover,
:root[data-theme="light"] .offcanvas .nav-link:hover {
  background: #f1f5ff;
  border-radius: 8px;
}

/* заголовок меню */
:root[data-theme="light"] .offcanvas-header {
  border-bottom: 1px solid rgba(0,0,0,.08);
}

/* кнопка закрытия */
:root[data-theme="light"] .btn-close {
  filter: invert(1);
}
.offcanvas {

  backdrop-filter: blur(24px);
  background: rgba(15,23,42,.85);
}

:root[data-theme="light"] .offcanvas {

  background: rgba(255,255,255,.85);
}
.mobile-full-btn{
  height:48px;
  font-size:15px;
  border-radius:12px;
}