@import url('https://fonts.googleapis.com/css2?family=Russo+One&family=Poppins:wght@300;400;500;600;700;800&display=swap');
:root{
  --navy:#060036; --navy2:#0a0752; --celeste:#44BCF9; --fucsia:#E63289; --amarillo:#FFDC00; --aqua:#E63289;
  --ink:#0b0a2e; --muted:#5b6472; --line:#e6e8ee; --bg:#f4f6fb; --card:#fff;
  --title:"Russo One",system-ui,sans-serif; --body:"Poppins",system-ui,sans-serif;
  --good:#16a34a; --warn:#e0632b; --shadow:0 8px 28px rgba(6,0,54,.08);
  /* estados */
  --s-nuevo:#64748b; --s-contactado:#0891B2; --s-demo:#7c3aed; --s-piloto:#2563eb; --s-propuesta:#d97706; --s-ganado:#16a34a; --s-perdido:#dc2626;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{font-family:var(--body);color:var(--ink);background:var(--bg);font-size:14px;line-height:1.45}
button{font-family:inherit;cursor:pointer}
a{color:var(--fucsia);text-decoration:none}
.hidden{display:none!important}

/* ---------- Wordmark Campvs (CAMP[V]S) ---------- */
.wordmark{font-family:var(--title);color:#fff;font-size:1.3rem;letter-spacing:.03em;display:inline-flex;align-items:center;line-height:1;white-space:nowrap}
.wordmark .vtile{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:#fff;color:var(--fucsia);margin:0 2px;padding-top:1px}
.gate-mark{font-size:2.1rem}
.gate-mark .vtile{width:42px;height:42px;border-radius:12px}

/* ---------- Gate ---------- */
#gate{position:fixed;inset:0;z-index:100;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:#fff}
#gate .logo{height:96px}
#gate h1{font-family:var(--title);font-size:24px;margin:6px 0 0}
#gate p{color:#bcd0ff;font-size:13px;margin:0}
#gate .row{display:flex;gap:8px;margin-top:8px}
#gate input{border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff;border-radius:10px;padding:10px 14px;font-size:15px;outline:none}
.pwrap{position:relative;display:inline-flex;align-items:center}
.pwrap input{padding-right:40px}
.pwrap .eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:0;font-size:16px;line-height:1;padding:4px;cursor:pointer;opacity:.75;filter:grayscale(1) brightness(1.6)}
.pwrap .eye:hover{opacity:1}
#gate button{background:var(--fucsia);color:#fff;border:0;border-radius:10px;padding:10px 18px;font-weight:700}
#gate .err{color:#ff9db2;font-size:12px;height:14px}

/* ---------- Topbar ---------- */
.top{position:sticky;top:0;z-index:40;background:var(--navy);color:#fff;display:flex;align-items:center;gap:14px;padding:9px 16px;border-bottom:3px solid var(--celeste);flex-wrap:wrap}
.top .brand{display:flex;align-items:center;gap:10px;cursor:default}
.top .brand img{height:34px}
.top .brand .t{display:flex;flex-direction:column;line-height:1;font-family:var(--title)}
.top .brand .t .a{font-size:11px;color:#fff;letter-spacing:.3px}
.top .brand .t .b{font-size:16px;color:var(--celeste);letter-spacing:.5px}
.top .sp{flex:1}
.top .ctl{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.top select,.top input{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.10);color:#fff;border-radius:9px;padding:7px 10px;font-size:13px;outline:none}
.top select option{color:#111}
.top input::placeholder{color:#c3cbe8}
.seg{display:flex;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);border-radius:9px;padding:3px}
.seg button{background:none;border:0;color:#cbd3ff;font-weight:600;font-size:12.5px;padding:6px 12px;border-radius:7px}
.seg button.on{background:var(--celeste);color:var(--navy)}
.me{display:flex;align-items:center;gap:6px;font-size:12.5px;color:#cbd3ff}
.me b{color:#fff}

/* ---------- Stats ---------- */
.stats{display:flex;gap:10px;padding:12px 16px;flex-wrap:wrap;background:#fff;border-bottom:1px solid var(--line)}
.stat{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:8px 14px;min-width:96px}
.stat .v{font-family:var(--title);font-size:20px;color:var(--navy)}
.stat .l{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}
.stat.click{cursor:pointer}
.stat.click:hover{border-color:var(--aqua)}

/* ---------- Filters ---------- */
.filters{display:flex;gap:8px;padding:10px 16px;flex-wrap:wrap;align-items:center;background:#fff;border-bottom:1px solid var(--line)}
.filters select,.filters input{border:1px solid var(--line);background:#fff;border-radius:9px;padding:7px 10px;font-size:13px;color:var(--ink);outline:none}
.filters .assign{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding-left:10px;border-left:1px solid var(--line)}
.filters .assign select{border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:12.5px;background:#fff;color:var(--ink);max-width:170px}
.asignb{background:var(--aqua);color:#fff;border:0;border-radius:8px;padding:7px 12px;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap}
.asignb:hover{background:#c81e73}
.filters .chipf{border:1px solid var(--line);background:#fff;border-radius:99px;padding:6px 12px;font-size:12.5px;color:var(--muted)}
.filters .chipf.on{background:#fdeef5;border-color:var(--aqua);color:var(--aqua);font-weight:600}
.filters .count{margin-left:auto;color:var(--muted);font-size:12.5px}
.filters .lnk{color:var(--aqua);font-size:12.5px;background:none;border:0}

/* ---------- Main ---------- */
main{padding:14px 16px 60px}

/* Tabla */
table.leads{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
table.leads th{background:#f0f3fa;color:var(--navy);font-weight:700;font-size:11.5px;text-align:left;padding:10px 12px;text-transform:uppercase;letter-spacing:.3px;cursor:pointer;white-space:nowrap}
table.leads td{padding:9px 12px;border-top:1px solid var(--line);vertical-align:middle;font-size:13px}
table.leads tr:hover td{background:#fafbff}
table.leads .nm{font-weight:600;color:var(--ink);cursor:pointer}
table.leads .nm:hover{color:var(--aqua)}
.badge{display:inline-block;padding:3px 9px;border-radius:99px;font-size:11px;font-weight:700;color:#fff;white-space:nowrap}
.cat{font-size:11.5px;color:var(--muted)}
.acts{display:flex;gap:5px}
.ic{width:30px;height:30px;border-radius:8px;border:1px solid var(--line);background:#fff;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}
.ic:hover{border-color:var(--aqua);color:var(--aqua)}
.ic.wa:hover{border-color:#25d366;color:#25d366}
.ic.del:hover{border-color:var(--fucsia);color:var(--fucsia)}
.ic.restore:hover{border-color:var(--aqua);color:var(--aqua)}
.ic[aria-disabled="true"]{opacity:.32;pointer-events:none}
.ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* Canal ya usado (autoreporte visual) */
.ic.used{background:var(--aqua);border-color:var(--aqua);color:#fff}
.ic.wa.used{background:#25d366;border-color:#25d366;color:#fff}
.ic.used:hover{color:#fff}
.ic.map:hover{border-color:var(--navy);color:var(--navy)}
.ic.map.used{background:#fff;border-color:var(--navy);color:var(--navy)}
.ic.map.used:hover{color:var(--navy)}
/* Fila / tarjeta trabajada y la última activa */
table.leads tr.worked .nm{color:var(--navy)}
table.leads tr.active td{background:#fdeef5 !important}
table.leads tr.active td:first-child{box-shadow:inset 3px 0 0 var(--aqua)}
.wtag{display:flex;align-items:center;gap:5px;margin-top:3px;font-size:10.5px;font-weight:600;color:var(--aqua);text-transform:none;letter-spacing:0}
.wtag .dot{width:6px;height:6px;border-radius:50%;background:var(--aqua);flex:none}
.pcard.active{border-color:var(--aqua);box-shadow:0 0 0 2px rgba(230,50,137,.25)}
.pcard .pmeta{display:flex;align-items:center;gap:8px;margin-left:auto}
.pcard .pmoney{font-size:12.5px;font-weight:800;color:var(--navy);white-space:nowrap;font-variant-numeric:tabular-nums}
.coltot{font-size:13px;font-weight:800;color:var(--navy);padding:7px 12px;background:#f0f3fa;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;letter-spacing:-.2px}
table.leads .mnycol{text-align:right;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums;white-space:nowrap}
/* Agenda / próxima acción */
.ntag{display:inline-flex;align-items:center;gap:4px;margin-top:3px;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:99px;text-transform:none;letter-spacing:0}
.ntag svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ntag.overdue{background:#fdeaea;color:#dc2626}
.ntag.today{background:#fff3e0;color:#d97706}
.ntag.soon{background:#fdeef5;color:var(--aqua)}
.stat.agenda{cursor:pointer}
.filters .chipf.agenda.on{background:#fff3e0;border-color:#d97706;color:#d97706}
.nextact{display:flex;gap:8px;margin-bottom:7px}
.nextact input{border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-family:inherit;font-size:13px;color:var(--ink);outline:none}
.nextact input[type=date]{flex:none;width:148px}
.nextact input[type=text]{flex:1}
.nextact input:focus{border-color:var(--aqua);box-shadow:0 0 0 3px rgba(230,50,137,.12)}
.quickd{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}
.quickd button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:5px 11px;font-size:12px;color:var(--muted);cursor:pointer}
.quickd button:hover{border-color:var(--aqua);color:var(--aqua)}
.quickd button.clr:hover{border-color:var(--fucsia);color:var(--fucsia)}
/* Personas de contacto */
.people{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}
.pempty{font-size:12px;color:var(--muted);padding:4px 2px}
.person.card{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:#fff}
.person.card .pinfo{flex:1;min-width:0}
.person.card .pname{font-size:13px;font-weight:600;color:var(--ink)}
.person.card .pcargo{font-weight:600;color:var(--aqua);font-size:11px;background:#fdeef5;padding:1px 7px;border-radius:99px;margin-left:4px}
.person.card .pcontact{font-size:11.5px;color:var(--muted);margin-top:2px;word-break:break-word}
.person.card .pcontact.none{color:#b6bccb;font-style:italic}
.person.card .pacts{display:flex;gap:5px;flex:none}
.person.card .ic{width:30px;height:30px}
.person .ic.pedit:hover{border-color:var(--aqua);color:var(--aqua)}
.person .ic.prm:hover{border-color:var(--fucsia);color:var(--fucsia)}
.person.form{border:1px solid var(--aqua);border-radius:12px;padding:10px;background:#fff5fa}
.person.form .prow1,.person.form .prow2{display:flex;gap:6px;margin-bottom:6px}
.person.form .pf{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;padding:8px 9px;font-family:inherit;font-size:12.5px;color:var(--ink);outline:none}
.person.form .pf.cargo{flex:0 0 42%}
.person.form .pf:focus{border-color:var(--aqua);box-shadow:0 0 0 3px rgba(230,50,137,.12)}
.pformbtns{display:flex;gap:8px;margin-top:2px}
.pformbtns .psave{flex:1;border:0;background:var(--aqua);color:#fff;border-radius:9px;padding:9px;font-weight:700;font-size:13px;cursor:pointer}
.pformbtns .psave:hover{background:#c81e73}
.pformbtns .pcancel{flex:0 0 40%;border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:9px;padding:9px;font-size:13px;cursor:pointer}
.addp{border:1px dashed var(--aqua);background:#fff;color:var(--aqua);border-radius:10px;padding:9px 12px;font-size:12.5px;font-weight:600;cursor:pointer;width:100%;margin-bottom:4px}
.addp:hover{background:#fdeef5}
/* Papelera */
.filters .chipf.trash.on{background:#fdeaf1;border-color:var(--fucsia);color:var(--fucsia)}
.dz{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}
.dz button{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:10px;font-size:13.5px;font-weight:600;cursor:pointer;background:#fff}
.dz button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dz button.danger{border:1px solid #f2c2d3;color:var(--fucsia)}
.dz button.danger:hover{background:var(--fucsia);color:#fff;border-color:var(--fucsia)}
.dz button.restore{border:1px solid #f3c6db;color:var(--aqua)}
.dz button.restore:hover{background:var(--aqua);color:#fff;border-color:var(--aqua)}

/* Pipeline */
.board{display:flex;gap:12px;overflow-x:auto;padding-bottom:10px}
.col{flex:0 0 260px;background:#fff;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;max-height:calc(100vh - 220px)}
.col h3{margin:0;padding:10px 12px;font-size:12.5px;font-family:var(--title);color:#fff;border-radius:13px 13px 0 0;display:flex;justify-content:space-between;align-items:center}
.col .body{padding:8px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}
.pcard{border:1px solid var(--line);border-radius:11px;padding:9px 10px;background:#fff;cursor:pointer}
.pcard:hover{border-color:var(--aqua);box-shadow:var(--shadow)}
.pcard .pn{font-weight:600;font-size:12.5px;color:var(--ink)}
.pcard .pm{font-size:11px;color:var(--muted);margin:2px 0 6px}
.pcard .prow{display:flex;justify-content:space-between;align-items:center}
.pcard .own{font-size:10px;color:var(--aqua);font-weight:600}

/* Drawer */
#drawer{position:fixed;top:0;right:0;height:100%;width:420px;max-width:94vw;background:#fff;box-shadow:-12px 0 40px rgba(6,0,54,.18);z-index:60;transform:translateX(100%);transition:transform .25s;display:flex;flex-direction:column}
#drawer.open{transform:none}
#drawer .dh{background:var(--navy);color:#fff;padding:16px}
#drawer .dh .x{position:absolute;right:14px;top:14px;background:rgba(255,255,255,.12);border:0;color:#fff;border-radius:8px;width:30px;height:30px}
#drawer .dh h2{font-family:var(--title);font-size:18px;margin:0 30px 4px 0}
#drawer .dh .cat{color:#bcd0ff;font-size:12px}
#drawer .db{padding:16px;overflow-y:auto;flex:1}
.field{margin:0 0 12px}
.field .k{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:2px}
.field .v{font-size:13.5px;color:var(--ink);word-break:break-word}
.field .v a{color:var(--aqua)}
.qacts{display:flex;gap:8px;margin:6px 0 16px;flex-wrap:wrap}
.qbtn{flex:1;min-width:84px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px;display:flex;align-items:center;justify-content:center;gap:6px;font-weight:600;font-size:12.5px;color:var(--ink)}
.qbtn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.qbtn.wa{background:#25d366;color:#fff;border-color:#25d366}
.qbtn[aria-disabled="true"]{opacity:.4;pointer-events:none}
.stagebtns{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.stagebtns button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:6px 11px;font-size:11.5px;font-weight:600;color:var(--muted)}
.stagebtns button.on{color:#fff;border:0}
.db label.lbl{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);display:block;margin:10px 0 3px}
.db select,.db textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px;font-family:inherit;font-size:13px;outline:none}
.db textarea{min-height:80px;resize:vertical}
/* Campos editables */
.db label.lbl .hint{text-transform:none;letter-spacing:0;font-weight:400;color:var(--aqua);font-size:10px}
.edit{display:flex;flex-direction:column;gap:9px;margin-bottom:6px}
.efield label{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:3px}
.efield input,.efield textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-family:inherit;font-size:13px;color:var(--ink);outline:none;background:#fff;transition:border-color .15s,box-shadow .15s}
.efield textarea{min-height:46px;resize:vertical}
.efield input:focus,.efield textarea:focus{border-color:var(--aqua);box-shadow:0 0 0 3px rgba(230,50,137,.12)}
.field.src{margin-top:12px}
.field.src .v{font-size:11.5px;color:var(--muted)}
.log{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}
.log .e{font-size:12px;color:var(--muted);padding:4px 0;border-bottom:1px dashed var(--line)}
.log .e b{color:var(--ink)}
#overlay{position:fixed;inset:0;background:rgba(6,0,54,.35);z-index:55;opacity:0;pointer-events:none;transition:opacity .25s}
#overlay.on{opacity:1;pointer-events:auto}

.sync{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--muted);white-space:nowrap}
.sync .dotc{width:8px;height:8px;border-radius:50%;background:var(--muted);flex:none}
/* Consola del vendedor */
.consb{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 12px;font-size:12.5px;font-weight:700;color:var(--navy);cursor:pointer;white-space:nowrap}
.consb:hover{border-color:var(--aqua);color:var(--aqua)}
#cOverlay,#rOverlay,#nOverlay{position:fixed;inset:0;background:rgba(6,0,54,.35);z-index:65}
#console,#reports,#newlead{position:fixed;top:0;right:0;height:100%;width:480px;max-width:96vw;background:#fff;box-shadow:-12px 0 40px rgba(6,0,54,.18);z-index:70;display:flex;flex-direction:column}
#reports{width:640px}
#console .ch,#reports .ch,#newlead .ch{background:var(--navy);color:#fff;padding:16px;position:relative}
#console .ch .x,#reports .ch .x,#newlead .ch .x{position:absolute;right:14px;top:14px;background:rgba(255,255,255,.12);border:0;color:#fff;border-radius:8px;width:30px;height:30px;cursor:pointer}
#console .ch h2,#reports .ch h2,#newlead .ch h2{font-family:var(--title);font-size:18px;margin:0 30px 4px 0}
#console .ch .cat,#reports .ch .cat,#newlead .ch .cat{color:#bcd0ff;font-size:12px}
#console .cb,#reports .cb,#newlead .cb{padding:16px;overflow-y:auto;flex:1}
#newlead .cb .lbl{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);display:block;margin:11px 0 3px;font-weight:600}
#newlead .cb>input,#newlead .cb textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px 10px;font-family:inherit;font-size:13px;outline:none}
#newlead .cb>input:focus,#newlead .cb textarea:focus{border-color:var(--aqua);box-shadow:0 0 0 3px rgba(230,50,137,.12)}
.newb{border-color:var(--aqua)!important;color:var(--aqua)!important}
.newtag{display:inline-block;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#16a34a;background:#e7f7ee;padding:1px 6px;border-radius:99px;vertical-align:middle}
/* Oportunidad de negocio */
.deal{background:#f7f9fd;border:1px solid var(--line);border-radius:12px;padding:11px;margin-bottom:6px}
.drow{display:flex;gap:8px;margin-bottom:8px}
.dfield{flex:1;min-width:0}
.dfield.mon{flex:0 0 90px}
.dfield>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.3px;color:var(--muted);margin-bottom:3px;font-weight:600}
.dfield input,.dfield select{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px 9px;font-family:inherit;font-size:13px;outline:none;background:#fff}
.dfield input:focus,.dfield select:focus{border-color:var(--aqua);box-shadow:0 0 0 3px rgba(230,50,137,.12)}
.dval{padding:8px 9px;font-size:14px;font-weight:700;color:var(--navy)}
.dsummary{font-size:12.5px;color:var(--ink);border-top:1px dashed var(--line);padding-top:8px}
.dsummary b{color:var(--aqua);font-size:14px}
.dhint{color:var(--muted);font-size:10.5px}
table.rep td.mny{text-align:right;font-variant-numeric:tabular-nums}
table.rep td.mny.won{color:#16a34a;font-weight:700}
/* Tabla de reportes */
.reptbl{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
table.rep{width:100%;border-collapse:collapse;font-size:12.5px}
table.rep th{background:#f0f3fa;color:var(--navy);text-align:center;padding:9px 6px;font-size:10.5px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}
table.rep td{padding:9px 6px;border-top:1px solid var(--line);text-align:center;color:var(--ink)}
table.rep td.nm{text-align:left;font-weight:700;white-space:nowrap}
table.rep .metaIn{width:78px;border:1px solid var(--line);border-radius:6px;padding:5px;text-align:center;font-family:inherit}
.pcell{min-width:110px}
.pbar{height:8px;background:#eef1f7;border-radius:99px;overflow:hidden;margin-bottom:3px}
.pbar span{display:block;height:100%;background:var(--aqua);border-radius:99px}
#reports .empty{padding:24px;text-align:center;color:var(--muted)}
.cintro{font-size:12px;color:var(--muted);margin:0 0 12px;line-height:1.5}
#console .cb .lbl{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);display:block;margin:11px 0 3px;font-weight:600}
#console .cb input,#console .cb textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px 10px;font-family:inherit;font-size:13px;color:var(--ink);outline:none}
#console .cb textarea{resize:vertical;line-height:1.45}
#console .cb input:focus,#console .cb textarea:focus{border-color:var(--aqua);box-shadow:0 0 0 3px rgba(230,50,137,.12)}
.chint{font-size:11px;color:var(--muted);background:#f0f3fa;border-radius:8px;padding:9px 10px;margin:12px 0;line-height:1.5}
.chint b{color:var(--aqua)}
.cbtns{display:flex;gap:8px;margin-top:8px;position:sticky;bottom:0;background:#fff;padding-top:8px}
.cprimary{flex:1;background:var(--aqua);color:#fff;border:0;border-radius:10px;padding:11px;font-weight:700;font-size:13.5px;cursor:pointer}
.cprimary:hover{background:#c81e73}
.csecondary{flex:0 0 44%;background:#fff;border:1px solid var(--line);color:var(--muted);border-radius:10px;padding:11px;font-size:12.5px;cursor:pointer}
.csecondary:hover{border-color:var(--fucsia);color:var(--fucsia)}
@media(max-width:560px){ #console{width:100%} }
#toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);background:var(--navy);color:#fff;padding:12px 18px;border-radius:12px;font-size:13px;font-weight:600;box-shadow:0 10px 30px rgba(6,0,54,.3);z-index:90;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;max-width:90vw;text-align:center}
#toast.on{opacity:1;transform:translateX(-50%) translateY(0)}
.footer{color:var(--muted);font-size:11.5px;text-align:center;padding:20px}
.footer #senderInfo b{color:var(--ink)}
.footer #senderInfo a{color:var(--aqua);cursor:pointer;text-decoration:underline}
.empty{text-align:center;color:var(--muted);padding:60px 20px}
@media(max-width:760px){
  table.leads .hide-m{display:none}
  #drawer{width:100%}
  .top .brand .t{display:none}
}
