/* =====================================================================
   TEMA — edite SOMENTE este bloco para aplicar a identidade visual.
   Cole aqui os códigos de cor oficiais fornecidos pela sua área de marca.
   (Paleta padrão: azul corporativo neutro + turquesa; não usa marca de terceiros.)
   ===================================================================== */
:root{
  --brand-900:#0a2a5c;   /* cabeçalho global, fundo do login */
  --brand-700:#0f4c9a;   /* ações primárias, abas ativas */
  --brand-500:#1f78d1;   /* links, foco */
  --brand-100:#e6f0fb;   /* fundos suaves, linha ativa */
  --accent:#0aa5a0;      /* destaque secundário */
  --bg:#f3f5f9; --card:#ffffff; --ink:#18232f; --mut:#5f6c7b; --line:#dfe5ee;
  --ok:#14804a; --ok-bg:#dff3e8; --warn:#9a6700; --warn-bg:#fff1d6; --bad:#b42318; --bad-bg:#fde8e5;
  --radius:10px; --shadow:0 1px 2px rgba(10,42,92,.08),0 2px 8px rgba(10,42,92,.06);
}
@media (prefers-color-scheme: dark){:root{--bg:#0e1621;--card:#16202d;--ink:#e7edf5;--mut:#9aa7b6;--line:#26334a;--brand-100:#16304f;--ok-bg:#12331f;--warn-bg:#3a2d0a;--bad-bg:#3b1612}}

*{box-sizing:border-box}
body{margin:0;font:14px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--ink)}
a{color:var(--brand-500)}
h1{font-size:22px;margin:4px 0 12px}h2{font-size:16px;margin:18px 0 8px}
code{background:var(--brand-100);padding:1px 5px;border-radius:4px;font-size:12px}

/* ---------- Cabeçalho global (estilo Salesforce) ---------- */
.gh{background:var(--brand-900);color:#fff;display:flex;align-items:center;gap:14px;padding:8px 16px;position:sticky;top:0;z-index:20}
.gh .logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:700;font-size:16px;white-space:nowrap}
.gh .logo i{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--brand-500));display:inline-block}
.gh .logo small{display:block;font-weight:400;font-size:11px;opacity:.75;line-height:1}
.gh form.search{flex:1;max-width:560px;margin:0 auto}
.gh form.search input{width:100%;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);color:#fff;padding:7px 12px;border-radius:8px}
.gh form.search input::placeholder{color:rgba(255,255,255,.7)}
.gh form.search input:focus{background:#fff;color:var(--ink);outline:2px solid var(--accent)}
.gh .right{display:flex;align-items:center;gap:8px;margin-left:auto}
details.menu{position:relative}
details.menu>summary{list-style:none;cursor:pointer;padding:6px 10px;border-radius:8px;background:rgba(255,255,255,.14);color:#fff;white-space:nowrap}
details.menu>summary::-webkit-details-marker{display:none}
details.menu[open]>summary{background:rgba(255,255,255,.28)}
details.menu .pop{position:absolute;right:0;top:calc(100% + 6px);min-width:230px;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:6px;z-index:30}
details.menu .pop a,details.menu .pop button{display:block;width:100%;text-align:left;background:none;color:var(--ink);border:0;padding:8px 10px;border-radius:6px;text-decoration:none;cursor:pointer;font:inherit}
details.menu .pop a:hover,details.menu .pop button:hover{background:var(--brand-100)}
details.menu .pop hr{border:0;border-top:1px solid var(--line);margin:6px 0}
.avatar{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;font-size:12px;margin-right:6px}

/* ---------- Abas de navegação ---------- */
.tabs{background:var(--card);border-bottom:1px solid var(--line);display:flex;gap:2px;padding:0 12px;overflow-x:auto;white-space:nowrap}
.tabs a{padding:11px 14px;text-decoration:none;color:var(--ink);border-bottom:3px solid transparent;font-weight:500}
.tabs a:hover{background:var(--brand-100)}
.tabs a.on{color:var(--brand-700);border-bottom-color:var(--brand-700);font-weight:700}
.demo{background:var(--warn-bg);color:var(--warn);padding:5px 16px;font-size:12px;border-bottom:1px solid var(--line)}
main{max-width:1280px;margin:0 auto;padding:14px 16px 40px}
.crumbs{font-size:12px;color:var(--mut);margin-bottom:4px}.crumbs a{color:var(--mut)}

/* ---------- Componentes ---------- */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin-bottom:14px;box-shadow:var(--shadow)}
.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}
.kpi b{display:block;font-size:26px;color:var(--brand-700)}.kpi span{color:var(--mut);font-size:12px}
a.kpi{text-decoration:none;color:inherit;display:block}a.kpi:hover{border-color:var(--brand-500)}
.tw{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}
th,td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{background:var(--brand-100);font-weight:600;white-space:nowrap}tr:hover td{background:rgba(31,120,209,.04)}
.badge{display:inline-block;padding:1px 9px;border-radius:99px;font-size:12px;background:var(--brand-100);color:var(--brand-700);white-space:nowrap}
.b-alta,.b-venc,.b-bad{background:var(--bad-bg);color:var(--bad)}.b-media,.b-prox,.b-warn{background:var(--warn-bg);color:var(--warn)}.b-ok{background:var(--ok-bg);color:var(--ok)}
.flash{padding:10px 14px;border-radius:8px;margin-bottom:10px}.flash.ok{background:var(--ok-bg);color:var(--ok)}.flash.erro{background:var(--bad-bg);color:var(--bad)}
form.inline{display:flex;flex-wrap:wrap;gap:8px;align-items:end}label{display:block;font-size:12px;color:var(--mut);margin-bottom:2px}
input,select,textarea,button{font:inherit;padding:7px 9px;border:1px solid #bcc7d6;border-radius:7px;background:var(--card);color:var(--ink);max-width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--brand-500);outline-offset:0}
button,.btn{background:var(--brand-700);color:#fff;border:0;cursor:pointer;text-decoration:none;display:inline-block;padding:8px 14px;border-radius:7px}
button:hover,.btn:hover{background:var(--brand-900)}
button.sec,.btn.sec{background:var(--brand-100);color:var(--brand-700)}button.sec:hover,.btn.sec:hover{background:#d3e3f7}
button.danger{background:var(--bad)}button[disabled]{opacity:.5;cursor:not-allowed}
.mut{color:var(--mut)}.bar{display:flex;align-items:center;gap:8px;margin:3px 0;font-size:13px}
.bar i{display:block;height:14px;background:var(--brand-500);border-radius:3px;min-width:2px}.bar span:first-child{width:190px;flex:none}
.two{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.hist{font-size:13px;border-left:3px solid var(--line);padding-left:10px;margin:6px 0}
.queue{list-style:none;margin:0;padding:0}.queue li{border-bottom:1px solid var(--line)}
.queue a{display:flex;justify-content:space-between;align-items:center;padding:9px 4px;text-decoration:none;color:var(--ink)}
.queue a:hover{background:var(--brand-100)}.queue .n{min-width:30px;text-align:center;padding:1px 8px;border-radius:99px;background:var(--brand-700);color:#fff;font-weight:700}
.queue .n.zero{background:var(--line);color:var(--mut)}

/* ---------- Path (etapas do registro, como no Salesforce) ---------- */
.path{display:flex;flex-wrap:wrap;gap:0;margin:8px 0 14px;padding:0;list-style:none}
.path li{position:relative;background:var(--line);color:var(--mut);padding:8px 16px 8px 26px;font-size:12px;font-weight:600;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%,12px 50%);margin-right:-6px}
.path li:first-child{padding-left:16px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%)}
.path li.done{background:var(--ok);color:#fff}.path li.cur{background:var(--brand-700);color:#fff}
.page-head{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}

/* ---------- Login ---------- */
.login-bg{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,var(--brand-900),var(--brand-700))}
.login-card{width:100%;max-width:400px;background:var(--card);border-radius:14px;padding:28px;box-shadow:0 10px 40px rgba(0,0,0,.3)}
.login-card .logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:20px;color:var(--brand-900)}
.login-card .logo i{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--accent),var(--brand-500));display:inline-block}
.login-card p.sub{color:var(--mut);margin:6px 0 18px}.login-card input{width:100%;margin-bottom:12px;padding:10px}
.login-card button{width:100%;padding:11px;font-weight:600}
.login-card .note{font-size:12px;color:var(--mut);margin-top:14px;text-align:center}

