/* v5.3 — shared, explicitly scoped layout rules. Keep v5.2 contrast repairs. */
.sb-public .bm-lp__wrap { width:min(1800px,calc(100% - 6vw)); }
.sb-public .bm-lp__hero { padding-block:3rem 4rem; }
.sb-public .bm-lp__hero-grid { align-items:start; }
.sb-public .bm-lp__hero-copy { padding-block-start:2rem; }
.sb-public .bm-lp__hero-form { width:100%; max-inline-size:30rem; margin-inline-start:auto; }
.sb-public .bm-lp__hero-form .bm-lp__card { padding:2rem; border-radius:24px; }
.sb-public .bm-lp__card-title { font-size:clamp(1.5rem,2vw,1.9rem); line-height:1.25; }
.sb-public .bm-lp__card-sub { margin-bottom:1.5rem; }
.sb-public .bm-lp__card-fields { gap:1.15rem; }
.sb-public .bm-lp__hero-form .bm-input { min-height:52px; height:52px; }
.sb-public .bm-lp__hero-form .bm-btn--lg { min-height:52px; padding:.85rem 1.25rem; }
.sb-public .bm-lp__hero-form .bm-label { font-size:.75rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.sb-field-icon { position:relative; }
.sb-field-icon > svg { position:absolute; inset-inline-start:1rem; top:50%; transform:translateY(-50%); width:18px; height:18px; color:#64748b; pointer-events:none; }
.sb-public .sb-field-icon > .bm-input { padding-inline-start:2.75rem; }
.sb-public .bm-social-auth { width:100%; margin:1.2rem 0 0; }
.sb-public .bm-social-auth__divider { display:flex; align-items:center; gap:1rem; margin:0 0 1rem; color:#64748b; font-size:.8rem; }
.sb-public .bm-social-auth__divider::before,.sb-public .bm-social-auth__divider::after { content:""; flex:1; height:1px; background:#b8c2d1; }
.sb-public .bm-btn--google { display:flex; align-items:center; justify-content:center; gap:.75rem; width:100%; min-height:46px; padding:.65rem 1rem; background:#fff; color:#1f2937!important; border:1px solid #cbd5e1; border-radius:8px; font-size:.95rem; font-weight:600; text-decoration:none; box-sizing:border-box; }
.sb-public .bm-btn--google:hover { background:#f1f5f9; border-color:#94a3b8; }
.sb-public .bm-btn--google svg { width:20px!important; height:20px!important; min-width:20px; flex:0 0 20px; }
.sb-public .bm-auth__aside { justify-content:flex-start; padding-block-start:5rem; }
.sb-public .bm-auth__aside-inner { margin-inline:auto; max-width:32rem; }
.sb-public .bm-auth__main { align-items:flex-start; justify-content:flex-start; padding-block-start:3rem; }
.sb-public .bm-auth__form { width:100%; max-width:28rem; }
.sb-public .bm-auth__title { margin-top:1.5rem; }
.sb-public .bm-auth__stat-value { font-size:1.65rem; }
@media(min-width:992px) {
 .sb-public .bm-lp__hero-grid { grid-template-columns:minmax(0,1fr) minmax(360px,30rem); gap:clamp(3rem,9vw,11rem); }
 .sb-public .bm-lp__hero-copy { padding-inline-end:2rem; }
 .sb-public .bm-lp__orbit { inset-inline-start:51%; inset-inline-end:auto; inline-size:13%; }
 .sb-public .bm-lp__orb { inset-inline-start:50%; inline-size:64px; block-size:64px; }
}
/* Dropdowns use physical viewport clamping in JS, independent of RTL/Popper. */
.sb-panel #page-header,.sb-panel #page-header .content-header { overflow:visible!important; }
.sb-panel #page-header .dropdown-menu { max-width:calc(100vw - 16px); overflow-wrap:anywhere; }
.sb-panel #page-header .dropdown-menu.show.sb-dropdown-clamped { position:fixed!important; right:auto!important; bottom:auto!important; transform:none!important; margin:0!important; overflow-y:auto; }
.sb-panel .sb-traffic-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:1rem; margin:1.5rem 0; }
.sb-panel .sb-traffic-stat { border:1px solid var(--border-subtle,#334155); border-radius:16px; padding:1.25rem; background:var(--surface-raised,#131d2b); }
.sb-traffic-stat strong { display:block; font-size:1.8rem; margin-top:.5rem; }
.sb-privacy,.sb-install { font-family:var(--font-ui,sans-serif); font-size:.9rem; line-height:1.5; }
.sb-privacy { position:fixed; z-index:1060; bottom:12px; inset-inline:12px; max-width:46rem; margin:auto; padding:1rem; background:#fff; color:#172033; border:1px solid #cbd5e1; border-radius:14px; box-shadow:0 8px 40px #0005; }
.sb-privacy form { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:.75rem; }
.sb-privacy button,.sb-install button { border:1px solid #cbd5e1; border-radius:8px; background:#fff; color:#172033; padding:.5rem .9rem; cursor:pointer; font:inherit; }
.sb-privacy button[value=accept],.sb-install [data-install] { background:#6354dc; color:#fff; border-color:#6354dc; }
.sb-install { display:flex; align-items:center; gap:.8rem; padding:.75rem 3vw; background:#fff; color:#172033; }
.sb-install img { border-radius:12px; width:44px; height:44px; }
.sb-install span { flex:1; }
.sb-install small { display:block; color:#526277; }
.sb-install { flex-wrap:wrap; }
.sb-install [data-install-help] { flex-basis:100%; }
.sb-install [hidden],.sb-privacy[hidden],.sb-install[hidden] { display:none!important; }
.sb-privacy-manage { display:block; margin:1rem auto; border:0; background:transparent; color:#a9b6ca; text-decoration:underline; cursor:pointer; }
@media(max-width:991.98px) {
 .sb-public .bm-lp__wrap { width:calc(100% - 2rem); }
 .sb-public .bm-lp__nav-inner { direction:ltr; justify-content:space-between; gap:12px; }
 .sb-public .bm-lp__nav-toggle { margin-left:auto; margin-right:0; order:2; flex:0 0 44px; width:44px; height:44px; }
 .sb-public .bm-lp__brand { max-width:calc(100% - 60px); min-width:0; }
 .sb-public .bm-lp__brand img { max-height:52px; width:auto; }
 .sb-public .bm-lp__brand .bm-brand__text { font-size:clamp(1.2rem,5vw,1.75rem)!important; }
 html[dir=rtl] .bm-lp__links { direction:rtl; text-align:right; }
 .sb-public .bm-lp__hero { padding-block:1.75rem 3rem; }
 .sb-public .bm-lp__hero-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:2rem; width:100%; }
 .sb-public .bm-lp__hero-copy { padding:0; text-align:center; }
 .sb-public .bm-lp__h1 { font-size:clamp(2rem,6.8vw,3.2rem); line-height:1.16; margin:1.2rem auto; }
 .sb-public .bm-lp__lede { font-size:1rem; line-height:1.7; margin:0 auto 1.25rem; }
 .sb-public .bm-lp__chips { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; margin-block:1.25rem; }
 .sb-public .bm-lp__chip { display:flex; flex-direction:column; justify-content:center; padding:1rem .4rem; gap:.5rem; white-space:normal; }
 .sb-public .bm-lp__chip svg { width:24px; height:24px; }
 .sb-public .bm-lp__chip:last-child:nth-child(odd) { grid-column:1/-1; }
 .sb-public .bm-lp__hero-form { margin-inline:auto; }
 .sb-public .bm-lp__hero-form .bm-lp__card { padding:1.5rem; }
}
@media(max-width:420px) {
 .sb-public .bm-auth__meta { flex-wrap:wrap; gap:.65rem; }
 .sb-public .bm-lp__card-title { font-size:1.45rem; }
 .sb-install { gap:.5rem; padding-inline:12px; font-size:.8rem; }
 .sb-public .bm-auth__main { padding:1.5rem 1rem; }
}
