/* 8.8.0 — phone / tablet / DispoApp light royal-blue system (v12) */
:root {
  --v12-bg: #f4f7fb;
  --v12-card: #ffffff;
  --v12-line: #e2e8f0;
  --v12-blue: #0066ff;
  --v12-sky: #0284c7;
  --v12-soft: #e0f2fe;
  --v12-live: #10b981;
  --v12-demo: #f59e0b;
  --v12-ink: #0f172a;
  --v12-body: #475569;
  --v12-mute: #94a3b8;
  --v12-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
  --v12-font: Inter, "Plus Jakarta Sans", "SF Pro Display", system-ui, sans-serif;
}

@media (max-width: 899px) {
  html body.bu-board-page:not(.bu-nalog-page),
  html body.bu-board-page:not(.bu-nalog-page) .bu-board,
  html body.bu-board-page:not(.bu-nalog-page) .bu-board-main-col,
  html body.bu-board-page:not(.bu-nalog-page) .bu-term-grid {
    background: var(--v12-bg) !important;
    color: var(--v12-ink) !important;
    font-family: var(--v12-font) !important;
  }
  html body.bu-nalog-page,
  html body.bu-nalog-page.bu-board-page,
  html body.bu-nalog-page .bu-dash-main {
    background: var(--v12-bg) !important;
    color: var(--v12-ink) !important;
  }
  html body.bu-post-page,
  html body.bu-page.bu-post-page {
    background: var(--v12-bg) !important;
    color: var(--v12-ink) !important;
  }

  html body .bu-mshell {
    position: sticky;
    top: 0;
    z-index: 80;
    background: var(--v12-card) !important;
    box-shadow: 0 1px 0 var(--v12-line);
  }
  html body .bu-mshell-bar {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 52px;
    padding: 6px 10px calc(6px + env(safe-area-inset-top, 0px)) !important;
    padding-top: calc(6px + env(safe-area-inset-top, 0px)) !important;
    background: #fff !important;
  }
  html body .bu-mshell-bar .bu-mshell-brand {
    order: 1;
    margin-right: auto;
  }
  html body .bu-mshell-bar .bu-mshell-brand img,
  html body .bu-mshell-bar .bu-mshell-brand-img {
    height: 28px !important;
    width: auto !important;
    max-width: 132px;
    object-fit: contain;
  }
  html body .bu-v12-user {
    order: 2;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    max-width: 28vw;
    padding: 6px 10px;
    border-radius: 999px;
    background: #f8fafc;
    border: 1px solid var(--v12-line);
    color: var(--v12-ink) !important;
    font-weight: 700;
    font-size: 13px;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  html body .bu-v12-user svg { width: 12px; height: 12px; flex: 0 0 auto; opacity: .55; }
  html body .bu-mshell-end {
    order: 3;
    display: flex !important;
    align-items: center;
    gap: 6px;
    margin-left: 0 !important;
  }
  html body .bu-mshell-bar .bu-mshell-menu {
    order: 4;
    width: 40px;
    height: 40px;
    border: 0;
    background: transparent;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
  }
  html body .bu-mshell-bar .bu-mshell-menu span {
    display: block;
    width: 18px;
    height: 2px;
    background: var(--v12-ink);
    border-radius: 2px;
  }
  html body .bu-mshell-ico.bu-bell {
    width: 40px;
    height: 40px;
    border: 0;
    background: transparent;
    color: var(--v12-ink);
    position: relative;
  }
  html body .bu-mshell-ico.bu-bell svg { width: 22px; height: 22px; }
  html body .bu-bell-n,
  html body [data-bell-count] {
    position: absolute;
    top: 4px;
    right: 4px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 999px;
    background: #ef4444 !important;
    color: #fff !important;
    font-size: 10px;
    font-weight: 800;
    line-height: 16px;
    text-align: center;
  }
  html body .bu-v12-flags {
    display: flex;
    gap: 4px;
    align-items: center;
  }
  html body .bu-v12-flags button,
  html body .bu-v12-flags .bu-lang-btn {
    width: 28px;
    height: 28px;
    border: 0;
    padding: 0;
    background: transparent;
    border-radius: 999px;
    overflow: hidden;
  }
  html body .bu-v12-flags img,
  html body .bu-v12-flags .bu-flag-disc,
  html body .bu-mshell-lang .bu-flag-disc {
    width: 22px !important;
    height: 22px !important;
    border-radius: 999px;
    object-fit: cover;
  }

  html body.bu-board-page .bu-ptabs {
    display: flex !important;
    gap: 8px;
    padding: 8px 12px 4px;
    background: var(--v12-bg) !important;
  }
  html body.bu-board-page .bu-ptabs a,
  html body.bu-board-page .bu-ptabs button {
    flex: 1 1 0;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    padding: 8px 10px;
    border: 0 !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: var(--v12-ink) !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    box-shadow: 0 1px 0 var(--v12-line);
    text-decoration: none;
  }
  html body.bu-board-page .bu-ptabs a svg,
  html body.bu-board-page .bu-ptabs button svg {
    width: 16px;
    height: 16px;
  }
  html body.bu-board-page .bu-ptabs a.is-on,
  html body.bu-board-page .bu-ptabs button.is-on {
    background: var(--v12-blue) !important;
    color: #fff !important;
    box-shadow: 0 8px 16px rgba(0, 102, 255, 0.28);
  }

  html body.bu-board-page .bu-v12-sound {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 8px 12px 6px;
    padding: 10px 14px;
    border-radius: 16px;
    background: #ecfdf5;
    border: 1px solid #bbf7d0;
    color: #065f46;
    font-size: 12.5px;
    font-weight: 650;
    line-height: 1.25;
  }
  html body.bu-board-page .bu-v12-sound.is-off {
    background: #f8fafc;
    border-color: var(--v12-line);
    color: var(--v12-body);
  }
  html body.bu-board-page .bu-v12-eq {
    display: inline-flex;
    align-items: flex-end;
    gap: 2px;
    height: 14px;
    width: 14px;
  }
  html body.bu-board-page .bu-v12-eq i {
    display: block;
    width: 3px;
    background: var(--v12-live);
    border-radius: 2px;
    animation: buV12Eq 0.9s ease-in-out infinite;
  }
  html body.bu-board-page .bu-v12-eq i:nth-child(1) { height: 6px; animation-delay: 0s; }
  html body.bu-board-page .bu-v12-eq i:nth-child(2) { height: 12px; animation-delay: .15s; }
  html body.bu-board-page .bu-v12-eq i:nth-child(3) { height: 8px; animation-delay: .3s; }
  html body.bu-board-page .bu-v12-sound.is-off .bu-v12-eq i { animation: none; background: var(--v12-mute); }

  html body.bu-board-page .bu-tabs-bar,
  html body.bu-board-page .bu-tabs-chrome {
    display: flex !important;
    align-items: center;
    gap: 8px;
    padding: 0 12px 6px;
    background: transparent !important;
    overflow: auto;
  }
  html body.bu-board-page .bu-stab,
  html body.bu-board-page .bu-tab,
  html body.bu-board-page #bu-stab-list > * {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    background: #fff !important;
    border: 1px solid var(--v12-line) !important;
    color: var(--v12-ink) !important;
    font-size: 12.5px !important;
    font-weight: 650;
    white-space: nowrap;
  }
  html body.bu-board-page .bu-stab.is-on,
  html body.bu-board-page #bu-stab-list > *.is-on {
    background: var(--v12-soft) !important;
    border-color: #bae6fd !important;
    color: var(--v12-sky) !important;
  }
  html body.bu-board-page .bu-tab-add {
    width: 36px;
    height: 36px;
    border-radius: 999px !important;
    background: #fff !important;
    border: 1px solid var(--v12-line) !important;
    color: var(--v12-blue) !important;
    flex: 0 0 auto;
  }

  html body.bu-board-page .bu-v12-search {
    display: flex;
    align-items: center;
    gap: 10px;
    width: calc(100% - 24px);
    margin: 0 12px 8px;
    min-height: 46px;
    padding: 0 14px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid var(--v12-line);
    color: var(--v12-mute);
    font-size: 14px;
    font-weight: 550;
    box-shadow: var(--v12-shadow);
  }
  html body.bu-board-page .bu-v12-search svg { width: 18px; height: 18px; color: var(--v12-mute); }
  html body.bu-board-page .bu-v12-search span { flex: 1; text-align: left; }
  html body.bu-board-page .bu-v12-search .bu-v12-gear { color: var(--v12-ink); }

  html body.bu-board-page .bu-list-toolbar {
    display: flex !important;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 12px 8px;
    background: transparent !important;
  }
  html body.bu-board-page .bu-list-sort-drop,
  html body.bu-board-page .bu-veh-drop-btn,
  html body.bu-board-page .bu-live-now {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    min-height: 36px;
    padding: 6px 12px !important;
    border-radius: 999px !important;
    background: #fff !important;
    border: 1px solid var(--v12-line) !important;
    color: var(--v12-ink) !important;
    font-size: 12.5px !important;
    font-weight: 650;
  }
  html body.bu-board-page .bu-live-now {
    color: var(--v12-live) !important;
  }
  html body.bu-board-page .bu-list-sort-drop > span { display: none !important; }
  html body.bu-board-page [data-mobile-results],
  html body.bu-board-page .bu-mobile-results { display: none !important; }
    width: 8px; height: 8px; border-radius: 999px;
    background: var(--v12-live);
    box-shadow: 0 0 0 4px rgba(16, 185, 129, .18);
  }

  html body.bu-board-page .bu-v12-counts {
    display: flex;
    gap: 6px;
    padding: 0 12px 8px;
    overflow: auto;
  }
  html body.bu-board-page .bu-v12-counts button {
    flex: 0 0 auto;
    border: 0;
    background: transparent;
    color: var(--v12-mute);
    font-weight: 750;
    font-size: 13px;
    padding: 6px 4px;
    border-bottom: 2px solid transparent;
  }
  html body.bu-board-page .bu-v12-counts button b {
    display: inline-block;
    margin-left: 4px;
    min-width: 16px;
    padding: 1px 7px;
    border-radius: 999px;
    background: #e2e8f0;
    color: var(--v12-ink);
    font-size: 11px;
  }
  html body.bu-board-page .bu-v12-counts button.is-on {
    color: var(--v12-blue);
    border-bottom-color: var(--v12-blue);
  }
  html body.bu-board-page .bu-v12-counts button.is-on b {
    background: var(--v12-blue);
    color: #fff;
  }

  html body.bu-board-page .bu-pview {
    display: flex !important;
    width: calc(100% - 24px);
    margin: 0 12px 10px;
    padding: 4px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--v12-line);
    box-shadow: var(--v12-shadow);
  }
  html body.bu-board-page .bu-pview button {
    flex: 1;
    min-height: 38px;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: var(--v12-body) !important;
    font-weight: 750 !important;
    font-size: 13px !important;
  }
  html body.bu-board-page .bu-pview button.is-on {
    background: var(--v12-blue) !important;
    color: #fff !important;
  }

  html body.bu-board-page .bu-feed {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0 12px 110px;
  }
  html body.bu-board-page .bu-feed .bu-item.compact {
    position: relative;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 14px 14px 12px !important;
    border-radius: 20px !important;
    background: #fff !important;
    border: 1px solid var(--v12-line) !important;
    box-shadow: var(--v12-shadow) !important;
    color: var(--v12-ink) !important;
  }
  html body.bu-board-page .bu-feed .bu-item.compact > .bu-c,
  html body.bu-board-page .bu-feed .bu-item.compact > .bu-driver-card-cta {
    display: none !important;
  }
  html body.bu-board-page .bu-feed .bu-item.compact > .bu-c-fav {
    display: flex !important;
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 2;
  }
  html body.bu-board-page .bu-fav-btn {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 999px;
    background: #f8fafc;
    color: #cbd5e1;
    font-size: 16px;
  }
  html body.bu-board-page .bu-fav-btn.is-on { color: var(--v12-demo); background: #fffbeb; }
  html body.bu-board-page .bu-v12-card { display: flex; flex-direction: column; gap: 8px; }
  html body.bu-board-page .bu-v12-card-top { min-height: 18px; }
  html body.bu-board-page .bu-v12-live {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    color: var(--v12-live);
  }
  html body.bu-board-page .bu-v12-live i {
    width: 7px; height: 7px; border-radius: 999px; background: var(--v12-live);
    box-shadow: 0 0 0 4px rgba(16, 185, 129, .16);
  }
  html body.bu-board-page .bu-v12-route {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 13.5px;
    font-weight: 800;
    line-height: 1.25;
    color: var(--v12-ink);
  }
  html body.bu-board-page .bu-v12-end { flex: 1; min-width: 0; }
  html body.bu-board-page .bu-v12-end b { font-weight: 800; }
  html body.bu-board-page .bu-v12-arr { color: var(--v12-blue); font-style: normal; padding-top: 2px; }
  html body.bu-board-page .bu-demo-ribbon,
  html body.bu-board-page .bu-v12-card .bu-demo-ribbon {
    display: inline-flex !important;
    align-self: flex-start;
    padding: 3px 8px;
    border-radius: 999px;
    background: var(--v12-demo) !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: .04em;
  }
  html body.bu-board-page .bu-v12-goods {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: var(--v12-body);
    font-size: 13px;
    font-weight: 650;
  }
  html body.bu-board-page .bu-v12-box {
    width: 22px; height: 22px; border-radius: 6px;
    background: linear-gradient(180deg, #38bdf8, #0284c7);
    box-shadow: inset 0 -2px 0 rgba(0,0,0,.12);
    position: relative;
  }
  html body.bu-board-page .bu-v12-box:after {
    content: "";
    position: absolute; inset: 5px 4px 4px;
    border: 1.5px solid #fff; border-radius: 3px;
  }
  html body.bu-board-page .bu-v12-specs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    color: var(--v12-body);
    font-size: 12.5px;
  }
  html body.bu-board-page .bu-v12-eur { color: var(--v12-ink); font-size: 15px; }
  html body.bu-board-page .bu-v12-req {
    margin-left: auto;
    border: 0;
    background: transparent;
    color: var(--v12-blue);
    font-weight: 800;
    font-size: 13px;
  }
  html body.bu-board-page .bu-mcard-foot { display: none !important; }
  html body.bu-board-page .bu-cols-head,
  html body.bu-board-page .bu-pfilter-card,
  html body.bu-board-page .bu-mobile-only,
  html body.bu-board-page .bu-twin-bars,
  html body.bu-board-page .bu-mfilter-go,
  html body.bu-board-page .bu-minibar,
  html body.bu-board-page .bu-phonedock,
  html body.bu-board-page .bu-mobdock-3 {
    display: none !important;
  }

  html body.bu-board-page #bu-filter-fold:not(.open),
  html body.bu-board-page .bu-filter-fold:not(.open) {
    display: none !important;
    position: absolute !important;
    inset: auto !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    visibility: hidden !important;
    z-index: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  html body.bu-board-page #bu-filter-fold.open,
  html body.bu-filters-sheet-open #bu-filter-fold,
  html body.bu-filters-sheet-open #bu-filter-fold.open {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147482000 !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    background: #fff !important;
    color: var(--v12-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  html body.bu-filters-sheet-open #bu-filter-fold.open .bu-filter-sheet-head,
  html body.bu-board-page #bu-filter-fold.open .bu-filter-sheet-head {
    flex: 0 0 auto !important;
    padding: calc(10px + env(safe-area-inset-top, 0px)) 16px 8px !important;
  }
  html body.bu-board-page #bu-filter-fold.open #bu-lanes,
  html body.bu-board-page #bu-filter-fold.open .bu-metrics-row,
  html body.bu-board-page #bu-filter-fold.open .bu-v12-togs,
  html body.bu-board-page #bu-filter-fold.open .bu-cargo-adv,
  html body.bu-board-page #bu-filter-fold.open .bu-truck-adv {
    flex: 0 0 auto;
  }
  html body.bu-board-page #bu-filter-fold.open #bu-lanes,
  html body.bu-board-page #bu-filter-fold.open .bu-metrics-row,
  html body.bu-board-page #bu-filter-fold.open .bu-v12-togs {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  html body.bu-board-page #bu-filter-fold.open #bu-search-row {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 5 !important;
    flex: 0 0 auto !important;
    margin-top: auto !important;
    padding: 12px 16px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
    background: #fff !important;
    border-top: 1px solid #e2e8f0 !important;
    box-shadow: 0 -8px 20px rgba(15, 23, 42, .06) !important;
  }
  html body.bu-board-page .bu-filter-sheet-head {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0 16px;
    background: #fff !important;
    color: var(--v12-ink) !important;
  }
  html body.bu-board-page .bu-filter-sheet-head strong {
    font-size: 22px;
    font-weight: 800;
    color: var(--v12-ink) !important;
  }
  html body.bu-board-page .bu-filter-sheet-x {
    width: 36px; height: 36px;
    border: 0; border-radius: 999px;
    background: #f1f5f9;
    color: var(--v12-ink);
    font-size: 20px;
  }
  html body.bu-board-page #bu-lanes {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr;
    gap: 8px;
    align-items: stretch;
  }
  html body.bu-board-page .bu-lane {
    background: #f8fafc !important;
    border: 1px solid var(--v12-line) !important;
    border-radius: 18px !important;
    padding: 12px !important;
    color: var(--v12-ink) !important;
  }
  html body.bu-board-page .bu-v12-swap {
    align-self: center;
    width: 40px; height: 40px;
    border: 1px solid var(--v12-line);
    border-radius: 999px;
    background: #fff;
    color: var(--v12-blue);
    font-size: 18px;
    box-shadow: var(--v12-shadow);
  }
  html body.bu-board-page .bu-lane-head,
  html body.bu-board-page .bu-lane label,
  html body.bu-board-page .bu-metrics-g legend,
  html body.bu-board-page .bu-geo,
  html body.bu-board-page .bu-date-field {
    color: var(--v12-ink) !important;
  }
  html body.bu-board-page .bu-geo,
  html body.bu-board-page .bu-date-field,
  html body.bu-board-page .bu-metrics-g input,
  html body.bu-board-page select {
    background: #fff !important;
    border: 1px solid var(--v12-line) !important;
    border-radius: 14px !important;
    color: var(--v12-ink) !important;
  }
  html body.bu-board-page .bu-metrics-row {
    display: grid !important;
    gap: 10px;
    margin-top: 12px;
  }
  html body.bu-board-page .bu-v12-togs {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 16px 0;
  }
  html body.bu-board-page .bu-v12-tog {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-weight: 650;
    color: var(--v12-ink);
  }
  html body.bu-board-page .bu-v12-tog input {
    appearance: none;
    width: 44px; height: 26px;
    border-radius: 999px;
    background: #e2e8f0;
    position: relative;
    border: 0;
  }
  html body.bu-board-page .bu-v12-tog input:checked { background: var(--v12-blue); }
  html body.bu-board-page .bu-v12-tog input:after {
    content: "";
    position: absolute; top: 3px; left: 3px;
    width: 20px; height: 20px; border-radius: 999px; background: #fff;
    transition: transform .2s ease;
  }
  html body.bu-board-page .bu-v12-tog input:checked:after { transform: translateX(18px); }
  html body.bu-board-page #bu-search-row {
    position: sticky;
    bottom: 0;
    display: flex !important;
    gap: 10px;
    margin-top: auto;
    padding-top: 12px;
    background: #fff;
  }
  html body.bu-board-page #f-reset { order: 1; }
  html body.bu-board-page #f-go { order: 2; }
  html body.bu-board-page #f-reset {
    flex: 0 0 auto;
    min-width: 110px;
    border-radius: 999px !important;
    background: #fff !important;
    border: 1.5px solid var(--v12-blue) !important;
    color: var(--v12-blue) !important;
    font-weight: 750;
  }
  html body.bu-board-page #f-go {
    flex: 1;
    border-radius: 999px !important;
    background: var(--v12-blue) !important;
    border: 0 !important;
    color: #fff !important;
    font-weight: 800;
    min-height: 48px;
  }

  html body.bu-board-page.bu-term-view-map .bu-term-grid {
    position: relative;
    min-height: calc(100dvh - 210px);
  }
  html body.bu-board-page.bu-term-view-map #bu-map-pane,
  html body.bu-board-page.bu-term-view-map .bu-board-map {
    display: flex !important;
    position: relative !important;
    width: 100% !important;
    height: calc(100dvh - 210px) !important;
    min-height: 320px !important;
    visibility: visible !important;
    pointer-events: auto !important;
    z-index: 1 !important;
    border-radius: 0 !important;
  }
  html body.bu-board-page.bu-term-view-map #bu-list-pane {
    display: block !important;
    position: absolute !important;
    left: 10px; right: 10px;
    bottom: calc(78px + env(safe-area-inset-bottom, 0px));
    max-height: 42%;
    overflow: auto;
    z-index: 6 !important;
    pointer-events: auto !important;
    visibility: visible !important;
    background: transparent !important;
    padding: 0 !important;
  }
  html body.bu-board-page.bu-term-view-map .bu-list-head,
  html body.bu-board-page.bu-term-view-map .bu-v12-counts {
    display: none !important;
  }
  html body.bu-board-page.bu-term-view-map .bu-feed {
    padding: 0 0 8px;
  }
  html body.bu-board-page .bu-v12-nearby {
    position: absolute;
    left: 12px;
    top: 12px;
    z-index: 5;
    padding: 6px 10px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--v12-line);
    font-size: 12px;
    font-weight: 750;
    color: var(--v12-ink);
    box-shadow: var(--v12-shadow);
  }
  html body.bu-board-page .bu-map-legend {
    background: #fff !important;
    color: var(--v12-ink) !important;
    border-radius: 999px !important;
    border: 1px solid var(--v12-line) !important;
  }

  html body #bu-mobile-detail-sheet {
    background: var(--v12-bg) !important;
    color: var(--v12-ink) !important;
    border-radius: 0 !important;
  }
  html body .bu-mdetail-head {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    background: #fff !important;
    border-bottom: 1px solid var(--v12-line);
    color: var(--v12-ink) !important;
  }
  html body .bu-mdetail-back,
  html body .bu-mdetail-x,
  html body .bu-mdetail-share {
    width: 40px; height: 40px;
    border: 0; border-radius: 999px;
    background: #f8fafc;
    color: var(--v12-ink);
    font-size: 18px;
  }
  html body .bu-mdetail-title {
    flex: 1;
    text-align: center;
    font-size: 16px;
    font-weight: 800;
    color: var(--v12-ink);
  }
  html body .bu-mdetail-body {
    padding: 12px 12px 110px;
  }
  html body .bu-v12-photo {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    background: #e2e8f0;
    min-height: 160px;
    margin-bottom: 12px;
  }
  html body .bu-v12-photo img { width: 100%; height: 180px; object-fit: cover; display: block; }
  html body .bu-v12-photo .bu-v12-live {
    position: absolute; top: 10px; left: 10px;
    background: rgba(255,255,255,.92);
    padding: 4px 8px; border-radius: 999px;
  }
  html body .bu-v12-pills {
    display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 14px;
  }
  html body .bu-v12-pills span {
    padding: 6px 10px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--v12-line);
    font-size: 12.5px;
    font-weight: 700;
    color: var(--v12-ink);
  }
  html body .bu-v12-kv {
    background: #fff;
    border: 1px solid var(--v12-line);
    border-radius: 18px;
    overflow: hidden;
  }
  html body .bu-v12-kv div {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border-bottom: 1px solid #f1f5f9;
    font-size: 13.5px;
  }
  html body .bu-v12-kv div:last-child { border-bottom: 0; }
  html body .bu-v12-kv dt { color: var(--v12-mute); font-weight: 650; }
  html body .bu-v12-kv dd { margin: 0; color: var(--v12-ink); font-weight: 750; text-align: right; }
  html body .bu-mdetail-foot {
    position: sticky;
    bottom: 0;
    padding: 10px 12px calc(12px + env(safe-area-inset-bottom, 0px));
    background: #fff;
    border-top: 1px solid var(--v12-line);
  }
  html body .bu-mdetail-foot .bu-btn.blue,
  html body .bu-v12-cta {
    display: flex;
    width: 100%;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 999px;
    background: var(--v12-blue) !important;
    color: #fff !important;
    font-weight: 800;
  }

  html body.bu-ai-open #bu-dispo,
  html body #bu-dispo.bu-ai-portal,
  html body #bu-dispo.is-sheet {
    background: var(--v12-bg) !important;
    color: var(--v12-ink) !important;
    border-radius: 0 !important;
  }
  html body #bu-dispo .bu-dispo-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    background: #fff !important;
    border-bottom: 1px solid var(--v12-line);
  }
  html body #bu-dispo .bu-dispo-brand { display: flex; align-items: center; gap: 10px; }
  html body #bu-dispo .bu-dispo-av {
    width: 40px; height: 40px; border-radius: 999px;
    box-shadow: 0 0 0 3px var(--v12-soft);
  }
  html body #bu-dispo .bu-kicker,
  html body #bu-dispo .bu-dispo-brand p {
    margin: 0;
    font-size: 16px !important;
    font-weight: 800 !important;
    color: var(--v12-ink) !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }
  html body #bu-dispo .bu-dispo-live {
    color: var(--v12-live) !important;
    font-size: 12px;
    font-weight: 750;
  }
  html body #bu-dispo .bu-dispo-live i {
    display: inline-block; width: 7px; height: 7px; margin-right: 4px;
    border-radius: 999px; background: var(--v12-live);
  }
  html body #bu-dispo .bu-dispo-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 10px 12px;
    background: transparent !important;
  }
  html body #bu-dispo .bu-dispo-chip,
  html body #bu-dispo .bu-ai-hint {
    border: 1px solid var(--v12-line) !important;
    background: #fff !important;
    color: var(--v12-ink) !important;
    border-radius: 999px !important;
    padding: 8px 12px !important;
    font-weight: 700 !important;
    font-size: 12.5px !important;
  }
  html body #bu-dispo .bu-bubble-welcome,
  html body #bu-dispo .bu-bubble:not(.me) {
    background: #fff !important;
    color: var(--v12-ink) !important;
    border: 1px solid var(--v12-line) !important;
    border-radius: 18px !important;
    box-shadow: var(--v12-shadow);
  }
  html body #bu-dispo .bu-bubble.me {
    background: var(--v12-blue) !important;
    color: #fff !important;
    border-radius: 18px 18px 6px 18px !important;
  }
  html body #bu-dispo .bu-ai-card {
    display: block;
    width: calc(100% - 24px);
    margin: 8px 12px;
    padding: 12px;
    text-align: left;
    background: #fff !important;
    border: 1px solid var(--v12-line) !important;
    border-radius: 18px !important;
    color: var(--v12-ink) !important;
    box-shadow: var(--v12-shadow);
  }
  html body #bu-dispo .bu-ai-card strong { display: block; font-size: 14px; margin-bottom: 4px; }
  html body #bu-dispo .bu-v12-ai-card {
    display: grid;
    grid-template-columns: 1fr 72px;
    gap: 8px;
    align-items: center;
  }
  html body #bu-dispo .bu-v12-ai-card img {
    width: 72px; height: 56px; object-fit: cover; border-radius: 10px; background: #e2e8f0;
  }
  html body #bu-dispo .bu-v12-ai-go {
    margin-top: 8px;
    border: 0;
    background: var(--v12-soft);
    color: var(--v12-sky);
    font-weight: 800;
    border-radius: 999px;
    padding: 6px 12px;
  }
  html body #bu-dispo .bu-dispo-form {
    display: flex;
    gap: 8px;
    align-items: center;
    padding: 8px 12px calc(10px + env(safe-area-inset-bottom, 0px));
    background: #fff !important;
    border-top: 1px solid var(--v12-line);
  }
  html body #bu-dispo .bu-v12-mic {
    width: 42px; height: 42px; border: 0; border-radius: 999px;
    background: #f1f5f9; color: var(--v12-ink);
  }
  html body #bu-dispo [data-agent-input] {
    flex: 1;
    min-height: 44px;
    border-radius: 999px !important;
    border: 1px solid var(--v12-line) !important;
    background: #f8fafc !important;
    color: var(--v12-ink) !important;
    padding: 0 14px !important;
  }
  html body #bu-dispo .bu-dispo-form .bu-btn,
  html body #bu-dispo .bu-v12-send {
    width: 44px; height: 44px; border-radius: 999px !important;
    background: var(--v12-blue) !important;
    color: #fff !important;
    border: 0 !important;
    font-size: 16px;
    padding: 0 !important;
  }

  html body #bu-notes {
    background: #fff !important;
    color: var(--v12-ink) !important;
    border-radius: 20px 20px 0 0 !important;
    border: 1px solid var(--v12-line) !important;
  }
  html body #bu-notes .bu-notes-head,
  html body #bu-notes h2,
  html body #bu-notes .bu-sub,
  html body #bu-notes .bu-notes-legend {
    color: var(--v12-ink) !important;
  }
  html body.bu-notes-open #bu-notes {
    position: fixed !important;
    left: 0; right: 0; bottom: 0;
    z-index: 130;
    max-height: 78dvh;
    overflow: auto;
    padding: 16px 16px calc(24px + env(safe-area-inset-bottom, 0px));
    box-shadow: 0 -12px 40px rgba(15, 23, 42, .12);
  }

  html body.bu-mshell-open .bu-mshell-drawer {
    background: #fff !important;
    color: var(--v12-ink) !important;
  }
  html body .bu-mshell-card {
    background: #f8fafc !important;
    border: 1px solid var(--v12-line) !important;
    border-radius: 16px !important;
  }
  html body .bu-mshell-card-a { color: var(--v12-ink) !important; }

  html body .bu-post-page h1,
  html body .bu-post-page .bu-kicker { color: var(--v12-ink) !important; }
  html body .bu-v12-post-switch {
    display: flex;
    gap: 6px;
    padding: 4px;
    margin: 8px 0 16px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--v12-line);
  }
  html body .bu-v12-post-switch a {
    flex: 1;
    text-align: center;
    padding: 10px 8px;
    border-radius: 999px;
    text-decoration: none;
    color: var(--v12-body);
    font-weight: 750;
  }
  html body .bu-v12-post-switch a.is-on {
    background: var(--v12-blue);
    color: #fff;
  }
  html body .bu-post-page .bu-form {
    background: #fff;
    border: 1px solid var(--v12-line);
    border-radius: 20px;
    padding: 16px;
    box-shadow: var(--v12-shadow);
  }
  html body .bu-post-page .bu-form label,
  html body .bu-post-page .bu-form input,
  html body .bu-post-page .bu-form textarea,
  html body .bu-post-page .bu-form select {
    color: var(--v12-ink);
  }
  html body .bu-post-page .bu-form input,
  html body .bu-post-page .bu-form textarea,
  html body .bu-post-page .bu-form select {
    border-radius: 14px;
    border: 1px solid var(--v12-line);
    background: #f8fafc;
  }
  html body .bu-post-page .bu-btn.blue,
  html body .bu-post-page button[type="submit"] {
    width: 100%;
    min-height: 48px;
    border-radius: 999px !important;
    background: var(--v12-blue) !important;
    color: #fff !important;
    font-weight: 800;
  }

  html body .bu-mobchrome {
    position: fixed;
    left: 0; right: 0; bottom: 0;
    z-index: 70;
    pointer-events: none;
  }
  html body .bu-v12-dock {
    display: flex !important;
    pointer-events: auto;
    margin: 0 10px calc(8px + env(safe-area-inset-bottom, 0px));
    padding: 8px 6px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid var(--v12-line);
    box-shadow: 0 10px 30px rgba(15, 23, 42, .12);
  }
  html body .bu-v12-dock a,
  html body .bu-v12-dock button {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    border: 0;
    background: transparent;
    color: var(--v12-mute);
    text-decoration: none;
    font-size: 11px;
    font-weight: 750;
  }
  html body .bu-v12-dock svg { width: 22px; height: 22px; }
  html body .bu-v12-dock .is-on { color: var(--v12-blue) !important; }
  html body #bu-dispo-fab {
    display: flex !important;
    pointer-events: auto;
    position: fixed !important;
    right: 16px;
    bottom: calc(86px + env(safe-area-inset-bottom, 0px));
    width: 58px; height: 58px;
    border: 0;
    border-radius: 999px;
    padding: 0;
    overflow: hidden;
    z-index: 75;
    background: var(--v12-blue);
    box-shadow: 0 10px 24px rgba(0, 102, 255, .4), 0 0 0 6px rgba(0, 102, 255, .16);
    animation: buV12Fab 2.4s ease-in-out infinite;
  }
  html body #bu-dispo-fab img { width: 58px; height: 58px; object-fit: cover; }
  html body.bu-ai-open #bu-dispo-fab,
  html body.bu-mobile-detail-open #bu-dispo-fab,
  html body.bu-filters-sheet-open #bu-dispo-fab,
  html body.bu-ai-open .bu-mobchrome,
  html body.bu-mobile-detail-open .bu-mobchrome,
  html body.bu-filters-sheet-open .bu-mobchrome {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 899px) {
  html body.bu-board-page:not(.bu-nalog-page) .bu-term-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    padding: 0 12px 96px;
    min-height: calc(100dvh - 220px);
  }
  html body.bu-board-page #bu-map-pane,
  html body.bu-board-page #bu-map-pane.hidden-m,
  html body.bu-board-page .bu-board-map,
  html body.bu-board-page.bu-term-view-map #bu-map-pane,
  html body.bu-board-page:not(.bu-term-view-map) #bu-map-pane {
    display: flex !important;
    position: relative !important;
    width: auto !important;
    height: 100% !important;
    min-height: 420px !important;
    visibility: visible !important;
    pointer-events: auto !important;
    z-index: 1 !important;
    border-radius: 20px !important;
    overflow: hidden;
    border: 1px solid var(--v12-line);
  }
  html body.bu-board-page #bu-list-pane,
  html body.bu-board-page #bu-list-pane.hidden-m,
  html body.bu-board-page.bu-term-view-map #bu-list-pane {
    display: block !important;
    position: relative !important;
    left: auto; right: auto; bottom: auto;
    max-height: none;
    height: 100%;
    overflow: auto;
    z-index: 2 !important;
  }
  html body.bu-board-page.bu-term-view-map .bu-list-head,
  html body.bu-board-page.bu-term-view-map .bu-v12-counts {
    display: flex !important;
  }
}

@media (min-width: 900px) {
  html body .bu-v12-sound,
  html body .bu-v12-search,
  html body .bu-v12-counts,
  html body .bu-v12-dock,
  html body .bu-v12-flags,
  html body .bu-v12-user,
  html body .bu-v12-swap,
  html body .bu-v12-togs,
  html body .bu-v12-nearby,
  html body .bu-v12-post-switch {
    display: none !important;
  }
}

@keyframes buV12Eq {
  0%, 100% { transform: scaleY(.45); }
  50% { transform: scaleY(1); }
}
@keyframes buV12Fab {
  0%, 100% { box-shadow: 0 10px 24px rgba(0, 102, 255, .4), 0 0 0 6px rgba(0, 102, 255, .12); }
  50% { box-shadow: 0 12px 28px rgba(0, 102, 255, .55), 0 0 0 10px rgba(0, 102, 255, .18); }
}
