/* 7.9.58 — gaps, scroll, header, logos, board chrome, nalog, author */

/* —— Document scroll on every public / product page —— */
html:has(body.bu-landing-page),
html:has(body.bu-product-page),
html:has(body.bu-public-inner),
html:has(body.bu-author-page) {
  height: auto !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
html body.bu-landing-page,
html body.bu-product-page,
html body.bu-public-inner,
html body.bu-author-page,
html body.bu-nalog-page {
  height: auto !important;
  max-height: none !important;
  min-height: 100% !important;
  overflow: visible !important;
}
html body.bu-landing-page .landing-shell,
html body.bu-product-page .landing-shell,
html body.bu-public-inner .landing-shell,
html body.bu-author-page .landing-shell {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  contain: none !important;
}
html body.bu-landing-page .landing-shell-main,
html body.bu-product-page .landing-shell-main,
html body.bu-public-inner .landing-shell-main,
html body.bu-author-page .landing-shell-main,
html body.bu-landing-page main,
html body.bu-product-page main,
html body.bu-public-inner main,
html body.bu-author-page main,
html body.bu-product-page main.bu-pro,
html body.bu-product-page main.bu-blog {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  contain: none !important;
}

/* Sidebar stays fixed; main starts at top — no phantom band */
@media (min-width: 1100px) {
  html body.bu-landing-page .landing-shell-main,
  html body.bu-product-page .landing-shell-main,
  html body.bu-public-inner .landing-shell-main,
  html body.bu-author-page .landing-shell-main {
    margin-left: 232px !important;
    padding-top: 0 !important;
  }
}

/* Phone chrome never eats desktop landing */
@media (min-width: 900px) {
  html body.bu-landing-page .bu-mshell,
  html body.bu-product-page .bu-mshell,
  html body.bu-author-page .bu-mshell,
  html body.bu-public-inner .bu-mshell {
    display: none !important;
  }
}

/* —— Header: sticky in-flow, never overlay, never hide, never sideways scroll —— */
html body.bu-landing-page .bu-neon-head,
html body.bu-landing-page [data-landing-header].bu-neon-head,
html body.bu-product-page .bu-neon-head,
html body.bu-author-page .bu-neon-head,
html body.bu-landing-page .bu-neon-head.is-home,
html body.bu-landing-page .bu-neon-head.is-inner,
html body.bu-landing-page .bu-neon-head.is-stuck,
html body.bu-landing-page .bu-neon-head.is-hidden {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  transform: none !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  overflow-x: hidden !important;
  overflow-y: visible !important;
  z-index: 50 !important;
  margin: 0 !important;
  background: rgba(8, 16, 32, 0.94) !important;
  border-bottom: 1px solid rgba(0, 180, 255, 0.14) !important;
  backdrop-filter: blur(16px) saturate(1.15);
  -webkit-backdrop-filter: blur(16px) saturate(1.15);
  will-change: auto;
}
html body.bu-landing-page .bu-neon-head-inner,
html body.bu-product-page .bu-neon-head-inner {
  margin: 0 !important;
  min-height: 58px;
  overflow: hidden;
}
html body.bu-landing-page .bu-neon-pills {
  overflow: hidden !important;
  flex-wrap: nowrap;
  min-width: 0;
}
html body.bu-landing-page .bu-neon-pill,
html body.bu-landing-page .bu-neon-more summary {
  flex: 0 0 auto;
  white-space: nowrap;
}

/* Product / blog / author heroes sit under the in-flow header — no 108px phantom */
html body.bu-product-page .bu-pro-hero-inner,
html body.bu-product-page .bu-blog-hero,
html body.bu-author-page .bu-author-hero {
  padding-top: 28px !important;
}
html body.bu-product-page main.bu-pro,
html body.bu-product-page main.bu-blog,
html body.bu-author-page main.bu-author {
  min-height: 72vh !important;
}
html body.bu-landing-page:not(.bu-product-page) .bu-neon-hero-inner {
  padding-top: 28px !important;
}

/* Home join: logo in the circle (v57 hid every span, including the wrap) */
html body.bu-landing-page .bu-home-join > b,
html body.bu-landing-page .bu-home-join > span:not(.bu-brand-file):not(.bu-home-join-logo) {
  display: none !important;
}
html body.bu-landing-page .bu-home-join .bu-brand-file,
html body.bu-landing-page .bu-home-join .bu-home-join-logo,
html body.bu-landing-page .bu-home-join img {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-width: 92px !important;
  max-height: 68px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  filter: none !important;
  margin: 0 auto;
}

/* Footer logo: white mark, original shape — no inverted PNG blob */
html body .bu-pub-foot .bu-brand-file,
html body .bu-pub-foot .bu-pub-foot-logo-img-wrap {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
  filter: none !important;
  border-radius: 0 !important;
}
html body .bu-pub-foot img {
  filter: none !important;
}
html body .bu-pub-foot .bu-logo-mark {
  width: 52px;
  height: 52px;
  display: block;
}
html body .bu-pub-foot .bu-mark-bg { fill: transparent; }
html body .bu-pub-foot .bu-mark-a { stroke: #f4efe4; }
html body .bu-pub-foot .bu-mark-b { stroke: #f4efe4; }
html body .bu-pub-foot .bu-mark-c,
html body .bu-pub-foot .bu-mark-d { fill: #f4efe4; }

/* Kill leftover support FAB */
html body .bu-support,
html body #bu-support,
html body .bu-support-fab {
  display: none !important;
}

/* Truck Online: one badge, no blue ::before ghost behind it */
html body.bu-board-page .bu-feed .bu-c-to::before,
html body.bu-board-page .bu-feed .bu-item.truck .bu-c-to::before,
html body.bu-board-page .bu-feed .bu-item.compact.truck .bu-c-to::before,
html body.bu-app-page .bu-feed .bu-c-to::before {
  content: none !important;
  display: none !important;
}
html body.bu-board-page .bu-feed .bu-online {
  position: relative;
  z-index: 2;
}

/* Radius label needs a gap */
html body .bu-range-compact span {
  display: inline-flex !important;
  align-items: baseline;
  gap: 0.4em;
  font-size: 11px !important;
  letter-spacing: 0.01em;
}
html body .bu-range-compact output {
  margin-left: 0;
  font-weight: 800;
}

/* Filter / input surfaces */
html body.bu-board-page .bu-geo,
html body.bu-board-page input[type="number"],
html body.bu-board-page input[type="text"],
html body.bu-join-wrap input,
html body.bu-join-wrap select,
html body.bu-vip-modal input,
html body.bu-vip-modal select {
  min-height: 38px;
  border-radius: 10px;
}

/* Install + domain rail: tight, not a leftover popup */
html body.bu-board-page .bu-board-sidebar-foot {
  gap: 8px;
  padding: 10px 12px 14px;
}
html body.bu-board-page .bu-board-sidebar-app {
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  min-height: 40px;
  padding: 8px 10px;
  background: rgba(255, 255, 255, 0.04);
}
html body.bu-board-page .bu-board-sidebar-app + .bu-board-sidebar-hint {
  display: none;
}
html body.bu-board-page .bu-edition-rail {
  margin: 0;
  padding: 8px;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.18);
  border: 1px solid rgba(255, 255, 255, 0.08);
}
html body.bu-board-page .bu-edition-rail-k {
  margin: 0 0 6px;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.65;
}
html body.bu-board-page .bu-edition-track {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}
html body.bu-board-page .bu-edition-card {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px 8px;
  border-radius: 10px;
  min-height: 0;
  font-size: 11px;
  line-height: 1.25;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.03);
}
html body.bu-board-page .bu-edition-card strong {
  font-size: 11px;
}
html body.bu-board-page .bu-edition-card span {
  font-size: 10px;
  opacity: 0.7;
}
html body.bu-board-page .bu-edition-card.is-on {
  border-color: rgba(0, 180, 255, 0.45);
  background: rgba(0, 163, 255, 0.12);
}

/* Nalog: content actually shows */
html body.bu-nalog-page .bu-dash-main,
html body.bu-nalog-page .bu-dash,
html body.bu-nalog-page .bu-nalog-win-dash,
html body.bu-nalog-page .bu-account-panel {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  overflow: visible !important;
  min-height: 0 !important;
  opacity: 1 !important;
  color: #0f172a !important;
}
html body.bu-nalog-page .bu-nalog-tabs {
  display: flex !important;
  gap: 6px;
  padding: 8px 12px 0;
  overflow-x: auto;
}
html body.bu-nalog-page .bu-nalog-tab {
  border-radius: 999px;
  padding: 8px 14px;
  font-weight: 800;
  font-size: 13px;
  background: #fff;
  border: 1px solid #dbe4ee;
  color: #334155;
}
html body.bu-nalog-page .bu-nalog-tab.is-on {
  background: #0b6e86;
  border-color: #0b6e86;
  color: #fff;
}
html body.bu-nalog-page .bu-dash-hero-v2 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  padding: 20px 22px;
  background: #fff;
  border: 1px solid #dbe4ee;
  border-radius: 18px;
}
html body.bu-nalog-page .bu-dash-tiles {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 10px;
}
html body.bu-nalog-page .bu-dash-tile {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px 14px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #dbe4ee;
  text-decoration: none;
  color: inherit;
}
html body.bu-nalog-page .bu-dash-tile strong { font-size: 14px; }
html body.bu-nalog-page .bu-dash-tile span { font-size: 12px; color: #64748b; }

/* Author / public profile on cream chrome */
html body.bu-author-page,
html body.bu-author-page .landing-shell-main {
  background: #f4efe4 !important;
  color: #1a2332 !important;
}
html body.bu-author-page .bu-author {
  max-width: 880px;
  margin: 0 auto;
  padding: 12px 24px 64px;
}
html body.bu-author-page .bu-author-hero {
  display: flex;
  gap: 18px;
  align-items: center;
  padding: 24px;
  background: #fffdf8;
  border: 1px solid #e4d6c2;
  border-radius: 22px;
}
html body.bu-author-page h1 { margin: 0 0 6px; }
html body.bu-author-page .bu-facts {
  display: grid;
  gap: 8px;
  padding: 18px 0;
}
html body.bu-author-page .bu-mine {
  background: #fffdf8;
  border: 1px solid #e4d6c2;
  border-radius: 14px;
  padding: 12px 14px;
  margin: 8px 0;
}

/* VIP / onboarding sheets */
html body .bu-pkg-sheet,
html body .bu-onboard-sheet {
  border-radius: 22px;
  border: 1px solid #e4d6c2;
  background: #fffdf8;
  box-shadow: 0 24px 60px rgba(18, 58, 72, 0.22);
}
html body .bu-bill-fields.is-compact {
  padding: 12px 0 4px;
}
html body .bu-bill-compact {
  display: grid;
  gap: 4px;
  font-size: 13px;
  color: #334155;
  background: #f4efe4;
  border-radius: 12px;
  padding: 12px 14px;
}

/* Grace only as a slim board strip, never a public-page spacer */
html body.bu-landing-page .bu-lemon-grace,
html body.bu-product-page .bu-lemon-grace,
html body.bu-author-page .bu-lemon-grace,
html body.bu-auth-chrome .bu-lemon-grace {
  display: none !important;
}
html body.bu-board-page .bu-lemon-grace {
  position: relative;
  z-index: 30;
}

/* Hero canvas: don't paint over scroll */
html body.bu-landing-page canvas.bu-fx-hero {
  pointer-events: none;
  contain: strict;
}