@media(max-width:700px){.gh{flex-wrap:wrap}.gh form.search{order:3;max-width:none;flex-basis:100%}.bar span:first-child{width:110px}main{padding:10px}}

/* ---------- Início: células de Customer Operations ---------- */
.tabs .sep{width:1px;background:var(--line);margin:8px 6px}
.tabs .mod{align-self:center;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);padding:0 6px}
.hero{margin:6px 0 16px}
.tiles{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1180px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.tiles{grid-template-columns:1fr}}
.tile{--tc:var(--brand-700);display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-top:5px solid var(--tc);border-radius:var(--radius);padding:16px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .12s,box-shadow .12s}
.tile:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(10,42,92,.18)}
.tile .th{display:flex;align-items:center;gap:10px}
.tile .mono{width:40px;height:40px;flex:none;border-radius:11px;background:var(--tc);color:#fff;display:grid;place-items:center;font-weight:700;letter-spacing:.04em;font-size:13px}
.tile .tt{font-size:18px;font-weight:700}
.tile .tg{display:flex;flex-wrap:wrap;gap:6px;min-height:0}.tile .tg:empty{display:none}
.tile .tg em{font-style:normal;font-size:11px;font-weight:600;color:var(--warn);background:var(--warn-bg);padding:2px 8px;border-radius:99px}
.tile .tg em.ex{color:var(--mut);background:var(--brand-100)}.tile .tg em.lock{color:var(--bad);background:var(--bad-bg)}
.tile .td{color:var(--mut);font-size:13px;flex:1}
.tile .tk{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 10px}.tile .tk span{display:flex;flex-direction:column;font-size:11px;color:var(--mut);line-height:1.2}.tile .tk b{font-size:22px;color:var(--tc)}
.tile .go{color:var(--tc);font-weight:600;font-size:13px}
.tile.locked{opacity:.6;cursor:not-allowed}.tile.locked:hover{transform:none;box-shadow:var(--shadow)}
.tile.soon{opacity:1}.tile.add{border-style:dashed;border-top-style:dashed;background:transparent;box-shadow:none;cursor:default;--tc:var(--mut)}.tile.add:hover{transform:none;box-shadow:none}

/* ---------- Painel de saúde ---------- */
.pagehead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.pagehead h1{margin:0}.pagehead .actions{display:flex;gap:8px;flex-wrap:wrap}.pagehead form{margin:0}
.health{display:flex;gap:18px;align-items:center;border-left:6px solid var(--ok)}
.health.s-warn{border-left-color:#d19a1a}.health.s-bad{border-left-color:var(--bad)}
.score{display:flex;align-items:baseline;gap:2px}.score b{font-size:48px;line-height:1;color:var(--brand-700)}.score span{color:var(--mut)}
.hinfo{flex:1;min-width:0}.hl{font-size:16px;font-weight:600;margin-bottom:2px}
.hgrid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.hk{position:relative;display:flex;flex-direction:column;gap:2px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow)}
.hk:hover{border-color:var(--brand-500)}.hk b{font-size:26px;color:var(--brand-700)}.hk .hn{font-weight:600;font-size:12.5px}.hk .hd{font-size:11.5px;color:var(--mut)}
.hk .dot{position:absolute;top:12px;right:12px;width:10px;height:10px;border-radius:50%;background:var(--ok)}
.hk.s-warn .dot{background:#d19a1a}.hk.s-bad .dot{background:var(--bad)}.hk.s-warn b{color:var(--warn)}.hk.s-bad b{color:var(--bad)}
dialog{border:1px solid var(--line);border-radius:14px;max-width:460px;width:calc(100% - 28px);background:var(--card);color:var(--ink);padding:18px}
dialog::backdrop{background:rgba(5,15,35,.55)}dialog input,dialog select{width:100%;margin-bottom:8px}
button:disabled{opacity:.5;cursor:not-allowed}.b-warn{background:var(--warn-bg);color:var(--warn)}
@media (prefers-color-scheme: dark){button.sec,.btn.sec{color:#a9d0ff}button.sec:hover,.btn.sec:hover{background:#1d3d66}}
@media(max-width:700px){.health{flex-direction:column;align-items:flex-start;gap:8px}.hgrid{grid-template-columns:repeat(2,1fr)}.pagehead .actions{width:100%}.pagehead .actions>*{flex:1}.pagehead .actions button{width:100%}}

/* ---------- Gestão de usuários ---------- */
.ulist{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.ucard.off{opacity:.65}.uh{display:flex;align-items:center;gap:10px;margin-bottom:10px}.uh>div{flex:1;min-width:0}.uh .avatar{width:34px;height:34px;font-size:15px}
.pgrid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.pgrid select,.pgrid input{width:100%}
.demo.ro{background:var(--bad-bg);color:var(--bad)}
.tabs a,.tabs .mod{flex:none}
@media(max-width:700px){table{font-size:12px}th,td{padding:6px 7px}.tabs a{padding:10px 11px}.hero h1{font-size:19px}}
