
/* ══ SURFACES (2026-09-29 visual revamp) ════════════════════════════════════
   Neutral palette evolution + Connect Machines, Lead Finder, Lead Map.
   Brand green stays; the blue-navy greys become a neutral near-black
   (dark) and a clean cool white (light), borrowed from the Linear / Stripe
   dashboard pattern: hairline borders, three surface steps, depth from
   tone rather than glow. No backslashes: server template literal. */
:root{
  --bg:#0a0b0e;--s1:#111217;--s2:#171920;--s3:#1d2028;--s4:#242832;
  --b1:#23262e;--b2:#2e323c;--b3:#3e4350;
  --tx:#eceef2;--tx2:#a4a9b6;--tx3:#7e8492;
  --lift:0 1px 0 rgba(255,255,255,.03) inset,0 1px 2px rgba(0,0,0,.3);
  --lift-hover:0 1px 0 rgba(255,255,255,.04) inset,0 8px 24px rgba(0,0,0,.35);
}
html[data-theme="light"] body,body.light{
  --bg:#f5f6f8;--s1:#ffffff;--s2:#f4f5f7;--s3:#eceef2;--s4:#e3e6eb;
  --b1:#e3e5ea;--b2:#d3d7de;--b3:#b8bec9;
  --tx:#12141a;--tx2:#4a5061;--tx3:#697181;
  --lift:0 1px 2px rgba(18,20,26,.05);
  --lift-hover:0 8px 24px rgba(18,20,26,.08);
}
/* Referrals: deep purple accents; the recurring-commission card leads. */
body{--ref-pu:#a78bfa;}
html[data-theme="light"] body,body.light{--ref-pu:#5b21b6;}
.ref-deep-card{background:linear-gradient(135deg,#4c1d95,#5b21b6);border:1px solid #6d28d9;}
/* Account, Referrals and More tools: warm beige in place of cool grey (light theme). */
body.light .main:has(#tab-affiliate:not(.hid)),body.light .main:has(#tab-billing:not(.hid)),body.light .main:has(#tab-library:not(.hid)),body.light .main:has(#tab-toolkits:not(.hid)),body.light .main:has(#tab-feedback:not(.hid)),body.light .main:has(#tab-valuation:not(.hid)),body.light .main:has(#tab-margins:not(.hid)),body.light .main:has(#tab-mix:not(.hid)),body.light .main:has(#tab-locrec:not(.hid)),
body.light .nav-grp[data-stage="acct"]{
  --bg:#f8f2e7;--s1:#fffdf8;--s2:#f6efe3;--s3:#efe5d3;--s4:#e7dbc6;--b1:#e4d8c3;--b2:#d4c5ab;--tx3:#5d6272;
}
body.light .main:has(#tab-affiliate:not(.hid)),body.light .main:has(#tab-billing:not(.hid)),body.light .main:has(#tab-library:not(.hid)),body.light .main:has(#tab-toolkits:not(.hid)),body.light .main:has(#tab-feedback:not(.hid)),body.light .main:has(#tab-valuation:not(.hid)),body.light .main:has(#tab-margins:not(.hid)),body.light .main:has(#tab-mix:not(.hid)),body.light .main:has(#tab-locrec:not(.hid)){background:var(--bg);}
/* Native controls (selects, scrollbars, date pickers) follow the theme. */
html{color-scheme:dark;}
html:has(body.light),html[data-theme="light"]{color-scheme:light;}
select.fld,select{background-color:var(--s2);color:var(--tx);}
@media (prefers-reduced-motion:reduce){ .vb-live-dot::after,.vb-mt,.disc-card{animation:none!important;transition:none!important;} }

/* ── Shared: KPI strip ── */
.vb-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--b1);border:1px solid var(--b1);border-radius:var(--r-md);overflow:hidden;margin-bottom:var(--sp-4);}
.vb-kpi{background:var(--s1);padding:var(--sp-4);}
.vb-kpi-l{font-size:var(--fs-xs);color:var(--tx3);margin-bottom:6px;}
.vb-kpi-v{font-size:28px;line-height:1.1;font-weight:600;letter-spacing:-.02em;color:var(--tx);font-variant-numeric:tabular-nums;}
.vb-kpi-s{font-size:var(--fs-xs);color:var(--tx3);margin-top:6px;}
.vb-delta{display:inline-flex;align-items:center;gap:2px;padding:1px 6px;border-radius:var(--r-sm);font-size:var(--fs-2xs);font-weight:600;font-variant-numeric:tabular-nums;background:var(--s3);color:var(--tx2);}
.vb-delta.up{background:rgba(16,185,129,.12);color:#10b981;}
.vb-delta.down{background:rgba(239,68,68,.12);color:#ef4444;}
body.light .vb-delta.up{color:#047857;} body.light .vb-delta.down{color:#b91c1c;}

/* ── Connect Machines: live fleet ── */
.vb-fleet{margin-bottom:var(--sp-6);}
.vb-fleet-hd{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-4);flex-wrap:wrap;}
.vb-fleet-t{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;color:var(--tx);}
.vb-fleet-sub{font-size:var(--fs-sm);color:var(--tx2);margin-top:4px;max-width:62ch;}
.vb-fleet-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sp-3);}
.vb-mt{position:relative;background:var(--s1);border:1px solid var(--b1);border-radius:var(--r-md);padding:var(--sp-4);box-shadow:var(--lift);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;animation:vbRise .4s ease both;}
.vb-mt:hover{transform:translateY(-2px);box-shadow:var(--lift-hover);border-color:var(--b2);}
.vb-mt:focus-visible{outline:none;box-shadow:var(--focus);}
.vb-mt-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-2);}
.vb-mt-name{font-size:var(--fs-md);font-weight:600;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vb-mt-loc{font-size:var(--fs-xs);color:var(--tx3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vb-status{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;height:22px;padding:0 8px;border-radius:var(--r-sm);font-size:var(--fs-2xs);font-weight:600;background:var(--s3);color:var(--tx2);}
.vb-status.live{background:rgba(16,185,129,.12);color:#10b981;}
.vb-status.due{background:rgba(245,158,11,.14);color:#d97706;}
.vb-status.off{background:var(--s3);color:var(--tx3);}
.vb-live-dot{position:relative;width:7px;height:7px;border-radius:50%;background:currentColor;}
.vb-status.live .vb-live-dot::after{content:'';position:absolute;inset:-4px;border-radius:50%;border:1.5px solid currentColor;opacity:0;animation:vbPing 2s ease-out infinite;}
.vb-mt-rev{display:flex;align-items:baseline;gap:var(--sp-2);margin-top:var(--sp-4);}
.vb-mt-rev b{font-size:24px;font-weight:600;letter-spacing:-.02em;color:var(--tx);font-variant-numeric:tabular-nums;}
.vb-mt-rev span{font-size:var(--fs-xs);color:var(--tx3);}
.vb-spark{display:block;width:100%;height:44px;margin-top:var(--sp-2);color:var(--accent);}
.vb-spark.flat{color:var(--tx3);}
.vb-mt-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--b1);font-size:var(--fs-xs);color:var(--tx3);}
.vb-svc{flex:1;max-width:96px;height:4px;border-radius:2px;background:var(--s3);overflow:hidden;}
.vb-svc i{display:block;height:100%;border-radius:2px;background:var(--accent);}
.vb-svc i.warn{background:var(--gold);} .vb-svc i.bad{background:var(--red);}
.vb-mt.example{cursor:default;opacity:.92;}
.vb-mt.example::before{content:'Example';position:absolute;top:-9px;left:12px;padding:1px 8px;border-radius:var(--r-sm);background:var(--s4);color:var(--tx2);font-size:var(--fs-2xs);font-weight:600;border:1px solid var(--b2);}
.vb-fleet-empty{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:var(--sp-6);align-items:center;background:var(--s1);border:1px solid var(--b1);border-radius:var(--r-md);padding:var(--sp-6);box-shadow:var(--lift);}
.vb-fleet-empty h3{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;margin:0 0 var(--sp-2);color:var(--tx);}
.vb-fleet-empty p{font-size:var(--fs-sm);line-height:1.6;color:var(--tx2);margin:0 0 var(--sp-4);max-width:52ch;}
.vb-fleet-steps{display:flex;flex-direction:column;gap:var(--sp-2);margin:0 0 var(--sp-4);padding:0;list-style:none;}
.vb-fleet-steps li{display:flex;gap:10px;align-items:center;font-size:var(--fs-sm);color:var(--tx2);}
.vb-fleet-steps li b{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--s3);color:var(--tx);font-size:var(--fs-2xs);font-weight:600;flex-shrink:0;}
.vb-fleet-act{display:flex;gap:var(--sp-2);flex-wrap:wrap;}
@keyframes vbPing{0%{transform:scale(.6);opacity:.8}100%{transform:scale(1.8);opacity:0}}
@keyframes vbRise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
/* Connections (2026-10-11): one clean card per provider. */
.vb-cx-lede{font-size:var(--fs-sm);color:var(--tx2);margin:0 0 var(--sp-4);max-width:70ch;line-height:1.55;}
.vb-cx-h{font-size:var(--fs-xs);font-weight:600;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em;margin:var(--sp-6) 0 var(--sp-2);}
.vb-cx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:var(--sp-3);}
.vb-cx-card{background:var(--s1);border:1px solid var(--b1);border-radius:var(--r-md);padding:var(--sp-4);box-shadow:var(--sh-1);min-width:0;}
.vb-cx-csv{border-color:var(--abrd);}
.vb-cx-row{display:flex;align-items:flex-start;gap:var(--sp-3);flex-wrap:wrap;}
.vb-cx-logo{flex-shrink:0;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;background:var(--s3);color:var(--tx);font-weight:700;font-size:13px;letter-spacing:.02em;}
.vb-cx-logo-csv{background:var(--adim);color:var(--accent);border:1px solid var(--abrd);font-size:11px;}
.vb-cx-main{flex:1 1 200px;min-width:0;}
.vb-cx-name{font-size:var(--fs-md);font-weight:650;color:var(--tx);display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.vb-cx-desc{font-size:var(--fs-sm);color:var(--tx2);line-height:1.5;margin-top:3px;}
.vb-cx-meta{font-size:var(--fs-xs);color:var(--tx2);margin-top:6px;line-height:1.5;}
.vb-cx-act{display:flex;gap:var(--sp-2);flex-wrap:wrap;align-items:center;}
.btn.vb-cx-btn{min-height:34px;padding:0 14px;font-size:var(--fs-sm);font-weight:600;display:inline-flex;align-items:center;justify-content:center;line-height:1;}
.vb-cx-st{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:999px;font-size:var(--fs-2xs);font-weight:700;background:var(--s2);color:var(--tx2);border:1px solid var(--b2);}
.vb-cx-st.ok{background:var(--ok-bg);color:var(--ok-ink);border-color:var(--ok-bd);}
.vb-cx-st.bad{background:var(--rdim);color:var(--red);border-color:var(--rbrd);}
html[data-theme="light"] body .vb-cx-st.bad,body.light .vb-cx-st.bad{color:#991b1b;}
.vb-cx-st.soon{background:var(--s2);color:var(--tx2);border-color:var(--b2);}
.vb-cx-form{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--b1);}
.vb-cx-form label{display:block;font-size:var(--fs-xs);font-weight:600;color:var(--tx2);margin-bottom:6px;}
.vb-cx-formrow{display:flex;gap:var(--sp-2);flex-wrap:wrap;align-items:stretch;}
.vb-cx-formrow .fld{flex:1 1 200px;min-width:0;min-height:34px;box-sizing:border-box;}
.vb-cx-formrow .vb-pw-wrap{flex:1 1 220px;min-width:0;width:auto!important;margin:0!important;}
.vb-cx-formrow .vb-pw-wrap .fld{width:100%;}
.vb-cx-how{margin-top:var(--sp-3);border-top:1px solid var(--b1);padding-top:var(--sp-2);}
.vb-cx-how summary{cursor:pointer;font-size:var(--fs-sm);font-weight:600;color:var(--tx2);padding:4px 0;list-style:none;display:flex;align-items:center;gap:6px;}
.vb-cx-how summary::-webkit-details-marker{display:none;}
.vb-cx-how summary::before{content:'+';display:inline-grid;place-items:center;width:18px;height:18px;border-radius:5px;background:var(--s2);color:var(--tx2);font-weight:700;}
.vb-cx-how[open] summary::before{content:'-';}
.vb-cx-how ol{margin:8px 0 2px;padding-left:20px;font-size:var(--fs-sm);color:var(--tx2);line-height:1.6;}
.vb-cx-how li{margin-bottom:6px;}
.vb-cx-how b{color:var(--tx);font-weight:600;}
.vb-cx-msg{font-size:var(--fs-sm);color:var(--tx2);min-height:20px;margin-top:var(--sp-2);}
.vb-cx-msg.bad{color:var(--red);}
.vb-cx-quick{margin-top:var(--sp-6);background:var(--s1);border:1px solid var(--b1);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);}
.vb-cx-quick > summary{cursor:pointer;font-size:var(--fs-sm);font-weight:600;color:var(--tx2);}
#api-card{border-color:var(--b1)!important;box-shadow:var(--sh-1);}

/* ── LEAD FINDER SKIN ────────────────────────────────────────────────────────
   CSS-first so it rebases over feat/free-company-data. Class hooks used:
   #live-results-area .disc-grid .disc-card .prime-card .disc-score(.hi|.md|.lo)
   .disc-score-row .disc-name .disc-type-label .disc-addr-line .disc-contacts
   .disc-cr .disc-ci .disc-cv .disc-why .disc-actions .fb-btn .add-pipe-btn
   .export-pick [id^=enrich-btn-] [id^=verify-btn-] [data-lead-idx]
   Added by vbLeadCardEnhance (presentational only): .vb-chips .vb-chip.
   Revenue potential (buildCards): .vb-tier .vb-why-pop .vb-cbadges. */
.disc-grid{gap:var(--sp-3);}
.disc-card{position:relative;background:var(--s1);border:1px solid var(--b1);border-radius:var(--r-md);padding:var(--sp-4);box-shadow:var(--lift);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;}
.disc-card:hover{border-color:var(--b2);box-shadow:var(--lift-hover);}
.disc-card.prime-card{background:var(--s1);border-color:var(--b1);box-shadow:inset 3px 0 0 var(--accent),var(--lift);}
.disc-card.prime-card:hover{box-shadow:inset 3px 0 0 var(--accent),var(--lift-hover);}
.disc-score-row{gap:var(--sp-3);margin-bottom:var(--sp-3);}
.disc-score{position:relative;width:44px;height:44px;border:none!important;font-size:var(--fs-md);font-weight:700;font-variant-numeric:tabular-nums;cursor:help;--vb-tone:var(--accent);background:var(--s3);}
.disc-score.hi{--vb-tone:var(--accent);color:var(--tx);}
.disc-score.md{--vb-tone:#84cc16;color:var(--tx);}
.disc-score.lo{--vb-tone:var(--gold);color:var(--tx);}
.disc-score.vb-ring{background:radial-gradient(closest-side,var(--s1) 78%,transparent 80% 100%),conic-gradient(var(--vb-tone) calc(var(--vb-score,0) * 1%),var(--s3) 0);}
.vb-why-pop{position:absolute;z-index:40;top:calc(100% + 8px);left:-4px;width:260px;padding:var(--sp-3);background:var(--s1);border:1px solid var(--b2);border-radius:var(--r-md);box-shadow:var(--shadow-pop);font-size:var(--fs-xs);font-weight:400;color:var(--tx2);text-align:left;line-height:1.45;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility 0s linear .15s;pointer-events:none;cursor:default;}
.disc-score:hover .vb-why-pop,.disc-score:focus .vb-why-pop,.disc-score:focus-within .vb-why-pop{opacity:1;visibility:visible;transform:none;transition-delay:0s;}
.vb-why-pop strong{display:block;font-size:var(--fs-sm);color:var(--tx);font-weight:600;margin-bottom:6px;}
.vb-why-pop ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px;}
.vb-why-pop li{display:flex;gap:8px;align-items:flex-start;}
.vb-why-pop li i{flex-shrink:0;width:6px;height:6px;border-radius:50%;margin-top:5px;background:var(--tx3);}
.vb-why-pop li i.pos{background:#10b981;} .vb-why-pop li i.neg{background:var(--gold);}
/* Revenue potential tier chip (2026-09-29, replaces the score ring). High =
   brand accent, Medium = neutral, Low = muted, Limited data = outlined. */
.vb-tier-row{margin-top:6px;}
.vb-tier{position:relative;display:inline-flex;flex-wrap:wrap;align-items:center;column-gap:6px;max-width:100%;padding:2px 9px;border-radius:var(--r-sm);font-size:var(--fs-2xs);line-height:1.6;border:1px solid var(--b1);background:var(--s2);color:var(--tx);cursor:help;outline:none;}
.vb-tier-k,.vb-tier b{white-space:nowrap;}
#live-results-area .disc-card{min-width:0;}
.vb-tier:focus-visible{box-shadow:var(--focus);}
.vb-tier-k{color:var(--tx3);font-weight:500;}
.vb-tier b{font-weight:700;}
.vb-tier.t-high{background:var(--adim);border-color:var(--abrd);}
.vb-tier.t-high b{color:var(--accent);}
.vb-tier.t-low b{color:var(--tx3);font-weight:600;}
.vb-tier.t-limited{background:transparent;border-style:dashed;border-color:var(--b2);}
.vb-tier.t-limited b{color:var(--tx2);font-weight:600;}
.vb-tier .vb-why-pop{white-space:normal;}
.vb-tier:hover .vb-why-pop,.vb-tier:focus .vb-why-pop,.vb-tier:focus-within .vb-why-pop{opacity:1;visibility:visible;transform:none;transition-delay:0s;}
/* Lead Map popup: same tokens as the card (the popup follows the theme). */
.vb-tier.light{cursor:default;}
.vb-cbadges{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 6px;}
.vb-cbadge{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-2xs);padding:1px 8px;border-radius:var(--r-sm);background:var(--s2);border:1px solid var(--b1);color:var(--tx2);font-weight:600;}
/* Lead Finder note above results: one line, full text behind Details. */
.vb-disc-note{margin-bottom:12px;font-size:var(--fs-xs);line-height:1.55;color:var(--tx2);}
.vb-disc-note summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;padding:6px 10px;border:1px solid var(--b1);border-radius:var(--r-sm);background:var(--s1);}
.vb-disc-note summary::-webkit-details-marker{display:none;}
.vb-disc-note summary:focus-visible{box-shadow:var(--focus);outline:none;}
.vb-disc-note-t{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.vb-disc-note-t strong{color:var(--tx);font-weight:600;}
.vb-disc-note-more{flex-shrink:0;color:var(--tx3);text-decoration:underline;text-underline-offset:2px;}
.vb-disc-note[open] .vb-disc-note-t{white-space:normal;}
.vb-disc-note-body{padding:8px 10px 2px;}
/* Inline stroke icon in lead card / map popup rows (_vbLi), text-sized. */
.vb-li{display:inline-flex;align-items:center;vertical-align:-0.18em;margin-right:4px;color:var(--tx3);}
.vb-li .vb-ic{width:1.15em;height:1.15em;}
.disc-ci .vb-li{margin-right:0;}
button .vb-li,a .vb-li,.vb-cf-chip .vb-li{color:inherit;}
.vb-cf-chip .vb-li{margin-right:3px;}
.disc-score .vb-li .vb-ic{width:20px;height:20px;}
.vb-map-top .vb-mts.t-high{background:var(--accent);color:var(--on-accent);}
.vb-map-top .vb-mts.t-medium{background:var(--s4);color:var(--tx);}
.vb-map-top .vb-mts.t-low{background:var(--s3);color:var(--tx3);}
.vb-map-top .vb-mts.t-limited{background:transparent;border:1px dashed var(--b2);color:var(--tx2);}
.vb-tier-flt.t-high{background:var(--adim)!important;border-color:var(--abrd)!important;}
.vb-tier-flt.t-high span{color:var(--accent);}
/*    LEAD FINDER (2026-10-01)                                              
   Tokens are --lf-* on :root and read existing theme tokens, so the app-wide
   design system can repoint them without touching these rules. */
:root{--lf-high:var(--accent);--lf-med:#d97706;--lf-low:#64748b;--lf-lim:var(--b2);--lf-ok:#16a34a;--lf-ok-bg:rgba(22,163,74,.09);--lf-ok-bd:rgba(22,163,74,.34);--lf-ease:cubic-bezier(.32,.72,0,1);--lf-radius:14px;}
.lf-panel{background:var(--s1);border:1px solid var(--b1);border-radius:var(--lf-radius);padding:20px 22px;margin-bottom:20px;box-shadow:var(--lift);}
.lf-head-t{min-width:0;}
.lf-title{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:18px;letter-spacing:-.01em;color:var(--tx);}
.lf-sub-t{font-size:12.5px;color:var(--tx2);margin-top:2px;}
#tab-leads .srow{gap:10px;}
#tab-leads #zip-in{flex:1 1 240px;min-width:0;font-size:14px;padding:11px 14px;border-radius:10px;}
.s-btn.lf-go{padding:11px 22px;border-radius:10px;font-weight:800;font-size:13.5px;transition:transform .25s var(--lf-ease),filter .2s;}
.s-btn.lf-go:hover{transform:translateY(-1px);filter:brightness(1.05);}
.s-btn.lf-go:active{transform:scale(.98);}
.lf-opts{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px;}
.lf-opts-k{font-size:11.5px;font-weight:700;color:var(--tx2);white-space:nowrap;}
.lf-how{margin-top:10px;font-size:11.5px;color:var(--tx3);line-height:1.6;}
.lf-how summary{cursor:pointer;color:var(--tx2);font-weight:600;display:inline;}
.lf-how-ul{margin:8px 0 0;padding-left:18px;max-width:640px;}
.lf-how-ul li{margin:3px 0;}
.disc-card.lf-card{border-radius:var(--lf-radius);padding:18px 18px 16px 20px;overflow:hidden;transition:transform .35s var(--lf-ease),box-shadow .35s var(--lf-ease),border-color .2s;}
.disc-card.lf-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--lf-c,var(--lf-lim));}
.disc-card.lf-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px -16px rgba(15,23,41,.28);border-color:var(--b2);}
.disc-card.lf-card.prime-card,.disc-card.lf-card.prime-card:hover{box-shadow:var(--lift);}
.disc-card.lf-card.prime-card:hover{box-shadow:0 14px 30px -16px rgba(15,23,41,.28);}
.lf-t-high{--lf-c:var(--lf-high);} .lf-t-medium{--lf-c:var(--lf-med);} .lf-t-low{--lf-c:var(--lf-low);} .lf-t-limited{--lf-c:var(--lf-lim);} .lf-t-intl{--lf-c:var(--blue);}
.lf-top{display:flex;align-items:flex-start;gap:12px;justify-content:space-between;margin-bottom:10px;}
.lf-id{min-width:0;flex:1;}
.lf-card .disc-name{font-size:15px;font-weight:700;letter-spacing:-.01em;line-height:1.3;}
.lf-card .disc-type-label{font-size:11.5px;color:var(--tx3);margin-top:2px;text-transform:capitalize;}
.lf-pick{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;color:var(--tx3);cursor:pointer;padding:3px 9px;border:1px solid var(--b1);border-radius:999px;flex-shrink:0;white-space:nowrap;transition:border-color .2s,color .2s;}
.lf-pick:hover{border-color:var(--b2);color:var(--tx2);}
.lf-pick input{margin:0;cursor:pointer;accent-color:var(--accent);}
.lf-mid{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:10px;}
.lf-rev{display:grid;grid-template-columns:auto auto;column-gap:8px;row-gap:1px;font-size:11px;align-items:baseline;}
.lf-rev-k{color:var(--tx3);}
.lf-rev b{font-variant-numeric:tabular-nums;font-weight:700;color:var(--tx);font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;}
.lf-rev b:first-of-type{color:var(--accent);}
.lf-rev-u{grid-column:1/-1;font-size:9.5px;color:var(--tx3);}
.lf-unl-line{font-size:12px;color:var(--tx2);}
.vb-tier-k{color:#475467;font-weight:600;}
html:not([data-theme="light"]) body:not(.light) .vb-tier-k{color:#a4a9b6;}
.lf-hint{font-size:12px;color:#475467;}
html:not([data-theme="light"]) .lf-hint{color:#a4a9b6;}
.lf-cta:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}
@media (max-width:600px){#tab-map .vb-map-bar button{min-height:44px;}}
.lf-unl-line a{color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:2px;}
.vb-tier.t-medium{background:rgba(217,119,6,.08);border-color:rgba(217,119,6,.3);}
.vb-tier.t-medium b{color:var(--lf-med);}
.vb-tier.t-range.t-medium b{background:linear-gradient(90deg,var(--lf-med),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent;}
.vb-why-note{display:block;margin-top:8px;font-size:10.5px;color:var(--tx3);line-height:1.45;}
.lf-unlock{margin-top:12px;padding:12px 12px 12px;border-radius:12px;background:var(--s2);border:1px solid var(--b1);}
.lf-unlock-h{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);margin-bottom:8px;}
.lf-avail{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px;}
.lf-av{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;border:1px dashed var(--b2);color:var(--tx3);background:transparent;}
.lf-av:not(.on) span{text-decoration:line-through;text-decoration-color:var(--b3);opacity:.75;}
.lf-av.on{border-style:solid;border-color:var(--lf-ok-bd);background:var(--lf-ok-bg);color:var(--tx);}
.lf-av.on .vb-li{color:var(--lf-ok);}
.lf-unlock .vb-cbadges{margin:0 0 10px;}
.lf-locked{display:flex;flex-direction:column;gap:7px;margin-bottom:12px;}
.lf-lr{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--tx2);min-width:0;}
.lf-mono{font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--tx2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.lf-mask{display:inline-block;height:.8em;border-radius:4px;background:repeating-linear-gradient(90deg,var(--b2) 0 7px,var(--b1) 7px 11px);filter:blur(1.2px);flex-shrink:0;}
.lf-lr-t{font-size:11px;color:var(--tx3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}
.lf-lock{margin-left:auto;flex-shrink:0;}
.lf-lock .vb-li{margin:0;color:var(--tx3);}
.lf-hint,.lf-empty{font-size:11.5px;color:var(--tx3);line-height:1.5;margin-bottom:10px;}
.btn.lf-cta{width:100%;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;font-size:13px;font-weight:700;border-radius:10px;background:var(--accent);color:var(--on-accent,#04140d);border:none;box-shadow:0 8px 20px -12px var(--accent);transition:transform .25s var(--lf-ease),box-shadow .25s var(--lf-ease),filter .2s;}
.btn.lf-cta:hover{transform:translateY(-1px);filter:brightness(1.06);}
.btn.lf-cta:active{transform:scale(.98);}
.btn.lf-cta[disabled]{background:var(--s3);color:var(--tx3);box-shadow:none;cursor:not-allowed;transform:none;}
.btn.lf-cta .vb-li{color:inherit;}
.lf-kit-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:8px;padding:9px 12px;border-radius:10px;border:1px solid var(--abrd);background:var(--adim);color:var(--accent);font-weight:700;font-size:12px;cursor:pointer;transition:transform .25s var(--lf-ease),background .2s;}
.lf-kit-btn:hover{transform:translateY(-1px);}
.lf-kit-btn:active{transform:scale(.98);}
.lf-kit-btn .vb-li{color:inherit;}
.lf-unl-badge{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;font-size:10.5px;font-weight:700;color:var(--lf-ok);background:var(--lf-ok-bg);border:1px solid var(--lf-ok-bd);border-radius:999px;padding:3px 10px;white-space:nowrap;}
.lf-unl-badge .vb-li{color:inherit;}
.lf-hero{margin-top:12px;padding:12px;border-radius:12px;background:var(--s1);border:1px solid var(--lf-ok-bd);box-shadow:inset 3px 0 0 var(--lf-ok);}
.lf-hero .vb-cbadges{margin:0 0 8px;}
.lf-hero .disc-contacts{margin:0;}
.lf-hero .disc-cr{padding:3px 0;}
.lf-hero .disc-cv{font-size:12.5px;}
.lf-next{margin-top:12px;}
.lf-next .vbmk-steps{margin-top:0!important;}
.lf-sec{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--b1);}
.lf-sec .add-pipe-btn{font-size:11.5px;}
.btn.lf-sec-btn{font-size:11px;padding:5px 10px;border-radius:999px;}
.btn.lf-sec-btn.ok{background:var(--lf-ok-bg);border-color:var(--lf-ok-bd);color:var(--lf-ok);cursor:default;opacity:1;}
.lf-sec [id^="vc-btn-"]{border-radius:999px!important;font-size:11px!important;}
#live-results-area .lf-sec [id^="verify-btn-"],#live-results-area .lf-sec [id^="vc-btn-"]{font-size:11px!important;padding:5px 10px!important;min-height:0!important;border-radius:999px!important;font-weight:600!important;}
#live-results-area .lf-sec .lf-sec-btn.is-paid{border-color:var(--accent);color:var(--accent);font-weight:700!important;}
@media (max-width:600px){#live-results-area .lf-sec [id^="verify-btn-"]{min-height:32px!important;padding:7px 12px!important;}}
.lf-more{position:relative;margin-left:auto;}
.lf-more summary{list-style:none;cursor:pointer;font-size:11px;font-weight:700;color:var(--tx2);padding:5px 11px;border:1px solid var(--b1);border-radius:999px;background:var(--s1);user-select:none;}
.lf-more summary::-webkit-details-marker{display:none;}
.lf-more summary::after{content:"";display:inline-block;width:5px;height:5px;margin-left:6px;border:solid var(--tx3);border-width:0 1.5px 1.5px 0;transform:translateY(-2px) rotate(45deg);}
.lf-more[open] summary{border-color:var(--b2);color:var(--tx);}
.lf-more-pop{position:absolute;right:0;bottom:calc(100% + 6px);z-index:30;width:240px;max-width:80vw;padding:12px;background:var(--s1);border:1px solid var(--b2);border-radius:12px;box-shadow:0 16px 36px -14px rgba(15,23,41,.35);display:flex;flex-direction:column;gap:9px;}
.lf-more-pop .export-pick{align-self:flex-start;}
.lf-more-k{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--tx3);}
.lf-more-row{display:flex;gap:6px;}
.lf-more-pop .lr-wrap{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--tx3);}
.lf-rate-row{margin-top:6px}.lf-rate-row .lr-wrap{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--tx3);}
.lf-more-why .disc-why{font-size:11px;color:var(--tx3);line-height:1.45;margin:0;}
@media (max-width:640px){.lf-more-pop{right:auto;left:0;}.lf-more{margin-left:0;}}
#live-results-area .lf-cta[id^="enrich-btn-"],body.light #live-results-area .lf-cta[id^="enrich-btn-"]{background:var(--accent)!important;color:var(--on-accent,#04140d)!important;border:none!important;font-weight:700!important;min-height:40px;}
#live-results-area .lf-cta[id^="enrich-btn-"]:hover,body.light #live-results-area .lf-cta[id^="enrich-btn-"]:hover{background:var(--accent)!important;color:var(--on-accent,#04140d)!important;filter:brightness(1.07);}
#live-results-area .lf-cta[id^="enrich-btn-"][disabled],body.light #live-results-area .lf-cta[id^="enrich-btn-"][disabled]{background:var(--s3)!important;color:var(--tx3)!important;box-shadow:none;filter:none;}
#live-results-area .lf-cta[id^="enrich-btn-"][disabled][aria-busy="true"],body.light #live-results-area .lf-cta[id^="enrich-btn-"][disabled][aria-busy="true"]{opacity:1!important;background:var(--s2)!important;color:var(--tx2)!important;border:1px solid var(--b2)!important;cursor:progress;white-space:normal;line-height:1.25;min-height:47px;}
:root{--warn-ink:#fbbf24;}
html[data-theme="light"],body.light{--warn-ink:#92400e;}
.lf-radius{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap;margin-top:10px;}
.lf-radius-k{font-size:11px;font-weight:700;color:var(--tx3);margin-right:4px;text-transform:uppercase;letter-spacing:.04em;}
.lf-radius button{font:inherit;font-size:12px;font-weight:600;padding:5px 12px;border-radius:999px;border:1px solid var(--b1);background:var(--s1);color:var(--tx2);cursor:pointer;transition:background .15s,color .15s,border-color .15s;}
.lf-radius button:hover{border-color:var(--accent);color:var(--tx);}
.lf-radius button.on{background:var(--accent);border-color:var(--accent);color:#fff;}
.lf-dist{display:inline-flex;align-items:center;margin-left:8px;font-size:10.5px;font-weight:700;padding:1px 8px;border-radius:999px;background:var(--s2);color:var(--tx2);border:1px solid var(--b1);white-space:nowrap;}
.lf-widen{margin:14px 0 4px;padding:12px 14px;border:1px dashed var(--b1);border-radius:var(--r);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--tx2);}
.lf-has-contact{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:4px 11px 4px 6px;border-radius:999px;border:1px solid var(--lf-ok-bd);background:var(--s1);color:var(--tx2);cursor:pointer;transition:background .2s,color .2s;}
.lf-has-contact b{color:var(--lf-ok);font-variant-numeric:tabular-nums;}
.lf-has-contact:hover{background:var(--lf-ok-bg);}
.lf-chk{width:15px;height:15px;border-radius:4px;border:1.5px solid var(--lf-ok);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}
.lf-has-contact.on{background:var(--lf-ok-bg);color:var(--tx);}
.lf-has-contact.on .lf-chk{background:var(--lf-ok);}
.lf-has-contact.on .lf-chk::after{content:"";width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:translateY(-1px) rotate(45deg);}
.lf-unl{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:700;color:var(--accent);background:var(--adim);border:1px solid var(--abrd);border-radius:999px;padding:3px 10px;}
.lf-unl .vb-li{color:inherit;}
@keyframes lfPop{0%{box-shadow:0 0 0 0 rgba(22,163,74,.45)}100%{box-shadow:0 0 0 16px rgba(22,163,74,0)}}
.disc-card.lf-pop{animation:lfPop .9s var(--lf-ease) 2;border-color:var(--lf-ok-bd);}
.lf-burst{position:absolute;top:12px;right:12px;display:inline-flex;gap:5px;align-items:center;font-size:11px;font-weight:700;color:#fff;background:var(--lf-ok);padding:5px 11px;border-radius:999px;box-shadow:0 8px 18px -8px rgba(22,163,74,.7);animation:lfBurst 2.3s var(--lf-ease) forwards;pointer-events:none;z-index:2;}
.lf-burst .vb-li{color:#fff;}
@keyframes lfBurst{0%{opacity:0;transform:translateY(6px) scale(.9)}12%{opacity:1;transform:none}80%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-8px)}}
.lf-ref{margin-top:16px;padding:14px;border-radius:12px;border:1px solid rgba(22,163,74,.32);background:rgba(22,163,74,.06);text-align:left;}
.lf-ref-h{font-weight:800;font-size:13.5px;color:var(--tx);margin-bottom:4px;}
.lf-ref-b{font-size:12px;color:var(--tx2);line-height:1.55;margin-bottom:10px;}
.lf-ref-row{display:flex;gap:6px;}
.lf-ref-row input{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--b1);border-radius:8px;background:var(--s1);color:var(--tx);font-size:11.5px;font-family:SFMono-Regular,Menlo,Consolas,monospace;}
.lf-ref-row button{padding:8px 13px;border-radius:8px;border:none;background:#16a34a;color:#fff;font-weight:700;font-size:12px;cursor:pointer;}
@media (max-width:640px){.lf-panel{padding:16px;}.lf-panel > div:first-child{flex-wrap:wrap;}.lf-head-t{flex:1 1 100%;}.lf-panel > div:first-child > span[title]{display:none;}.lf-panel > div:first-child > div[style*="margin-left:auto"]{margin-left:0!important;}#tab-leads #type-ms,#tab-leads #type-ms-btn{width:100%!important;flex:1 1 100%!important;}.lf-title{font-size:16px;}.lf-rev{grid-template-columns:auto 1fr;}.disc-card.lf-card{padding:16px 14px 14px 18px;}}
#vb-unlock-upsell{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(15,23,42,.45);}
#vb-unlock-upsell .vbuu-card{position:relative;max-width:420px;width:100%;background:var(--s1,#fff);color:var(--tx,#0f172a);border:1px solid var(--b1,#e2e8f0);border-radius:18px;padding:26px 22px 20px;box-shadow:0 24px 60px -20px rgba(15,23,42,.45);text-align:center;animation:lfBurst .4s var(--lf-ease,ease) both;}
#vb-unlock-upsell .vbuu-x{position:absolute;top:8px;right:10px;border:0;background:none;font-size:22px;line-height:1;color:var(--tx3,#64748b);cursor:pointer;padding:6px;}
#vb-unlock-upsell .vbuu-kick{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent,#047857);}
#vb-unlock-upsell .vbuu-h{font:700 20px/1.3 'Space Grotesk',sans-serif;margin:6px 0 14px;}
#vb-unlock-upsell .vbuu-annual{border-radius:14px;padding:16px;background:linear-gradient(135deg,#047857,#0e7490);color:#fff;}
#vb-unlock-upsell .vbuu-big{font:700 22px/1.2 'Space Grotesk',sans-serif;}
#vb-unlock-upsell .vbuu-sub{font-size:12.5px;line-height:1.55;opacity:.95;margin:6px 0 12px;}
#vb-unlock-upsell .vbuu-cta{display:block;background:#fff;color:#065f46;font-weight:800;font-size:14px;padding:11px 14px;border-radius:10px;text-decoration:none;}
#vb-unlock-upsell .vbuu-mo{margin-top:8px;border:0;background:none;color:#fff;font-size:12.5px;text-decoration:underline;cursor:pointer;}
#vb-unlock-upsell .vbuu-packs-q{font-size:12.5px;color:var(--tx2,#334155);margin:16px 0 8px;line-height:1.5;}
#vb-unlock-upsell .vbuu-packs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;}
#vb-unlock-upsell .vbuu-pack{display:inline-flex;gap:6px;align-items:baseline;padding:8px 12px;border:1px solid var(--b1,#e2e8f0);border-radius:10px;color:var(--tx,#0f172a);text-decoration:none;font-size:12.5px;}
#vb-unlock-upsell .vbuu-pack:hover{border-color:var(--accent,#047857);}
@media (prefers-reduced-motion:reduce){.disc-card.lf-pop,.lf-burst{animation:none!important;}.disc-card.lf-card:hover,.s-btn.lf-go:hover,.btn.lf-cta:hover{transform:none;}}
.vb-tier-flt.t-medium span{color:var(--tx);}
.vb-tier-flt.t-low span{color:var(--tx3);}
.vb-tier-flt.t-limited{background:transparent!important;border-style:dashed!important;border-color:var(--b2)!important;}
.vb-tier-flt.t-limited span{color:var(--tx2);}
.disc-name{font-size:15px;font-weight:600;letter-spacing:-.005em;color:var(--tx);}
.disc-type-label{font-size:var(--fs-xs);color:var(--tx3);}
.vb-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;}
.vb-chip{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:var(--r-sm);background:var(--s2);border:1px solid var(--b1);font-size:var(--fs-2xs);font-weight:500;color:var(--tx2);white-space:nowrap;font-variant-numeric:tabular-nums;}
.vb-chip .vb-ic{width:12px;height:12px;color:var(--tx3);}
.disc-addr-line{font-size:var(--fs-xs);color:var(--tx2);}
.disc-contacts{background:var(--s2);border:1px solid var(--b1);border-radius:var(--r-sm);padding:10px 12px;gap:6px;}
.disc-cr{font-size:var(--fs-xs);}
.disc-ci{color:var(--tx3);}
.disc-cv{font-size:var(--fs-xs);color:var(--tx2);}
.disc-cv a{color:var(--tx);text-decoration:underline;text-decoration-color:var(--b3);text-underline-offset:2px;}
.disc-why{font-size:var(--fs-xs);color:var(--tx2);border-top-color:var(--b1);}
.disc-actions{gap:var(--sp-2);align-items:center;}
.fb-btn{border-radius:var(--r-sm);border-color:transparent;background:transparent;color:var(--tx3);font-size:var(--fs-xs);padding:4px 8px;}
.fb-btn:hover{background:var(--s2);color:var(--tx);border-color:transparent;}
.add-pipe-btn{min-height:32px;padding:0 12px;border-radius:var(--r-sm);background:var(--s2);border:1px solid var(--b2);color:var(--tx);font-size:var(--fs-sm);font-weight:500;}
.add-pipe-btn:hover{background:var(--s3);color:var(--tx);border-color:var(--b3);}
.add-pipe-btn.added{background:transparent;border-color:var(--b1);color:var(--tx3);}
.export-pick{background:transparent!important;border-color:var(--b1)!important;color:var(--tx2)!important;border-radius:var(--r-sm)!important;}
#live-results-area [id^="enrich-btn-"]{background:var(--adim)!important;border:1px solid var(--abrd)!important;color:var(--accent)!important;font-weight:600!important;min-height:32px;}
#live-results-area [id^="enrich-btn-"]:hover{background:var(--accent)!important;color:var(--on-accent)!important;}
body.light #live-results-area [id^="enrich-btn-"]{color:#047857!important;}
#live-results-area [id^="enrich-btn-"][disabled]{background:var(--s3)!important;border-color:var(--b2)!important;color:var(--tx3)!important;}

/* ── LEAD MAP SKIN + PANEL ───────────────────────────────────────────────────
   Hooks: #tab-map #map-container #map-status #map-state #map-machine
   #map-flt-data-filter-row #map-score-filter #map-bulk-row .vb-pin
   .vb-cluster-dot .leaflet-* ; vbMapLayout adds .vb-map-layout .vb-map-panel
   .vb-map-main .vb-map-top by MOVING the existing nodes (ids and handlers
   untouched). */
.vb-map-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:var(--sp-4);align-items:start;}
.vb-map-panel{position:sticky;top:72px;max-height:calc(100vh - 88px);overflow:auto;background:var(--s1);border:1px solid var(--b1);border-radius:var(--r-md);box-shadow:var(--lift);}
.vb-map-sec{padding:var(--sp-4);border-bottom:1px solid var(--b1);}
.vb-map-sec:last-child{border-bottom:none;}
.vb-map-sec-t{font-size:var(--fs-xs);font-weight:600;color:var(--tx);margin-bottom:var(--sp-3);display:flex;align-items:center;justify-content:space-between;}
.vb-map-sec-t span{font-weight:500;color:var(--tx3);}
.vb-map-panel > .vb-map-sec > div{margin-bottom:0!important;}
.vb-map-panel .fld,.vb-map-panel select,.vb-map-panel input[type="text"]{width:100%!important;max-width:none!important;}
.vb-map-panel #map-state{margin-bottom:0;}
.vb-map-panel div[style*="display:flex"]{gap:var(--sp-2)!important;}
.vb-map-panel span[style*="margin:0 4px"]{display:none;}
.vb-map-panel #map-count{margin-left:0!important;width:100%;}
.vb-map-panel label[style*="border-radius:999px"]{background:var(--s2)!important;border-color:var(--b1)!important;}
.vb-map-panel #map-bulk-row button{flex:1;}
.vb-map-top{display:flex;flex-direction:column;gap:2px;}
.vb-map-top button{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border-radius:var(--r-sm);background:transparent;border:1px solid transparent;color:var(--tx);text-align:left;cursor:pointer;font-size:var(--fs-sm);}
.vb-map-top button:hover{background:var(--s2);}
.vb-map-top .vb-mts{flex-shrink:0;width:30px;height:22px;border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700;font-variant-numeric:tabular-nums;color:#fff;}
.vb-map-top .vb-mtn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.vb-map-top .vb-mtd{font-size:var(--fs-2xs);color:var(--tx3);}
.vb-map-empty{font-size:var(--fs-xs);color:var(--tx3);line-height:1.5;}
.vb-map-notes{font-size:var(--fs-xs);color:var(--tx3);}
.vb-map-notes summary{cursor:pointer;color:var(--tx2);font-weight:500;list-style:none;display:flex;align-items:center;justify-content:space-between;}
.vb-map-notes summary::-webkit-details-marker{display:none;}
.vb-map-notes > div{background:transparent!important;border:none!important;padding:8px 0 0!important;margin:0!important;font-size:var(--fs-xs)!important;color:var(--tx3)!important;line-height:1.55!important;}
.vb-map-notes > div > div:first-child[style*="font-size:16px"]{display:none;}
.vb-map-notes strong{color:var(--tx2)!important;}
#map-container{height:calc(100vh - 150px)!important;min-height:520px;border-radius:var(--r-md)!important;border-color:var(--b1)!important;box-shadow:var(--lift);}
body:not(.light) #map-container .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.82) contrast(.92) saturate(.6);}
body.light #map-container .leaflet-tile-pane{filter:saturate(.55) contrast(.96);}
#map-container .leaflet-container{background:var(--s2);font-family:var(--font-ui);}
/* Lead filter panel (2026-10-08): one panel, both surfaces. */
.vb-lf-wrap{margin-top:10px}
.vb-lf-panel{background:var(--s1);border:1px solid var(--b1);border-radius:var(--r-md,10px);padding:10px 12px}
.vb-lf-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.vb-lf-title{font-size:12px;font-weight:800;color:var(--tx)}
.vb-lf-sum{font-size:11px;color:var(--tx3);flex:1;min-width:120px}
.vb-lf-clear{font:inherit;font-size:11px;font-weight:700;padding:4px 12px;border-radius:999px;border:1px solid var(--accent);background:transparent;color:var(--accent);cursor:pointer}
.vb-lf-clear:disabled{border-color:var(--b1);color:var(--tx3);cursor:default;opacity:.7}
.vb-lf-restored{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;color:var(--tx2);background:var(--s2);border:1px solid var(--b1);border-radius:8px;padding:5px 9px;margin-bottom:8px}
.vb-lf-restored button{font:inherit;font-size:11px;background:none;border:none;color:var(--accent);font-weight:700;cursor:pointer;padding:0}
.vb-lf-restored .vb-lf-x{color:var(--tx3);margin-left:auto;font-size:14px;line-height:1}
.vb-lf-groups{display:flex;flex-wrap:wrap;gap:8px 18px}
.vb-lf-g{border:0;margin:0;padding:0;min-width:0;display:flex;flex-wrap:wrap;gap:5px;align-items:flex-start;align-content:flex-start;flex:1 1 220px}
.vb-lf-gt{width:100%;font-size:10.5px;font-weight:700;color:var(--tx3);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;padding:0}
.vb-lf-hint{text-transform:none;letter-spacing:0;font-weight:400}
.vb-lf-o{display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:4px 10px;border-radius:999px;background:var(--s2);border:1px solid var(--b1);font-size:11px;color:var(--tx2);font-weight:600}
.vb-lf-o input{margin:0;cursor:pointer;accent-color:var(--accent)}
.vb-lf-o.is-on{border-color:var(--accent);color:var(--tx)}
.vb-lf-o.is-zero{opacity:.45;cursor:not-allowed}
.vb-lf-o.is-zero input{cursor:not-allowed}
.vb-lf-n{color:var(--tx3);font-family:SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-weight:400}
.vb-lf-more{width:100%}
.vb-lf-more summary{font-size:11px;color:var(--accent);cursor:pointer;margin:2px 0 4px}
.vb-lf-more[open]{display:flex;flex-wrap:wrap;gap:5px}
.vb-lf-more[open] summary{width:100%}
.vb-lf-foot{font-size:10.5px;color:var(--tx3);margin-top:6px}
.vb-map-panel .vb-lf-panel{padding:8px 10px}
.vb-map-panel .vb-lf-g{flex-basis:100%}
/* "N leads - address not verified" chip on the Lead Map (no fake pins). */
.vb-unv-chip{background:var(--s1);color:var(--tx);border:1px solid var(--b2,var(--b1));border-radius:10px;box-shadow:var(--lift,0 2px 8px rgba(0,0,0,.25));font-size:11.5px;max-width:260px}
.vb-unv-chip summary{cursor:pointer;padding:7px 11px;font-weight:700;list-style:none}
.vb-unv-body{padding:0 11px 9px;color:var(--tx2);line-height:1.5;max-height:240px;overflow:auto}
.vb-unv-body ol{margin:6px 0 0;padding-left:18px}
.vb-unv-more{color:var(--tx3);margin-top:4px}
@media (max-width:640px){.vb-lf-g{flex-basis:100%}.vb-unv-chip{max-width:200px}}
.vb-pin > div{width:12px!important;height:12px!important;border:2px solid var(--s1)!important;box-shadow:0 1px 4px rgba(0,0,0,.45)!important;transition:transform .15s ease;}
.vb-pin:hover > div{transform:scale(1.35);}
.vb-pin > div[style*="#10b981"]{box-shadow:0 0 0 4px rgba(16,185,129,.28),0 1px 4px rgba(0,0,0,.45)!important;}
.vb-cluster-dot{background:var(--accent)!important;color:var(--on-accent)!important;border:2px solid var(--s1)!important;font-family:var(--font-ui)!important;font-weight:700!important;animation:none!important;box-shadow:0 0 0 6px rgba(0,229,160,.2),0 4px 12px rgba(0,0,0,.35)!important;transition:transform .15s ease;}
.vb-cluster-dot::after{display:none!important;}
.vb-cluster:hover .vb-cluster-dot{transform:scale(1.08);}
#map-container .leaflet-popup-content-wrapper{background:var(--s1);color:var(--tx);border:1px solid var(--b2);border-radius:var(--r-md);box-shadow:var(--shadow-pop);}
#map-container .leaflet-popup-tip{background:var(--s1);border:1px solid var(--b2);}
#map-container .leaflet-popup-content{font-family:var(--font-ui);}
#map-container .leaflet-bar a{background:var(--s1);color:var(--tx);border-bottom-color:var(--b1);}
#map-container .leaflet-bar{border:1px solid var(--b2)!important;box-shadow:var(--lift)!important;border-radius:var(--r-sm)!important;overflow:hidden;}
#map-container .leaflet-control-attribution{background:rgba(0,0,0,.35);color:var(--tx3);}
#map-container .leaflet-control-zoom{border:1px solid var(--b1);border-radius:8px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.18);margin:0 0 12px 12px;}
#map-container .leaflet-control-zoom a{width:32px;height:32px;line-height:30px;font-size:18px;background:var(--s1);color:var(--tx);border-bottom:1px solid var(--b1);}
#map-container .leaflet-control-zoom a:last-child{border-bottom:0;}
#map-container .leaflet-control-zoom a:hover{background:var(--s2);color:var(--tx);}
body.light #map-container .leaflet-control-attribution{background:rgba(255,255,255,.7);}
#map-container .leaflet-control-attribution a{color:var(--tx2);}

@media (max-width:900px){
  .vb-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .vb-fleet-empty{grid-template-columns:1fr;padding:var(--sp-4);}
  .vb-map-layout{grid-template-columns:1fr;}
  .vb-map-panel{display:contents;}
  .vb-map-panel>.vb-map-sec{background:var(--s1);border:1px solid var(--b1);border-radius:12px;}
  .vb-map-panel>.vb-map-sec:first-child{order:-2;}
  .vb-map-main{order:-1;}
  .vb-map-panel{position:static;max-height:none;}
  #map-container{height:62vh!important;min-height:360px;}
  .vb-why-pop{width:220px;}
  .vb-kpi-v{font-size:22px;}
}
