*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
:root{
  --bg:#EEF1F5; --surface:#fff; --panel:#F7F9FB; --deep:#1A2B42; --navy:#243853;
  --cobalt:#2563A8; --cobalt-lt:#DCE9F7; --gold:#B5831E; --gold-lt:#FBF0D5;
  --green:#256B4E; --green-lt:#D7EEDF; --red:#A33828; --muted:#64748B;
  --border:#CBD4E0; --text:#1A2233; --mono:'SFMono-Regular',Consolas,'Courier New',monospace;
  --leadfinder-head-height:52px;
}
body{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;background:var(--bg);color:var(--text);font-size:13px;line-height:1.5}
.tabbar{display:flex;gap:4px;background:var(--deep);padding:0 18px;height:46px;align-items:flex-end}
.tabbar button{background:transparent;border:0;color:#9FB0C5;font-size:13px;font-weight:600;padding:0 18px;height:38px;cursor:pointer;border-radius:6px 6px 0 0;letter-spacing:.02em}
.tabbar button.on{background:var(--bg);color:var(--deep)}
.tabbar button:not(.on):hover{color:#fff}
.tabbar-spacer{flex:1}
.tabbar .cart-tab{align-self:center;height:32px;display:inline-flex;align-items:center;gap:7px;padding:0 12px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.08);color:#E8EEF6}
.tabbar .cart-tab.on{background:var(--gold-lt);border-color:var(--gold);color:var(--deep)}
.tabbar .cart-tab:not(.on):hover{background:rgba(255,255,255,.14);color:#fff}
.cart-icon{font-size:11px;line-height:1;transform:rotate(45deg)}
.cart-badge{min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--gold);color:#fff;font-size:10.5px;font-weight:800;line-height:18px;text-align:center;font-variant-numeric:tabular-nums}
.viewport{height:calc(100vh - 46px);overflow:hidden}
.company-shell{height:100%;display:flex;flex-direction:column;min-height:0}
.company-subtabs{height:30px;display:flex;align-items:center;gap:14px;padding:0 18px;background:var(--bg);border-bottom:1px solid #DDE4EC;flex:none}
.company-subtabs button{height:30px;padding:0 2px;border:0;border-bottom:2px solid transparent;background:transparent;color:#7A8798;font-size:11.5px;font-weight:600;letter-spacing:.02em;cursor:pointer;font-family:inherit}
.company-subtabs button.on{border-bottom-color:#8DA1BA;color:var(--navy)}
.company-subtabs button:not(.on):hover{color:var(--cobalt)}
.company-panels{flex:1;min-height:0;overflow:hidden}
/* Three-pane layout: sidebar | list | detail (detail column appears on selection) */
.app{display:grid;grid-template-columns:300px 1fr;height:100%}
.app.has-detail{grid-template-columns:300px minmax(340px,1fr) minmax(380px,460px)}
.main{display:flex;flex-direction:column;height:100%;overflow:hidden;min-width:0}

/* ── SIDEBAR: search + filters ── */
.sidebar{background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:0;overflow:hidden}
.sidebar-scroll{flex:1;overflow-y:auto;padding:16px 14px 16px;min-height:0}
.brand{display:flex;align-items:baseline;gap:8px;border-bottom:2px solid var(--deep);padding-bottom:9px;margin-bottom:14px}
.brand h1{font-size:15px;color:var(--deep);font-weight:700}
.brand span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.search-wrap{position:relative}
.hero-search{width:100%;height:42px;padding:0 36px 0 12px;border:2px solid var(--cobalt);border-radius:8px;font-size:14px;background:var(--surface);font-family:inherit;color:var(--text)}
.hero-search:focus{outline:3px solid var(--cobalt-lt);outline-offset:0}
.hero-search::placeholder{color:#94A3B8}
.search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:26px;height:26px;border:0;border-radius:50%;background:#EAECEF;color:var(--muted);font-size:15px;cursor:pointer;line-height:1}
.search-clear:hover{background:var(--cobalt-lt);color:var(--cobalt)}
.suggest{position:absolute;top:calc(100% + 4px);left:0;width:min(420px,calc(100vw - 40px));background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 10px 30px rgba(26,43,66,.16);z-index:80;overflow:hidden}
.suggest-item{display:flex;flex-direction:column;gap:1px;padding:8px 12px;cursor:pointer;border-bottom:1px solid #EEF1F5}
.suggest-item:last-child{border-bottom:0}
.suggest-item.sel,.suggest-item:hover{background:var(--cobalt-lt)}
.suggest-name{font-weight:600;color:var(--deep);font-size:12.5px}
.suggest-name .formerly{font-weight:400;color:var(--muted);font-size:11px}
.suggest-meta{font-size:11px;color:var(--muted)}
.suggest-meta .dead{color:var(--red)}
.suggest-all{padding:8px 12px;font-size:12px;color:var(--cobalt);font-weight:600;cursor:pointer;background:var(--panel)}
.suggest-all.sel,.suggest-all:hover{background:var(--cobalt-lt)}

/* sidebar groups */
.side-group{margin-top:14px}
.side-group h5{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.quick-row{display:flex;flex-wrap:wrap;gap:6px}
.qchip{border:1px solid var(--border);background:var(--surface);color:var(--navy);font-size:12px;font-weight:600;padding:5px 10px;border-radius:14px;cursor:pointer;font-family:inherit}
.qchip:hover{border-color:var(--cobalt)}
.qchip.on{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
.preset-col{display:flex;flex-direction:column;gap:6px}
.preset{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:8px 10px;cursor:pointer;font-family:inherit;display:flex;flex-direction:column;gap:1px}
.preset:hover{border-color:var(--cobalt)}
.preset.on{border-color:var(--cobalt);background:var(--cobalt-lt)}
.preset strong{font-size:12.5px;color:var(--deep)}
.preset span{font-size:11px;color:var(--muted)}

.adv-toggle{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--cobalt);font-size:12.5px;font-weight:700;cursor:pointer;padding:8px 0 4px;font-family:inherit;margin-top:12px;border-top:1px solid var(--border)}
.adv-toggle:hover{text-decoration:underline}
.adv-toggle .caret{font-size:10px;transition:transform .15s}
.adv-toggle[aria-expanded="true"] .caret{transform:rotate(90deg)}
.adv-badge{background:var(--gold);color:#fff;font-size:10.5px;border-radius:9px;padding:1px 7px}

/* advanced panel (vertical, inside sidebar) */
.adv-panel{margin-top:8px}
.adv-group{margin-bottom:12px}
.adv-group h4{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);margin-bottom:7px;border-bottom:1px solid var(--border);padding-bottom:4px}
.side-actions-col{flex:none;display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-top:1px solid var(--border);background:var(--panel)}
.side-actions{display:flex;gap:8px}
.side-actions .btn{flex:1}
.fgroup{margin-bottom:12px}
.fgroup>label{display:block;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
input[type=text],input[type=number],select{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-size:12.5px;background:var(--surface);color:var(--text);font-family:inherit}
input:focus,select:focus{outline:2px solid var(--cobalt);outline-offset:-1px;border-color:var(--cobalt)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.chip{font-size:11px;padding:3px 8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);cursor:pointer;font-family:var(--mono);user-select:none}
.chip.on{background:var(--cobalt);color:#fff;border-color:var(--cobalt)}
.seg{display:flex;border:1px solid var(--border);border-radius:4px;overflow:hidden}
.seg button{flex:1;padding:5px 4px;font-size:11px;background:var(--surface);border:0;cursor:pointer;color:var(--muted);border-right:1px solid var(--border)}
.seg button:last-child{border-right:0}
.seg button.on{background:var(--cobalt);color:#fff}
select[multiple]{height:auto;min-height:90px}
.search-hint{font-size:10.5px;color:var(--muted);margin-top:4px}

.btn{padding:9px;border:0;border-radius:5px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit}
.btn-primary{background:var(--cobalt);color:#fff}
.btn-primary:hover{background:#1d5292}
.btn-ghost{background:var(--surface);border:1px solid var(--border);color:var(--navy)}
.btn-ghost:hover{background:var(--cobalt-lt)}
.btn-sm{padding:6px 12px;font-size:12px}
.actions{display:flex;flex-direction:column;gap:8px;margin-top:8px}

/* ── TOOLBAR + RESULTS ── */
.toolbar{display:flex;align-items:center;gap:14px;height:var(--leadfinder-head-height);padding:0 24px;background:var(--surface);border-bottom:1px solid var(--border);flex:none}
.count{font-size:13.5px;color:var(--deep)}
.count strong{font-size:19px;font-family:Georgia,serif;color:var(--cobalt);font-variant-numeric:tabular-nums}
.toolbar .spacer{flex:1}
.sortsel{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.sortsel select{width:auto}
.sort-note{font-size:12px;color:var(--muted);font-style:italic}
.scroller{flex:1;overflow-y:auto;padding:10px 14px 30px}

/* compact list rows (ticker-style density) */
.cards{display:flex;flex-direction:column;gap:6px}
.card{background:var(--surface);border:1px solid var(--border);border-left:3px solid transparent;border-radius:7px;padding:9px 12px;cursor:pointer}
.card:hover{border-color:var(--cobalt);border-left-color:var(--cobalt)}
.card.open{border-color:var(--cobalt);border-left-color:var(--cobalt);background:#F4F8FD}
.card-top{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
.card-spacer{flex:1}
.card-name{font-size:13px;font-weight:700;color:var(--deep)}
.card-former{font-size:11.5px;color:var(--muted);font-style:italic;margin-top:1px}
.card-meta{font-size:11.5px;color:#3D4B60;margin-top:3px}
.card-meta .uen{font-family:var(--mono);font-size:10.5px;color:var(--muted)}
.card-addr{font-size:11px;color:var(--muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card-addr .note{color:var(--gold)}
.tag{display:inline-block;font-size:9.5px;font-weight:700;padding:1.5px 6px;border-radius:3px;letter-spacing:.03em;vertical-align:1px}
.t-mas{background:var(--green-lt);color:var(--green)}
.t-fo{background:var(--gold-lt);color:var(--gold)}
.t-client{background:var(--red);color:#fff}
.t-dead{background:#EAECEF;color:var(--muted)}
.shortlist-btn{margin-left:auto;border:1px solid var(--border);background:var(--surface);color:var(--cobalt);font-size:11px;font-weight:700;padding:3px 8px;border-radius:12px;cursor:pointer;font-family:inherit}
.shortlist-btn:hover{border-color:var(--cobalt);background:var(--cobalt-lt)}
.shortlist-btn.on{background:var(--green-lt);border-color:#A9D4BC;color:var(--green)}
.shortlist-btn:disabled{opacity:.6;cursor:wait}

.pager{display:flex;align-items:center;justify-content:center;gap:14px;padding:16px 0 4px}
.pager button{padding:6px 14px;border:1px solid var(--border);background:var(--surface);border-radius:4px;cursor:pointer;font-size:12px}
.pager button:disabled{opacity:.4;cursor:default}
.empty{padding:60px;text-align:center;color:var(--muted)}
.loading{padding:60px;text-align:center;color:var(--cobalt);display:flex;flex-direction:column;align-items:center;gap:10px}
.spinner{width:26px;height:26px;border:3px solid var(--cobalt-lt);border-top-color:var(--cobalt);border-radius:50%;animation:lf-spin .7s linear infinite}
@keyframes lf-spin{to{transform:rotate(360deg)}}
@keyframes lf-card-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.card{animation:lf-card-in .28s ease both}
@media (prefers-reduced-motion: reduce){
  .card{animation:none}
  .spinner{animation-duration:1.4s}
}

/* ── PEOPLE TAB ── */
.wealth-badge{font-family:Georgia,serif;font-size:14px;color:var(--gold);font-weight:700;font-variant-numeric:tabular-nums}
.wealth-chart{width:100%;height:auto;background:var(--panel);border:1px solid var(--border);border-radius:8px}
.wealth-chart polyline{fill:none;stroke:var(--cobalt);stroke-width:2;stroke-linejoin:round}
.wealth-chart .dots circle{fill:var(--cobalt)}
.wealth-chart .peak{fill:var(--gold)}
.wealth-chart .peak-label{font-size:10px;font-weight:700;fill:var(--gold)}
.wealth-chart .axis{font-size:9.5px;fill:var(--muted)}
.hist-table{border:1px solid var(--border);border-radius:6px;overflow:hidden}
.hist-row{display:grid;grid-template-columns:52px 56px 1fr 1fr;gap:8px;padding:4px 10px;font-size:12px;font-variant-numeric:tabular-nums;border-bottom:1px solid #EEF1F5}
.hist-row:last-child{border-bottom:0}
.hist-row.hist-head{background:var(--panel);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}

/* ── DETAIL PANEL (third grid column on wide screens) ── */
.drawer-scrim{position:fixed;inset:46px 0 0 0;background:rgba(26,43,66,.25);z-index:50}
.drawer{background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden}
.drawer-head{display:flex;align-items:center;gap:10px;height:var(--leadfinder-head-height);padding:0 18px;border-bottom:1px solid var(--border);background:var(--panel);flex:none}
.drawer-head-text{min-width:0;flex:1}
.drawer-title{font-size:14px;font-weight:700;color:var(--deep);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.drawer-sub{font-size:11px;color:var(--muted);margin-top:2px;font-family:var(--mono)}
.drawer-close{margin-left:auto;width:30px;height:30px;flex:none;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--muted);font-size:17px;cursor:pointer;line-height:1}
.drawer-close:hover{background:var(--cobalt-lt);color:var(--cobalt)}
.drawer-body{flex:1;overflow-y:auto;padding:14px 18px 40px}
.dsection{margin-bottom:16px}
.dsection>h4{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--navy);border-bottom:2px solid var(--cobalt-lt);padding-bottom:4px;margin-bottom:8px}
.kv{display:grid;grid-template-columns:130px 1fr;gap:5px 10px;font-size:12.5px}
.kv .k{color:var(--muted)}
.kv .v{color:var(--text)}
.mini-list{display:flex;flex-direction:column;gap:6px}
.mini-card{border:1px solid var(--border);border-radius:6px;background:#FBFCFE;padding:9px 10px}
.mini-title{font-weight:700;color:var(--deep);font-size:12.5px;margin-bottom:3px}
.mini-muted{font-size:11.5px;color:var(--muted)}
.lic-line{font-size:12px;margin-top:4px}
.badge-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}
.tech-details{border:1px solid var(--border);border-radius:6px;background:var(--panel);margin-top:4px}
.tech-details summary{padding:8px 10px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);cursor:pointer}
.tech-details .inner{padding:0 10px 10px}
.drawer-b2b-results{margin-top:8px;display:flex;flex-direction:column;gap:10px}
.detail-loading{font-size:12px;color:var(--cobalt);padding:8px 0}
.drawer-action-row{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;background:var(--panel);border:1px solid var(--border);border-radius:8px}
.drawer-action-row .shortlist-btn{margin-left:0}

/* ── SALES SHORTLIST ── */
.shortlist{height:100%;overflow:auto;padding:26px 34px 60px}
.shortlist-wrap{max-width:1040px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.shortlist-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.shortlist-head h2{font-size:20px;color:var(--deep);font-family:Georgia,serif;font-weight:normal;margin-bottom:4px}
.shortlist-head p{font-size:12.5px;color:var(--muted);max-width:660px}
.shortlist-actions,.shortlist-row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.shortlist-summary{display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 14px;color:var(--muted)}
.shortlist-summary strong{font-family:Georgia,serif;font-size:24px;line-height:1;color:var(--cobalt)}
.shortlist-summary .spacer{flex:1}
.shortlist-cards{display:flex;flex-direction:column;gap:10px}
.shortlist-card{background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:14px}
.shortlist-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:10px}
.shortlist-title-wrap{min-width:0}
.shortlist-title{font-size:14px;font-weight:700;color:var(--deep);display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.shortlist-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;padding:10px 0;border-top:1px solid #EEF1F5;border-bottom:1px solid #EEF1F5}
.shortlist-grid a{color:var(--cobalt);text-decoration:none;overflow-wrap:anywhere}
.shortlist-grid a:hover{text-decoration:underline}
.shortlist-notes{margin:10px 0 0}
.shortlist-notes textarea{width:100%;min-height:64px;padding:8px;border:1px solid var(--border);border-radius:6px;background:var(--panel);font-family:inherit;font-size:12.5px;resize:vertical;color:var(--text)}
.shortlist-notes textarea:focus{outline:2px solid var(--cobalt);outline-offset:-1px;border-color:var(--cobalt);background:var(--surface)}

/* ── DATA SOURCES ── */
.sources{height:100%;overflow-y:auto;padding:34px 40px 60px}
.sources-head{max-width:960px;margin:0 auto 26px}
.sources-head h2{font-size:22px;color:var(--deep);font-family:Georgia,serif;font-weight:normal;margin-bottom:6px}
.sources-head p{color:var(--muted);font-size:13px;max-width:640px}
.source-cards{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}
.scard{background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--cobalt);border-radius:8px;padding:22px 24px;display:flex;flex-direction:column}
.scard.acra{border-top-color:var(--cobalt)}
.scard.fid{border-top-color:var(--gold)}
.scard-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:6px}
.scard h3{font-size:16px;color:var(--deep);font-weight:700}
.scard .live{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--green);white-space:nowrap;padding-top:3px}
.scard .live::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green)}
.scard .desc{font-size:12.5px;color:#3D4B60;line-height:1.5;margin-bottom:16px}
.scard-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:14px}
.scard-stat .v{font-family:Georgia,serif;font-size:22px;color:var(--deep);font-variant-numeric:tabular-nums;line-height:1}
.scard.fid .scard-stat .v{color:var(--gold)}
.scard.acra .scard-stat .v{color:var(--cobalt)}
.scard-stat .l{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:3px}
.meta-row{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding:5px 0;border-bottom:1px dotted var(--border)}
.meta-row .k{color:var(--muted)}
.meta-row .val{color:var(--text);font-weight:500;text-align:right}
.meta-row .val.mono{font-family:var(--mono);font-size:11px;word-break:break-all}
.scard-footer{margin-top:16px}
.scard-footer a{display:inline-flex;align-items:center;gap:6px;color:var(--cobalt);text-decoration:none;font-size:12.5px;font-weight:600}
.scard.fid .scard-footer a{color:var(--gold)}
.scard-footer a:hover{text-decoration:underline}
.scard-footer a::after{content:'↗';font-size:12px}
.flow{max-width:960px;margin:26px auto 0;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px 22px;font-size:12.5px;color:var(--muted)}
.flow strong{color:var(--deep)}

/* ── B2B TOOLS (batch-first Find Contacts) ── */
.b2b{height:100%;overflow:auto;padding:26px 34px 60px}
.b2b-wrap{max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.b2b-head h2{font-size:20px;color:var(--deep);font-family:Georgia,serif;font-weight:normal;margin-bottom:4px}
.b2b-head p{font-size:12.5px;color:var(--muted);max-width:640px}
.b2b-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:18px}
.b2b textarea{width:100%;min-height:110px;padding:10px;border:1px solid var(--border);border-radius:6px;font-family:var(--mono);font-size:12.5px;resize:vertical}
.b2b textarea:focus{outline:2px solid var(--cobalt);outline-offset:-1px;border-color:var(--cobalt)}
.b2b-run-row{display:flex;align-items:center;gap:14px;margin-top:10px}
.b2b-progress{font-size:12.5px;color:var(--cobalt);font-weight:600}
.mini-spinner{display:inline-block;width:13px;height:13px;border:2px solid var(--cobalt-lt);border-top-color:var(--cobalt);border-radius:50%;animation:lf-spin .7s linear infinite;vertical-align:-2px;margin-right:5px}
.b2b-advanced{margin-top:12px;border-top:1px dashed var(--border);padding-top:8px}
.b2b-advanced summary{font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);cursor:pointer}

/* provider quota panel */
.quota-head{display:flex;align-items:center;gap:10px;margin-top:12px}
.quota-head h4{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--navy)}
.quota-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:8px}
.quota-card{border:1px solid var(--border);border-radius:8px;background:var(--panel);padding:9px 11px}
.quota-card-top{display:flex;align-items:center;gap:7px;margin-bottom:5px}
.quota-dot{width:7px;height:7px;border-radius:50%;background:var(--muted);flex:none}
.quota-dot.on{background:var(--green)}
.quota-dot.warn{background:var(--gold)}
.quota-dot.off{background:var(--red)}
.quota-name{font-size:11.5px;font-weight:700;color:var(--deep)}
.quota-line{font-size:11.5px;color:#3D4B60;margin-top:2px}
.quota-line a{color:var(--cobalt)}
.quota-bar{height:5px;border-radius:3px;background:#E4E9F0;margin-top:5px;overflow:hidden}
.quota-bar-fill{height:100%;background:var(--cobalt);border-radius:3px}
.quota-bar-fill.warn{background:var(--gold)}
.quota-bar-fill.danger{background:var(--red)}
.quota-raw{margin-top:6px;font-size:10.5px}
.quota-raw summary{color:var(--muted);cursor:pointer}
.b2b-summary{display:flex;align-items:center;gap:12px;background:var(--green-lt);border:1px solid #A9D4BC;color:var(--green);border-radius:8px;padding:9px 14px;font-weight:600;font-size:13px}
.b2b-summary .spacer{flex:1}

/* contacts-first result cards */
.result-sub{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:4px}
.web-chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--cobalt);background:var(--cobalt-lt);border-radius:14px;padding:3px 10px;text-decoration:none}
.web-chip:hover{text-decoration:underline}
.person-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;margin-top:8px}
.person{display:flex;gap:9px;border:1px solid var(--border);border-radius:8px;padding:9px 10px;background:#FBFCFE;min-width:0}
.avatar{width:34px;height:34px;flex:none;border-radius:50%;background:var(--cobalt-lt);color:var(--cobalt);font-weight:700;font-size:12.5px;display:flex;align-items:center;justify-content:center}
.person-info{min-width:0}
.person-name{font-weight:700;font-size:12.5px;color:var(--deep)}
.person-title{font-size:11.5px;color:var(--muted);margin:1px 0 3px}
.person-links{display:flex;flex-wrap:wrap;gap:8px;font-size:11.5px;align-items:center}
.person-links a{color:var(--cobalt);text-decoration:none;overflow-wrap:anywhere}
.person-links a:hover{text-decoration:underline}
.person-email{font-family:var(--mono);font-size:10.5px}
.no-contacts{font-size:12.5px;color:var(--muted);background:var(--panel);border:1px dashed var(--border);border-radius:8px;padding:10px 12px;margin-top:8px}
.domain-chips{display:flex;flex-wrap:wrap;gap:5px}
.domain-chip{font-size:11px;padding:3px 8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-family:var(--mono)}
.b2b-more{margin-top:10px;border:1px solid var(--border);border-radius:6px;background:var(--panel)}
.b2b-more summary{padding:7px 10px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);cursor:pointer}
.b2b-more .inner{padding:0 10px 10px}
.provider-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 12px}
.provider-row label{display:flex;align-items:center;gap:6px;font-size:12px;border:1px solid var(--border);border-radius:5px;padding:6px;background:var(--panel)}
.key-status{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 14px}
.key-pill{font-size:10.5px;font-weight:700;border-radius:12px;padding:3px 8px;background:#EAECEF;color:var(--muted)}
.key-pill.on{background:var(--green-lt);color:var(--green)}
.result-panel{display:flex;flex-direction:column;gap:12px}
.result-card{border:1px solid var(--border);border-radius:8px;background:#fff;padding:14px}
.result-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:8px;margin-bottom:10px}
.result-head h3{margin:0;color:var(--deep);font-size:15px;text-transform:none;letter-spacing:0}
.status-line{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}
.status-pill{font-size:10px;font-weight:700;border-radius:3px;padding:1px 5px;background:#EAECEF;color:var(--muted)}
.status-pill.ok{background:var(--green-lt);color:var(--green)}
.status-pill.bad{background:#F3DAD5;color:var(--red)}
.b2b-section{margin-top:10px}
.b2b-section h4{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:5px}
.b2b-list{display:grid;gap:6px}
.b2b-item{border:1px solid var(--border);background:#FBFCFE;border-radius:6px;padding:8px;font-size:11.5px}
.b2b-item strong{color:var(--deep)}
.b2b-item a{color:var(--cobalt);text-decoration:none}
.b2b-item a:hover{text-decoration:underline}
.b2b-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}
.small-note{font-size:11px;color:var(--muted)}

/* ── MEDIUM: detail overlays the list instead of a third column ── */
@media (max-width: 1100px){
  .app.has-detail{grid-template-columns:300px 1fr}
  .drawer{position:fixed;top:46px;right:0;bottom:0;width:min(440px,100vw);z-index:60;box-shadow:-12px 0 30px rgba(26,43,66,.18)}
}

/* ── NARROW CONTAINER (Monday iframe / mobile): single column ── */
@media (max-width: 760px){
  .app,.app.has-detail{grid-template-columns:1fr;grid-template-rows:auto 1fr;overflow-y:auto}
  .sidebar{border-right:0;border-bottom:1px solid var(--border);max-height:none;overflow:visible}
  .main{min-height:60vh}
  .toolbar{height:auto;min-height:var(--leadfinder-head-height);padding:8px 14px;flex-wrap:wrap;gap:8px}
  .scroller{padding:10px 12px 30px}
  .drawer{width:100vw;border-left:0}
  .b2b-grid{grid-template-columns:1fr}
  .source-cards{grid-template-columns:1fr}
  .shortlist-head,.shortlist-card-head{flex-direction:column}
  .shortlist-grid{grid-template-columns:1fr}
  .kv{grid-template-columns:110px 1fr}
}

/* ── FIRMS TAB (Altss global firm profiles) ── */
.t-type{background:var(--cobalt-lt);color:var(--cobalt)}
.t-acra{background:var(--green-lt);color:var(--green)}
.card-overview{font-size:11.5px;color:var(--muted);margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.aum-badge{font-family:Georgia,serif;color:var(--gold);font-weight:700}
.firm-overview{font-size:12px;color:#3D4B60;line-height:1.55}
.faq-item{border:1px solid var(--border);border-radius:6px;background:#FBFCFE;padding:8px 10px;margin-bottom:6px}
.faq-q{font-weight:700;font-size:12px;color:var(--deep)}
.faq-a{font-size:12px;color:#3D4B60;margin-top:3px;line-height:1.5}
.scard.altss{border-top-color:var(--green)}
.scard.altss .scard-stat .v{color:var(--green)}
.scard.altss .scard-footer a{color:var(--green)}

/* ── ASSISTANT TAB (web chatbot) ── */
.agent{height:100%;display:flex;flex-direction:column;overflow:hidden}
.agent-wrap{width:100%;max-width:760px;margin:0 auto;flex:1;display:flex;flex-direction:column;min-height:0;padding:0 16px}
.agent-head{flex:none;padding:16px 0 8px}
.agent-head h2{font-size:18px;color:var(--deep);margin:0 0 2px}
.agent-head p{font-size:12px;color:var(--muted);margin:0}
.agent-thread{flex:1;overflow-y:auto;padding:12px 0 16px;display:flex;flex-direction:column;gap:12px}
.amsg{display:flex}
.amsg.a-user{justify-content:flex-end}
.amsg-bubble{max-width:82%;padding:10px 13px;border-radius:12px;font-size:13px;line-height:1.55;word-wrap:break-word;overflow-wrap:anywhere}
.a-user .amsg-bubble{background:var(--cobalt);color:#fff;border-bottom-right-radius:4px}
.a-bot .amsg-bubble{background:var(--surface);border:1px solid var(--border);color:var(--text);border-bottom-left-radius:4px}
.amsg-bubble code{font-family:var(--mono);font-size:12px;background:rgba(0,0,0,.06);padding:1px 4px;border-radius:3px}
.a-user .amsg-bubble code{background:rgba(255,255,255,.22)}
.agent-cards{margin-top:10px;display:flex;flex-direction:column;gap:6px}
.agent-card{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid var(--border);background:var(--panel);border-radius:8px;padding:8px 10px;cursor:pointer;font-family:inherit}
.agent-card:hover{border-color:var(--cobalt);background:var(--cobalt-lt)}
.agent-card-kind{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:4px;flex:none}
.agent-card-kind.t-company{background:var(--cobalt-lt);color:var(--cobalt)}
.agent-card-kind.t-firm{background:var(--gold-lt);color:var(--gold)}
.agent-card-kind.t-person{background:var(--green-lt);color:var(--green)}
.agent-card-body{flex:1;min-width:0;display:flex;flex-direction:column}
.agent-card-name{font-weight:700;color:var(--deep);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agent-card-meta{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agent-card-go{flex:none;color:var(--cobalt);font-weight:700}
.agent-composer{flex:none;padding:10px 0 16px;border-top:1px solid var(--border);background:var(--bg)}
.agent-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.agent-input-row{display:flex;gap:8px;align-items:flex-end}
.agent-input-row textarea{flex:1;resize:none;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:13px;font-family:inherit;background:var(--surface);color:var(--text);line-height:1.4;max-height:160px}
.agent-input-row textarea:focus{outline:2px solid var(--cobalt);outline-offset:-1px;border-color:var(--cobalt)}
.agent-input-row .btn{flex:none;height:40px}
.atyping{display:inline-flex;gap:4px;align-items:center}
.atyping i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:atype 1s infinite}
.atyping i:nth-child(2){animation-delay:.15s}
.atyping i:nth-child(3){animation-delay:.3s}
@keyframes atype{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}

/* Assistant v2: tool trace + contact / shortlist cards */
.agent-trace{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;padding-bottom:5px;border-bottom:1px dashed var(--border)}
.agent-card-kind.t-contact{background:var(--green-lt);color:var(--green)}
.agent-card-kind.t-shortlist{background:var(--gold-lt);color:var(--gold)}
.agent-card-static{cursor:default}
.agent-card-static:hover{border-color:var(--border);background:var(--panel)}
.agent-card-static .agent-card-go{text-decoration:none;font-size:11px}
