:root {
  --bg:#090d14; --panel:#111827; --panel2:#0d1522; --text:#f8fafc; --muted:#9ca3af;
  --line:#263244; --accent:#5eead4; --accent2:#22d3ee; --danger:#fb7185; --warn:#fbbf24; --good:#34d399;
}
*{box-sizing:border-box} body{margin:0;background:radial-gradient(circle at 20% -10%,#17314b 0,transparent 35%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
button,input,textarea,select{font:inherit} a{color:var(--accent2)} .shell{width:min(1100px,calc(100% - 28px));margin:0 auto;padding:28px 0 42px}
.brandbar{display:flex;gap:14px;align-items:center;margin-bottom:18px}.brandmark{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;font-weight:900;color:#071014;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 8px 30px rgba(34,211,238,.18)}
.brandcopy{min-width:0}.titleRow{display:flex;align-items:center;gap:9px}h1,h2,h3,p{margin-top:0}h1{font-size:1.2rem;margin-bottom:3px}.version,.countBadge{font-size:.7rem;font-weight:900;padding:4px 7px;border:1px solid #36536a;border-radius:999px;color:var(--accent)}.brandbar p{color:var(--muted);margin:0;font-size:.9rem}
.tabs{display:flex;gap:8px;overflow:auto;padding-bottom:6px;margin-bottom:14px}.tabBtn{background:#111827;color:#cbd5e1;border:1px solid #2d3a4e;min-height:40px;padding:0 14px;white-space:nowrap}.tabBtn.active{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#061116;border-color:transparent}
.card{background:rgba(17,24,39,.92);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 14px 45px rgba(0,0,0,.2)}.hero h2{font-size:clamp(1.35rem,4vw,2rem);max-width:820px;line-height:1.12;margin-bottom:22px}.eyebrow{color:var(--accent);font-size:.72rem;letter-spacing:.14em;font-weight:800;margin-bottom:8px}
label{display:block;font-weight:700;font-size:.9rem}input,textarea,select{width:100%;background:#080e17;color:var(--text);border:1px solid #334155;border-radius:13px;padding:12px 13px;outline:none;margin-top:7px}input:focus,textarea:focus,select:focus{border-color:var(--accent2);box-shadow:0 0 0 3px rgba(34,211,238,.1)}
button{border:0;cursor:pointer;border-radius:13px;padding:0 16px;font-weight:800;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#061116;min-height:44px}button:disabled{opacity:.55;cursor:not-allowed}button.secondary{background:#172334;color:var(--text);border:1px solid #334155}button.ghost,.ghostLink{background:transparent;color:var(--muted);border:1px solid #334155}.ghostLink{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:13px;padding:0 14px;min-height:44px;font-weight:800}.dangerBtn{background:#31141c;color:#fecdd3;border:1px solid #7f1d2d}.iconBtn{width:38px;min-height:38px;padding:0;background:#172334;color:var(--text);font-size:1.3rem}
.searchGrid{display:grid;grid-template-columns:1.4fr 1fr 120px auto;gap:10px;align-items:end}.advanced{margin-top:14px;color:var(--muted)}.advanced summary{cursor:pointer;font-size:.9rem}.advanced label{margin-top:10px;color:var(--text)}.advanced small{display:block;margin-top:7px;line-height:1.4}.status{min-height:24px;margin-top:12px;color:var(--muted)}.status.compact{margin:8px 0 0;min-height:18px}.hidden{display:none!important}
.statsGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}.stat{padding:16px}.stat span{display:block;color:var(--muted);font-size:.82rem;margin-bottom:5px}.stat strong{font-size:1.7rem}.toolbarCard{margin-bottom:14px}.toolbar{display:flex;justify-content:space-between;gap:14px;align-items:end}.toolbar>label{width:220px}.toolbarActions,.inlineActions,.dialogActions{display:flex;gap:8px;flex-wrap:wrap}
.leadList{display:grid;gap:12px}.leadCard{background:rgba(17,24,39,.92);border:1px solid var(--line);border-radius:18px;padding:17px}.leadTop{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.leadMeta{color:var(--muted);font-size:.78rem;margin-bottom:5px}.leadCard h3{margin:0 0 6px;font-size:1.15rem}.leadContact{color:#cbd5e1;font-size:.86rem;line-height:1.45}.leadScoreWrap{text-align:center;min-width:82px}.leadScoreWrap>strong{display:block;font-size:2rem;line-height:1;margin-bottom:7px}.pill{display:inline-block;white-space:nowrap;padding:7px 9px;border-radius:999px;font-size:.73rem;font-weight:900;background:#1f2937;border:1px solid #374151}.pill.good{color:var(--good);border-color:rgba(52,211,153,.45)}.pill.warn{color:var(--warn);border-color:rgba(251,191,36,.45)}.pill.hot{color:var(--danger);border-color:rgba(251,113,133,.45)}
.leadInfo{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.leadInfo>div{background:#0c131f;border:1px solid #27354a;border-radius:12px;padding:10px}.leadInfo span{display:block;color:var(--muted);font-size:.72rem;margin-bottom:4px}.siteLink{overflow-wrap:anywhere}.noWeb{color:var(--danger)!important;font-weight:800}.leadActions{display:flex;gap:8px;flex-wrap:wrap}.leadActions button,.leadActions a{min-height:40px}.stageLabel{display:flex;align-items:center;gap:10px;margin:10px 0 14px;color:var(--muted)}.stageLabel select{width:auto;margin:0;min-width:150px}
.inputrow{display:grid;grid-template-columns:1fr auto;gap:10px}.results{display:grid;gap:14px;margin-top:14px}.scorecard{display:flex;align-items:center;justify-content:space-between;gap:16px}.scoreline{display:flex;align-items:baseline;gap:4px;margin:2px 0 4px}.scoreline #mainScore{font-size:3.6rem;line-height:1;font-weight:900}.scoreline span:last-child{color:var(--muted);font-weight:700}.scorecard p{margin:0;color:var(--muted)}.metricgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{padding:16px}.metric span{display:block;color:var(--muted);font-size:.82rem;margin-bottom:6px}.metric strong{font-size:1.65rem}
.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.sectionhead h3{margin:0}.issues{display:grid;gap:10px}.issue{border:1px solid #2b394d;background:var(--panel2);border-radius:14px;padding:14px}.issue strong{display:block;margin-bottom:4px}.issue p{margin:0;color:var(--muted);line-height:1.45;font-size:.92rem}.issue .tag{display:inline-block;margin-top:8px;padding:4px 8px;font-size:.72rem;border-radius:999px;background:#172334;color:#cbd5e1}textarea{resize:vertical;line-height:1.45}.hint{color:var(--muted);font-size:.82rem;margin:8px 0 0}.facts{margin:0;display:grid;gap:10px}.facts div{display:grid;grid-template-columns:140px 1fr;gap:10px;border-bottom:1px solid #223047;padding-bottom:10px}.facts div:last-child{border-bottom:0;padding-bottom:0}dt{color:var(--muted)}dd{margin:0;overflow-wrap:anywhere}
.savedHeader{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:14px}.savedHeader h2{margin-bottom:6px}.savedHeader p{margin:0;color:var(--muted)}.savedTools{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.savedTools label{min-width:170px}.empty{color:var(--muted);font-size:.9rem}.messageDialog{width:min(680px,calc(100% - 24px));border:1px solid #334155;border-radius:18px;background:#0e1622;color:var(--text);padding:20px}.messageDialog::backdrop{background:rgba(0,0,0,.7)}.dialogHead{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.dialogHead h3{margin:0}.messageDialog textarea{margin:10px 0}.dialogActions button{min-height:40px}
footer{color:#6b7280;text-align:center;font-size:.76rem;margin-top:22px;line-height:1.5}
@media(max-width:820px){.searchGrid{grid-template-columns:1fr 1fr}.searchGrid button{grid-column:1/-1}.statsGrid{grid-template-columns:1fr 1fr}.toolbar,.savedHeader{align-items:stretch;flex-direction:column}.toolbar>label{width:100%}.metricgrid{grid-template-columns:1fr 1fr}.savedTools{align-items:stretch}.savedTools label{width:100%}}
@media(max-width:600px){.shell{width:min(100% - 18px,1100px);padding-top:18px}.searchGrid{grid-template-columns:1fr}.searchGrid button{grid-column:auto}.leadTop{flex-direction:column}.leadScoreWrap{text-align:left;display:flex;align-items:center;gap:10px}.leadScoreWrap>strong{margin:0}.leadInfo{grid-template-columns:1fr}.leadActions>*{flex:1 1 130px}.inputrow{grid-template-columns:1fr}.scorecard{align-items:flex-start;flex-direction:column}.facts div{grid-template-columns:1fr;gap:3px}.sectionhead{align-items:flex-start;flex-direction:column}.dialogActions button{flex:1 1 150px}}
