@font-face{font-family:"Instrument Sans";src:url(/assets/fonts/instrumentsans.woff2) format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
/* Identidade QESTO / Encaixe v1.0 — oliva #252D26, osso #F2F1E8, lima #D7E58D (pontual), sálvia #A7B4A3.
   Estados funcionais (status, erro, sucesso) NÃO usam as cores da marca. */
:root{
  --bg:#F2F1E8; --surface:#fff; --ink:#252D26; --muted:#5C675D; --line:#DAD8CA; --line-2:#E8E6DA;
  --lima:#D7E58D; --sage:#A7B4A3; --osso:#F2F1E8;
  --brand:#252D26; --brand-d:#161B17; --brand-soft:#E4EBC0;
  --side:#252D26; --side-ink:#C6CBBF; --side-hi:#F2F1E8;
  --ok:#17a34a; --err:#dc2626; --radius:12px; --shadow:0 1px 2px rgba(16,24,40,.06),0 1px 3px rgba(16,24,40,.08);
  --s-new:#64748b; --s-hot:#dc2626; --s-warm:#f59e0b; --s-cold:#2563eb; --s-weak:#94a3b8; --s-replied:#16a34a; --s-won:#0f766e; --s-lost:#9ca3af;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 "Instrument Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;font-weight:450;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--brand-d)}
h1,h2,h3{margin:0;line-height:1.25}
h1{font-size:22px;letter-spacing:-.01em} h2{font-size:15px} h3{font-size:13px}
.ic{flex:none;vertical-align:-3px}
.muted{color:var(--muted)} .small{font-size:12px} .nowrap{white-space:nowrap} .right{text-align:right}
.grow{flex:1} .row{display:flex;gap:10px;align-items:center;flex-wrap:wrap} .mt{margin-top:16px} .mb{margin-bottom:16px}

/* layout */
.app{display:grid;grid-template-columns:240px 1fr;min-height:100vh}
.side{background:var(--side);color:var(--side-ink);padding:18px 12px;position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;gap:4px}
.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 18px;color:#fff;font-weight:700;font-size:16px;letter-spacing:-.01em}
.brand img{width:176px;height:auto;display:block}
.brand{flex-direction:column;align-items:flex-start;gap:8px}
.login .brand img{width:260px}
.brand small{display:block;font-weight:500;font-size:11px;color:var(--side-ink);letter-spacing:.04em}
.nav-h{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#6b7590;padding:14px 10px 6px}
.nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;color:var(--side-ink);font-weight:500}
.nav a:hover{background:rgba(255,255,255,.06);color:var(--side-hi)}
.nav a.on{background:rgba(215,229,141,.14);color:var(--side-hi);box-shadow:inset 3px 0 0 var(--lima)}
.nav a.on .ic{color:var(--lima)}
.nav .soon{margin-left:auto;font-size:10px;background:rgba(255,255,255,.08);padding:1px 6px;border-radius:99px}
.side .foot{margin-top:auto;padding:12px 8px 0;border-top:1px solid rgba(255,255,255,.08);font-size:12px}
.side .foot b{color:#fff;display:block}
.side .foot button{background:none;border:0;color:var(--side-ink);padding:6px 0 0;cursor:pointer;font:inherit;display:flex;gap:6px;align-items:center}
.side .foot button:hover{color:#fff}
.main{min-width:0}
.top{display:flex;align-items:center;gap:12px;padding:14px 28px;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.top form[role=search]{flex:1;max-width:460px;position:relative}
.top form input[type=search]{width:100%;padding:9px 12px 9px 36px;border:1px solid var(--line);border-radius:10px;background:var(--bg);font:inherit}
.top form[role=search] .ic{position:absolute;left:11px;top:10px;color:var(--muted)}
.burger{display:none;background:none;border:0;padding:4px;cursor:pointer}
.content{padding:24px 28px 60px;max-width:none}
.page-h{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.page-h .sub{color:var(--muted);margin-top:2px}

/* cards / grid */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.card>.hd{display:flex;align-items:center;gap:8px;padding:14px 16px;border-bottom:1px solid var(--line-2)}
.card>.bd{padding:16px}
.card.flush>.bd{padding:0}
.grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))} .g3{grid-template-columns:repeat(3,minmax(0,1fr))} .g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.g-main{grid-template-columns:minmax(0,1fr) 340px}
.kpi{padding:16px}
.kpi .n{font-size:28px;font-weight:700;letter-spacing:-.02em}
.kpi .l{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.kpi a{display:block}

/* buttons / forms */
.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-weight:600;cursor:pointer;line-height:1.2}
.btn:hover{border-color:#cfd4e0;color:var(--ink);background:#fafbfd}
.btn.pri{background:var(--brand);border-color:var(--brand);color:#fff}
.btn.pri:hover{background:var(--brand-d);border-color:var(--brand-d);color:#fff}
.btn.danger{color:var(--err)} .btn.danger:hover{background:#fef2f2;border-color:#fecaca;color:var(--err)}
.btn.sm{padding:5px 10px;font-size:12px;border-radius:8px}
.btn.ghost{border-color:transparent;background:transparent}
.btn.icon{padding:6px}
label{display:block;font-size:12px;font-weight:600;color:#475066;margin-bottom:4px}
input[type=text],input[type=email],input[type=password],input[type=date],input[type=number],input[type=url],input[type=search],input[type=datetime-local],input[type=month],select,textarea,input:not([type]){
  width:100%;padding:8px 10px;border:1px solid #d5d9e4;border-radius:9px;background:#fff;font:inherit;color:var(--ink)}
textarea{resize:vertical;min-height:90px}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(37,45,38,.40);border-color:var(--brand)}
.form-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}
.c3{grid-column:span 3}.c4{grid-column:span 4}.c6{grid-column:span 6}.c8{grid-column:span 8}.c12{grid-column:span 12}
.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:end;padding:12px 16px;border-bottom:1px solid var(--line-2)}
.filters>div{min-width:130px}.filters .q{flex:1;min-width:200px}
.filters label{margin-bottom:2px;font-weight:500;color:var(--muted)}
.check{display:flex;align-items:center;gap:6px;font-weight:500;font-size:13px;color:var(--ink)}
.check input{width:auto}

/* tables */
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse}
th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:left;padding:9px 14px;border-bottom:1px solid var(--line);background:#fafbfd;white-space:nowrap}
td{padding:10px 14px;border-bottom:1px solid var(--line-2);vertical-align:middle}
tr:last-child td{border-bottom:0}
tbody tr:hover{background:#fcfcfe}
td .t{font-weight:600} td .s{color:var(--muted);font-size:12px}
.empty{padding:36px 16px;text-align:center;color:var(--muted)}
.pager{display:flex;gap:6px;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid var(--line-2);color:var(--muted)}

/* badges */
.badge{display:inline-block;padding:2px 9px;border-radius:99px;font-size:12px;font-weight:600;white-space:nowrap;background:#eef0f5;color:#475066}
.b-new{background:#eef1f6;color:var(--s-new)} .b-hot{background:#fee2e2;color:#b91c1c} .b-warm{background:#fef3c7;color:#b45309}
.b-cold{background:#dbeafe;color:#1d4ed8} .b-weak{background:#f1f5f9;color:#64748b} .b-replied{background:#dcfce7;color:#15803d}
.b-won{background:#ccfbf1;color:#0f766e} .b-lost{background:#f3f4f6;color:#9ca3af;text-decoration:line-through}
.b-alta,.b-alto{background:#fee2e2;color:#b91c1c} .b-media,.b-medio{background:#fef3c7;color:#b45309} .b-baixa,.b-baixo{background:#e0f2fe;color:#0369a1}
.b-tbc{background:#fef3c7;color:#b45309} .b-company{background:#eef2ff;color:#4338ca} .b-agency{background:#fae8ff;color:#a21caf}
.tag{display:inline-block;padding:1px 8px;border-radius:6px;background:var(--bg);color:#475066;font-size:12px}
select.st{width:auto;padding:3px 24px 3px 9px;border-radius:99px;font-weight:600;font-size:12px;border:1px solid transparent;cursor:pointer}
select.st.b-new{background-color:#eef1f6;color:var(--s-new)}select.st.b-hot{background-color:#fee2e2;color:#b91c1c}select.st.b-warm{background-color:#fef3c7;color:#b45309}
select.st.b-cold{background-color:#dbeafe;color:#1d4ed8}select.st.b-weak{background-color:#f1f5f9;color:#64748b}select.st.b-replied{background-color:#dcfce7;color:#15803d}
select.st.b-won{background-color:#ccfbf1;color:#0f766e}select.st.b-lost{background-color:#f3f4f6;color:#9ca3af}

/* status pills / tabs */
.pills{display:flex;gap:6px;flex-wrap:wrap}
.pill{padding:5px 12px;border-radius:99px;border:1px solid var(--line);background:#fff;font-weight:600;font-size:12px;color:#475066;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.pill:hover{border-color:#cbd1de;color:var(--ink)} .pill.on{background:var(--ink);border-color:var(--ink);color:#fff}
.pill .n{opacity:.65;font-weight:500}
.dot{width:8px;height:8px;border-radius:99px;display:inline-block;background:var(--s-new)}
.dot.new{background:var(--s-new)}.dot.hot{background:var(--s-hot)}.dot.warm{background:var(--s-warm)}.dot.cold{background:var(--s-cold)}
.dot.weak{background:var(--s-weak)}.dot.replied{background:var(--s-replied)}.dot.won{background:var(--s-won)}.dot.lost{background:var(--s-lost)}
.bar{display:flex;height:10px;border-radius:99px;overflow:hidden;background:var(--line-2)}
.bar i{display:block;height:100%}
.bar i.new{background:var(--s-new)}.bar i.hot{background:var(--s-hot)}.bar i.warm{background:var(--s-warm)}.bar i.cold{background:var(--s-cold)}
.bar i.weak{background:var(--s-weak)}.bar i.replied{background:var(--s-replied)}.bar i.won{background:var(--s-won)}.bar i.lost{background:var(--s-lost)}

/* flash */
.flash{padding:10px 14px;border-radius:10px;margin-bottom:14px;border:1px solid;display:flex;gap:8px;align-items:center}
.flash.ok{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.flash.err{background:#fef2f2;border-color:#fecaca;color:#991b1b}

/* lists / timeline */
.list{list-style:none;margin:0;padding:0}
.list li{display:flex;gap:12px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line-2)}
.list li:last-child{border-bottom:0}
.list .when{flex:none;width:56px;text-align:center;line-height:1.1}
.list .when b{display:block;font-size:18px}.list .when span{font-size:11px;text-transform:uppercase;color:var(--muted)}
.kv{display:grid;grid-template-columns:120px 1fr;gap:6px 12px;margin:0}
.kv dt{color:var(--muted);font-size:12px;padding-top:1px}.kv dd{margin:0;word-break:break-word}
.timeline{list-style:none;margin:0;padding:0}
.timeline li{display:flex;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line-2)}
.timeline li:last-child{border-bottom:0}
.tl-ic{flex:none;width:32px;height:32px;border-radius:99px;display:grid;place-items:center;background:var(--bg);color:#475066}
.tl-ic.email_out{background:#E4EBC0;color:var(--brand-d)}.tl-ic.email_in{background:#dcfce7;color:#15803d}.tl-ic.status{background:#eef2ff;color:#4338ca}
.tl-ic.call,.tl-ic.whatsapp{background:#e0f2fe;color:#0369a1}.tl-ic.meeting,.tl-ic.visit{background:#fae8ff;color:#a21caf}
.tl-body{min-width:0;flex:1}.tl-body .meta{color:var(--muted);font-size:12px}
.tl-body .txt{white-space:pre-wrap;margin-top:4px;color:#2b3347;max-height:240px;overflow:auto}
details.add>summary{list-style:none;cursor:pointer}details.add>summary::-webkit-details-marker{display:none}
details.add[open]>summary{margin-bottom:12px}

/* tasks */
.task{display:flex;gap:12px;align-items:flex-start;padding:11px 16px;border-bottom:1px solid var(--line-2)}
.task input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--brand);cursor:pointer}
.task.done .ttl{text-decoration:line-through;color:var(--muted)}
.task .ttl{font-weight:600}
.due{font-size:12px;font-weight:600;color:var(--muted)}.due.late{color:var(--err)}.due.today{color:var(--brand-d)}
.sidelist a{display:flex;justify-content:space-between;gap:8px;padding:8px 14px;border-radius:8px;font-weight:500}
.sidelist a:hover{background:var(--bg)}.sidelist a.on{background:var(--brand-soft);color:var(--brand-d);font-weight:700}

/* calendar */
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.cal .dow{padding:8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#fafbfd;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.cal .day{min-height:112px;padding:6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;overflow:hidden}
.cal .day.out{background:#f8f9fc}.cal .day.out .dn{color:#b4bac9}
.cal .day.today{background:var(--brand-soft)}
.cal .dn{font-size:12px;font-weight:700;margin-bottom:4px;display:flex;justify-content:space-between}
.chip{display:block;font-size:11.5px;font-weight:600;padding:2px 6px;border-radius:5px;margin-bottom:3px;background:#e8edff;color:#2a3fb1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chip.alto{background:#E4EBC0;color:#252D26}.chip.tbc{background:#fef3c7;color:#92600a;border:1px dashed #e8b84a}
.chip.cont{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-6px}
.week-h{padding:8px 16px;background:#fafbfd;font-size:12px;font-weight:700;color:#475066;border-bottom:1px solid var(--line-2);text-transform:uppercase;letter-spacing:.05em}

/* login */
.bare{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--side)}
.login{width:100%;max-width:380px;background:#fff;border-radius:16px;padding:32px;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.login .brand{color:var(--ink);padding:0 0 4px}.login .brand small{color:var(--muted)}
.login h1{font-size:18px;margin:18px 0 14px}
.login label{margin-top:12px}

@media (max-width:1100px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g-main{grid-template-columns:1fr}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){
  .app{grid-template-columns:1fr}
  .side{position:fixed;inset:0 auto 0 0;width:260px;z-index:20;transform:translateX(-100%);transition:transform .2s}
  body.nav-open .side{transform:none}
  .burger{display:block}.top{padding:12px 16px}.content{padding:16px 14px 60px}
  .g2,.g3,.g4{grid-template-columns:1fr}
  .c3,.c4,.c6,.c8{grid-column:span 12}
  .cal .day{min-height:74px}.chip{font-size:10px}
}

/* Dropdown estilizado (Tom Select) — controle de altura fixa, painel com busca interna, sem "pulos" */
.ts-wrapper{width:100%;position:relative}
.ts-wrapper.single .ts-control{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;height:38px;min-height:38px;padding:0 30px 0 10px!important;border:1px solid #d5d9e4!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important;cursor:pointer;overflow:hidden;font:inherit;color:var(--ink)}
.ts-wrapper.single .ts-control::after{content:"";position:absolute;right:12px;top:50%;width:7px;height:7px;margin-top:-6px;border:solid #8a93a8;border-width:0 2px 2px 0;transform:rotate(45deg);border-top:0!important;border-left:0!important;transition:transform .15s}
.ts-wrapper.single.dropdown-active .ts-control::after{transform:rotate(225deg);margin-top:-2px}
.ts-wrapper.single .ts-control>.item{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.ts-wrapper .it,.ts-dropdown .opt{display:flex;align-items:center;gap:8px;min-width:0}
.ts-wrapper .it span,.ts-dropdown .opt span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.ts-wrapper.focus .ts-control,.ts-wrapper.dropdown-active .ts-control{outline:2px solid rgba(37,45,38,.35);border-color:var(--brand)!important}
.ts-wrapper.single .ts-control>input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;min-width:0!important;pointer-events:none}
.ts-wrapper.ts-nosearch .ts-control>input{display:none!important}
.ts-wrapper.disabled .ts-control{opacity:.6}
.ts-dropdown{border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 38px rgba(16,24,40,.18);font:inherit;z-index:1000;margin-top:4px;overflow:hidden;min-width:190px}
.ts-dropdown .dropdown-input-wrap{padding:8px;border-bottom:1px solid var(--line-2);background:#fafbfd}
.ts-dropdown .dropdown-input{width:100%!important;border:1px solid #d5d9e4!important;border-radius:8px!important;padding:7px 10px!important;font:inherit;box-shadow:none!important;background:#fff}
.ts-dropdown .dropdown-input:focus{outline:2px solid rgba(37,45,38,.35);border-color:var(--brand)!important}
.ts-dropdown .ts-dropdown-content{max-height:288px;padding:4px}
.ts-dropdown .option{padding:8px 10px;border-radius:8px;cursor:pointer;line-height:1.3}
.ts-dropdown .option.active{background:var(--brand-soft);color:var(--ink)}
.ts-dropdown .option.selected{font-weight:600}
.ts-dropdown .option.selected::after{content:"✓";float:right;color:var(--brand);margin-left:8px}
.ts-dropdown .create,.ts-dropdown .no-results{padding:9px 10px;color:var(--muted)}
.ts-dropdown .opt .badge{margin:0}
.ts-wrapper.ts-pill{width:auto;min-width:112px;display:inline-block}
.ts-wrapper.ts-pill.single .ts-control{height:auto;min-height:0;padding:0 18px 0 0!important;border:0!important;background:transparent!important;outline:0}
.ts-wrapper.ts-pill.single .ts-control::after{right:2px;width:6px;height:6px;margin-top:-5px}
.ts-wrapper.ts-pill.single.focus .ts-control{outline:0}
.dot.alta{background:#dc2626}.dot.media{background:#f59e0b}.dot.baixa{background:#3b82f6}
.dot.stand{background:#B7791F}.dot.service{background:#6366f1}.dot.both{background:#14b8a6}
.filters .ts-wrapper{min-width:150px}
/* cabeçalhos ordenáveis */
th.sortable{padding:0}
th.sortable>a{display:flex;align-items:center;gap:5px;padding:9px 14px;color:inherit;white-space:nowrap}
th.sortable>a:hover{color:var(--ink);background:#f3f5fa}
th.sortable .si{color:#b4bac9;font-size:10px}
th.sortable.on{color:var(--brand-d)}th.sortable.on .si{color:var(--brand)}
th.sortable sup{font-size:9px;color:var(--brand)}
/* janela de prospecção por feira */
.w-late{background:#f1f2f5;color:#8a93a8}.w-late a,.w-late .t,.w-late b{color:#7b849a}
tr.w-late td,li.w-late{background:#f4f5f8}tr.w-late td{color:#8a93a8}
tr.w-service td,li.w-service{background:#fffaf0}
tr.w-ideal td,li.w-ideal{background:#f2fbf5}
li.w-late,li.w-service,li.w-ideal{border-left:3px solid transparent}
li.w-late{border-left-color:#c9ceda}li.w-service{border-left-color:#f1c76b}li.w-ideal{border-left-color:#5fc686}
.wtag{display:inline-block;padding:1px 8px;border-radius:99px;font-size:11px;font-weight:600;white-space:nowrap}
.wtag.late{background:#e6e8ee;color:#7b849a}.wtag.service{background:#fdf0cf;color:#9a6a05}.wtag.ideal{background:#d9f3e2;color:#17783f}
.chip.late{background:#e9ebf0;color:#8a93a8}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted);align-items:center}
/* prospecção */
.prospect{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:var(--side);color:var(--side-hi);border-radius:var(--radius);padding:10px 14px;margin-bottom:16px}
.prospect a{color:#fff}.prospect .btn{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff}
.prospect .btn:hover{background:rgba(255,255,255,.16);color:#fff}
.prospect .meter{flex:1;min-width:140px;height:6px;border-radius:99px;background:rgba(255,255,255,.15);overflow:hidden}
.prospect .meter i{display:block;height:100%;background:var(--brand)}
.li-btns{display:flex;gap:6px;flex-wrap:wrap}
.btn.li{border-color:#c7d7f0;background:#f2f7fd;color:#0a66c2}.btn.li:hover{background:#e4effb;color:#0a66c2;border-color:#a9c4e8}
[hidden]{display:none!important}
.b-stand{background:#F3E8C6;color:#6B4F0F}.b-service{background:#e5e7ff;color:#4338ca}.b-both{background:#d5f5ee;color:#0f766e}
.mails li.unread{background:#fffdf8}.mails li.unread .from,.mails li.unread .subj{font-weight:700}
.mrow{display:flex;gap:10px;min-width:0}.mrow .from{flex:none;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mrow .subj{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#475066}
.mailbody{white-space:pre-wrap;line-height:1.6;word-break:break-word}
/* o wrapper herda as classes do <select class="st b-x">; só o badge interno deve ter cor */
.ts-wrapper.ts-pill{background:none!important;color:inherit!important;text-decoration:none!important;border:0!important;padding:0!important}
.ts-wrapper.ts-pill .badge{display:inline-block;padding:3px 10px}
/* formulários de configuração: seções com título à esquerda e campos alinhados no grid */
.settings .sec{display:grid;grid-template-columns:220px minmax(0,1fr);gap:8px 32px;padding:22px 20px;border-bottom:1px solid var(--line-2)}
.settings .sec-t h3{font-size:14px;margin:0 0 4px}.settings .sec-t p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.45}
.fields{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px 14px;align-items:start}
.field{min-width:0;display:flex;flex-direction:column;gap:5px}
.field>label{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.field .hint{font-size:12px;color:var(--muted);line-height:1.35}
.f3{grid-column:span 3}.f4{grid-column:span 4}.f6{grid-column:span 6}.f8{grid-column:span 8}.f12{grid-column:span 12}
.switch{display:flex;align-items:center;gap:8px;height:38px;font-weight:500;font-size:14px;color:var(--ink);cursor:pointer}
.switch input{width:auto;accent-color:var(--brand);width:18px;height:18px}
.settings .actions{display:flex;gap:10px;align-items:center;padding:16px 20px;flex-wrap:wrap}
@media (max-width:900px){.settings .sec{grid-template-columns:1fr}.f3,.f4,.f6,.f8{grid-column:span 12}}
@media (min-width:901px) and (max-width:1200px){.f3{grid-column:span 6}}

.range-bar{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line-2);background:#fafbfd}
.range-bar .pill{padding:4px 11px}
body.loading .content{opacity:.55;transition:opacity .15s;pointer-events:none}
.ts-dropdown{max-width:calc(100vw - 16px)}

.range-groups{display:grid;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line-2);background:#fafbfd}
.range-groups .rg{display:grid;grid-template-columns:150px minmax(0,1fr);gap:10px;align-items:center}
.range-groups .rg-t{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.range-groups .rg-b{display:flex;gap:6px;flex-wrap:wrap}
.pill.chip2{flex-direction:column;align-items:flex-start;gap:0;padding:5px 12px;line-height:1.25}
.pill.chip2 small{font-size:10.5px;font-weight:500;opacity:.65}
.range-sum{padding:9px 16px;border-bottom:1px solid var(--line-2);font-size:13px;color:var(--muted)}.range-sum b{color:var(--ink)}
@media (max-width:700px){.range-groups .rg{grid-template-columns:1fr}}

.dtags{display:inline-flex;gap:4px;flex-wrap:wrap}.dtags i{font-style:normal;font-size:11px;font-weight:600;padding:1px 7px;border-radius:6px;background:#eef2ff;color:#4338ca}
.dtags i.ct{background:#dcfce7;color:#15803d}
.meter-l{height:6px;border-radius:99px;background:var(--line-2);overflow:hidden;margin-top:10px}.meter-l i{display:block;height:100%;width:0;background:var(--brand);transition:width .3s}

/* filtro de período do painel — uma única linha compacta */
.rtool{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--line-2);background:#fafbfd;flex-wrap:wrap}
.seg{display:inline-flex;background:#e9ecf3;border-radius:9px;padding:2px;flex:none}
.seg button{border:0;background:transparent;padding:5px 12px;border-radius:7px;font:inherit;font-size:12.5px;font-weight:600;color:#5a6378;cursor:pointer}
.seg button.on{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(16,24,40,.12)}
.rchips{flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.rchips::-webkit-scrollbar{display:none}
.rgrp{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;width:max-content}
.rc{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap;padding:5px 11px;border-radius:99px;border:1px solid var(--line);background:#fff;font-size:12.5px;font-weight:600;color:#475066}
.rc small{font-size:10.5px;font-weight:500;color:#98a0b3}
.rc:hover{border-color:#cbd1de;color:var(--ink)}
.rc.on{background:var(--ink);border-color:var(--ink);color:#fff}.rc.on small{color:rgba(255,255,255,.65)}
.rper input{width:140px;padding:5px 8px}
.rsum{flex:none;font-size:12.5px;color:var(--muted);white-space:nowrap}.rsum b{color:var(--ink)}
@media (max-width:700px){.rsum{width:100%}}
.grid>*{min-width:0}
.rtool .rchips{flex:1 1 220px}
.rc{padding:4px 10px}.rtool{padding:8px 14px;flex-wrap:nowrap}
.card>.hd .legend{display:none}@media (min-width:1500px){.card>.hd .legend{display:flex}}

/* painel: filtro com tamanhos fixos (sem "pulos") e uso da largura toda */
.g-main{grid-template-columns:minmax(0,1fr) 380px}
.rtool{height:60px;padding:0 14px;align-items:center;flex-wrap:nowrap;overflow:hidden}
.rchips{height:44px;display:flex;align-items:center;overflow-x:auto}
.rc{flex-direction:column;align-items:center;justify-content:center;gap:0;width:96px;height:42px;padding:0 6px;border-radius:10px;line-height:1.2;flex:none}
.rc span{font-size:12.5px}.rc small{font-size:10.5px}
.seg button{min-width:78px}
@media (max-width:1100px){.g-main{grid-template-columns:1fr}}

/* ── revisão visual ── */
.tools{padding:0}
.tool{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;align-items:center;padding:11px 16px}
.tool+.tool{border-top:1px solid var(--line-2)}
.tool .tl{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}
.tool .tc{display:flex;gap:8px;flex-wrap:wrap;align-items:center;min-width:0}
.tool .tc form{margin:0}
.form-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line-2);padding-top:14px;margin-top:2px;flex-wrap:wrap}
.form-foot .foot-opts{display:flex;align-items:center;gap:12px;flex:1;min-width:0;flex-wrap:wrap}
.form-foot .submit-main{margin-left:auto;min-width:150px;justify-content:center;padding:9px 18px}
.filters{align-items:flex-end;gap:10px}
.filters .btn{height:38px;padding-top:0;padding-bottom:0}
.filters .check{height:38px;white-space:nowrap;margin:0 4px}
table td,table th{padding-left:12px;padding-right:12px}
td .fairname{display:block;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dense td{padding-top:7px;padding-bottom:7px}
.li-btns.tight{flex-wrap:nowrap;gap:4px}.li-btns.tight .btn{padding:3px 8px}
.statuscell{display:flex;align-items:center;gap:8px;white-space:nowrap}
input[type=file]{padding:6px;background:#fafbfd}
input[type=file]::file-selector-button{margin-right:10px;border:1px solid var(--line);background:#fff;border-radius:7px;padding:5px 11px;font:inherit;font-weight:600;cursor:pointer}
input[type=file]::file-selector-button:hover{background:#f3f5fa}
@media (max-width:700px){.tool{grid-template-columns:1fr;gap:6px}}
.dtags i.rec{background:#E4EBC0;color:#252D26}
#ex-table td:first-child{max-width:220px}
/* perfis: matriz de permissões */
.permgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;min-width:0}
.permgroup{border:1px solid var(--line);border-radius:10px;padding:12px 14px;background:#fff}
.permgroup h4{margin:0 0 8px;font-size:12.5px}
.perm{display:flex;gap:9px;align-items:flex-start;padding:4px 0;font-weight:500;font-size:13px;color:var(--ink);cursor:pointer;margin:0}
.perm input{width:16px;height:16px;margin-top:2px;accent-color:var(--brand);flex:none}
.perm.dis{opacity:.55;cursor:not-allowed}
.b-builder{background:#F3E8C6;color:#6B4F0F}.b-supplier{background:#d5f5ee;color:#0f766e}

/* ── menu lateral compacto + menus do topo ── */
.side{padding:14px 10px;gap:2px}
.brand{padding:2px 8px 12px}
.nav a,.nav-group summary{padding:7px 10px;font-size:13.5px}
.nav a{display:flex;align-items:center;gap:10px;border-radius:8px}
.nav-sep{height:1px;background:rgba(255,255,255,.07);margin:7px 6px}
.nav-group summary{list-style:none;display:flex;align-items:center;gap:10px;border-radius:8px;color:var(--side-ink);font-weight:500;cursor:pointer}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group summary:hover{background:rgba(255,255,255,.06);color:var(--side-hi)}
.nav-group summary .ic:last-child{margin-left:auto;transition:transform .15s}
.nav-group[open] summary .ic:last-child{transform:rotate(180deg)}
.nav a.sub{padding:6px 10px 6px 38px;font-size:13px}
.nav-group[open]{background:rgba(255,255,255,.03);border-radius:8px;padding-bottom:3px}
.top{gap:10px}.top .hide-sm{display:inline}
.menu{position:relative}
.icon-btn{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:#fff;color:#475066;display:grid;place-items:center;cursor:pointer}
.icon-btn:hover,.icon-btn[aria-expanded=true]{background:#f3f5fa;color:var(--ink)}
.avatar{width:38px;height:38px;border-radius:99px;border:0;background:var(--lima);color:var(--ink);font:700 13px/1 inherit;cursor:pointer;letter-spacing:.02em}
.avatar:hover{filter:brightness(1.06)}
.menu-pop{position:absolute;right:0;top:calc(100% + 8px);min-width:250px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 38px rgba(16,24,40,.18);padding:6px;z-index:60}
.menu-pop[hidden]{display:none}
.menu-pop a,.menu-pop form button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:8px;font:inherit;font-size:13.5px;color:var(--ink);background:none;border:0;cursor:pointer;text-align:left}
.menu-pop a:hover,.menu-pop form button:hover{background:var(--bg);color:var(--ink)}
.menu-pop .soon{margin-left:auto;font-size:10px;background:var(--bg);color:var(--muted);padding:1px 6px;border-radius:99px}
.menu-t{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:6px 10px 4px}
.menu-sep{height:1px;background:var(--line-2);margin:5px 4px}
.menu-user{padding:8px 10px;display:grid;gap:1px;line-height:1.35}.menu-user span{color:var(--muted);font-size:12.5px}.menu-user em{font-style:normal;font-size:12px;color:var(--brand-d)}
@media (max-width:700px){.top .hide-sm{display:none}}
.top-r{display:flex;align-items:center;gap:10px;margin-left:auto;flex:none}
.top form[role=search]{flex:1 1 auto;max-width:460px}

.bell-n{position:absolute;top:-4px;right:-4px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:var(--lima);color:var(--ink);box-shadow:0 0 0 2px var(--surface);font:700 10px/17px inherit;text-align:center}
.icon-btn{position:relative}
.newslist .nt{font-weight:600;line-height:1.35;display:block}.newslist .nt:hover{color:var(--brand-d)}
.novidades{border-color:#f1c76b;background:#fffdf6}

/* toasts de novidades */
#toasts{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:10px;z-index:90;width:min(390px,calc(100vw - 36px));pointer-events:none}
.toast{pointer-events:auto;background:#fff;border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:12px;box-shadow:0 14px 34px rgba(16,24,40,.2);padding:12px 8px 12px 14px;display:flex;gap:11px;align-items:flex-start;animation:toastIn .28s ease-out}
.toast.out{opacity:0;transform:translateX(16px);transition:.18s}
.toast .ic{flex:none;color:var(--brand-d);margin-top:1px}
.toast .tb{flex:1;min-width:0;display:grid;gap:2px;line-height:1.4}.toast .tb b{font-size:13.5px}.toast .tb span{font-size:12.5px;color:var(--muted)}
.toast .tb a{font-size:12.5px;font-weight:600;color:var(--brand-d)}
.toast .x{flex:none;width:26px;height:26px;border:0;background:none;border-radius:7px;font-size:20px;line-height:1;color:#98a0b3;cursor:pointer}.toast .x:hover{background:var(--bg);color:var(--ink)}
.toast.t-fair_dated{border-left-color:#2563eb}.toast.t-fair_dated .ic{color:#2563eb}
.toast.t-news_digest{border-left-color:#6366f1}.toast.t-news_digest .ic{color:#6366f1}
.toast.more{border-left-color:#98a0b3;padding:10px 12px}
@keyframes toastIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
@media (max-width:700px){#toasts{right:10px;left:10px;width:auto;bottom:10px}}

/* QESTO: números tabulares em tabelas e contagens; lima só como destaque pontual */
table td,table th,.pill .n,.bell-n,.badge{font-variant-numeric:tabular-nums}
.btn.pri{font-weight:550}
.btn.pri:hover{background:#3A453B;border-color:#3A453B}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.tag.new,.pill.on{background:var(--lima);border-color:var(--lima);color:var(--ink)}

/* ── E-mail: etiquetas de conta, vistas, painel lateral ── */
.acc-tag{display:inline-block;padding:1px 8px;border-radius:99px;font-size:11px;font-weight:600;line-height:18px;white-space:nowrap;max-width:140px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
.acc-dot{display:inline-block;width:9px;height:9px;border-radius:99px;margin-right:6px;box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.mail-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.segs{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}
.seg{padding:6px 11px;font-size:12.5px;font-weight:550;color:var(--muted);display:inline-flex;gap:5px;align-items:center;border-right:1px solid var(--line)}
.seg:last-child{border-right:0}.seg.on{background:var(--ink);color:var(--osso)}.seg:hover{color:var(--ink)}.seg.on:hover{color:var(--osso)}
.mails li{display:flex;gap:10px;align-items:flex-start;padding:10px 14px;border-bottom:1px solid var(--line-2)}
.mails li.sel{background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--ink)}
.mails li.unread .from,.mails li.unread .subj{font-weight:700}
.mails .mrow{display:grid;gap:2px;flex:1;min-width:0}
.mails .mtop{display:flex;gap:8px;align-items:center;min-width:0}.mails .from{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}
.mails .subj{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mails .prev{color:var(--muted);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mails.summary .prev{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.cnt{background:var(--line);color:var(--ink);border-radius:99px;font-size:11px;font-weight:700;padding:0 7px;line-height:17px}
.clip{display:inline-flex;gap:3px;align-items:center;color:var(--muted)}
.mside{flex:none;align-self:center}
.mail-split{display:grid;grid-template-columns:minmax(300px,380px) 1fr;min-height:560px}
.mail-split .mail-list{border-right:1px solid var(--line);max-height:76vh;overflow:auto}
.mail-split .mails li{padding:9px 12px}
.mail-pane{max-height:76vh;overflow:auto;min-width:0}
.pane{padding:14px 18px;display:grid;gap:12px}
.pane-h{display:flex;gap:10px;align-items:flex-start}.pane-t{font-size:17px;line-height:1.3}
.msg{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.msg.out{background:#F7F8EC}
.msg>summary{list-style:none;cursor:pointer;display:flex;gap:10px;align-items:center;padding:9px 12px}.msg>summary::-webkit-details-marker{display:none}
.msg-b{padding:4px 14px 14px}
.atts{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;align-items:center}
.att{display:inline-flex;gap:8px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:6px 10px;background:var(--bg)}.att span{display:grid;line-height:1.25}.att small{color:var(--muted)}
.att:hover{border-color:var(--ink)}
.pane-box{border:1px dashed var(--line);border-radius:12px;padding:10px 12px}
.pane-reply{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--surface)}
.color-pick{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.color-pick label.sw{margin:0;cursor:pointer}
.color-pick input[type=radio]{position:absolute;opacity:0}.color-pick .sw i{display:block;width:26px;height:26px;border-radius:8px;box-shadow:0 0 0 1px rgba(0,0,0,.18)}
.color-pick input:checked+i{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink)}
.color-pick input[type=color]{width:34px;height:30px;padding:0;border:0;background:none}
.rcpt-panel{border:1px solid var(--line);border-radius:10px;padding:8px 10px;background:var(--bg);display:grid;gap:4px}
.rcpt-panel label.check{display:flex;gap:8px;align-items:flex-start}
@media (max-width:900px){.mail-split{grid-template-columns:1fr}.mail-split .mail-list{max-height:none;border-right:0}.mail-pane{max-height:none;border-top:1px solid var(--line)}}

/* campos de moeda e probabilidade */
.money{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}
.money:focus-within{outline:2px solid rgba(37,45,38,.4);border-color:var(--ink)}
.money select.cur{width:auto;border:0;border-right:1px solid var(--line);border-radius:0;background:var(--bg);padding:8px 8px;font-weight:550;outline:0}
.money .sym{display:flex;align-items:center;padding:0 4px 0 12px;color:var(--muted);font-weight:550;white-space:nowrap}
.money .mv{border:0;outline:0;flex:1;min-width:0;border-radius:0;font-variant-numeric:tabular-nums;text-align:right;padding-right:12px;background:transparent}
.prob{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.prob .chips{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}
.prob .chips button{border:0;border-right:1px solid var(--line);background:transparent;padding:8px 14px;font:inherit;font-weight:550;color:var(--muted);cursor:pointer}
.prob .chips button:last-child{border-right:0}.prob .chips button:hover{color:var(--ink);background:var(--bg)}
.prob .chips button.on{background:var(--ink);color:var(--osso)}
.prob .pv{width:150px;text-align:right;font-variant-numeric:tabular-nums}
/* "Para": etiquetas legíveis, × grande e claro */
.ts-wrapper.multi .ts-control>div.item{display:inline-flex;align-items:center;gap:6px;background:var(--brand-soft);color:var(--ink);border:1px solid #CBD79A;border-radius:8px;padding:3px 4px 3px 9px;font-weight:550;font-size:13px}
.ts-wrapper.multi .ts-control>div.item .remove{display:inline-grid;place-items:center;width:20px;height:20px;border:0!important;border-radius:6px;background:rgba(37,45,38,.12);color:var(--ink);font-size:16px;line-height:1;font-weight:700;text-decoration:none;padding:0;margin:0}
.ts-wrapper.multi .ts-control>div.item .remove:hover{background:var(--ink);color:var(--osso)}
/* lista de e-mails: data nunca cortada */
.mails .mtop{flex-wrap:wrap;row-gap:2px}
.mails .mtop .from{flex:0 1 auto;min-width:0}
.mails .mtop .grow{flex:1 1 8px;min-width:8px}
.mails .mtop .nowrap{flex:none}

/* contatos: linhas editáveis, foto */
.rows{display:grid;gap:8px;margin-bottom:8px}.rrow{display:grid;grid-template-columns:1fr 130px auto 34px;gap:8px;align-items:center}
.rrow .prim{display:flex;gap:5px;align-items:center;font-size:12.5px;white-space:nowrap;margin:0}.rrow .prim input{width:auto}
.avatar-lg{width:96px;height:96px;border-radius:99px;object-fit:cover;box-shadow:0 0 0 1px var(--line)}.avatar-lg.ph{display:grid;place-items:center;background:var(--lima);color:var(--ink);font-size:34px;font-weight:700}
.avatar-sm{width:40px;height:40px;border-radius:99px;object-fit:cover;flex:none;box-shadow:0 0 0 1px var(--line)}.avatar-sm.ph{display:grid;place-items:center;background:var(--lima);color:var(--ink);font-weight:700}
.pstar{color:#B7791F;font-size:12px}
@media (max-width:640px){.rrow{grid-template-columns:1fr 1fr}}

.fav{border:0;background:none;cursor:pointer;font-size:18px;line-height:1;padding:0 4px 0 0;color:var(--muted);vertical-align:-2px}.fav.on{color:#B7791F}.fav:hover{color:#B7791F}

/* busca global com sugestões */
.top form[role=search]{position:relative}
.gsug{position:absolute;left:0;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(16,24,40,.18);z-index:30;max-height:70vh;overflow:auto;padding:6px}
.gs-h{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px 10px 4px}
.gs-i{display:flex;gap:8px;align-items:baseline;padding:7px 10px;border-radius:8px;color:var(--ink)}.gs-i span{color:var(--muted);font-size:12px;margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}
.gs-i:hover,.gs-i.hi{background:var(--brand-soft)}.gs-all{display:block;padding:9px 10px;border-top:1px solid var(--line-2);margin-top:4px;font-weight:600;color:var(--ink)}

input.bad{border-color:var(--err)!important;background:#fff5f5}
.rrow.ph{grid-template-columns:96px 1fr 120px auto 34px}
.rrow select.cc{padding:8px 6px}

/* campanhas */
.bar-r{display:grid;grid-template-columns:130px 1fr 36px;gap:8px;align-items:center;font-size:12.5px;margin:4px 0}.bar-r .bl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bar-r .bt{height:9px;background:var(--line-2);border-radius:99px;overflow:hidden}.bar-r .bt i{display:block;height:100%;background:var(--ink);border-radius:99px}.bar-r .bn{text-align:right;font-weight:600}
.hours{display:grid;grid-template-columns:repeat(24,1fr);gap:3px;align-items:end;height:130px}.hr{display:flex;flex-direction:column;justify-content:flex-end;height:100%;align-items:center}.hr i{display:block;width:100%;background:var(--ink);border-radius:4px 4px 0 0;min-height:0}.hr span{font-size:10px;color:var(--muted);margin-top:3px}
.grid.g4{grid-template-columns:repeat(4,1fr)}@media (max-width:900px){.grid.g4{grid-template-columns:repeat(2,1fr)}}

/* e-mail: seleção em massa */
.mails li .mk{display:flex;align-items:center;padding-top:3px;margin:0}.mails li .mk input{width:16px;height:16px;accent-color:var(--ink);cursor:pointer}
.bulkbar{display:flex;gap:10px;align-items:center;padding:8px 14px;background:var(--brand-soft);border-bottom:1px solid var(--line)}
/* avisos locais (envio em segundo plano) */
.toast.tl .spin{width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--ink);border-radius:99px;animation:sp .8s linear infinite;flex:none;margin-top:2px}
@keyframes sp{to{transform:rotate(360deg)}}
.toast.tl.ok{border-left-color:#16a34a}.toast.tl.err{border-left-color:var(--err)}

.tipi{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid var(--line,#ccc);font:600 10px/1 serif;font-style:italic;color:var(--muted,#888);cursor:help;position:relative;flex:none}
.tipi:hover::after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);width:max-content;max-width:280px;padding:7px 10px;border-radius:6px;background:#1f2937;color:#fff;font:400 12px/1.4 system-ui,sans-serif;font-style:normal;z-index:80;white-space:normal;text-align:left;box-shadow:0 4px 14px rgba(0,0,0,.2)}

#drawer-ov{position:fixed;inset:0;background:rgba(15,23,42,.35);z-index:90}
#drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,96vw);background:var(--card,#fff);z-index:91;box-shadow:-8px 0 30px rgba(0,0,0,.18);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .22s ease}
#drawer.open{transform:none}#drawer[hidden],#drawer-ov[hidden]{display:none}
#drawer>header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line)}#drawer-b{overflow:auto;flex:1}
.comm-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:10px 14px;border-bottom:1px solid var(--line)}.comm-kpi div{display:grid}.comm-kpi b{font-size:20px}.comm-kpi span{font-size:11px;color:var(--muted)}
.comm-list li{padding:0}.comm-row{all:unset;box-sizing:border-box;display:flex;gap:10px;align-items:flex-start;width:100%;padding:9px 14px;cursor:pointer;border-bottom:1px solid var(--line)}.comm-row:hover{background:rgba(127,127,127,.08)}
.comm-row .grow{display:grid;gap:2px}.comm-row .dir{font-weight:700;width:16px;color:var(--muted)}.comm-row .dir.in{color:#16a34a}
.comm-row .chips{display:flex;gap:6px;flex-wrap:wrap}.chips i{font-style:normal;font-size:11px;padding:1px 7px;border-radius:99px;background:rgba(127,127,127,.15)}.chips i.ok{background:rgba(22,163,74,.15);color:#15803d}.chips i.new{background:rgba(37,99,235,.15);color:#1d4ed8}

/* gaveta: páginas de formulário reaproveitadas, sem cabeçalho de página */
#drawer{width:min(760px,96vw)}
#drawer.wide{width:min(1000px,96vw)}
#drawer-b{padding:0;outline:0}
#drawer-b .page-h h1,#drawer-b .page-h .sub,#drawer-b .page-h [data-back]{display:none}
#drawer-b .page-h:not(:has(.btn:not([data-back]))){display:none}
#drawer-b .page-h{padding:12px 22px 0;margin:0}
#drawer-b .card{border:0;box-shadow:none;border-radius:0;background:transparent}
#drawer-b form.settings>.hd:first-of-type{display:none}
#drawer-b form.card>.bd{padding:18px 22px}
#drawer-b form.card>.hd:last-child,#drawer-b form.card>.ft,#drawer-b .settings>.bd:last-child{position:sticky;bottom:0;z-index:2;background:var(--surface);border-top:1px solid var(--line);padding:12px 22px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
#drawer-b .flash{margin:14px 22px 0}
#drawer-b .grid.g-main{grid-template-columns:1fr;padding:0 0 12px}
#drawer-b .sec{display:block!important;padding:16px 22px!important;border-top:1px solid var(--line)}
#drawer-b .sec:first-of-type{border-top:0}
#drawer-b .sec-t{margin-bottom:10px}#drawer-b .sec-t h3{font-size:14px;margin:0 0 2px}#drawer-b .sec-t p{font-size:12px;margin:0;color:var(--muted)}
#drawer-b .settings .fields{display:grid!important;grid-template-columns:repeat(12,1fr);gap:12px}
#drawer-b .settings .field{grid-column:span 12;min-width:0}#drawer-b .settings .field.f6{grid-column:span 6}
#drawer-b .settings textarea{min-height:240px!important;width:100%}
#drawer-b .pane{padding:18px 22px}
#drawer>header{padding:14px 22px}#drawer>header b{font-size:15px}#drawer [data-drawer-close]{font-size:22px;line-height:1;padding:2px 10px}
body.drawer-open{overflow:hidden}
@media (max-width:700px){#drawer{width:100vw}#drawer-b form.card>.bd,#drawer-b .sec{padding:14px 16px!important}#drawer-b .settings .field.f6{grid-column:span 12}}

/* rodapé de formulário e formulários rápidos */
.card>.ft{display:flex;gap:8px;align-items:center;padding:12px 16px;border-top:1px solid var(--line-2)}
.c5{grid-column:span 5}.c9{grid-column:span 9}
@media (max-width:820px){.c5,.c9{grid-column:span 12}}
kbd{margin-left:auto;font:600 10.5px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:2px 5px;background:var(--bg)}
.top .menu .btn.pri[aria-expanded=true]{background:var(--brand-d)}
.pill[aria-pressed]{transition:background .12s}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.filters .more-btn{height:38px;color:var(--muted)}.filters .more-btn[aria-expanded=true]{color:var(--ink)}
.menu-pop form{margin:0}
.menu-pop .danger-item{color:var(--err)!important}.menu-pop .danger-item:hover{background:#fef2f2!important}
.page-h .menu-pop{min-width:240px}
.field>label:has(.tipi){overflow:visible}.sec-t h3 .tipi{vertical-align:1px;margin-left:4px}
/* barra de pesquisa em segundo plano (compacta) */
.jobbox .jb-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 16px}
.jobbox .jb-st{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:46ch}
.jobbox .jb-bar{flex:0 1 160px;margin:0}
.jobbox .jb-log{padding:0 16px 8px}.jobbox .jb-log summary{cursor:pointer;width:max-content}
.jobbox .jb-log [data-job=log]{max-height:130px;overflow:auto;margin-top:6px}
.jobbox:not(:has([data-job=log]:not([hidden]))) .jb-log{display:none}
.kpis .kpi{display:block;color:inherit;transition:border-color .12s}.kpis .kpi:hover{border-color:var(--ink)}
.kpis .kpi .s{font-size:12px;color:var(--muted)}
.kpis .kpi.warn .n{color:var(--err)}.kpis .kpi.hi{box-shadow:inset 3px 0 0 var(--lima),var(--shadow)}
/* novidades recolhidas */
.toast-pill{display:none;pointer-events:auto;align-self:flex-end;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:99px;padding:7px 13px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;box-shadow:0 6px 18px rgba(16,24,40,.14)}
.toast-pill:hover{border-color:var(--ink)}
#toasts.min .toast[data-id],#toasts.min .toast.more{display:none}
#toasts.min .toast-pill{display:inline-flex}
@media (max-width:600px){.comm-kpi{grid-template-columns:repeat(2,1fr)}.top{gap:6px;padding:10px 12px}.top-r{gap:6px}.top form[role=search]{min-width:0}.page-h h1{font-size:19px}}

/* botões segmentados do e-mail: o .seg de cápsula (acima) vazava fundo/padding */
.segs>.seg{background:transparent;border-radius:0;padding:6px 11px}.segs>.seg.on{background:var(--ink)}
/* rótulos de status sempre centralizados */
.badge{text-align:center}.ts-wrapper.ts-pill .item,.ts-wrapper.ts-pill .badge{text-align:center}.ts-wrapper.ts-pill .badge{display:flex;justify-content:center;min-width:92px}
.pill{justify-content:center}
/* diálogo de confirmação */
.qd-ov{position:fixed;inset:0;background:rgba(15,23,42,.45);display:flex;align-items:center;justify-content:center;z-index:200;animation:qdf .12s}
.qd{background:var(--card,#fff);color:var(--ink);border-radius:14px;padding:22px 24px 18px;width:min(440px,92vw);box-shadow:0 20px 60px rgba(0,0,0,.3);animation:qdp .14s}
.qd h3{margin:0 0 8px;font-size:17px}.qd p{margin:0 0 14px;color:var(--muted);font-size:14px;line-height:1.5;max-height:50vh;overflow:auto}
.qd-in{display:flex;align-items:center;gap:8px;margin:6px 0 14px}.qd-in input{flex:1}.qd-in span{color:var(--muted);font-weight:600}
.qd-b{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.btn.danger.solid{background:var(--err,#dc2626);border-color:var(--err,#dc2626);color:#fff}
@keyframes qdf{from{opacity:0}}@keyframes qdp{from{opacity:0;transform:translateY(8px) scale(.98)}}
/* painel Sistema */
.sys-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-bottom:18px}
.sys-kpi{background:var(--card,#fff);border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:grid;gap:4px}
.sys-kpi span{font-size:12px;color:var(--muted)}.sys-kpi b{font-size:24px;line-height:1.1;letter-spacing:-.01em}
.sys-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:18px;align-items:start}
.sys-card{background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;padding:20px 22px;overflow:hidden}
.sys-card h2{font-size:15px;margin:0 0 6px}
.sys-list{list-style:none;margin:0;padding:0}
.sys-list li{display:flex;align-items:center;gap:14px;padding:13px 0;border-top:1px solid var(--line)}
.sys-list li:first-child{border-top:0}
.sys-main{flex:1;min-width:0;display:grid;gap:3px}.sys-main b{font-size:14px;font-weight:600}
.sys-list small{font-size:12px;color:var(--muted);line-height:1.4}
.sys-chip{flex:none;font-size:12px;font-weight:600;padding:4px 11px;border-radius:99px;background:rgba(127,127,127,.14);color:var(--muted);display:inline-flex;align-items:center;gap:6px}
.sys-chip.run{background:rgba(37,99,235,.14);color:#1d4ed8}.sys-chip .spin{width:10px;height:10px;border-width:2px}
.sys-dot{flex:none;width:10px;height:10px;border-radius:50%}.sys-dot.ok{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.15)}.sys-dot.bad{background:#dc2626;box-shadow:0 0 0 4px rgba(220,38,38,.15)}
.sys-prog{display:grid!important;gap:7px;align-items:stretch!important}
.sys-prog-h{display:flex;justify-content:space-between;gap:12px;font-size:14px}.sys-prog-h span{font-weight:600}
.sys-bar{height:8px;border-radius:99px;background:rgba(127,127,127,.18);overflow:hidden}.sys-bar i{display:block;height:100%;border-radius:99px;background:var(--brand,#252D26);transition:width .4s}
.sys-alert{background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.3);border-radius:14px;padding:14px 18px;margin-bottom:18px;display:grid;gap:4px;font-size:13px}
