:root{--bg:#f4f5f7;--surface:#fff;--border:#e3e5e8;--text:#0b0b0b;--text-2:#52514e;--muted:#8a8985;--primary:#2a78d6;--primary-2:#1c5cab;--accent:#eb6834;--ok:#0ca30c;--warn:#fab219;--danger:#e34948;--radius:10px;color:var(--text);background:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}button,input,select,textarea{font:inherit}.app{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#14213d;flex-direction:column;gap:6px;padding:20px 14px;display:flex}.sidebar .brand{letter-spacing:.3px;margin-bottom:16px;padding:0 8px;font-size:15px;font-weight:700}.sidebar .brand small{opacity:.7;font-size:12px;font-weight:400;display:block}.sidebar button{text-align:left;color:#d6dcea;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 12px}.sidebar button.active,.sidebar button:hover{color:#fff;background:#ffffff1f}.sidebar .spacer{flex:1}.sidebar .user{opacity:.8;padding:8px 12px;font-size:12px}.main{max-width:1400px;padding:24px 28px}h1{margin:0 0 16px;font-size:22px}h2{margin:0 0 10px;font-size:16px}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (width<=1000px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr 1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.kpi .label{color:var(--text-2);text-transform:uppercase;letter-spacing:.4px;font-size:12px}.kpi .value{margin-top:4px;font-size:28px;font-weight:700}.kpi .sub{color:var(--muted);margin-top:2px;font-size:12px}.btn{background:var(--primary);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-weight:600}.btn:hover{background:var(--primary-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{color:var(--text);background:#eef1f5}.btn.secondary:hover{background:#e2e6ec}.btn.danger{background:var(--danger)}.btn.ok{background:var(--ok)}.btn.lg{padding:14px 24px;font-size:16px}label.field{color:var(--text-2);flex-direction:column;gap:4px;font-size:13px;display:flex}input,select,textarea{border:1px solid var(--border);color:var(--text);background:#fff;border-radius:8px;width:100%;padding:9px 10px}textarea{resize:vertical;min-height:70px}table{border-collapse:collapse;width:100%;font-size:13.5px}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:9px 10px}th{color:var(--text-2);text-transform:uppercase;letter-spacing:.3px;font-size:12px;font-weight:600}tr:hover td{background:#fafbfc}.pill{color:var(--text-2);background:#eef1f5;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-block}.pill.na_fila,.pill.a_tocar,.pill.a_marcar{color:var(--primary-2);background:#e8f0fb}.pill.em_chamada,.pill.ligada{color:#0a7a0a;background:#e6f6ea}.pill.a_recontactar,.pill.qualificada{color:#8a5a00;background:#fff4d6}.pill.reuniao_marcada{color:#056b3a;background:#d9f2e3}.pill.nao_interessada,.pill.nao_atendeu,.pill.sem_resposta,.pill.ocupado,.pill.voicemail{color:#555;background:#f1f1f1}.pill.numero_invalido,.pill.nao_ligar,.pill.falhou,.pill.cancelada{color:#a12222;background:#fde5e5}.phase{color:var(--text-2);background:#eef1f5;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}.phase.dialing,.phase.ringing{color:var(--primary-2);background:#e8f0fb}.phase.talking{color:#0a7a0a;background:#e6f6ea;animation:1.5s infinite pulse}.phase.wrapup{color:#8a5a00;background:#fff4d6}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.scale{gap:6px;display:flex}.scale button{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:8px;width:40px;height:36px;font-weight:600}.scale button.on{background:var(--primary);color:#fff;border-color:var(--primary)}.login{place-items:center;min-height:100vh;display:grid}.login .card{width:360px}.muted{color:var(--muted);font-size:13px}.error{color:var(--danger);font-size:13px}.ok-text{color:var(--ok);font-size:13px}.log{color:var(--text-2);background:#fafbfc;border-radius:8px;max-height:160px;padding:8px;font-family:ui-monospace,monospace;font-size:12px;overflow:auto}.history{font-size:13px}.history li{margin-bottom:6px}.dropzone{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;color:var(--text-2);padding:28px}
