:root{--brand:#7c3aed;--brand2:#6d28d9;--side:#14122b;--side-t:#b9b5d6;--bg:#f4f5fb;--card:#fff;--line:#e8e9f3;--muted:#6b7090}
[data-bs-theme=dark]{--bg:#0f1020;--card:#181a2e;--line:#272a45;--muted:#9aa0c3;--side:#0b0b1a}
body{background:var(--bg);font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:.93rem}
.btn-brand{background:var(--brand);border-color:var(--brand);color:#fff}.btn-brand:hover{background:var(--brand2);border-color:var(--brand2);color:#fff}
.text-brand{color:var(--brand)}
/* layout */
.shell{display:flex;min-height:100vh}
.side{width:248px;background:var(--side);color:var(--side-t);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:18px 14px;z-index:1030;transition:transform .2s}
.brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:1.15rem;padding:4px 8px 18px}
.brand i{background:var(--brand);width:36px;height:36px;border-radius:11px;display:grid;place-items:center;font-size:1.1rem}
.side a.nav-i{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;color:var(--side-t);text-decoration:none;margin-bottom:3px;font-weight:500}
.side a.nav-i:hover{background:rgba(255,255,255,.07);color:#fff}
.side a.nav-i.on{background:linear-gradient(90deg,var(--brand),#9b5cf6);color:#fff;box-shadow:0 6px 16px rgba(124,58,237,.35)}
.side .sec{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;opacity:.55;padding:14px 12px 6px}
.side .me{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding-top:12px;font-size:.85rem}
.main{margin-left:248px;flex:1;min-width:0}
.top{display:flex;align-items:center;gap:12px;padding:14px 26px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1020}
.top h1{font-size:1.15rem;margin:0;font-weight:700}
.page{padding:24px 26px 60px;max-width:1500px}
@media(max-width:991px){.side{transform:translateX(-100%)}.side.open{transform:none}.main{margin-left:0}.page{padding:16px}.top{padding:12px 16px}}
/* cards */
.cardx{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 1px 2px rgba(20,18,43,.04)}
.cardx .hd{padding:14px 18px;border-bottom:1px solid var(--line);font-weight:600;display:flex;align-items:center;gap:8px}
.cardx .bd{padding:18px}
.kpi{padding:18px;display:flex;gap:14px;align-items:center}
.kpi .ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:1.3rem}
.kpi .v{font-size:1.6rem;font-weight:700;line-height:1.1}.kpi .l{color:var(--muted);font-size:.8rem}
.c1{background:#ede9fe;color:#6d28d9}.c2{background:#dcfce7;color:#15803d}.c3{background:#fef3c7;color:#b45309}.c4{background:#dbeafe;color:#1d4ed8}.c5{background:#fee2e2;color:#b91c1c}.c6{background:#e0f2fe;color:#0369a1}
[data-bs-theme=dark] .c1{background:#2b2150}[data-bs-theme=dark] .c2{background:#12351f}[data-bs-theme=dark] .c3{background:#3b2c0b}[data-bs-theme=dark] .c4{background:#14264d}[data-bs-theme=dark] .c5{background:#3d1717}[data-bs-theme=dark] .c6{background:#0f2f3f}
/* tables & badges */
.tbl th{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl td{vertical-align:middle;border-color:var(--line)}
.tbl tbody tr{cursor:pointer}.tbl tbody tr:hover{background:rgba(124,58,237,.05)}
.av{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#fff;display:inline-grid;place-items:center;font-weight:600;font-size:.8rem;flex:none}
.sc{display:inline-block;min-width:26px;text-align:center;border-radius:8px;font-weight:700;padding:1px 7px;font-size:.78rem}
.sc-A{background:#dcfce7;color:#166534}.sc-B{background:#e0f2fe;color:#075985}.sc-C{background:#fef3c7;color:#92400e}.sc-D{background:#fee2e2;color:#991b1b}
.st{border-radius:20px;padding:3px 10px;font-size:.74rem;font-weight:600;white-space:nowrap}
.st-novo{background:#e0e7ff;color:#3730a3}.st-qualificando{background:#fef3c7;color:#92400e}.st-qualificado{background:#dcfce7;color:#166534}.st-humano{background:#ede9fe;color:#5b21b6}.st-descartado{background:#f1f5f9;color:#475569}.st-spam{background:#fee2e2;color:#991b1b}
.muted{color:var(--muted)}
/* kanban */
.kan{display:flex;gap:14px;overflow-x:auto;padding-bottom:10px}
.kcol{min-width:272px;width:272px;background:var(--card);border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;max-height:calc(100vh - 230px)}
.kcol.over{outline:2px dashed var(--brand)}
.kcol .kh{padding:12px 14px;font-weight:600;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}
.kcol .kb{padding:10px;overflow:auto;flex:1}
.kc{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:9px;cursor:grab}
.kc:hover{border-color:var(--brand)}
/* chat */
.chat{background:var(--bg);border-radius:14px;padding:14px;height:46vh;overflow:auto}
.bub{max-width:82%;padding:8px 12px;border-radius:14px;margin-bottom:8px;white-space:pre-wrap;word-break:break-word;font-size:.88rem}
.bub small{display:block;opacity:.6;font-size:.68rem;margin-top:3px}
.b-lead{background:var(--card);border:1px solid var(--line);border-top-left-radius:4px}
.b-alice{background:#7c3aed;color:#fff;margin-left:auto;border-top-right-radius:4px}
.b-equipe{background:#0ea5e9;color:#fff;margin-left:auto;border-top-right-radius:4px}
/* editor */
.tlist{max-height:calc(100vh - 250px);overflow:auto}
.ti{padding:10px 14px;border-bottom:1px solid var(--line);cursor:pointer}
.ti:hover{background:rgba(124,58,237,.06)}.ti.on{background:rgba(124,58,237,.12);border-left:3px solid var(--brand)}
.ed{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;min-height:52vh;line-height:1.55}
/* login */
.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(1200px 600px at 20% -10%,#7c3aed55,transparent),radial-gradient(900px 500px at 100% 100%,#0ea5e944,transparent),var(--side)}
.login .box{width:min(400px,92vw);background:var(--card);border-radius:22px;padding:34px;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.login .lg{width:56px;height:56px;border-radius:17px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:1.6rem;margin:0 auto 14px}
.sk{background:linear-gradient(90deg,var(--line),transparent,var(--line));background-size:200% 100%;animation:sk 1.2s infinite;border-radius:10px;height:18px}
@keyframes sk{to{background-position:-200% 0}}
.fade-in{animation:fi .25s ease}@keyframes fi{from{opacity:0;transform:translateY(6px)}}
.sw{cursor:pointer}
textarea.ed{min-height:52vh}
.bdg{font-size:.68rem}
@media print{.side,.top,#banner,.btn,select,.form-select{display:none!important}.main{margin:0!important}.page{padding:0!important}.cardx{break-inside:avoid;box-shadow:none}body{background:#fff!important}}
