/* DASHBOARD ALFA POLO — estilos (paleta do grupo: navy + dourado) */
:root{--navy:#1E2A4A;--navy-esc:#151D35;--ouro:#C9A962;--ouro-aa:#7A6230;--acao:#1E2A4A;--acao-hover:#2B3D6B;--acao-txt:#fff;--acao-sombra:rgba(30,42,74,.32);--texto:#22262B;--cinza:#5C646E;--borda:#E3E6EA;--gelo:#F4F5F7;--ok:#1E7B44;--alerta:#B7791F;--erro:#B02A2A;--radius:8px}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;color:var(--texto);background:var(--gelo);line-height:1.6;font-size:16px}
a{color:var(--ouro-aa)}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.topo{background:var(--navy-esc);border-bottom:4px solid var(--ouro)}
.topo-in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:70px;flex-wrap:wrap}
.marca-nome{font-family:'Inter',sans-serif;font-weight:700;font-size:1.35rem;color:#fff;letter-spacing:1px}
.marca-nome b{color:var(--ouro)}
.marca-sub{display:block;font-size:.72rem;color:#B9BEC4;letter-spacing:2.4px;text-transform:uppercase}
.menu{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:.92rem}
.menu a{color:#DDE2E8;text-decoration:none;font-weight:600}
.menu a:hover{color:var(--ouro)}
.menu-user{color:rgba(255,255,255,.88);font-size:.82rem;font-weight:600}
.menu-user:hover{color:#fff;text-decoration:underline !important} /* Build 279: nome no topo legível sobre o azul-marinho (era #8b93a3) */
.menu-sair{color:#e8b4b4!important}
main.wrap{padding:28px 20px 48px}
h1{font-family:'Inter',sans-serif;font-weight:700;color:var(--navy);font-size:1.7rem;margin:.2em 0 .6em}
h2{color:var(--navy);font-size:1.15rem;margin:1.4em 0 .5em}
.cartao{background:#fff;border:1px solid var(--borda);border-radius:var(--radius);padding:22px 24px;margin-bottom:20px}
.flash{padding:12px 16px;border-radius:var(--radius);margin-bottom:16px;font-weight:600}
.flash-ok{background:#E7F5EC;color:var(--ok);border:1px solid #BEE3CC}
.flash-erro{background:#FBEAEA;color:var(--erro);border:1px solid #EFC4C4}
.flash-alerta{background:#FDF3E3;color:var(--alerta);border:1px solid #F0DBB4}
label{display:block;font-weight:700;color:var(--navy);font-size:.88rem;margin:12px 0 4px}
input,select,textarea{width:100%;padding:10px 12px;border:1.5px solid var(--borda);border-radius:6px;font:inherit;background:#fff}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--ouro)}
.linha-campos{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.check{display:flex;align-items:flex-start;gap:8px;margin-top:10px;font-size:.92rem}
.check input{width:auto;margin-top:4px}
.btn{display:inline-block;background:var(--acao);color:var(--acao-txt);font-weight:800;padding:11px 26px;border:0;border-radius:6px;cursor:pointer;font-size:.95rem;text-decoration:none;margin-top:14px}
.btn:hover{filter:brightness(.96)}
.btn-claro{background:#fff;border:1.5px solid var(--borda);color:var(--navy)}
table.lista{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--borda);border-radius:var(--radius);overflow:hidden}
.lista th{background:var(--navy);color:#fff;text-align:left;padding:10px 12px;font-size:.85rem}
.lista td{padding:10px 12px;border-top:1px solid var(--borda);font-size:.92rem;vertical-align:top}
.lista tr:nth-child(even) td{background:#FAFBFC}
.tag{display:inline-block;padding:3px 10px;border-radius:100px;font-size:.76rem;font-weight:700;white-space:nowrap}
.tag-verde{background:#E7F5EC;color:var(--ok)}
.tag-amarela{background:#FDF3E3;color:var(--alerta)}
.tag-vermelha{background:#FBEAEA;color:var(--erro)}
.tag-cinza{background:var(--gelo);color:var(--cinza)}
.tag-navy{background:#E8ECF5;color:var(--navy)}
.tag-azul{background:#1D6FD6;color:#fff}
.modal-fundo{position:fixed;inset:0;background:rgba(21,29,53,.55);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}
.modal{background:#fff;border-radius:10px;max-width:460px;width:100%;padding:28px 30px;text-align:center;border-top:5px solid var(--ouro)}
.modal h2{margin:0 0 10px}
.hist{list-style:none;margin:0;padding:0}
.hist li{border-left:3px solid var(--ouro);padding:8px 14px;margin-bottom:12px;background:#fff;border-radius:0 6px 6px 0;border-top:1px solid var(--borda);border-right:1px solid var(--borda);border-bottom:1px solid var(--borda)}
.hist .quando{font-size:.78rem;color:var(--cinza)}
.hist .interno{border-left-color:#9aa3b5}
.mini{font-size:.82rem;color:var(--cinza)}
.consulta-form{max-width:520px;margin:0 auto}
.centro{text-align:center}
.rodape-app{background:var(--navy-esc);color:#B9BEC4;font-size:.82rem;padding:16px 0;margin-top:30px}
.rodape-app a{color:var(--ouro)}
@media(max-width:700px){.linha-campos{grid-template-columns:1fr}}

/* --- dashboard: complementos --- */
.menu a.ativo{color:var(--ouro)}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin:6px 0 20px}
.kpi{background:#fff;border:1px solid var(--borda);border-left:5px solid var(--navy);border-radius:var(--radius);padding:14px 16px}
.kpi b{display:block;font-size:1.9rem;line-height:1;color:var(--navy)}
.kpi span{font-size:.8rem;color:var(--cinza)}
.kpi-verde{border-left-color:var(--ok)}.kpi-verde b{color:var(--ok)}
.kpi-amarelo{border-left-color:var(--alerta)}.kpi-amarelo b{color:var(--alerta)}
.kpi-vermelho{border-left-color:var(--erro)}.kpi-vermelho b{color:var(--erro)}
.kpi-ouro{border-left-color:var(--ouro)}.kpi-ouro b{color:var(--ouro-aa)}
.acoes{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.acoes .btn{margin-top:0}
.btn-pequeno{padding:7px 14px;font-size:.82rem}
.btn-wa{background:#25D366;color:#fff}
.btn-perigo{background:#fff;border:1.5px solid #EFC4C4;color:var(--erro)}
.cab-pagina{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.filtro{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:14px}
.filtro label{margin:0 0 4px}
.filtro input,.filtro select{min-width:200px}
.filtro .btn{margin-top:0}
.lista-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 18px}
form.inline{display:inline}
.ajuda{font-size:.82rem;color:var(--cinza);margin-top:4px}
.renov-lista label{display:flex;gap:10px;align-items:flex-start;font-weight:500;border:1px solid var(--borda);border-radius:6px;padding:10px 12px;margin:6px 0;background:#fff}
.renov-lista input{width:auto;margin-top:4px}
.hero-publico{background:var(--navy);color:#fff;border-radius:var(--radius);padding:26px 28px;margin-bottom:20px;border-bottom:4px solid var(--ouro)}
.hero-publico h1{color:#fff;margin:0 0 6px}
.hero-publico p{margin:0;color:#DDE2E8}
@media(max-width:700px){.lista-3{grid-template-columns:1fr}}
/* --- ERP: menu de aplicativos (canto superior esquerdo, estilo Odoo) --- */
.topo-in{gap:22px}
.apps{position:relative}
.apps-btn{display:flex;align-items:center;gap:10px;background:transparent;border:0;color:#fff;font:inherit;font-weight:700;font-size:1rem;cursor:pointer;padding:8px 10px;border-radius:6px}
.apps-btn:hover{background:rgba(255,255,255,.08)}
.apps-grid{display:grid;grid-template-columns:repeat(3,5px);gap:3px}
.apps-grid i{width:5px;height:5px;background:var(--ouro);border-radius:1px;display:block}
.apps-seta{color:#9aa3b5;font-size:.8rem}
.apps-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;background:#fff;border:1px solid var(--borda);border-radius:8px;box-shadow:0 14px 40px rgba(21,29,53,.25);min-width:260px;max-height:calc(100vh - 90px);overflow-y:auto;z-index:100;padding:8px 0}
.apps-menu.aberto{display:block}
.apps-titulo{font-family:'Inter',sans-serif;font-weight:700;color:var(--navy);font-size:.8rem;letter-spacing:1px;padding:6px 16px 10px;border-bottom:1px solid var(--borda);margin-bottom:6px}
.apps-titulo b{color:var(--ouro-aa)}
.apps-lista{display:flex;flex-direction:column}
.app-item{display:flex;flex-direction:row;align-items:center;gap:12px;text-decoration:none;color:var(--navy);font-weight:500;font-size:.95rem;text-align:left;padding:8px 16px;border-radius:0;border:0;border-left:3px solid transparent}
.app-item:hover{background:var(--gelo);border-color:var(--borda)}
.app-item.ativo{background:#FDF3E3;border-left-color:var(--ouro);font-weight:700}
.app-item .app-badge{margin-left:auto}
.app-icone{width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:1rem;color:#fff;box-shadow:inset 0 -2px 0 rgba(0,0,0,.18);flex:none}
.menu-modulo{flex:1}
.menu-user-box{margin-left:auto}
@media(max-width:900px){.apps-menu{min-width:80vw}.menu-modulo{order:3;width:100%;padding-bottom:10px}}

/* --- ERP: kanban, formulários, prévia do orçamento --- */
.kanban{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:10px 0 20px}
.kanban-col{background:var(--gelo);border:1px solid var(--borda);border-radius:var(--radius);padding:10px}
.kanban-col h3{margin:0 0 8px;font-size:.85rem;color:var(--navy);text-transform:uppercase;letter-spacing:1px;display:flex;justify-content:space-between}
.kcard{display:block;background:#fff;border:1px solid var(--borda);border-left:4px solid var(--ouro);border-radius:6px;padding:10px 12px;margin-bottom:8px;text-decoration:none;color:var(--texto);font-size:.88rem}
.kcard b{display:block;color:var(--navy)}
.kcard:hover{border-color:var(--ouro)}
.editor-2col{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
@media(max-width:1000px){.editor-2col{grid-template-columns:1fr}}
.itens-tab{width:100%;border-collapse:collapse}
.itens-tab th{text-align:left;font-size:.78rem;color:var(--cinza);padding:4px 6px}
.itens-tab td{padding:3px 4px;vertical-align:top}
.itens-tab input,.itens-tab select{padding:7px 8px;font-size:.9rem}
.itens-tab .rm{background:none;border:0;color:var(--erro);cursor:pointer;font-size:1.1rem}
.totais{text-align:right;margin-top:10px;font-size:.95rem}
.totais b{font-size:1.2rem;color:var(--navy)}
.previa-box{position:sticky;top:14px}
.previa{background:#fff;border:1px solid var(--borda);box-shadow:0 6px 24px rgba(21,29,53,.12);padding:0;font-size:.8rem;color:#222;line-height:1.45;min-height:520px}
.previa .p-cab{padding:18px 22px;color:#fff;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.previa .p-cab h2{margin:0;color:#fff;font-family:'Inter',sans-serif;font-weight:700;font-size:1.3rem}
.previa .p-cab small{display:block;opacity:.85;font-size:.72rem;margin-top:3px}
.previa .p-num{text-align:right;font-size:.78rem}
.previa .p-num b{display:block;font-size:1rem}
.previa .p-corpo{padding:16px 22px}
.previa .p-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.previa .p-bloco{background:#f8f9fa;border:1px solid #e3e6ea;border-radius:5px;padding:8px 10px}
.previa .p-bloco h4{margin:0 0 4px;font-size:.7rem;letter-spacing:1px;text-transform:uppercase;color:#5C646E}
.previa table{width:100%;border-collapse:collapse;margin:6px 0}
.previa th{text-align:left;font-size:.7rem;padding:6px;color:inherit} /* herda da linha: branco só com fundo colorido (o #fff fixo apagava os títulos nos modelos de cabeçalho claro) */
.previa td{padding:6px;border-bottom:1px solid #eee;vertical-align:top}
.previa .num{text-align:right;white-space:nowrap}
.previa .p-tot{text-align:right;margin-top:8px}
.previa .p-tot b{font-size:1.05rem}
.previa .p-cond{margin-top:12px;font-size:.75rem;color:#444}
.previa .p-rod{border-top:3px solid;padding:10px 22px;font-size:.7rem;color:#666;display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px}
.status-pill{display:inline-block;padding:4px 12px;border-radius:100px;font-weight:700;font-size:.8rem}
.res-tab td.num,.res-tab th.num{text-align:right}

/* --- previa: modelos de orcamento --- */
.previa{font-size:.78rem}
.pv{background:#fff;min-height:520px;color:#222}
.pv table{width:100%;border-collapse:collapse;margin:8px 0}
.pv th{text-align:left;font-size:.68rem;padding:6px;font-weight:700}
.pv td{padding:6px;border-bottom:1px solid #eee;vertical-align:top}
.pv .num{text-align:right;white-space:nowrap}
.pv .pv-vazio{color:#999;text-align:center}
.pv .pv-mute{color:#888;font-size:.7rem}
.pv small{font-size:.68rem;color:#777}
.pv h4{margin:0 0 3px;font-size:.66rem;letter-spacing:1px}
.pv .pv-2col{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:10px 0}
.pv .pv-ass{border-top:1px solid #333;margin-top:26px;width:80%}
.pv .pv-circ,.pv .pv-sq{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;color:#fff;font-size:.62rem;font-weight:700}
.pv .pv-circ{border-radius:50%}
.pv .pv-dot{display:inline-block;width:7px;height:7px;border-radius:50%}
.pv-moderno .pv-top{display:flex;justify-content:space-between;padding:18px 20px 6px}
.pv-moderno .pv-top h2{margin:0;font-size:1.4rem}
.pv-moderno .pv-top i{display:block;width:40px;height:3px;margin:4px 0 6px}
.pv-moderno .pv-bloco{color:#fff;padding:12px 16px;min-width:150px}
.pv-moderno .pv-bloco b{display:block;font-size:1.3rem}
.pv-moderno .pv-bloco small{color:#eee;display:block}
.pv-moderno .pv-corpo{padding:6px 20px 16px}
.pv-moderno .pv-tot-linhas{margin-left:auto;width:55%}
.pv-moderno .pv-tot-linhas>div{display:flex;justify-content:space-between;padding:3px 0;color:#555}
.pv-moderno .pv-tot-final{font-weight:800;font-size:1.1rem;margin-top:4px;padding-top:6px!important}
.pv-moderno .pv-cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:12px 0}
.pv-moderno .pv-cards>div{background:#f4f5f7;padding:8px 10px;font-size:.72rem}
.pv-moderno .pv-rod{display:flex;justify-content:space-between;padding:10px 20px;font-size:.68rem}
.pv-minimal{padding:26px 30px}
.pv-minimal .pv-top{display:flex;justify-content:space-between;align-items:flex-end}
.pv-minimal .pv-top i{display:inline-block;width:8px;height:8px}
.pv-minimal .pv-grande{font-size:2rem;color:#e1e3e6;font-weight:400;line-height:1}
.pv-minimal hr{border:0;border-top:1px solid #111;margin:10px 0 14px}
.pv-minimal .pv-tot{text-align:right;margin:10px 0}
.pv-minimal .pv-tot-min{font-size:1.3rem}
.pv-lateral{display:grid;grid-template-columns:34% 1fr}
.pv-lateral .pv-side{color:#fff;padding:22px 16px;border-right:3px solid #C9A962;font-size:.68rem}
.pv-lateral .pv-side h2{color:#fff;margin:0 0 6px;font-size:1rem}
.pv-lateral .pv-side i{display:block;width:26px;height:2px;background:#C9A962;margin-bottom:10px}
.pv-lateral .pv-side p{margin:4px 0;color:#e6e8ee}
.pv-lateral .pv-side h5{color:#C9A962;margin:18px 0 2px;font-size:.64rem;letter-spacing:1px}
.pv-lateral .pv-side b{font-size:1.1rem}
.pv-lateral .pv-side b.pv-cli{font-size:.8rem}
.pv-lateral .pv-main{padding:22px 18px}
.pv-lateral .pv-main h2{margin:0;font-size:1.2rem}
.pv-lateral .pv-th{background:#f4f5f7;color:#222}
.pv-lateral .pv-totbox{display:flex;justify-content:space-between;background:#f4f5f7;padding:8px 12px;font-weight:800;margin:8px 0}
.pv-lateral .pv-totbox b{font-size:1.1rem}
.pv-lateral .pv-bar{display:inline-block;width:3px;height:10px;margin-right:6px;vertical-align:middle}
.pv-carta{padding:22px 34px;font-size:.8rem;line-height:1.55}
.pv-carta .pv-lh{text-align:center;border-bottom:2px solid;padding-bottom:8px;margin-bottom:14px}
.pv-carta .pv-lh h2{margin:0;font-size:1.1rem}
.pv-carta .pv-lh small{display:block}
.pv-carta ol{padding-left:18px}
.pv-carta li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px dashed #d7dadf;padding:4px 0}
.pv-carta .pv-carta-tot span{font-size:1.1rem;font-weight:800}
.pv-tecnico{padding:0 14px 16px;font-size:.72rem}
.pv-stripe{height:8px}
.pv-tecnico .pv-caixa{display:flex;border:1px solid #222;margin-top:12px}
.pv-tecnico .pv-caixa-l{flex:1;padding:8px 10px}
.pv-tecnico .pv-caixa-l h2{margin:0;font-size:1rem}
.pv-tecnico .pv-caixa-r{border-left:1px solid #222;padding:8px 10px;width:40%}
.pv-tecnico .pv-caixa-r b{display:block;font-size:.9rem}
.pv-tecnico .pv-grade{display:flex;flex-wrap:wrap}
.pv-tecnico .pv-campo{border:1px solid #222;margin:-1px 0 0 -1px;padding:3px 5px;min-height:30px;box-sizing:border-box}
.pv-tecnico .pv-campo small{display:block;font-size:.55rem}
.pv-tecnico .pv-campo span{display:block;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.25} /* Build 133: cadastro do cliente não é mais cortado */
.pv-tecnico .pv-campo span.pv-email{overflow-wrap:normal;word-break:normal} /* Build 660: e-mail não quebra no meio da palavra (só depois do @, via <wbr>) */
.pv-tecnico .pv-sec{background:#222;color:#fff;font-weight:700;padding:4px 6px;margin-top:12px;font-size:.68rem}
.pv-tecnico .pv-bordas td,.pv-tecnico .pv-bordas th{border:1px solid #e3e6ea}
.pv-tecnico .pv-bordas .pv-th{background:#f4f5f7;color:#222}
.pv-tecnico .pv-tot-grade{margin-left:auto;width:55%}
.pv-tecnico .pv-tot-grade>div{display:flex;justify-content:space-between;border:1px solid #e3e6ea;padding:3px 6px;margin-top:-1px}
.pv-tecnico .pv-tot-final{font-weight:800;background:#f8f9fa;border-color:#222!important}
.pv-tecnico .pv-boxed{border:1px solid #222;padding:6px 8px}
.pv-tecnico .pv-boxed p{margin:3px 0;display:flex;gap:8px}
.pv-tecnico .pv-boxed small{width:110px;flex:none;font-weight:700;font-size:.58rem;padding-top:2px}
.pv-tecnico .pv-aprov{display:grid;grid-template-columns:1fr 1fr}
.pv-tecnico .pv-aprov>div{border:1px solid #222;padding:6px 8px;min-height:52px;margin-left:-1px}
.pv-faixas{padding:0 16px 0}
.pv-faixas .pv-top{display:flex;justify-content:space-between;align-items:center;padding:14px 0 8px}
.pv-faixas .pv-av{display:flex;align-items:center;gap:10px}
.pv-faixas .pv-av h2{margin:0;font-size:1.1rem}
.pv-circ-g{display:inline-flex;width:30px;height:30px;border-radius:50%;color:#fff;align-items:center;justify-content:center;font-weight:800;flex:none}
.pv-faixas .pv-num-r{text-align:right}
.pv-faixas .pv-num-r b{display:block;font-size:1.1rem}
.pv-faixas .pv-faixa3{display:grid;grid-template-columns:1fr 1fr 1fr;background:#f4f5f7;padding:10px 12px;gap:10px;margin-bottom:10px}
.pv-faixas h3{margin:12px 0 6px;font-size:.95rem}
.pv-faixas .pv-card{display:flex;align-items:center;gap:10px;border:1px solid #e3e6ea;border-left:4px solid;padding:8px 10px;margin-bottom:6px}
.pv-faixas .pv-card>div{flex:1}
.pv-faixas .pv-card-v{font-size:.95rem}
.pv-faixas .pv-rod-g{display:flex;justify-content:space-between;padding:12px 16px;margin:14px -16px 0}
.pv-faixas .pv-rod-g b{display:block;font-size:1.2rem}
.pv-faixas .pv-rod-g small{display:block;color:#eee}
.pv-faixas .pv-rod-r{text-align:right}
.pv-classico .p-tot{text-align:right;margin:8px 0}
.pv-classico .pv-totbox2{display:inline-flex;gap:18px;background:#f4f5f7;border:1px solid #e3e6ea;padding:6px 12px;margin-top:4px;align-items:center}
.pv-classico .pv-totbox2 b{font-size:1.05rem}
.pv-classico h3{font-size:.9rem;margin:10px 0 4px}

/* --- UX geral --- */
.lista tr:hover td{background:#FBF7EC}
.flash{position:relative;padding-right:40px;animation:flash-in .25s ease}
.flash .fechar{position:absolute;right:10px;top:8px;background:none;border:0;font-size:1.1rem;cursor:pointer;color:inherit;opacity:.6}
@keyframes flash-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.app-item{position:relative}
.app-badge{position:static;background:var(--erro);color:#fff;font-size:.66rem;font-weight:800;border-radius:100px;padding:1px 6px;min-width:18px;text-align:center}
.stepper{display:flex;margin:6px 0 16px;font-size:.8rem;flex-wrap:wrap}
.stepper span{padding:6px 14px 6px 22px;background:#E8ECF5;color:var(--navy);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%,12px 50%);margin-right:-6px;font-weight:600}
.stepper span:first-child{clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%);padding-left:14px}
.stepper span.feito{background:var(--ok);color:#fff}
.stepper span.atual{background:var(--ouro);color:var(--navy-esc)}
.stepper span.cancel{background:var(--erro);color:#fff}
.vazio{text-align:center;padding:34px 16px;color:var(--cinza);background:#fff;border:1px dashed var(--borda);border-radius:var(--radius)}
.vazio b{display:block;color:var(--navy);font-size:1.05rem;margin-bottom:6px}
.inicio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}/* Build 171: 4 cards por linha (pedido do Alfredo 05/09/2026) */
@media(max-width:1100px){.inicio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.inicio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.inicio-grid{grid-template-columns:1fr}}
.inicio-card{background:#fff;border:1px solid var(--borda);border-radius:var(--radius);padding:16px 18px;border-top:4px solid var(--navy)}
.inicio-card h2{margin:0 0 10px;display:flex;align-items:center;gap:8px;font-size:1.05rem}
.inicio-card h2 a{margin-left:auto;font-size:.78rem;font-weight:600}
.inicio-card ul{list-style:none;margin:0;padding:0}
.inicio-card li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid var(--gelo);font-size:.9rem}
.inicio-card li b{font-size:1.05rem}
.atalhos{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 18px}
.atalhos a{background:#fff;border:1px solid var(--borda);border-radius:100px;padding:7px 14px;text-decoration:none;color:var(--navy);font-weight:600;font-size:.85rem}
.atalhos a:hover{border-color:var(--ouro);background:#FDF3E3}
.busca-select{margin-bottom:4px}

/* --- v3: itens com descrição de venda, abas, totais, logotipo --- */
.item-box{border:1px solid var(--borda);border-radius:6px;padding:8px 10px;margin-bottom:8px;background:#FAFBFC}
.item-l1{display:grid;grid-template-columns:14px 20px 150px 1fr 52px 104px 86px 26px 26px;gap:6px;align-items:center} /* sobrescrito adiante (linha ~530) — manter as 2 colunas de controle nos 2 lugares */
/* reordenar itens (Build 100): alça de arrastar + setas ▲▼ */
.i-move{cursor:grab;color:#9AA2AE;font-size:.95rem;user-select:none;text-align:center}
.i-move:active{cursor:grabbing}
.i-setas{display:flex;flex-direction:column;gap:1px}
.i-setas button{background:none;border:0;padding:0;line-height:1;font-size:.62rem;color:#9AA2AE;cursor:pointer}
.i-setas button:hover{color:var(--navy,#1E2A4A)}
.item-box.arrastando{opacity:.45;outline:2px dashed var(--ouro,#C9A962);outline-offset:2px}
.item-l1 input,.item-l1 select{padding:7px 8px;font-size:.88rem}
.item-l1 .i-serv{font-size:.8rem}
.item-box .i-det{margin-top:6px;font-size:.84rem;padding:6px 8px;resize:vertical}
.item-box .rm{background:none;border:0;color:var(--erro);cursor:pointer;font-size:1.2rem}
@media(max-width:1100px){.item-l1{grid-template-columns:1fr 1fr;}}
.totais{text-align:right;margin-top:14px;font-size:.92rem}
.totais>div{display:flex;justify-content:flex-end;gap:24px;padding:3px 0;color:var(--cinza)}
.totais>div span{min-width:120px;text-align:right;color:var(--texto)}
.totais .tot-final{border-top:2px solid var(--navy);margin-top:4px;padding-top:6px;color:var(--navy);font-weight:700}
.totais .tot-final b{min-width:120px;text-align:right;font-size:1.25rem}
.abas{display:flex;gap:4px;flex-wrap:wrap;border-bottom:2px solid var(--borda);margin:4px 0 14px}
.abas a{padding:9px 14px;text-decoration:none;color:var(--cinza);font-weight:600;border-bottom:3px solid transparent;margin-bottom:-2px;font-size:.9rem}
.abas a span{background:var(--gelo);border-radius:100px;padding:1px 8px;font-size:.75rem;margin-left:4px;color:var(--navy)}
.abas a.ativa{color:var(--navy);border-bottom-color:var(--ouro)}
.linha-link{cursor:pointer}
.cor-dot{display:inline-block;width:10px;height:10px;border-radius:3px;vertical-align:middle;margin-right:6px}
.logo-linha{display:flex;gap:18px;align-items:center;margin-bottom:6px}
.logo-box{width:150px;height:80px;border:1px dashed var(--borda);border-radius:6px;display:flex;align-items:center;justify-content:center;background:#fff;flex:none}
.logo-box img{max-width:140px;max-height:70px}
.logo-mini{height:22px;max-width:70px;vertical-align:middle;margin-right:8px;object-fit:contain}
.modal-fundo{display:none}.modal-fundo.aberto{display:flex}
.pv .pv-logo{max-height:44px;max-width:130px;display:block;margin-bottom:6px;background:#fff}
.pv .pv-logo-box{background:#fff;border-radius:4px;padding:4px 6px;display:inline-block;margin-bottom:8px}
.pv .pv-logo-box img{margin:0}
.pv-classico .pv-cab-l{display:flex;gap:12px;align-items:center}
.pv .pv-det{color:#666;font-size:.7rem;margin-top:2px}
.pv .pv-totais{margin:10px 0;font-size:.78rem}
.pv .pv-totais>div{display:flex;justify-content:space-between;padding:3px 6px;border-bottom:1px solid #eee}
.pv .pv-totais-dir{margin-left:auto;width:58%}
.pv .pv-tot-final{font-weight:800;font-size:.95rem;border-bottom:0!important;border-top:2px solid}
.pv-carta .pv-totais{width:60%}

/* --- v4: tickets --- */
.tk-thread{list-style:none;margin:0;padding:0}
.tk-msg{border:1px solid var(--borda);border-radius:8px;padding:12px 14px;margin-bottom:10px;background:#fff}
.tk-msg.cliente{border-left:4px solid var(--ouro);background:#FFFDF7}
.tk-msg.equipe{border-left:4px solid var(--navy)}
.tk-msg.interna{border-left:4px solid #9aa3b5;background:#F7F8FA}
.tk-msg.sistema{border-style:dashed;color:var(--cinza);font-size:.85rem}
.tk-msg.ia{border-left:4px solid #7C4DFF;background:#F6F3FF} /* Build 202: leitura prévia da IA */
.tk-msg .quem{font-size:.8rem;color:var(--cinza);margin-bottom:4px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.tk-msg .quem b{color:var(--navy)}
.tk-msg .txt{white-space:pre-wrap}
.prio-baixa{background:var(--gelo);color:var(--cinza)}.prio-normal{background:#E8ECF5;color:var(--navy)}.prio-alta{background:#FDF3E3;color:var(--alerta)}.prio-urgente{background:#FBEAEA;color:var(--erro)}
.tk-aberto{background:#FBEAEA;color:var(--erro)}.tk-em_andamento{background:#1D6FD6;color:#fff}.tk-aguardando_cliente{background:#FDF3E3;color:var(--alerta)}.tk-resolvido{background:#E7F5EC;color:var(--ok)}.tk-fechado{background:var(--gelo);color:var(--cinza)}
.tk-lado{display:grid;grid-template-columns:1fr 300px;gap:20px;align-items:start}
@media(max-width:900px){.tk-lado{grid-template-columns:1fr}}
.resp-tabs{display:flex;gap:6px;margin-bottom:6px}
.resp-tabs label{display:flex;align-items:center;gap:6px;margin:0;font-size:.85rem;padding:6px 10px;border:1px solid var(--borda);border-radius:6px;cursor:pointer;background:#fff}
.resp-tabs input{width:auto;margin:0}

/* --- v9: anexos, documentos, contratos --- */
.anexos{list-style:none;margin:6px 0 0;padding:0;font-size:.85rem}
.anexos li{padding:3px 0}
.docs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.doc-box{border:1px solid var(--borda);border-radius:8px;padding:10px 12px;background:#fff}
.doc-box.ok{border-color:#BEE3CC;background:#F3FAF5}
.doc-box.falta{border-color:#F0DBB4;background:#FFFBF2}
.doc-titulo{font-weight:700;color:var(--navy);margin-bottom:4px}
.contrato-texto,.contrato-editor{font-family:Georgia,'Times New Roman',serif;font-size:.95rem;line-height:1.6;white-space:pre-wrap;background:#fff;border:1px solid var(--borda);border-radius:6px;padding:16px 20px}
.contrato-editor{width:100%;min-height:520px}

.fotos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-top:12px}
.fotos-grid figure{margin:0}
.fotos-grid img{width:100%;height:110px;object-fit:cover;border-radius:6px;border:1px solid var(--borda)}
@media(max-width:700px){.tk-lado{grid-template-columns:1fr}.lista-3,.linha-campos{grid-template-columns:1fr}.cab-pagina{flex-direction:column}}

.item-box.item-mensal{border-left:4px solid var(--ok);background:#F3FAF5}
.item-box.item-visita{border-left:4px solid var(--navy)}
.pv .pv-mensal{font-size:.72rem;color:#555;background:#F3FAF5;border:1px solid #BEE3CC;border-radius:4px;padding:6px 8px;margin:6px 0}

/* ---- listagens densas no padrão Odoo ---- */
.wrap-largo{max-width:100%;padding:0 16px}
.od-barra{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:14px 0 8px}
.od-esq{display:flex;align-items:center;gap:12px}.od-esq h1{font-size:1.25rem}
.od-busca{flex:1;min-width:320px;max-width:760px;margin:0 0 0 auto}
.od-campo{display:flex;align-items:center;flex-wrap:wrap;gap:4px;background:#fff;border:1px solid var(--borda);border-radius:4px;padding:3px 6px}
.od-campo input{flex:1;min-width:160px;border:0;margin:0;padding:5px 6px;font-size:.9rem;background:transparent}
.od-campo input:focus{outline:0;box-shadow:none}
.od-campo button{border:0;background:transparent;cursor:pointer;font-size:1rem;padding:2px 6px}
.od-chip{display:inline-flex;align-items:center;gap:6px;background:#E8EBF5;color:var(--navy);border-radius:3px;padding:2px 6px 2px 8px;font-size:.82rem;font-weight:600}
.od-chip a{text-decoration:none;color:var(--cinza);font-weight:700}.od-chip a:hover{color:var(--erro)}
.od-ferr{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.od-filtros{display:flex;align-items:center;gap:14px;position:relative}
.od-dd{position:relative} /* Build 113: o painel absoluto ancora no próprio dropdown — o Exportar abria no canto da tela */
.od-dd summary{cursor:pointer;list-style:none;border:1px solid var(--borda);background:#fff;border-radius:4px;padding:5px 12px;font-size:.85rem;font-weight:600;color:var(--navy);user-select:none}
.od-dd summary::-webkit-details-marker{display:none}
.od-dd[open] summary{background:var(--gelo)}
.od-painel{position:absolute;top:calc(100% + 4px);left:0;z-index:50;background:#fff;border:1px solid var(--borda);border-radius:6px;box-shadow:0 10px 30px rgba(21,29,53,.2);padding:12px 14px;display:grid;gap:8px;min-width:300px}
.od-painel label{font-size:.82rem;font-weight:600;display:flex;flex-direction:column;gap:3px;margin:0}
.od-painel select,.od-painel input[type=date]{margin:0;padding:5px 8px;font-size:.85rem}
.od-painel input[type=checkbox]{margin:0 6px 0 0;width:auto}.od-painel label:first-of-type{flex-direction:row;align-items:center}
.od-per{display:flex;gap:6px}.od-per input{flex:1}
.od-pag{display:flex;align-items:center;gap:4px;font-size:.85rem;color:var(--cinza)}
.od-pag a{display:inline-block;border:1px solid var(--borda);background:#fff;border-radius:4px;padding:2px 10px;text-decoration:none;color:var(--navy);font-weight:700;margin-left:4px}
.od-pag a.off{pointer-events:none;opacity:.35}
.od-tabela-wrap{overflow-x:auto;background:#fff;border:1px solid var(--borda);border-radius:4px}
table.od-tabela{border:0;border-radius:0}
.od-tabela th{background:#fff;color:var(--navy);border-bottom:1px solid var(--borda);padding:7px 8px;font-size:.8rem;font-weight:700;white-space:nowrap;position:sticky;top:0}
.od-tabela td{padding:5px 8px;font-size:.84rem;border-top:1px solid #EEF0F4;white-space:nowrap;vertical-align:middle;line-height:1.45}
.od-tabela tr:nth-child(even) td{background:#fff}
.od-tabela tbody tr:hover td{background:#F3F5FA}
.od-tabela .od-cli{max-width:360px;overflow:hidden;text-overflow:ellipsis}
.od-tabela td.num,.od-tabela th.num{text-align:right}
.od-tabela .tag{padding:1px 8px;font-size:.72rem}
.od-tabela .cor-dot{width:8px;height:8px}
.od-acao{font-size:.78rem;font-weight:700;text-decoration:none;color:var(--navy);border:1px solid var(--borda);border-radius:3px;padding:1px 8px;background:#fff}
.od-acao:hover{background:var(--gelo)}
@media(max-width:900px){.od-busca{min-width:100%}.od-tabela .od-cli{max-width:180px}
  /* Build 430 (Alfredo 23/09/2026, print da Triagem em zoom 250 %): em tablet/zoom alto o título da barra ganha a linha inteira (os filtros descem) e os contadores não quebram palavra por palavra */
  .od-barra>.od-esq{flex:1 1 100%;flex-wrap:wrap}.od-esq h1{white-space:normal}.od-barra .mini{white-space:normal}.od-contadores{flex-wrap:wrap}.od-contadores>.mini{flex:1 1 240px}}

/* ====================================================================
   UX RESET (22/08/2026) — camada final: mesma identidade (navy + dourado,
   Montserrat), com padrões de usabilidade: escala de espaçamento, alvos de
   toque >= 40px, foco visível, hierarquia de botões, formulários consistentes,
   tabelas legíveis, cabeçalho fixo, estados (hover/ativo/desabilitado/inválido),
   acessibilidade (skip link, reduced motion) e impressão.
   ==================================================================== */
:root{--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--radius:6px;--radius-g:10px;
  --sombra-1:0 1px 2px rgba(21,29,53,.06);--sombra-2:0 6px 20px rgba(21,29,53,.10);--foco:0 0 0 3px rgba(201,169,98,.35);--controle:40px}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,video{max-width:100%;height:auto}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
h1{font-size:1.45rem;letter-spacing:-.01em;margin:0 0 var(--s4)}
h2{font-size:1.1rem;margin:var(--s5) 0 var(--s3)}
h3{font-size:.95rem;color:var(--navy);margin:var(--s4) 0 var(--s2)}
p{margin:0 0 var(--s3)}
a{text-underline-offset:2px}
.pular{position:absolute;left:-999px;top:8px;background:var(--navy);color:#fff;padding:8px 14px;border-radius:6px;z-index:999;text-decoration:none}
.pular:focus{left:8px}
:focus-visible{outline:2px solid var(--ouro);outline-offset:2px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--ouro);box-shadow:var(--foco)}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* cabeçalho fixo e compacto */
.topo{position:sticky;top:0;z-index:90;border-bottom-width:3px;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.topo-in{min-height:56px;gap:var(--s4)}
.menu{gap:var(--s1) var(--s2)}
.menu a{padding:8px 10px;border-radius:6px;font-size:.88rem;line-height:1.2;display:inline-flex;align-items:center;min-height:36px}
.menu a:hover{background:rgba(255,255,255,.08);color:#fff}
.menu a.ativo{color:var(--ouro);background:rgba(201,169,98,.12)}
.menu-user{font-size:.8rem}
.menu-sair{font-weight:600}
.apps-btn{padding:6px 10px;min-height:40px}
main.wrap{padding:var(--s5) 20px var(--s6)}

/* cartões e cabeçalho de página */
.cartao{padding:var(--s5);margin-bottom:var(--s4);border-radius:var(--radius-g);box-shadow:var(--sombra-1)}
.cab-pagina{align-items:center;margin-bottom:var(--s4)}
.cab-pagina h1{margin:0}
.cab-pagina .acoes{margin-left:auto}

/* formulários */
label{font-size:.82rem;font-weight:600;margin:var(--s3) 0 var(--s1);color:var(--navy)}
label:first-child{margin-top:0}
input,select,textarea{min-height:var(--controle);padding:8px 12px;border:1px solid #CFD4DB;border-radius:var(--radius);transition:border-color .15s,box-shadow .15s}
textarea{min-height:96px;line-height:1.5}
select{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%235C646E' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 12px center;padding-right:34px}
input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:0;accent-color:var(--navy);vertical-align:middle;margin:0}
input[type=file]{padding:6px 8px;background:#fff}
input[type=date]{min-width:150px}
input::placeholder,textarea::placeholder{color:#9aa3b5}
input:disabled,select:disabled,textarea:disabled,input[readonly]{background:var(--gelo);color:var(--cinza);cursor:not-allowed;border-color:var(--borda)}
fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{opacity:.85}
.invalido,input:user-invalid,select:user-invalid,textarea:user-invalid{border-color:var(--erro)!important;box-shadow:0 0 0 3px rgba(176,42,42,.12)}
.ajuda{margin-top:var(--s1);line-height:1.4}
.check,.renov-lista label,.resp-tabs label{min-height:var(--controle);align-items:center}
.check input{margin-top:0}
.linha-campos,.lista-3{gap:0 var(--s4)}

/* botões: hierarquia (primário = --acao: navy no tema claro, dourado no escuro — Build 431; secundário claro, perigo vermelho) */
.btn{min-height:var(--controle);padding:8px 20px;font-weight:700;font-size:.9rem;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.2;transition:background .15s,box-shadow .15s,transform .05s;white-space:nowrap}
.btn:hover{filter:none;background:var(--acao-hover);box-shadow:var(--sombra-1)}
.btn:active{transform:translateY(1px)}
.btn-claro{background:#fff;border:1px solid #CFD4DB}
.btn-claro:hover{background:var(--gelo)}
.btn-perigo{background:#fff;border:1px solid #EFC4C4}
.btn-perigo:hover{background:#FBEAEA}
.btn-wa:hover{background:#20BD5A}
.btn-pequeno{min-height:34px;padding:5px 14px;font-size:.82rem}
.btn:disabled,.btn.aguarde{opacity:.6;cursor:progress;pointer-events:none}
.btn.aguarde::after{content:"";width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:girar .7s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}
.acoes{gap:var(--s2)}
.btn-link{background:none;border:0;color:var(--ouro-aa);text-decoration:underline;padding:0;min-height:0;font-weight:600}

/* tabelas: mais legíveis e densas (padrão Odoo em todo o sistema) */
table.lista{box-shadow:var(--sombra-1);overflow:clip}/* Build 241: overflow:hidden virava contêiner de rolagem e o cabeçalho sticky (top:56px) descia por cima da 1ª linha em tabelas soltas (ex.: Renovações); clip mantém o arredondado sem criar rolagem */
.lista th{background:#fff;color:var(--navy);border-bottom:1px solid var(--borda);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;position:sticky;top:56px;z-index:1}
.lista td{padding:8px 12px;font-size:.88rem;vertical-align:middle;border-top:1px solid #EEF0F4}
.lista tr:nth-child(even) td{background:#fff}
.lista tbody tr:hover td,.lista tr:hover td{background:#F3F5FA}
.lista td .btn-pequeno{min-height:30px;padding:3px 10px}
.od-tabela th{top:0}
.tag{padding:2px 9px;font-size:.72rem;letter-spacing:.01em}
.tag-azul{background:#E3EEFB;color:#1D4F8F}
.tk-em_andamento{background:#E3EEFB;color:#1D4F8F}

/* mensagens, modais, vazios */
.flash{display:flex;align-items:flex-start;gap:10px;padding:12px 40px 12px 14px;border-left-width:4px;box-shadow:var(--sombra-1)}
.flash::before{flex:none;font-size:1rem}
.flash-ok::before{content:"✓"}.flash-erro::before{content:"!"}.flash-alerta::before{content:"⚠"}
.modal-fundo{backdrop-filter:blur(2px)}
.modal{max-width:520px;max-height:90vh;overflow:auto;text-align:left;padding:var(--s5);border-radius:var(--radius-g);box-shadow:var(--sombra-2);animation:flash-in .2s ease}
.modal h2{margin:0 0 var(--s3)}
.modal .acoes{margin-top:var(--s4);justify-content:flex-end}
.vazio{padding:var(--s6) var(--s4)}
.vazio .btn{margin-top:var(--s3)}
.kpi{padding:var(--s3) var(--s4);box-shadow:var(--sombra-1)}
.kpi b{font-size:1.7rem}
.kpis{gap:var(--s3)}
.abas a{min-height:40px;display:inline-flex;align-items:center}
.atalhos a{min-height:36px;display:inline-flex;align-items:center}
.stepper span{padding-top:8px;padding-bottom:8px}
.hist li,.tk-msg,.kcard,.item-box,.doc-box,.inicio-card{box-shadow:var(--sombra-1)}
.inicio-card li{min-height:36px;align-items:center}
.apps-menu{border-radius:var(--radius-g)}
.app-item{min-height:44px}

/* filtros */
.filtro{gap:var(--s2);align-items:flex-end;margin-bottom:var(--s4)}
.filtro input,.filtro select{min-width:180px}
.od-campo{min-height:var(--controle)}
.od-campo input{min-height:0}
.od-dd summary{min-height:34px;display:inline-flex;align-items:center}
.od-pag a{min-width:32px;min-height:30px;display:inline-flex;align-items:center;justify-content:center}

/* mobile: alvos maiores, tabelas roláveis, menus empilhados */
@media(max-width:700px){
  main.wrap{padding:var(--s4) 12px var(--s6)}
  .cartao{padding:var(--s4)}
  .btn{width:100%}.acoes .btn,.btn-pequeno,.od-esq .btn,.cab-pagina .btn{width:auto}
  table.lista{display:block;overflow-x:auto;white-space:nowrap}
  .lista th{position:static}
  .topo{position:static}
  .menu a{min-height:40px}
}
/* impressão: só o conteúdo */
@media print{.topo,.rodape-app,.flash,.acoes,.filtro,.od-barra,.od-ferr,.pular{display:none!important}body{background:#fff;font-size:12px}main.wrap{padding:0;max-width:100%}.cartao,table.lista{box-shadow:none;border-color:#ccc}a{color:inherit;text-decoration:none}}
/* mobile: menu do módulo em linha rolável (não empilha) */
@media(max-width:900px){.topo-in{gap:var(--s2);padding-top:4px}.menu-modulo{order:3;flex:0 0 100%;width:100%;flex-wrap:nowrap;overflow-x:auto;gap:2px;padding:0 0 6px;scrollbar-width:none}.menu-modulo::-webkit-scrollbar{display:none}.menu-modulo a{white-space:nowrap;flex:none;padding:6px 10px;min-height:34px}.menu-user-box{margin-left:auto}.menu-user{display:none}}

/* menu de apps sem ícones: só um marcador de cor do módulo */
.app-cor{width:8px;height:8px;border-radius:50%;flex:none}
.app-item{min-height:40px;padding:6px 16px}

/* --- serviço por texto (autocomplete estilo Odoo) --- */
.item-l1{grid-template-columns:14px 20px 1fr 52px 104px 86px 26px 26px} /* +alça ⠿ e setas ▲▼ do reordenar (Build 100) + ⧉ duplicar (Build 145) */
.item-box .dup{background:none;border:0;color:#9AA2AE;cursor:pointer;font-size:1.05rem;line-height:1;padding:0}
.item-box .dup:hover{color:var(--navy,#1E2A4A)}
.ac-wrap{position:relative;min-width:0}
.ac-lista{position:absolute;left:0;right:0;top:calc(100% + 2px);z-index:60;background:#fff;border:1px solid var(--borda);border-radius:6px;box-shadow:0 10px 30px rgba(21,29,53,.18);max-height:340px;overflow-y:auto}
.ac-item{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:7px 12px;cursor:pointer;font-size:.86rem;border-top:1px solid #F1F2F5}
.ac-item:first-child{border-top:0}
.ac-item small{color:var(--cinza);white-space:nowrap}
.ac-item:hover,.ac-item.ativo{background:#F3F5FA}
.ac-acao{padding:7px 12px 7px 24px;color:var(--ouro-aa);font-size:.84rem;font-weight:600;cursor:pointer;border-top:1px solid #F1F2F5}
.ac-acao:hover,.ac-acao.ativo{background:#FDF3E3}
.ac-vazio{padding:8px 12px;color:var(--cinza);font-size:.84rem}
.mb-lista{border:1px solid var(--borda);border-radius:6px;max-height:50vh;overflow-y:auto;margin-top:8px}
@media(max-width:1100px){.item-l1{grid-template-columns:1fr 1fr}.item-l1 .ac-wrap{grid-column:1/-1}}

/* --- calendário --- */
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--borda);border:1px solid var(--borda);border-radius:8px;overflow:hidden}
.cal-cab{background:#fff;padding:6px;font-size:.75rem;font-weight:700;color:var(--cinza);text-transform:uppercase;text-align:center}
.cal-dia{background:#fff;min-height:104px;padding:4px;cursor:pointer;display:flex;flex-direction:column;gap:2px}
.cal-semana .cal-dia{min-height:420px}
.cal-dia:hover{background:#FAFBFD}
.cal-dia.fora{background:#F7F8FA;color:#aaa}
.cal-dia.hoje .cal-num{background:var(--ouro);color:var(--navy-esc);border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}
.cal-num{font-size:.8rem;font-weight:700;color:var(--navy);margin-bottom:2px}
.cal-num small{color:var(--cinza);font-weight:400}
.cal-ev{display:block;font-size:.74rem;line-height:1.3;padding:2px 5px;border-radius:4px;background:#E8EBF5;color:var(--navy);text-decoration:none;border-left:3px solid #3B6EA5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-ev.meu{background:#FDF3E3;border-left-color:var(--ouro)}
.cal-ev.pend{background:#fff;border:1px dashed var(--alerta);border-left:3px dashed var(--alerta);color:var(--alerta)}
.cal-ev:hover{filter:brightness(.96)}
.cal-ev small{color:var(--cinza)}
.cal-leg{display:inline-block;width:12px;height:12px;border-radius:3px;background:#E8EBF5;border-left:3px solid #3B6EA5;vertical-align:middle}
.cal-leg.meu{background:#FDF3E3;border-left-color:var(--ouro)}.cal-leg.pend{background:#fff;border:1px dashed var(--alerta)}
@media(max-width:700px){.cal{grid-template-columns:1fr}.cal-cab{display:none}.cal-dia{min-height:0}.cal-dia.fora{display:none}.cal-num::before{content:attr(data-dia)}}
@media(max-width:700px){.cal-dia:not(.hoje):not(:has(.cal-ev)){display:none}.cal-dia{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;padding:8px}.cal-dia .cal-num{min-width:28px}}

/* --- formulário de contato em seções --- */
.form-contato{max-width:980px}
.form-contato .cartao{padding:18px 22px}
h2.sec{margin:0 0 10px;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:var(--cinza);border-bottom:1px solid var(--borda);padding-bottom:6px}
.req{color:var(--erro)}
.acoes-fixas{position:sticky;bottom:0;background:var(--gelo);padding:10px 0;border-top:1px solid var(--borda);margin-top:4px}

/* ====================================================================
   APPLE HIG (22/08/2026) — camada final. Linguagem visual da Apple:
   tipografia de sistema (SF Pro → Inter), superfícies claras, hairlines,
   cantos 12px, botões pill, segmented control, header translúcido com blur,
   tags pill, foco azul do sistema. Identidade (navy + dourado) preservada.
   ==================================================================== */
:root{--ap-bg:#F5F5F7;--ap-card:#FFFFFF;--ap-hair:rgba(60,60,67,.12);--ap-hair2:rgba(60,60,67,.2);--ap-texto:#1D1D1F;--ap-sec:#6E6E73;--ap-azul:#0071E3;--ap-fill:rgba(120,120,128,.10);--ap-fill2:rgba(120,120,128,.16);
  --radius:10px;--radius-g:14px;--borda:rgba(60,60,67,.14);--gelo:#F5F5F7;--texto:#1D1D1F;--cinza:#6E6E73;--sombra-1:0 1px 3px rgba(0,0,0,.04),0 0 0 .5px rgba(0,0,0,.04);--sombra-2:0 12px 40px rgba(0,0,0,.12);--foco:0 0 0 4px rgba(0,113,227,.28);--controle:38px}
body,.apps-btn,.marca-nome,h1,.apps-titulo,.previa .p-cab h2{font-family:-apple-system,BlinkMacSystemFont,'SF Pro Text','SF Pro Display','Inter','Segoe UI',Roboto,Helvetica,Arial,sans-serif}
body{background:var(--ap-bg);color:var(--ap-texto);font-size:15px;letter-spacing:-.01em;line-height:1.47}
h1{font-size:1.75rem;font-weight:700;letter-spacing:-.022em;color:var(--ap-texto)}
h2{font-weight:600;letter-spacing:-.015em;color:var(--ap-texto)}
h3,label{color:var(--ap-texto)}
a{color:var(--ap-azul)}
.mini,.ajuda{color:var(--ap-sec)}

/* header: navy translúcido com blur, hairline dourada fina */
.topo{background:rgba(21,29,53,.86);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(201,169,98,.55);box-shadow:none}
.topo-in{min-height:52px}
.menu a{font-weight:500;font-size:.86rem;color:rgba(255,255,255,.82);border-radius:8px}
.menu a:hover{background:rgba(255,255,255,.12);color:#fff}
.menu a.ativo{color:#fff;background:rgba(255,255,255,.14)}
.apps-btn{font-weight:600}
.apps-menu{border:0;box-shadow:var(--sombra-2);border-radius:14px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.app-item{border-left:0;border-radius:8px;margin:0 8px;padding:8px 12px;font-weight:500}
.app-item.ativo{background:var(--ap-fill);font-weight:600}
.app-item:hover{background:var(--ap-fill)}
.apps-titulo{border-bottom:1px solid var(--ap-hair);color:var(--ap-sec);font-weight:600}

/* superfícies */
.cartao,.inicio-card,.kpi,.doc-box,.tk-msg,.hist li,.kcard,.item-box,.modal,.od-tabela-wrap,table.lista,.vazio{border:0;box-shadow:var(--sombra-1);border-radius:var(--radius-g)}
.cartao{padding:22px 24px}
.inicio-card{border-top:0}
.kpi{border-left-width:0;padding:14px 16px}
.kpi b{font-weight:700;letter-spacing:-.02em}
.kpi span{color:var(--ap-sec)}
.vazio{border:1px dashed var(--ap-hair2);box-shadow:none;background:transparent}
.item-box{background:var(--ap-bg);box-shadow:none}
.hist li{border-left:3px solid var(--ouro)}

/* controles: preenchimento cinza suave, sem borda pesada, foco azul */
input,select,textarea{background:#fff;border:1px solid var(--ap-hair2);border-radius:10px;padding:8px 12px;font-size:.95rem;letter-spacing:-.01em}
input:hover,select:hover,textarea:hover{border-color:rgba(60,60,67,.34)}
input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--ap-azul);box-shadow:var(--foco)}
input:disabled,select:disabled,textarea:disabled,input[readonly]{background:var(--ap-fill);border-color:transparent;color:var(--ap-sec)}
input[type=checkbox],input[type=radio]{accent-color:var(--ap-azul)}
label{font-size:.8rem;font-weight:600;color:var(--ap-sec);margin:12px 0 5px;letter-spacing:0}
.od-campo{border-radius:10px;background:var(--ap-fill);border:1px solid transparent}
.od-campo:focus-within{background:#fff;border-color:var(--ap-azul);box-shadow:var(--foco)}
.od-chip{background:rgba(0,113,227,.12);color:var(--ap-azul);border-radius:999px;padding:3px 8px 3px 10px}
.od-chip a{color:var(--ap-azul)}
.od-dd summary,.od-pag a,.od-acao,.atalhos a{border:1px solid var(--ap-hair2);border-radius:999px;background:#fff}
.od-dd summary:hover,.od-pag a:hover,.od-acao:hover,.atalhos a:hover{background:var(--ap-fill)}
.od-painel{border:0;border-radius:14px;box-shadow:var(--sombra-2)}

/* botões pill */
.btn{border-radius:999px;font-weight:600;letter-spacing:-.01em;padding:8px 18px;box-shadow:none}
.btn:hover{background:var(--acao-hover);box-shadow:none}
.btn:active{transform:scale(.98)}
.btn-claro{background:#fff;border:1px solid var(--ap-hair2);color:var(--ap-texto)}
.btn-claro:hover{background:var(--ap-fill)}
.btn-perigo{background:#fff;border:1px solid rgba(255,59,48,.35);color:#D70015}
.btn-perigo:hover{background:rgba(255,59,48,.08)}
.btn-wa{color:#fff}
.btn-pequeno{padding:5px 13px}

/* abas → segmented control */
.abas{display:inline-flex;gap:0;background:var(--ap-fill);border-radius:9px;padding:2px;border:0;margin:4px 0 14px}
.abas a{border:0;margin:0;padding:5px 12px;border-radius:7px;font-size:.84rem;font-weight:500;color:var(--ap-texto);min-height:30px}
.abas a.ativa{background:#fff;color:var(--ap-texto);box-shadow:0 1px 3px rgba(0,0,0,.12),0 0 0 .5px rgba(0,0,0,.04);font-weight:600}
.abas a span{background:transparent;padding:0 0 0 4px;color:var(--ap-sec);font-size:.78rem}
.abas a.ativa span{color:var(--ap-texto)}
.resp-tabs label{border-radius:999px}

/* tabelas: hairlines, cabeçalho discreto */
.lista th,.od-tabela th{background:#fff;color:var(--ap-sec);font-size:.72rem;font-weight:600;text-transform:none;letter-spacing:0;border-bottom:1px solid var(--ap-hair2);padding:9px 12px}
.lista td,.od-tabela td{border-top:1px solid var(--ap-hair);font-size:.88rem}
.od-tabela td{font-size:.85rem}
.lista tbody tr:hover td,.lista tr:hover td,.od-tabela tbody tr:hover td{background:rgba(0,113,227,.05)}
.tag{border-radius:999px;font-weight:600;padding:2px 9px}
.tag-azul,.tk-em_andamento{background:rgba(0,113,227,.12);color:#0058B0}
.tag-navy{background:var(--ap-fill);color:var(--ap-texto)}
.tag-cinza{background:var(--ap-fill);color:var(--ap-sec)}
.tag-verde{background:rgba(52,199,89,.16);color:#1B7A34}
.tag-amarela{background:rgba(255,159,10,.18);color:#9A5B00}
.tag-vermelha{background:rgba(255,59,48,.14);color:#C0170C}

/* mensagens e modais */
.flash{border:0;border-left:0;border-radius:12px;box-shadow:var(--sombra-1)}
.flash-ok{background:rgba(52,199,89,.14);color:#1B7A34}.flash-erro{background:rgba(255,59,48,.12);color:#C0170C}.flash-alerta{background:rgba(255,159,10,.16);color:#9A5B00}
.modal-fundo{background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.modal{border-top:0;border-radius:18px}
.stepper span{border-radius:0}
.stepper span:first-child{border-radius:999px 0 0 999px}
.kanban-col{background:transparent;border:0;padding:0 4px}
.kcard{border-left:3px solid var(--ouro)}
.cal{border:0;background:var(--ap-hair);box-shadow:var(--sombra-1);border-radius:14px}
.cal-ev{border-radius:6px}
.rodape-app{background:transparent;color:var(--ap-sec);border-top:1px solid var(--ap-hair);margin-top:40px}
.rodape-app a{color:var(--ap-sec)}
.ac-lista,.apps-menu,.od-painel{border:0;box-shadow:var(--sombra-2)}
.ac-item:hover,.ac-item.ativo{background:rgba(0,113,227,.08)}
.ac-acao{color:var(--ap-azul)}
.acoes-fixas{background:rgba(245,245,247,.85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--ap-hair)}
h2.sec{color:var(--ap-sec);border-bottom:1px solid var(--ap-hair);text-transform:none;letter-spacing:-.01em;font-size:.95rem;font-weight:600}
.contrato-texto,.contrato-editor{border-radius:12px;border-color:var(--ap-hair2)}

/* tipo de compromisso: segmented */
.tipo-seg{display:inline-flex;background:var(--ap-fill,#eef0f4);border-radius:10px;padding:3px;gap:2px;flex-wrap:wrap;margin-bottom:4px}
.tipo-opt{margin:0;cursor:pointer}
.tipo-opt input{position:absolute;opacity:0;width:0;height:0}
.tipo-opt span{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;font-size:.86rem;font-weight:500;color:var(--texto);min-height:34px}
.tipo-opt input:checked+span{background:#fff;font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.12),0 0 0 .5px rgba(0,0,0,.04)}
.tipo-opt input:focus-visible+span{box-shadow:0 0 0 3px rgba(0,113,227,.28)}
.ac-item b{font-weight:600}
#busca-cliente{margin-bottom:4px}

/* --- IODOO: layout de largura total (como o Odoo) em todo o sistema interno --- */
.wrap-app,.topo-in,.rodape-app .wrap{max-width:100%;padding-left:24px;padding-right:24px}
main.wrap-app{padding-top:20px}
.wrap-publico{max-width:1080px}
.marca-nome{letter-spacing:.5px}
@media(max-width:700px){.wrap-app,.topo-in,.rodape-app .wrap{padding-left:12px;padding-right:12px}}
.fat-paineis{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.fat-paineis details summary{cursor:pointer;list-style:none}.fat-paineis details summary::-webkit-details-marker{display:none}@media(max-width:1000px){.fat-paineis{grid-template-columns:1fr}}

/* --- seletor de empresas no cabeçalho (Odoo) --- */
.emp-sel{position:relative}
.emp-btn{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.84rem;font-weight:600;cursor:pointer;min-height:34px}
.emp-btn:hover{background:rgba(255,255,255,.18)}
.emp-dot{width:8px;height:8px;border-radius:50%;background:var(--ouro)}
.emp-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);background:#fff;border-radius:14px;box-shadow:var(--sombra-2,0 12px 40px rgba(0,0,0,.15));min-width:280px;max-height:70vh;overflow:auto;padding:8px 0;z-index:100;color:var(--texto)}
.emp-menu.aberto{display:block}
.emp-titulo{font-size:.78rem;font-weight:600;color:var(--cinza);padding:6px 14px 8px;border-bottom:1px solid var(--borda)}
.emp-titulo a{margin-left:4px}
.emp-item{display:flex;align-items:center;gap:10px;padding:7px 14px;margin:0;font-size:.9rem;font-weight:500;color:var(--texto);cursor:pointer;min-height:36px}
.emp-item:hover{background:var(--ap-fill,#f0f1f4)}
.emp-item input{margin:0}
.emp-acoes{display:flex;gap:8px;padding:10px 14px 6px;border-top:1px solid var(--borda);margin-top:4px}
.emp-acoes .btn{margin:0;flex:1}
@media(max-width:900px){.emp-btn{padding:5px 10px;font-size:.78rem}.emp-menu{right:auto;left:0}}
/* --- usuários (padrão Odoo) --- */
.form-usuario{max-width:1200px}
.us-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.us-emp{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:6px}
.us-mods{display:grid;grid-template-columns:1fr 1fr;gap:6px 24px}
.us-grupo h3{margin:8px 0 4px;font-size:.9rem;color:var(--ap-sec,#6E6E73);border-bottom:1px solid var(--borda);padding-bottom:4px}
.us-mod{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0;padding:4px 0;font-weight:500;font-size:.88rem;color:var(--texto)}
.us-mod select{max-width:150px;min-height:32px;padding:4px 28px 4px 10px;font-size:.84rem;margin:0}
@media(max-width:1000px){.us-grid,.us-mods{grid-template-columns:1fr}}
.flag-vermelha{color:#D70015;font-size:.95rem}
.od-tabela tr:has(.flag-vermelha) td:first-child{box-shadow:inset 3px 0 0 #D70015}
.pp-in{min-height:30px;height:30px;width:64px;padding:2px 6px;font-size:.8rem;margin:0 0 0 6px;border-radius:999px;text-align:center;-moz-appearance:textfield}
.pp-in::-webkit-outer-spin-button,.pp-in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* --- dashboard do financeiro --- */
.fin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fin-fluxo{display:flex;gap:14px;align-items:flex-end;padding:8px 4px 0}
.fin-mes{display:flex;flex-direction:column;align-items:center;gap:2px;flex:1}
.fin-barras{display:flex;gap:3px;align-items:flex-end;height:112px}
.fin-barras i{display:block;width:16px;border-radius:4px 4px 0 0}
.fin-barras .b-fat{background:#1E2A4A}
.fin-barras .b-rec{background:#1E7B44}
.fin-mes small{font-weight:600;color:var(--texto)}
.kpis a.kpi{cursor:pointer}
.kpis a.kpi:hover{box-shadow:var(--sombra-2,0 6px 20px rgba(0,0,0,.1))}
@media(max-width:1000px){.fin-grid{grid-template-columns:1fr}}

/* --- filtro de período + barras horizontais dos dashboards (Build 090) --- */
.per-filtro{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0 0 14px}
.per-filtro .btn{margin:0}
.hbar{display:flex;align-items:center;gap:10px;margin:7px 0}
.hbar .hb-rot{width:150px;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:none}
.hbar .hb-tr{flex:1;background:rgba(30,42,74,.1);border-radius:4px;height:14px;overflow:hidden}
.hbar .hb-tr i{display:block;height:100%;border-radius:4px}
.hbar b{min-width:96px;text-align:right;font-size:.85rem;flex:none}
@media(max-width:640px){.hbar .hb-rot{width:96px}}

/* --- listas de próximos passos nos dashboards de módulo --- */
.pl-lista{display:flex;flex-direction:column}
.pl-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;border-top:1px solid var(--ap-hair,#eee);text-decoration:none;color:var(--texto);border-radius:8px}
.pl-item:first-child{border-top:0}
.pl-item:hover{background:rgba(0,113,227,.05)}
.pl-t{display:flex;flex-direction:column;min-width:0}
.pl-t b{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pl-t small{color:var(--cinza);font-size:.78rem}
.pl-d{display:flex;align-items:center;gap:10px;flex:none}
.pl-d b{font-size:.9rem}
.pl-seta{color:var(--cinza);font-size:1.1rem}

/* --- chatter (histórico estilo Odoo) --- */
.chatter{margin-top:22px;border-top:1px solid var(--ap-hair2,#ddd);padding-top:14px;max-width:980px}
.ch-dia{display:flex;align-items:center;gap:12px;margin:14px 0 6px;color:var(--cinza);font-size:.78rem}
.ch-dia::before,.ch-dia::after{content:"";flex:1;border-top:1px solid var(--ap-hair,#eee)}
.ch-item{display:flex;gap:10px;padding:8px 10px;border-radius:10px;background:var(--ap-fill,#f4f5f7);margin-bottom:8px}
.ch-avatar{flex:none;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem}
.ch-cab{font-size:.85rem}
.ch-dets{margin:4px 0 0;padding-left:18px;font-size:.85rem}
.ch-dets li{margin:1px 0}
.ch-seta{color:var(--ap-azul,#0071E3);font-weight:700}

/* menus do topo em branco SÓLIDO (sem transparência/blur) */
.apps-menu{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}
.emp-menu{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}
/* flash: texto corrido (o flex quebrava o conteúdo em colunas) */
.flash{display:block}
.flash::before{display:inline;margin-right:8px}

/* ====================================================================
   UX (23/08/2026) — busca global Ctrl+K, barra de progresso de navegação,
   painel de atalhos. Mesma identidade (navy + dourado, superfícies HIG).
   ==================================================================== */
kbd{display:inline-block;min-width:18px;padding:1px 5px;border:1px solid var(--ap-hair2);border-bottom-width:2px;border-radius:5px;background:#fff;color:var(--ap-sec);font:600 .68rem/1.4 inherit;text-align:center;vertical-align:middle}
html{scroll-padding-top:70px} /* âncoras não somem sob o cabeçalho fixo */

/* Início: título do card leva ao dashboard completo do assunto */
.inicio-titulo{color:inherit;text-decoration:none}
.inicio-card:hover{box-shadow:var(--sombra-2)}
.inicio-card h2 a.inicio-titulo:hover{color:var(--ap-azul)}

/* ---------- Mapa do sistema (/mapa.php) ---------- */
.mapa-topo{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:14px}
.mapa-placar{display:flex;gap:26px}
.mapa-placar div{display:flex;flex-direction:column;align-items:flex-end}
.mapa-placar b{font-size:1.5rem;line-height:1;color:var(--navy);font-weight:700}
.mapa-placar span{font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cinza);margin-top:3px}
.mapa-atalhos{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:22px}
.mapa-atalhos a{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--ap-hair2,#ddd);border-radius:999px;padding:5px 13px;font-size:.83rem;font-weight:600;color:var(--texto);text-decoration:none}
.mapa-atalhos a:hover{border-color:var(--ouro);background:#FDF3E3}
.mapa-sec{margin-bottom:26px;scroll-margin-top:76px}
.mapa-cab{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--ap-hair2,#ddd);padding-bottom:8px;margin-bottom:10px}
.mapa-cab h2{margin:0;display:flex;align-items:center;gap:9px;font-size:1.15rem}
.mapa-cab h2 a{color:inherit;text-decoration:none}
.mapa-cab h2 a:hover{color:var(--ap-azul,#0071E3)}
.mapa-desc{color:var(--cinza);font-size:.9rem;margin:0 0 12px;max-width:80ch}
.mapa-telas{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.mapa-tela{display:flex;flex-direction:column;gap:2px;background:#fff;border-radius:10px;padding:11px 13px;text-decoration:none;color:var(--texto);box-shadow:var(--sombra-1);transition:box-shadow .12s,transform .12s}
a.mapa-tela:hover{box-shadow:var(--sombra-2,0 8px 24px rgba(0,0,0,.1));transform:translateY(-1px)}
.mapa-tela b{font-size:.9rem;font-weight:600}
.mapa-tela small{font-size:.78rem;color:var(--cinza)}
.mapa-tela code{font-family:ui-monospace,Consolas,monospace;font-size:.7rem;color:var(--ouro-aa);margin-top:3px}
.mapa-tela.sem{opacity:.55;box-shadow:none;border:1px dashed var(--ap-hair2,#ddd)}
.mapa-tela.est b{display:flex;align-items:center;gap:8px}
.mapa-tela.est .ponto{width:8px;height:8px;border-radius:50%;flex:none}
.p-ok{background:var(--ok)}.p-alerta{background:var(--alerta)}.p-erro{background:var(--erro)}
.mapa-regras{margin-top:10px}
.mapa-regras summary{cursor:pointer;font-size:.82rem;font-weight:600;color:var(--cinza);list-style:none}
.mapa-regras summary::-webkit-details-marker{display:none}
.mapa-regras summary::before{content:"B8 ";color:var(--ouro)}
.mapa-regras[open] summary::before{content:"BE "}
.mapa-regras ul{margin:8px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:5px}
.mapa-regras li{font-size:.86rem;color:var(--cinza)}
.mapa-regras li b{color:var(--texto)}
@media(max-width:700px){.mapa-placar{gap:16px}.mapa-placar b{font-size:1.2rem}}

/* menu de aplicativos: atalho para o mapa do sistema (página externa) */
.app-mapa{border-top:1px solid var(--ap-hair,#e6e8ec);margin-top:6px;padding-top:10px;border-radius:0 0 8px 8px;color:var(--ap-sec,#6E6E73);font-size:.9rem}
.app-mapa:hover{color:var(--ap-texto,#1D1D1F)}
.app-fora{margin-left:auto;font-size:.78rem;opacity:.6}

/* marca IODOO no cabeçalho do painel: leva ao Início */
.marca-app{font-family:'Inter',sans-serif;font-weight:800;font-size:1.05rem;letter-spacing:1.5px;color:#fff;text-decoration:none;padding:6px 8px;border-radius:8px;flex:none}
.marca-app:hover{color:var(--ouro);background:rgba(255,255,255,.08)}
a.marca{text-decoration:none;display:block}
a.marca:hover .marca-nome{color:var(--ouro)}
a.marca:hover .marca-nome b{color:#fff}
@media(max-width:900px){.marca-app{font-size:.95rem;padding:5px 6px}}

/* aviso do modo de teste de e-mails (desvio para o e-mail de teste) */
.teste-banner{background:rgba(255,159,10,.16);color:#9A5B00;border-radius:12px;padding:8px 14px;margin-bottom:14px;font-size:.86rem;box-shadow:var(--sombra-1)}
.teste-banner a{color:inherit;font-weight:700}

/* botão de busca no cabeçalho (mesmo desenho do seletor de empresas) */
.busca-btn{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:999px;padding:6px 12px;font:inherit;font-size:.84rem;font-weight:600;cursor:pointer;min-height:34px}
.busca-btn:hover{background:rgba(255,255,255,.18)}
.busca-btn kbd{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.22);border-bottom-width:1px;color:rgba(255,255,255,.75)}
@media(max-width:900px){.busca-btn{padding:5px 10px;font-size:.78rem}.busca-btn kbd{display:none}}

/* barra fina de progresso no topo (feedback imediato ao navegar) */
#carga{position:fixed;top:0;left:0;right:0;height:3px;z-index:999;background:transparent;pointer-events:none}
#carga.anda::before{content:"";position:absolute;inset:0;transform-origin:left;background:linear-gradient(90deg,var(--ouro),#E8D5A4);animation:carga-anda 1.6s cubic-bezier(.3,.6,.4,.9) forwards}
@keyframes carga-anda{0%{transform:scaleX(0)}60%{transform:scaleX(.72)}100%{transform:scaleX(.94)}}
@media(prefers-reduced-motion:reduce){#carga.anda::before{animation:none;transform:scaleX(.6)}}

/* busca global (paleta de comando) */
.bg-fundo{position:fixed;inset:0;background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:9vh 16px 16px}
.bg-fundo[hidden]{display:none}
.bg-caixa{background:#fff;border-radius:18px;box-shadow:var(--sombra-2);width:100%;max-width:640px;overflow:hidden;display:flex;flex-direction:column;max-height:74vh;animation:flash-in .18s ease}
.bg-topo{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--ap-hair)}
.bg-lupa{font-size:1rem;opacity:.6}
.bg-topo input{border:0;background:transparent;min-height:0;padding:2px 0;font-size:1.05rem;flex:1}
.bg-topo input:focus-visible{outline:none;border:0;box-shadow:none}
.bg-res{overflow-y:auto;padding:6px 8px 10px;overscroll-behavior:contain}
.bg-grupo{font-size:.7rem;font-weight:700;color:var(--ap-sec);text-transform:uppercase;letter-spacing:.06em;padding:12px 10px 4px}
.bg-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;text-decoration:none;color:var(--ap-texto);font-size:.92rem;min-height:38px}
.bg-item .bg-t{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bg-item small{margin-left:auto;color:var(--ap-sec);font-size:.78rem;white-space:nowrap;flex:none}
.bg-item.ativo{background:rgba(0,113,227,.10)}
.bg-item.ativo .bg-t{font-weight:600}
.bg-nada,.bg-carregando{padding:18px 12px;color:var(--ap-sec);font-size:.9rem;text-align:center}
.bg-rodape{display:flex;gap:16px;justify-content:center;padding:9px 14px;border-top:1px solid var(--ap-hair);color:var(--ap-sec);font-size:.76rem;background:var(--ap-bg)}
.bg-rodape kbd{margin-right:3px}
.bg-atalhos{max-width:440px;padding:22px 24px}
.bg-atalhos h2{margin:0 0 14px}
.bg-atalhos dl{margin:0}
.bg-atalhos dl>div{display:flex;align-items:center;gap:14px;padding:9px 0;border-top:1px solid var(--ap-hair)}
.bg-atalhos dt{flex:none;min-width:86px;display:flex;gap:4px}
.bg-atalhos dd{margin:0;font-size:.92rem}
.bg-atalhos .mini{margin:14px 0 0}
@media(max-width:700px){.bg-fundo{padding:4vh 8px 8px}.bg-caixa{max-height:86vh}.bg-item small{display:none}}

/* ------------------------------------------------------------------
   Tarefas (26/08/2026) — roteiro de execução (gráfico de etapas
   concluídas) e problemas que impedem a evolução do processo
------------------------------------------------------------------ */
.rot-barra{display:inline-block;flex:1;min-width:120px;height:12px;background:var(--gelo);border:1px solid var(--borda);border-radius:8px;overflow:hidden;vertical-align:middle}
.rot-barra i{display:block;height:100%;background:linear-gradient(90deg,var(--ok),#2AA25C);border-radius:8px 0 0 8px;transition:width .3s}
.rot-barra.rot-mini{min-width:70px;max-width:110px;height:8px}
.rot-cab{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.rot-cab .rot-num{white-space:nowrap}
/* Build 532: roteiro como LINHA DO TEMPO (anel de progresso, nós ✓/▶/nº, trilho colorido até a etapa atual) */
.rt-cab{display:flex;align-items:center;gap:16px;margin:4px 0 14px;padding:12px 14px;border-radius:12px;background:linear-gradient(135deg,#F7F9FC,#EEF3FA);border:1px solid var(--borda)}
.rt-anel{--p:0;width:74px;height:74px;border-radius:50%;flex:none;display:grid;place-items:center;background:conic-gradient(var(--ok) calc(var(--p)*1%),#E3E6EA 0);position:relative}
.rt-anel::before{content:'';position:absolute;inset:8px;border-radius:50%;background:#fff}.rt-anel b{position:relative;font-size:1.05rem;color:var(--navy)}
.rt-cab-txt{flex:1;min-width:0}.rt-cab-txt .rot-barra{display:block;max-width:420px}
.rt-atual{margin-top:3px;color:#8A6D1D;font-size:.95rem}.rt-atual-ok{color:var(--ok)}
.rt-tl{list-style:none;margin:0;padding:0 0 0 4px;position:relative}
.rt-item{display:flex;gap:14px;align-items:flex-start;position:relative;padding:8px 0 14px}
.rt-item::before{content:'';position:absolute;left:15px;top:38px;bottom:-6px;width:2px;background:#DDE2EA}
.rt-item.feita::before{background:var(--ok)}.rt-item:last-child::before{display:none}
.rt-no{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:.85rem;border:2px solid #DDE2EA;background:#fff;color:#8A93A0;position:relative;z-index:1}
.rt-item.feita .rt-no{background:var(--ok);border-color:var(--ok);color:#fff}
.rt-item.atual .rt-no{background:#FFF3B0;border-color:#C9A962;color:#8A6D1D;box-shadow:0 0 0 4px rgba(201,169,98,.25);animation:rtPulsa 1.6s ease-in-out infinite}
@keyframes rtPulsa{0%,100%{box-shadow:0 0 0 4px rgba(201,169,98,.25)}50%{box-shadow:0 0 0 8px rgba(201,169,98,.08)}}
.rt-corpo{flex:1;min-width:0;padding:5px 12px 6px;border-radius:10px;border:1px solid transparent}
.rt-item.atual .rt-corpo{background:#FFFBEA;border-color:#F5D78E}.rt-item.feita .rt-corpo{background:#F3FAF5}
.rt-item.feita .rt-tit{text-decoration:line-through;color:var(--cinza)}.rt-item.atual .rt-tit{font-weight:700;color:var(--navy)}.rt-item.pend .rt-tit{color:#5C646E}
.rt-tl label{display:inline-flex;align-items:center;gap:8px;margin:0;font-weight:500;cursor:pointer}.rt-tl input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:var(--ok)}
.rt-meta{font-size:.78rem;color:var(--cinza);margin-top:2px}.rt-meta-atual{color:#8A6D1D}
body[data-tema=escuro] .rt-cab{background:linear-gradient(135deg,#1F2634,#232B3A)}body[data-tema=escuro] .rt-anel::before{background:#1B2130}body[data-tema=escuro] .rt-no{background:#1B2130}body[data-tema=escuro] .rt-item.atual .rt-corpo{background:#2A2614;border-color:#6B5A24}body[data-tema=escuro] .rt-item.feita .rt-corpo{background:#16281C}
.rot-etapas{list-style:none;margin:0;padding:0}
.rot-etapas li{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:7px 8px;border-top:1px solid var(--borda)}
.rot-etapas li:first-child{border-top:0}
.rot-etapas li.feita{background:#F3FAF5}
.rot-etapas li.feita label,.rot-etapas li.feita>span{text-decoration:line-through;color:var(--cinza)}
.rot-etapas label{display:flex;align-items:center;gap:8px;margin:0;font-weight:500;cursor:pointer}
.rot-etapas input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:var(--ok)}
.rot-ord{color:var(--cinza);font-weight:600;font-size:.85rem}
.rot-aplicar select{margin:0}
.rot-trocar{display:flex;align-items:center;gap:10px;margin-top:10px;flex-wrap:wrap}
/* gráfico no dashboard do módulo */
.rot-graf{display:flex;flex-direction:column;gap:2px;margin-top:6px}
.rot-linha{display:grid;grid-template-columns:minmax(180px,1.1fr) minmax(140px,1fr) auto;gap:12px;align-items:center;text-decoration:none;color:inherit;padding:7px 8px;border-radius:8px}
.rot-linha:hover{background:var(--gelo)}
.rot-linha .rot-tit{display:flex;flex-direction:column;min-width:0}
.rot-linha .rot-tit b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.92rem}
.rot-linha .rot-tit small{color:var(--cinza);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rot-num{font-size:.85rem;font-weight:700;color:var(--texto);white-space:nowrap}
.rot-cel{display:flex;align-items:center;gap:6px;margin-top:4px}
@media(max-width:700px){.rot-linha{grid-template-columns:1fr;gap:4px}}
/* problemas que impedem a evolução */
.prob-item{border:1px solid var(--borda);border-left:4px solid var(--alerta);background:#FDF9F1;border-radius:8px;padding:10px 12px;margin:10px 0}
.prob-item.prob-vencido{border-left-color:var(--erro);background:#FDF3F3}
.prob-item.prob-ok{border-left-color:var(--ok);background:#F6FBF7;opacity:.85}
.prob-topo{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.prob-sanar{display:flex;gap:8px;align-items:center;margin-top:8px;flex-wrap:wrap}
.prob-sanar input[name=resolucao]{flex:1;min-width:220px}
.prob-novo summary{cursor:pointer;list-style:none}
.prob-novo summary::-webkit-details-marker{display:none}

/* ------------------------------------------------------------------
   E-MAIL (26/08/2026) — webmail no layout do Thunderbird:
   pastas | lista de mensagens | painel de leitura
------------------------------------------------------------------ */
.tb-wrap{display:grid;grid-template-columns:230px 1fr;gap:0;border:1px solid var(--borda);border-radius:10px;background:#fff;overflow:hidden;height:calc(100vh - 235px);min-height:420px;margin-top:10px} /* Build 197: altura fixa na tela — pastas, lista e leitura rolam cada uma na sua barra (como no Thunderbird), não a página inteira */
.tb-wrap.tb-com-leitura{grid-template-columns:230px minmax(300px,420px) 1fr}
.tb-pastas{background:var(--gelo);border-right:1px solid var(--borda);padding:8px 0;overflow:auto}
.tb-conta{margin-bottom:6px}
.tb-conta-nome{display:block;padding:7px 12px;font-weight:700;font-size:.86rem;color:var(--navy);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-conta-nome:hover{background:#E9EBEF}
.tb-seta{display:inline-block;width:11px;font-size:.68rem;color:#8B93A0}
.tb-pasta{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 12px 5px 24px;font-size:.88rem;color:var(--texto);text-decoration:none;white-space:nowrap;overflow:hidden}
.tb-pasta:hover{background:#E9EBEF}
.tb-pasta.ativa{background:#DCE6F5;font-weight:700;color:#1B4A8F}
.tb-badge{background:#1B74E4;color:#fff;border-radius:9px;font-size:.72rem;font-weight:700;padding:1px 7px;line-height:1.4}
.tb-lista{border-right:1px solid var(--borda);overflow:auto;display:flex;flex-direction:column;min-width:0}
.tb-lista-topo{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;border-bottom:1px solid var(--borda);font-size:.82rem;color:var(--cinza);position:sticky;top:0;background:#fff;z-index:1}
.tb-lista-topo a{color:var(--ouro-aa);text-decoration:none;padding:0 6px;font-weight:700}
.tb-lista-topo a.off{opacity:.3;pointer-events:none}
.tb-msg{display:flex;align-items:center;gap:8px;padding:7px 10px;border-bottom:1px solid #EEF0F3;text-decoration:none;color:var(--texto);min-width:0}
.tb-msg:hover{background:var(--gelo)}
.tb-msg.ativa{background:#DCE6F5}
.tb-msg .tb-est{flex:none;color:#C9A962;font-size:1rem}
.tb-info{display:flex;flex-direction:column;min-width:0;flex:1}
.tb-assunto{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tb-de{font-size:.8rem;color:var(--cinza);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}
.tb-dot{width:8px;height:8px;border-radius:50%;background:#2AA25C;display:inline-block;flex:none}
.tb-msg.nao-lida .tb-assunto{font-weight:700}
.tb-msg.nao-lida .tb-de{font-weight:600;color:var(--texto)}
.tb-data{flex:none;font-size:.78rem;color:var(--cinza);white-space:nowrap}
.tb-leitura{overflow:auto;display:flex;flex-direction:column;min-width:0;background:#fff}
.tb-leitura-vazia{align-items:center;justify-content:center;color:var(--cinza);text-align:center;font-size:1rem}
.tb-acoes{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding:8px 12px;border-bottom:1px solid var(--borda);position:sticky;top:0;background:#fff;z-index:1}
.tb-est-btn{background:none;border:0;font-size:1.2rem;color:#C9A962;cursor:pointer;padding:0 4px;margin-left:auto}
.tb-cab-msg{display:flex;gap:12px;padding:12px 14px 8px;align-items:flex-start}
.tb-avatar{flex:none;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem}
.tb-de-linha{font-size:.92rem}
.tb-assunto-g{margin:4px 0 0;font-size:1.05rem}
.tb-remoto{background:#FFF3B8;border:1px solid #E7CE5A;color:#5c4a1e;font-size:.85rem;padding:8px 14px;display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin:0 14px 8px;border-radius:6px}
.tb-anexos{display:flex;gap:8px;flex-wrap:wrap;padding:0 14px 8px}
.tb-anexo{border:1px solid var(--borda);border-radius:8px;padding:4px 10px;font-size:.85rem;text-decoration:none;color:var(--texto);background:var(--gelo)}
.tb-anexo:hover{border-color:var(--ouro)}
.tb-corpo{border:0;width:100%;flex:1;min-height:340px;background:#fff}
@media(max-width:1100px){.tb-wrap.tb-com-leitura{grid-template-columns:200px 1fr;grid-template-rows:auto auto}.tb-wrap.tb-com-leitura .tb-lista{display:none}.tb-leitura{grid-column:2}}
@media(max-width:760px){.tb-wrap,.tb-wrap.tb-com-leitura{grid-template-columns:1fr;height:auto}.tb-pastas{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--borda)}.tb-conta{display:flex}.tb-pasta{padding:5px 10px}}

/* resumo automatico do pedido do cliente (contas relacionamento/consultoria) */
.tb-resumo{background:#EAF2FE;border:1px solid #B9D3F5;color:#1B4A8F;font-size:.9rem;padding:9px 14px;margin:0 14px 8px;border-radius:6px;line-height:1.5}

/* --- notificacoes internas (sininho) — Build 002 --- */
.notif-box{position:relative}
.notif-btn{background:none;border:0;cursor:pointer;font-size:1.15rem;position:relative;padding:4px 6px;color:#fff}
.notif-badge{position:absolute;top:-2px;right:-4px;background:#E4483F;color:#fff;border-radius:9px;font-size:.66rem;font-weight:700;padding:1px 5px;line-height:1.3}
.notif-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--borda);border-radius:10px;box-shadow:var(--sombra-2,0 6px 20px rgba(0,0,0,.15));min-width:330px;max-width:400px;z-index:60;overflow:hidden}
.notif-menu.aberto{display:block}
.notif-titulo{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--borda);color:var(--texto)}
.notif-vazio{padding:16px;color:var(--cinza);font-size:.9rem;text-align:center}
.notif-item{display:flex;flex-direction:column;gap:2px;padding:9px 14px;border-bottom:1px solid #EEF0F3;text-decoration:none;color:var(--texto);font-size:.88rem;line-height:1.4}
.notif-item:hover{background:var(--gelo)}
.notif-item small{color:var(--cinza);font-size:.76rem}

/* ------------------------------------------------------------------
   Sub-barra da seção (Build 006): a barra principal fica limpa —
   os links do módulo descem para esta faixa, abaixo dela, em 1 linha
------------------------------------------------------------------ */
.submenu{background:rgba(39,52,85,.96);border-top:1px solid rgba(255,255,255,.08)}
.submenu-in{display:flex;align-items:center;gap:2px;flex-wrap:wrap;overflow:visible;min-height:44px;padding:3px 0} /* Build 190: nada de item cortado ('Relat…', 'Oc…') — quebra a linha */
.submenu-in::-webkit-scrollbar{display:none}
.submenu-in a{color:#C9D2E0;text-decoration:none;font-weight:600;font-size:.87rem;padding:7px 13px;border-radius:7px;white-space:nowrap;display:inline-flex;align-items:center;min-height:32px;line-height:1.2}
.submenu-in a:hover{background:rgba(255,255,255,.09);color:#fff}
/* Build 427/429: logotipo da seção — texto na fonte do sistema (Montserrat), sem link e sem imagem */
.mod-marca{display:inline-flex;align-items:center;gap:9px;flex:none;height:36px;margin:0 12px 0 2px;padding-right:14px;border-right:1px solid rgba(255,255,255,.16);cursor:default;user-select:none;line-height:1.05}
.mod-marca::before{content:"";width:4px;height:26px;border-radius:2px;background:var(--ouro);flex:none}
.mm-txt{display:flex;flex-direction:column;justify-content:center;white-space:nowrap}
.mm-nome{font-family:'Inter',sans-serif;font-weight:800;font-size:.95rem;color:#fff;letter-spacing:.2px}
.mm-pb{font-family:'Inter',sans-serif;font-weight:600;font-size:.56rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--ouro);margin-top:2px;opacity:.95}
.mod-marca.mm-email::before{background:#7FB4FF}.mod-marca.mm-email .mm-pb{color:#7FB4FF}
@media(max-width:760px){.mod-marca{height:30px;gap:7px;margin-right:8px;padding-right:8px}.mod-marca::before{height:22px}.mm-nome{font-size:.82rem}.mm-pb{font-size:.5rem;letter-spacing:1.1px}}
.submenu-in a.ativo{color:var(--ouro);background:rgba(201,169,98,.15)}
@media(max-width:900px){.submenu-in{padding:0 8px}}

/* ====================================================================
   BUILD 008 — UX de altíssimo nível: toasts, copiar, paginador de registro,
   ordenação por coluna, favoritos, rascunhos, zona de upload, densidade,
   confirmações elegantes, ações em massa, "+ Novo" global, teclado nas listas
==================================================================== */
/* toasts (avisos flutuantes) */
.toasts{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:400;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}
.toast{background:rgba(21,29,53,.95);color:#fff;padding:10px 18px;border-radius:999px;font-size:.88rem;font-weight:500;box-shadow:0 8px 30px rgba(0,0,0,.25);opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s;max-width:calc(100vw - 40px);pointer-events:auto}
.toast.mostra{opacity:1;transform:translateY(0)}
.toast-notif{background:rgba(201,169,98,.97);color:var(--navy-esc,#151d35)}

/* clique-para-copiar */
.copiavel{cursor:copy;border-bottom:1px dashed transparent;transition:border-color .15s}
.copiavel:hover{border-bottom-color:var(--ouro)}
.copiavel:hover::after{content:" ⧉";font-size:.8em;color:var(--cinza)}

/* paginador de registro (‹ 3 de 80 ›) ao lado do título da ficha */
.reg-pager{display:inline-flex;align-items:center;gap:4px;margin-left:14px;vertical-align:middle;font-size:.82rem;font-weight:500;letter-spacing:0}
.reg-pager .reg-volta{color:var(--cinza);text-decoration:none;border:1px solid var(--borda);border-radius:999px;padding:3px 12px;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reg-pager .reg-volta:hover{background:var(--gelo);color:var(--texto)}
.reg-pager .reg-seta{min-width:28px;min-height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--borda);border-radius:999px;background:#fff;color:var(--texto);text-decoration:none;font-weight:700}
.reg-pager .reg-seta:hover{background:var(--gelo)}
.reg-pager .reg-seta.off{opacity:.3;pointer-events:none}
.reg-pos{color:var(--cinza);white-space:nowrap;padding:0 2px}
@media(max-width:700px){.reg-pager .reg-volta{display:none}}

/* ordenação por coluna */
th.th-ord{padding:0!important}
th.th-ord a{display:flex;align-items:center;gap:2px;padding:9px 12px;color:inherit;text-decoration:none;white-space:nowrap}
th.th-ord a:hover{background:var(--gelo);color:var(--texto)}
th.th-ord.th-ord-ativo a{color:var(--ouro-aa,#8a6d2f);font-weight:700}
th.th-ord.num a{justify-content:flex-end}

/* favoritos (filtros salvos) */
.od-fav summary{color:var(--ouro-aa,#8a6d2f)}
.fav-lista{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}
.fav-item{display:flex;align-items:center;gap:6px}
.fav-item a{flex:1;text-decoration:none;color:var(--texto);padding:6px 8px;border-radius:8px;font-size:.88rem}
.fav-item a:hover{background:var(--gelo)}
.fav-item form{margin:0}
.fav-x{background:none;border:0;color:var(--cinza);cursor:pointer;padding:4px 6px;border-radius:6px}
.fav-x:hover{background:rgba(255,59,48,.1);color:#C0170C}
.fav-salvar{display:flex;gap:6px;align-items:center;border-top:1px solid var(--borda);padding-top:10px;margin-top:4px}
.fav-salvar input[type=text]{flex:1;min-width:0;min-height:34px}
.fav-vazio{color:var(--cinza);font-size:.85rem;padding:4px 8px 8px}

/* rascunho de formulário */
.rasc-aviso{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:rgba(255,159,10,.12);color:#9A5B00;border-radius:12px;padding:10px 14px;margin-bottom:12px;font-size:.9rem}
.rasc-aviso .btn{margin:0}

/* zona de upload (arrastar-e-soltar / colar) */
.zona-arq{position:relative;display:flex;align-items:center;gap:8px;border:1.5px dashed var(--ap-hair2,rgba(60,60,67,.2));border-radius:12px;padding:12px 14px;background:#fff;transition:border-color .15s,background .15s;cursor:pointer;min-height:52px}
.zona-arq:hover{border-color:var(--ouro)}
.zona-arq.arrastando{border-color:var(--ap-azul,#0071E3);background:rgba(0,113,227,.06)}
.zona-arq.com-arq{border-style:solid;border-color:rgba(52,199,89,.5);background:rgba(52,199,89,.05)}
.zona-arq input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;min-height:0;margin:0;padding:0}
.zona-txt{font-size:.88rem;color:var(--texto);pointer-events:none;line-height:1.4;word-break:break-word}
.zona-txt small{color:var(--cinza)}
.zona-chip{display:inline-flex;align-items:center;gap:4px;background:rgba(52,199,89,.12);border:1px solid rgba(52,199,89,.35);border-radius:20px;padding:2px 10px;margin:2px 4px 2px 0;font-size:.84rem}
.zona-tira{pointer-events:auto;position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:rgba(255,59,48,.12);color:#C0170C;font-size:11px;font-weight:700;text-decoration:none;line-height:1}
.zona-tira:hover{background:rgba(255,59,48,.28)}
.zona-mais{display:inline-block;margin-left:4px;color:var(--cinza)}
.prot-box{background:rgba(30,42,74,.04);border:1px solid var(--borda,#E3E6EA);border-radius:12px;padding:12px 14px;margin:10px 0 16px}
.prot-box table.lista th{position:static}

/* densidade compacta */
.dens-btn{background:#fff;border:1px solid var(--ap-hair2,rgba(60,60,67,.2));border-radius:999px;min-width:30px;min-height:30px;cursor:pointer;color:var(--cinza);font-size:1rem;line-height:1;padding:0 8px}
.dens-btn:hover{background:var(--gelo);color:var(--texto)}
body.lista-compacta .lista td{padding:4px 10px;font-size:.82rem}
body.lista-compacta .lista th{padding:6px 10px}
body.lista-compacta th.th-ord a{padding:6px 10px}
body.lista-compacta .lista td .tag{padding:1px 7px;font-size:.68rem}
body.lista-compacta .rot-cel{margin-top:2px}

/* confirmação elegante */
.conf-fundo{position:fixed;inset:0;background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:500;display:none;align-items:center;justify-content:center;padding:20px}
.conf-fundo.mostra{display:flex}
.conf-caixa{background:#fff;border-radius:18px;box-shadow:var(--sombra-2);padding:24px;max-width:440px;width:100%;animation:flash-in .18s ease}
.conf-msg{font-size:1rem;line-height:1.5;margin:0 0 18px;white-space:pre-line}
.conf-acoes{display:flex;gap:10px;justify-content:flex-end}
.conf-acoes .btn{margin:0}

/* teclado nas listas: linha selecionada com J/K */
table.lista tr.kb-sel td{background:rgba(201,169,98,.14)!important;box-shadow:inset 3px 0 0 var(--ouro)}

/* ações em massa (barra flutuante) */
.massa-col{width:34px;text-align:center}
.massa-col input{margin:0}
.massa-barra{position:fixed;bottom:18px;left:50%;transform:translate(-50%,120px);z-index:300;background:rgba(21,29,53,.97);color:#fff;border-radius:20px;box-shadow:0 12px 40px rgba(0,0,0,.3);padding:12px 18px;display:flex;align-items:center;justify-content:center;gap:10px;row-gap:8px;transition:transform .25s,opacity .2s;max-width:calc(100vw - 24px);flex-wrap:wrap;visibility:hidden;opacity:0;pointer-events:none}
.massa-barra.mostra{transform:translate(-50%,0);visibility:visible;opacity:1;pointer-events:auto}
.massa-barra b{white-space:nowrap}
.massa-barra select{min-height:34px;padding:4px 30px 4px 12px;border-radius:999px;margin:0;font-size:.86rem;background:#fff;color:#1E2A4A;font-weight:600;border:1px solid rgba(255,255,255,.4)}
.massa-barra select option{color:#1E2A4A;background:#fff;font-weight:400}
.massa-barra .btn{margin:0;min-height:34px;padding:5px 16px}
.massa-barra .massa-fechar{background:none;border:0;color:rgba(255,255,255,.7);font-size:1.1rem;cursor:pointer;padding:2px 8px}
.massa-barra .massa-fechar:hover{color:#fff}

/* "+ Novo" global no cabeçalho */
.novo-box{position:relative}
.novo-btn{background:var(--ouro);color:var(--navy-esc,#151d35);border:0;border-radius:999px;min-width:34px;min-height:34px;font-size:1.15rem;font-weight:700;cursor:pointer;line-height:1;padding:0 10px}
.novo-btn:hover{background:#D4B56E}
.novo-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:14px;box-shadow:var(--sombra-2);min-width:280px;max-height:70vh;overflow:auto;z-index:60;padding:6px}
.novo-menu.aberto{display:block}
.novo-menu a{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--texto);font-size:.9rem;font-weight:500}
.novo-menu a:hover{background:var(--ap-fill,rgba(120,120,128,.1))}
.novo-menu a small{color:var(--cinza);white-space:nowrap}
.novo-titulo{padding:8px 12px 6px;font-weight:600;color:var(--cinza);font-size:.8rem;border-bottom:1px solid var(--ap-hair,rgba(60,60,67,.12));margin-bottom:4px}

/* e-mail: editor com formatação (estilo Thunderbird) */
.rte-barra{display:flex;align-items:center;gap:4px;flex-wrap:wrap;background:var(--gelo);border:1px solid var(--borda);border-bottom:0;border-radius:10px 10px 0 0;padding:6px 8px}
.rte-barra button{background:#fff;border:1px solid var(--ap-hair2,rgba(60,60,67,.2));border-radius:7px;min-height:30px;min-width:32px;padding:2px 10px;font-size:.84rem;cursor:pointer;color:var(--texto)}
.rte-barra button:hover{background:var(--ap-fill,rgba(120,120,128,.1))}
.rte-sep{width:1px;height:20px;background:var(--borda);margin:0 4px}
.rte-linkbox{display:inline-flex;gap:4px;align-items:center}
.rte-linkbox input{min-height:30px;padding:3px 10px;min-width:220px;margin:0;font-size:.84rem}
.em-rte{border:1px solid var(--ap-hair2,rgba(60,60,67,.2));border-radius:0 0 10px 10px;background:#fff;min-height:220px;max-height:52vh;overflow:auto;padding:12px 14px;font:14px/1.55 system-ui,'Segoe UI',Arial,sans-serif;color:#22262B}
.em-rte:focus-visible{outline:none;border-color:var(--ap-azul,#0071E3);box-shadow:var(--foco)}
.em-rte:empty::before{content:attr(data-vazio);color:#9aa3b5}
.em-rte a{color:#1B74E4}
.em-rte ul,.em-rte ol,.em-prev ul,.em-prev ol{margin:8px 0;padding-left:24px}

/* e-mail em tela repartida (Build 010): esquerda digita · direita prévia do e-mail final */
.em-split{display:grid;grid-template-columns:minmax(360px,1fr) minmax(340px,1fr);gap:16px;align-items:start}
.em-prev-caixa{position:sticky;top:110px}
.em-prev{background:#fff;border:1px solid var(--borda);border-radius:10px;padding:16px 18px;font:14px/1.55 system-ui,'Segoe UI',Arial,sans-serif;color:#22262B;min-height:280px;max-height:70vh;overflow:auto}
.em-prev p{margin:0 0 12px}
.em-vazio{color:#9aa3b5}
.em-cit{border-left:3px solid var(--borda);padding-left:10px;color:#5C646E;font-size:12.5px;margin:12px 0;white-space:normal}
@media(max-width:1100px){.em-split{grid-template-columns:1fr}.em-prev-caixa{position:static}}

/* ====================================================================
   BUILD 012 — hierarquia visual: cada tela com UMA prioridade clara.
   O que é aviso permanente, ação rara ou texto de apoio perde peso;
   a ação principal continua dourada e destacada. Identidade intacta.
==================================================================== */
/* tarja do modo de teste: presente, mas discreta (aviso permanente não pode gritar) */
.teste-banner{padding:4px 12px;font-size:.76rem;border-radius:8px;margin-bottom:10px;box-shadow:none;background:rgba(255,159,10,.12)}
/* exportar CSV é ação rara de gestor: vira link discreto, não botão */
.od-esq a[href*="export=csv"]{background:none;border:0;box-shadow:none;color:var(--cinza);font-weight:500;padding:4px 6px;min-height:0}
.od-esq a[href*="export=csv"]:hover{color:var(--texto);text-decoration:underline;background:none}
/* textos de apoio nas barras de ferramentas: menores e mais claros */
.od-filtros > span.mini{font-size:.76rem;color:#9aa3b5;max-width:440px;line-height:1.35}
/* ações destrutivas nas fichas: separadas à direita, longe do fluxo principal */
.cab-pagina .acoes form.inline:has(> button.btn-perigo){margin-left:auto}
.cab-pagina .acoes .btn-perigo{opacity:.85}
.cab-pagina .acoes .btn-perigo:hover{opacity:1}
/* atribuição de tarefa sem poluição: só o nome na coluna; o seletor aparece ao clicar */
.td-resp{white-space:nowrap}
.resp-btn{background:none;border:0;padding:2px 4px;cursor:pointer;font:inherit;font-size:.88rem;color:var(--texto);border-radius:6px;display:inline-flex;align-items:center;gap:6px;max-width:200px}
.resp-btn:hover{background:var(--gelo)}
.resp-lapis{opacity:0;font-size:.75rem;transition:opacity .15s}
tr:hover .resp-lapis,.resp-btn:focus-visible .resp-lapis{opacity:.6}

/* ====================================================================
   BUILD 015 — IODOO GLASS · padrão Apple de última geração (27/08/2026)
   Linguagem visual dos macOS/iOS mais recentes: fundo com profundidade,
   superfícies translúcidas ("vidro fosco"), barras flutuantes, cantos
   contínuos maiores, cápsulas com brilho interno e microtransições.
   Identidade preservada: navy #1E2A4A + dourado #C9A962.
   Camada final — para reverter, basta remover este bloco.
==================================================================== */
:root{
  --radius:12px;--radius-g:18px;
  --vidro:rgba(255,255,255,.78);
  --vidro-borda:rgba(255,255,255,.65);
  --hairline:rgba(30,42,74,.10);
  --sombra-1:0 1px 2px rgba(21,29,53,.05),0 8px 24px rgba(21,29,53,.06),inset 0 0 0 .5px rgba(255,255,255,.7);
  --sombra-2:0 24px 70px rgba(21,29,53,.22),inset 0 0 0 .5px rgba(255,255,255,.8);
  --borda:rgba(30,42,74,.12);
}
html{background:#EEF0F5}
body{
  background:
    radial-gradient(1200px 600px at 85% -10%, rgba(201,169,98,.10), transparent 60%),
    radial-gradient(1000px 700px at -10% 0%, rgba(30,42,74,.08), transparent 55%),
    linear-gradient(180deg,#F2F3F7 0%,#EDEFF4 100%);
  background-attachment:fixed;
  color:#1D1D1F;
}

/* barra superior e sub-barra: SÓLIDAS (pedido do Alfredo, 27/08 — menu principal sem transparência) */
.topo{background:#1E2A4A;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid rgba(201,169,98,.55);box-shadow:0 10px 30px rgba(21,29,53,.18)}
.submenu{background:#273455;-webkit-backdrop-filter:none;backdrop-filter:none;border-top:1px solid rgba(255,255,255,.06)}
.busca-btn,.emp-btn{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);border-radius:999px;transition:background .18s}
.busca-btn:hover,.emp-btn:hover{background:rgba(255,255,255,.18)}
.novo-btn{box-shadow:0 2px 10px rgba(201,169,98,.45),inset 0 1px 0 rgba(255,255,255,.5);transition:transform .12s,box-shadow .18s}
.novo-btn:hover{transform:scale(1.06);box-shadow:0 4px 16px rgba(201,169,98,.6),inset 0 1px 0 rgba(255,255,255,.5)}

/* superfícies: vidro claro com hairline e luz interna (sem blur pesado nas listas grandes) */
.cartao,.inicio-card,.kpi,.doc-box,.tk-msg,.hist li,.kcard,.item-box,.od-tabela-wrap,table.lista,.vazio,.prob-item,.tb-wrap,.em-prev,.mb-lista{
  background:var(--vidro);border-radius:var(--radius-g);box-shadow:var(--sombra-1)}
.vazio{background:rgba(255,255,255,.45);border:1px dashed rgba(30,42,74,.18);box-shadow:none}
.kpi{transition:transform .16s,box-shadow .16s}
a.kpi:hover,.kpi[onclick]:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(21,29,53,.07),0 16px 36px rgba(21,29,53,.10),inset 0 0 0 .5px rgba(255,255,255,.7)}
.kpi b,.num,td.num,th.num,.mapa-placar b{font-variant-numeric:tabular-nums}

/* menus, dropdowns e paletas: vidro denso */
.apps-menu,.novo-menu,.notif-menu,.emp-menu,.od-painel,.ac-lista,.bg-caixa,.modal,.conf-caixa{
  background:rgba(250,250,252,.82);-webkit-backdrop-filter:saturate(190%) blur(28px);backdrop-filter:saturate(190%) blur(28px);
  border-radius:20px;box-shadow:var(--sombra-2);border:0}
.notif-menu,.emp-menu,.od-painel,.ac-lista{border-radius:16px}
.modal-fundo,.conf-fundo,.bg-fundo{background:rgba(21,29,53,.30);-webkit-backdrop-filter:blur(10px) saturate(120%);backdrop-filter:blur(10px) saturate(120%)}

/* controles: cápsulas com luz interna */
.btn{box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 1px 3px rgba(21,29,53,.15);transition:transform .12s,box-shadow .18s,background .18s}
.btn:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 4px 14px var(--acao-sombra)}
.btn:active{transform:scale(.97)}
.btn-claro,.btn-perigo{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 1px 3px rgba(21,29,53,.08);background:rgba(255,255,255,.85)}
.btn-claro:hover{background:#fff;box-shadow:inset 0 1px 0 #fff,0 4px 12px rgba(21,29,53,.10)}
input,select,textarea,.em-rte{background:rgba(255,255,255,.85);border-color:var(--hairline);border-radius:12px;transition:border-color .15s,box-shadow .2s,background .15s}
input:hover,select:hover,textarea:hover{border-color:rgba(30,42,74,.22)}
input:focus-visible,select:focus-visible,textarea:focus-visible,.em-rte:focus-visible{background:#fff}
.od-campo{background:rgba(30,42,74,.06);border-radius:999px}
.od-campo:focus-within{background:#fff}
.od-dd summary,.od-pag a,.od-acao,.atalhos a,.pp-in,.dens-btn{background:rgba(255,255,255,.8);border-color:var(--hairline);transition:background .15s,box-shadow .15s}
.od-dd summary:hover,.od-pag a:hover,.od-acao:hover,.atalhos a:hover{background:#fff;box-shadow:0 2px 8px rgba(21,29,53,.08)}

/* abas: segmented control flutuante */
.abas{background:rgba(30,42,74,.07);border-radius:12px;padding:3px}
.abas a{border-radius:9px;transition:background .15s,box-shadow .15s}
.abas a.ativa{box-shadow:0 1px 4px rgba(21,29,53,.16),0 0 0 .5px rgba(21,29,53,.04)}

/* tabelas: cabeçalho de vidro, hover suave */
.lista th,.od-tabela th{background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.lista td{border-top:1px solid rgba(30,42,74,.06)}
.lista tbody tr,.lista tr{transition:background .12s}
.lista tbody tr:hover td,.lista tr:hover td,.od-tabela tbody tr:hover td{background:rgba(30,42,74,.045)}
table.lista tr.kb-sel td{background:rgba(201,169,98,.16)!important}

/* kanban e calendário */
.kcard{border-left:3px solid var(--ouro);transition:transform .15s,box-shadow .15s}
.kcard:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(21,29,53,.12),inset 0 0 0 .5px rgba(255,255,255,.7)}
.cal{background:rgba(30,42,74,.10);border-radius:var(--radius-g);box-shadow:var(--sombra-1)}
.cal-dia{background:rgba(255,255,255,.86)}
.cal-dia:hover{background:#fff}

/* barras flutuantes (massa, ações fixas, toasts) */
.massa-barra{background:rgba(24,33,60,.86);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);box-shadow:0 20px 50px rgba(21,29,53,.4),inset 0 0 0 .5px rgba(255,255,255,.12)}
.acoes-fixas{background:rgba(242,243,247,.72);-webkit-backdrop-filter:saturate(180%) blur(18px);backdrop-filter:saturate(180%) blur(18px);border-top:1px solid var(--hairline);border-radius:14px 14px 0 0}
.toast{background:rgba(24,33,60,.88);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);box-shadow:0 16px 40px rgba(21,29,53,.35),inset 0 0 0 .5px rgba(255,255,255,.15)}
.toast-notif{background:rgba(201,169,98,.92);color:#1a2340}

/* avisos e chips */
.flash{border-radius:14px;box-shadow:var(--sombra-1)}
.teste-banner{background:rgba(255,159,10,.10);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(255,159,10,.18)}
.tag{box-shadow:inset 0 0 0 .5px rgba(255,255,255,.4)}
.od-chip{box-shadow:inset 0 0 0 .5px rgba(255,255,255,.5)}
.rot-barra{background:rgba(30,42,74,.08);border:0}
.zona-arq{background:rgba(255,255,255,.7);border-radius:14px}
.zona-arq:hover{background:rgba(255,255,255,.9)}
.rte-barra{background:rgba(30,42,74,.05);border-color:var(--hairline);border-radius:12px 12px 0 0}
.em-rte{border-radius:0 0 12px 12px}
.reg-pager .reg-volta,.reg-pager .reg-seta{background:rgba(255,255,255,.8);border-color:var(--hairline)}
.stepper span{background:rgba(255,255,255,.7)}

/* rolagem discreta (padrão macOS) */
*{scrollbar-width:thin;scrollbar-color:rgba(30,42,74,.25) transparent}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-thumb{background:rgba(30,42,74,.22);border-radius:99px;border:2px solid transparent;background-clip:content-box}
*::-webkit-scrollbar-thumb:hover{background:rgba(30,42,74,.4);border:2px solid transparent;background-clip:content-box}
*::-webkit-scrollbar-track{background:transparent}

/* rodapé leve */
.rodape-app{border-top:1px solid var(--hairline);background:transparent}
/* impressão continua limpa: papel branco, sem vidro */
@media print{body{background:#fff}.cartao,table.lista,.od-tabela-wrap{background:#fff;box-shadow:none}}
/* zebra antiga pintava células de branco sólido — no vidro, linhas ficam uniformes */
.lista tr:nth-child(even) td{background:transparent}
/* tabelas-resumo DENTRO de cartão: sem cabeçalho grudado (o sticky+vidro deslocava o th
   por cima das primeiras linhas — ex.: Detalhe mês a mês da Apuração real) */
.cartao table.lista th{position:static;-webkit-backdrop-filter:none;backdrop-filter:none;background:transparent}

/* ============================================================ BUILD 030
   Início personalizável + hub + post-its + cofre + TEMA ESCURO */
.card-acoes{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}
.card-acoes a{font-size:.82rem;font-weight:700;color:var(--navy);background:rgba(30,42,74,.06);border-radius:99px;padding:5px 12px;text-decoration:none}
.card-lista-simples{list-style:none;margin:0;padding:0}
.card-lista-simples li{padding:5px 0;border-bottom:1px solid var(--borda);font-size:.88rem;display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.card-lista-simples li:last-child{border-bottom:0}
.card-lista-simples li.nao-lida a{font-weight:800}
.card-lista-simples a{color:var(--texto);text-decoration:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.link-btn{background:none;border:0;padding:0;color:var(--navy);cursor:pointer;font-size:.8rem;text-decoration:underline}
.card-form-linha{display:flex;gap:6px;margin-top:8px}
.card-form-linha input{flex:1;padding:8px 10px;font-size:.85rem}
/* post-its (como os do Windows) */
.postits{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
.postit{position:relative;border-radius:2px 2px 12px 2px;padding:10px 12px 12px;font-size:.84rem;line-height:1.4;color:#3d3a26;box-shadow:0 3px 8px rgba(0,0,0,.14);word-break:break-word;transform:rotate(-.6deg)}
.postit:nth-child(even){transform:rotate(.7deg)}
.postit-de{display:block;font-size:.68rem;font-weight:800;color:rgba(0,0,0,.45);margin-bottom:3px;letter-spacing:.3px}
.postit-x{position:absolute;top:2px;right:4px;margin:0}
.postit-x button{background:none;border:0;cursor:pointer;color:rgba(0,0,0,.35);font-size:.8rem;padding:2px}
.postit-x button:hover{color:var(--erro)}
.postit-add textarea{width:100%;box-sizing:border-box;margin-top:8px;font-size:.85rem}
.postit-add-linha{display:flex;gap:8px;margin-top:6px;align-items:center}
.postit-add-linha select{padding:6px 10px;font-size:.83rem}
/* notas importantes + cofre */
.notas-imp{list-style:none;margin:0;padding:0}
.notas-imp li{padding:6px 0;border-bottom:1px dashed var(--borda);font-size:.87rem;display:flex;justify-content:space-between;gap:8px}
.notas-imp li:last-child{border-bottom:0}
.notas-acoes{white-space:nowrap}
.notas-acoes button{background:none;border:0;cursor:pointer;font-size:.78rem;opacity:.55;padding:2px}
.notas-acoes button:hover{opacity:1}
.cofre{list-style:none;margin:0;padding:0}
.cofre li{padding:7px 0;border-bottom:1px solid var(--borda);font-size:.86rem}
.cofre li:last-child{border-bottom:0}
.cofre code{background:rgba(201,169,98,.18);padding:2px 8px;border-radius:6px;font-size:.9rem}
.cofre-form{display:grid;gap:6px;margin-top:8px}
.cofre-form input{padding:8px 10px;font-size:.84rem}
/* seletor de cards */
.sel-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}
.sel-card{display:flex;align-items:center;gap:10px;border:1.5px solid var(--borda);border-radius:12px;padding:9px 12px;cursor:pointer;font-size:.88rem;font-weight:600;color:var(--texto)}
.sel-card:hover{border-color:var(--ouro)}
.sel-card.marcado{border-color:var(--ouro);background:rgba(201,169,98,.10)}
.sel-icone{font-size:1.1rem;border-left:4px solid;padding-left:8px}
/* parâmetros do sistema */
.par-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px;align-items:start}
.par-grid .ajuda{margin-bottom:6px}
/* hub */
.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.hub-item{display:block;padding:10px 12px;border:1px solid var(--borda);border-radius:12px;margin-bottom:8px;text-decoration:none;color:var(--texto)}
.hub-item:hover{border-color:var(--ouro);background:rgba(201,169,98,.07)}
.hub-item b{display:block;color:var(--navy);font-size:.92rem}
.hub-item .mini{display:block;margin-top:1px}
.hub-tema{margin:0 0 8px}
.hub-link{display:block;background:none;border:1px solid var(--borda);border-radius:12px;padding:10px 12px;cursor:pointer;font:inherit}
.hub-link:hover{border-color:var(--ouro)}
.hub-link b{display:block;color:var(--navy);font-size:.92rem}
.tema-form{display:flex;gap:10px}
.tema-op{flex:1;padding:12px;border:1.5px solid var(--borda);border-radius:12px;background:none;cursor:pointer;font:inherit;font-weight:700;color:var(--texto)}
.tema-op.ativo{border-color:var(--ouro);background:rgba(201,169,98,.12)}

/* ------------------------------------------------------------ TEMA ESCURO
   por usuário (usuarios.tema = escuro) — variáveis + superfícies principais */
body[data-tema=escuro]{--texto:#E8EAEE;--cinza:#9AA2AE;--borda:#333B4D;--gelo:#1B2130;--navy:#D5DDF0;--acao:#C9A962;--acao-hover:#D4B56E;--acao-txt:#151D35;--acao-sombra:rgba(201,169,98,.4);--hairline:rgba(255,255,255,.08);
  background:#12161F;color:var(--texto)}
body[data-tema=escuro] .cartao,body[data-tema=escuro] .inicio-card,body[data-tema=escuro] .kpi,
body[data-tema=escuro] table.lista,body[data-tema=escuro] .od-tabela-wrap,body[data-tema=escuro] .vazio,
body[data-tema=escuro] .tb-lista,body[data-tema=escuro] .tb-leitura,body[data-tema=escuro] .tb-pastas,
body[data-tema=escuro] .hub-sec{background:#1C2230;border-color:#333B4D;box-shadow:0 8px 24px rgba(0,0,0,.35)}
body[data-tema=escuro] h1,body[data-tema=escuro] h2,body[data-tema=escuro] label{color:#E8EAEE}
body[data-tema=escuro] input,body[data-tema=escuro] select,body[data-tema=escuro] textarea,body[data-tema=escuro] .em-rte{background:#141926;border-color:#39415a;color:#E8EAEE}
body[data-tema=escuro] .lista td{border-color:#2A3143;color:#DCE0E8}
body[data-tema=escuro] .lista th{background:#242C40;color:#E8EAEE}
body[data-tema=escuro] .lista tr:hover td{background:rgba(255,255,255,.03)}
body[data-tema=escuro] .btn-claro{background:#242C40;border-color:#39415a;color:#E8EAEE}
body[data-tema=escuro] .inicio-card li,body[data-tema=escuro] .card-lista-simples li{border-color:#2A3143}
body[data-tema=escuro] .inicio-card li a,body[data-tema=escuro] .card-lista-simples a{color:#DCE0E8}
body[data-tema=escuro] .inicio-card li b{filter:brightness(1.5)}
body[data-tema=escuro] .mini{color:#9AA2AE}
body[data-tema=escuro] .atalhos a,body[data-tema=escuro] .card-acoes a{background:#242C40;color:#E8EAEE}
body[data-tema=escuro] .hub-item,body[data-tema=escuro] .hub-link,body[data-tema=escuro] .sel-card,body[data-tema=escuro] .tema-op{border-color:#333B4D;color:#DCE0E8}
body[data-tema=escuro] .hub-item b,body[data-tema=escuro] .hub-link b{color:#E8EAEE}
body[data-tema=escuro] .flash{background:#242C40;color:#E8EAEE;border-color:#39415a}
body[data-tema=escuro] .flash-erro{background:#3A2230;border-color:#5d3140}
body[data-tema=escuro] .flash-alerta,body[data-tema=escuro] .teste-banner{background:#3A3222;border-color:#5d5031;color:#EAD9A8}
body[data-tema=escuro] .submenu a{color:#C8CEDA}
body[data-tema=escuro] .zona-arq,body[data-tema=escuro] .reg-pager .reg-volta,body[data-tema=escuro] .reg-pager .reg-seta,body[data-tema=escuro] .stepper span{background:#242C40;color:#DCE0E8}
body[data-tema=escuro] .rte-barra{background:#242C40}
body[data-tema=escuro] .tb-conta-nome{color:#E8EAEE}
body[data-tema=escuro] .tb-conta-nome:hover,body[data-tema=escuro] .tb-pasta:hover{background:#242C40}
body[data-tema=escuro] .tb-msg{border-color:#2A3143}
body[data-tema=escuro] .tb-msg .tb-assunto{color:#E8EAEE}
body[data-tema=escuro] .postit{color:#3d3a26}
body[data-tema=escuro] .tag-navy{background:#2A3143;color:#C8CEDA}

/* ============================================================ BUILD 032 — AJUDA */
.gloss-az{display:flex;gap:4px;flex-wrap:wrap;margin:12px 0 8px}
.gloss-az a{min-width:30px;text-align:center;padding:5px 6px;border:1px solid var(--borda);border-radius:8px;text-decoration:none;color:var(--texto);font-weight:700;font-size:.82rem}
.gloss-az a.ativa,.gloss-az a:hover{border-color:var(--ouro);background:rgba(201,169,98,.12)}
.gloss-cats{display:flex;gap:6px;flex-wrap:wrap}
.gloss-cats .tag{text-decoration:none;cursor:pointer}
.gloss-letra{font-family:'Inter',sans-serif;font-weight:800;font-size:1.3rem;color:var(--ouro-aa);border-bottom:2px solid var(--ouro);margin:18px 0 6px;padding-bottom:2px}
.gloss-item{background:#fff;border:1px solid var(--borda);border-radius:12px;padding:12px 16px;margin-bottom:8px}
.gloss-item b{color:var(--navy);font-size:.95rem}
.gloss-item p{margin:6px 0 0;font-size:.88rem;color:var(--texto);line-height:1.5}
.doc-item{display:block;background:#fff;border:1px solid var(--borda);border-radius:12px;padding:11px 16px;margin-bottom:8px;text-decoration:none;color:var(--texto)}
.doc-item:hover{border-color:var(--ouro)}
.doc-item b{display:block;color:var(--navy)}
.doc-item .mini{display:block;margin-top:2px}
.doc-corpo{font-size:.93rem;line-height:1.65;white-space:normal}
.sobre-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;align-items:start}
.sobre-logo{font-family:'Inter',sans-serif;font-weight:800;font-size:2rem;letter-spacing:4px;color:var(--navy)}
.sobre-build{font-size:1.1rem;margin-top:4px}
.sobre-versao ul,.sobre-nums{list-style:none;margin:0;padding:0}
.sobre-versao li,.sobre-nums li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--borda);font-size:.9rem}
.sobre-versao li:last-child,.sobre-nums li:last-child{border-bottom:0}
body[data-tema=escuro] .gloss-item,body[data-tema=escuro] .doc-item{background:#1C2230;border-color:#333B4D}
body[data-tema=escuro] .gloss-item b,body[data-tema=escuro] .doc-item b,body[data-tema=escuro] .sobre-logo{color:#E8EAEE}
body[data-tema=escuro] .gloss-az a{border-color:#333B4D;color:#DCE0E8}

.duvida-resp{background:rgba(201,169,98,.10);border:1px solid var(--ouro);border-radius:12px;padding:12px 16px;margin-top:10px;font-size:.92rem;line-height:1.6}
body[data-tema=escuro] .duvida-resp{background:rgba(201,169,98,.08)}

/* Build 040 — diferencas marcadas da revisao de e-mail */
.dif-del{color:#E57373;text-decoration:line-through;text-decoration-color:#E57373}
.dif-caixa{background:rgba(229,115,115,.07);border:1px solid rgba(229,115,115,.35);border-radius:12px;padding:10px 14px;margin:0 0 10px;font-size:.9rem}
.dif-texto{margin-top:6px;line-height:1.6}
body[data-tema=escuro] .dif-caixa{background:rgba(229,115,115,.10);border-color:rgba(229,115,115,.4)}

/* Build 041 — logotipo ALFA POLO no topo */
.marca-logo{height:34px;display:block;width:auto}
.marca-app{padding:4px 6px}
.marca .marca-logo{height:38px;margin-bottom:2px}
@media(max-width:900px){.marca-logo{height:28px}}

/* Build 042 — campos vazios em cadastros ganham borda vermelha (mesmo opcionais) */
.campo-vazio{border-color:#E57373 !important;box-shadow:0 0 0 1px rgba(229,115,115,.25)}
body[data-tema=escuro] .campo-vazio{border-color:#E57373 !important}

/* ============ 💡 Ajuda avançada do sistema (Build 432; antes 🤖 Assistente de ajuda, Build 054) — presente em todas as telas ============ */
#assistente-raiz{position:fixed;right:18px;top:64px;z-index:1200} /* Build 462: sem botão flutuante — só o painel, que desce do ❓ do topo */
#ast-botao{display:flex;align-items:center;gap:7px;background:var(--navy,#1E2A4A);color:#fff;border:2px solid #C9A962;border-radius:999px;padding:10px 16px;font:600 .9rem Inter,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.28);transition:transform .15s}
#ast-botao:hover{transform:translateY(-2px)}
#ast-botao span{letter-spacing:.3px}
#ast-painel{position:fixed;right:18px;top:64px;width:min(440px,calc(100vw - 28px));height:min(600px,calc(100vh - 84px));display:flex;flex-direction:column;background:var(--cartao,#fff);border:1px solid var(--borda,#d9dde5);border-radius:16px;box-shadow:0 18px 48px rgba(15,23,42,.35);overflow:hidden}
.ast-topo{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--navy,#1E2A4A);color:#fff;padding:10px 14px;border-bottom:3px solid #C9A962}
.ast-topo b{font-size:.95rem}
.ast-topo .mini{color:#cfd6e4;flex:1}
.ast-topo button{background:none;border:0;color:#fff;font-size:1rem;cursor:pointer;padding:2px 6px;opacity:.85}
.ast-topo button:hover{opacity:1}
#ast-msgs{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:8px;background:var(--fundo,#f3f5f9)}
.ast-msg{max-width:88%;padding:9px 12px;border-radius:12px;font-size:.86rem;line-height:1.45;white-space:pre-wrap;word-wrap:break-word}
.ast-eu{align-self:flex-end;background:var(--navy,#1E2A4A);color:#fff;border-bottom-right-radius:4px}
.ast-ia{align-self:flex-start;background:var(--cartao,#fff);color:var(--texto,#222);border:1px solid var(--borda,#d9dde5);border-bottom-left-radius:4px}
#ast-form{display:flex;gap:8px;padding:10px;border-top:1px solid var(--borda,#d9dde5);background:var(--cartao,#fff)}
#ast-form input{flex:1;margin:0}
.ast-envia{background:#C9A962;color:#1E2A4A;border:0;border-radius:10px;padding:0 16px;font-size:1rem;font-weight:700;cursor:pointer}
@media print{#assistente-raiz{display:none}}

/* ============ Tela de acesso da equipe (Build 057) ============ */
.acesso-wrap{display:flex;justify-content:center;padding-top:4vh}
.acesso-cartao{max-width:430px;width:100%;padding:34px 36px 24px;border-top:4px solid #C9A962;box-shadow:0 18px 50px rgba(15,23,42,.14)}
.acesso-icone{width:64px;height:64px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;font-size:1.9rem;background:var(--fundo,#f3f5f9);border:1px solid var(--borda,#d9dde5);border-radius:50%}
.acesso-enviado{animation:acessoPulso 1.6s ease-in-out infinite}
@keyframes acessoPulso{0%,100%{transform:scale(1)}50%{transform:scale(1.12)}}
.acesso-email{word-break:break-all;color:var(--navy,#1E2A4A)}
.acesso-btn{width:100%;margin-top:6px}
.acesso-codigo{font-size:1.7rem;letter-spacing:10px;text-align:center;font-weight:700;max-width:260px;margin:0 auto;display:block}
.acesso-rodape{margin-top:20px;padding-top:14px;border-top:1px solid var(--borda,#d9dde5);text-align:center;font-size:.85rem;color:var(--cinza,#666)}
.naorec-passos{counter-reset:p;list-style:none;margin:0;padding:0}
.naorec-passos li{position:relative;padding:12px 14px 12px 52px;border:1px solid var(--borda,#d9dde5);border-radius:12px;margin-bottom:10px;background:var(--cartao,#fff)}
.naorec-passos li::before{counter-increment:p;content:counter(p);position:absolute;left:12px;top:12px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--navy,#1E2A4A);color:#C9A962;border-radius:50%;font-weight:700}

/* Build 062: o painel do assistente SÓ aparece quando solicitado — [hidden] vence o display:flex */
#ast-painel[hidden]{display:none!important}

/* Tarefas — visão agrupada por cliente (padrão Odoo) */
.od-tabela tr.grp-cli td{background:#eef1f5;cursor:pointer;font-weight:600;border-top:2px solid #d8dce3;padding:10px 12px}
.od-tabela tr.grp-cli:hover td{background:#e4e8ee}
.od-tabela tr.grp-cli .seta{display:inline-block;width:16px;color:#8a6d2f}

/* topo nas telas DESLOGADAS (login/aceite): respiro — o logotipo encostava na borda da janela */
.topo-deslogado .topo-in{padding-top:18px;padding-bottom:16px}

/* --- Build 102: contraste do painel de notificações (sininho) --- */
/* o dropdown vive dentro de .menu (barra navy) e os itens <a> herdavam o branco de `.menu a`
   sobre o vidro CLARO do painel — ilegível. Reforço com especificidade maior. */
.menu .notif-menu a, .notif-menu .notif-item{color:var(--texto,#1D1D1F)}
.menu .notif-menu .notif-titulo a.mini{color:var(--ouro-aa,#8A6D1D);font-weight:600}
.menu .notif-menu .notif-item small{color:var(--cinza,#6E6E73)}
.menu .notif-menu .notif-item:hover{background:rgba(30,42,74,.06);color:var(--texto,#1D1D1F)}

/* Build 143 — ⚙ Configurar o sistema no menu principal + tela amigável de acesso restrito */
.cfg-btn{text-decoration:none}
.cfg-btn:hover{text-decoration:none}
@media(max-width:1180px){.cfg-txt{display:none}.cfg-btn{padding:6px 10px}}
.app-cfg{border-top:1px solid var(--borda);margin-top:6px;padding-top:12px;font-weight:600}
/* Build 144 — 🏷 marcadores de tarefa */
.tag.mk{font-weight:700;border:0;white-space:nowrap}
.kcard .tag.mk{font-size:.7rem;padding:1px 7px;margin-top:3px;display:inline-block}
/* Build 150: filtros de Tarefas com VÁRIAS marcações (Responsável / Marcador) */
.od-painel .fl-bloco{display:grid;gap:4px;font-size:.82rem}
.od-painel .fl-lista{max-height:190px;overflow:auto;border:1px solid var(--borda,#e3e6ea);border-radius:8px;padding:4px 8px;display:grid;gap:2px;min-width:260px;background:#fff}
.od-painel .fl-lista label{flex-direction:row;align-items:center;font-weight:400;font-size:.82rem;padding:2px 0;cursor:pointer}
.od-painel .fl-lista label:first-of-type{flex-direction:row}
/* Build 151: prévia do modelo ESTÚDIO (Olmos Arquitetura) */
.pv-estudio .pv-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:10px}
.pv-estudio .pv-top .pv-logo{max-height:64px;max-width:190px}
.pv-estudio .pv-num-r{text-align:right}.pv-estudio .pv-num-r b{display:block;font-size:1.6rem;line-height:1.1;color:#141414}.pv-estudio .pv-num-r small{display:block;color:#5c646e}
.pv-estudio .pv-regua{height:0;border-bottom:2px solid #6e6e6e;padding-top:2px;margin:0 0 14px}
.pv-estudio h4{font-size:.66rem;letter-spacing:.08em;margin:14px 0 6px;font-weight:700}
.pv-estudio .pv-cards>div{background:#f4f5f7;padding:10px 12px;border-radius:0}
.pv-estudio .pv-cards h4{color:#5c646e;margin:0 0 4px}
.pv-estudio .pv-rod-estudio{background:none;color:#5c646e;margin-top:14px;padding-top:8px;display:flex;justify-content:space-between;gap:12px;font-size:.72rem}
/* Build 154: folha mensal legível — campos largos, alinhados à direita, tabela rola na horizontal, cabeçalho fixo */
.folha-tab input.fl{width:112px;min-width:112px;text-align:right;font-size:.92rem;padding:7px 9px;margin:0}
.folha-tab input.fl-p{width:74px;min-width:74px}
.folha-tab th,.folha-tab td{white-space:nowrap;vertical-align:middle}
.folha-tab td:first-child{white-space:normal;min-width:220px}
.folha-tab th{position:sticky;top:0;background:#fff;z-index:2}
.od-tabela-wrap:has(.folha-tab){overflow:auto;max-height:calc(100vh - 260px)}
/* Build 161: ⏱ barra de alerta de compromisso (abaixo do menu, em todas as telas) */
.compromisso-barra{position:sticky;top:0;z-index:60;color:#fff;padding:8px 18px;box-shadow:0 4px 14px rgba(0,0,0,.18);transition:background .8s}
.compromisso-barra .cb-in{display:flex;align-items:center;gap:12px;flex-wrap:wrap;max-width:1400px;margin:0 auto;font-size:.9rem}
.compromisso-barra .cb-ico{font-size:1.25rem}.compromisso-barra .cb-txt{flex:1;min-width:220px}.compromisso-barra .cb-local{opacity:.85;font-size:.82rem;margin-left:6px}
.compromisso-barra .cb-timer{font-variant-numeric:tabular-nums;font-weight:800;font-size:1.15rem;background:rgba(0,0,0,.22);padding:3px 12px;border-radius:999px;letter-spacing:.03em}
.compromisso-barra .cb-link{color:#fff;font-weight:700;text-decoration:underline;opacity:.9}
.compromisso-barra .cb-aviso{max-width:1400px;margin:6px auto 0;font-weight:800;font-size:.95rem;background:rgba(0,0,0,.25);padding:6px 12px;border-radius:8px}
.compromisso-barra .cb-pulsa{animation:cb-pulsa 1s ease-in-out infinite}
@keyframes cb-pulsa{0%,100%{background:rgba(0,0,0,.25)}50%{background:rgba(255,255,255,.28)}}
.compromisso-barra .cb-perguntas{max-width:1400px;margin:6px auto 0;display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:.86rem}
.compromisso-barra .cb-perguntas .mini{color:rgba(255,255,255,.85)}
.compromisso-barra .cb-perg{background:rgba(255,255,255,.16);padding:5px 10px;border-radius:8px;display:inline-flex;gap:8px;align-items:center}
.compromisso-barra .cb-sim{background:#fff;color:#1E2A4A;border:0;border-radius:999px;padding:3px 10px;font-weight:700;cursor:pointer;font-size:.82rem}
.compromisso-barra .cb-sim:hover{background:#FFF3B0}
/* card destacado: 🚗 visitas técnicas de hoje (1º card do Início) */
.inicio-card.inicio-card-visita{border:2px solid var(--erro,#C0170C);border-top-width:6px;background:linear-gradient(180deg,#FFF6F5,#fff);animation:visita-pulsa 2.4s ease-in-out infinite}
@keyframes visita-pulsa{0%,100%{box-shadow:0 0 0 0 rgba(192,23,12,.0)}50%{box-shadow:0 0 0 6px rgba(192,23,12,.14)}}
.visitas-hoje{list-style:none;padding:0;margin:0;display:grid;gap:8px}.visitas-hoje li{background:#fff;border:1px solid #F1D4D1;border-radius:10px;padding:8px 10px}
.inicio-card .visitas-hoje li{display:block;justify-content:initial}.inicio-card .visitas-hoje li .mini{display:block;margin-top:2px}
/* Build 179: etiquetas Importante/Urgente no webmail (flags $label1/$label2 do Thunderbird) */
.tb-tag{display:inline-block;font-size:.62rem;font-weight:800;letter-spacing:.06em;padding:1px 6px;border-radius:4px;vertical-align:1px;font-style:normal}.tb-imp{background:#C0170C;color:#fff}.tb-urg{background:#E07B00;color:#fff}
.tb-btn-imp{background:#C0170C!important;color:#fff!important;border-color:#C0170C!important}.tb-btn-urg{background:#E07B00!important;color:#fff!important;border-color:#E07B00!important}
/* Build 180: Ajuda que EXECUTA — passos, atalhos clicáveis e sugestões */
.ast-msg .ast-texto{white-space:pre-wrap}
.ast-passos{margin:8px 0 0;padding-left:20px;font-size:.84rem;line-height:1.4}.ast-passos li{margin:3px 0}
.ast-atalhos{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.ast-atalho{display:inline-block;background:var(--navy,#1E2A4A);color:#fff!important;text-decoration:none;font-weight:700;font-size:.8rem;padding:6px 11px;border-radius:999px;border:2px solid #C9A962;line-height:1.2}
.ast-atalho:hover{background:#C9A962;color:#1E2A4A!important}
.ast-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.ast-chip{background:var(--fundo,#f3f5f9);border:1px solid var(--borda,#d9dde5);color:var(--texto,#222);border-radius:999px;padding:5px 10px;font-size:.78rem;cursor:pointer}.ast-chip:hover{border-color:#C9A962;background:#fff}
.ast-ia{max-width:94%}
.ajuda-pergunta .od-campo input{font-size:1.05rem}
.ast-fonte{margin-top:6px;font-size:.7rem;color:var(--cinza,#666)}
/* Build 186: seletor da empresa da holding no Financeiro */
.fin-ent{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 0 8px}
.fin-ent-chip{display:inline-block;padding:4px 12px;border-radius:999px;border:1px solid var(--borda,#d9dde5);background:var(--cartao,#fff);color:var(--navy,#1E2A4A);font-weight:700;font-size:.8rem;text-decoration:none}
.fin-ent-chip.ativo{background:var(--navy,#1E2A4A);color:#fff;border-color:#C9A962}
.fin-ent-chip:hover{border-color:#C9A962}
/* Build 205: cores suaves dos cards da tarefa (por usuário) — engrenagem discreta no canto do card */
.cartao[data-card]{position:relative}
.card-cor-btn{position:absolute;top:8px;right:10px;border:0;background:transparent;color:var(--cinza);opacity:.35;font-size:.95rem;line-height:1;cursor:pointer;padding:4px 6px;border-radius:6px}
.cartao[data-card]:hover .card-cor-btn,.card-cor-btn:focus{opacity:.85}
.card-cor-btn:hover{background:rgba(0,0,0,.06)}
.card-cor-pop{position:absolute;top:32px;right:10px;z-index:30;background:#fff;border:1px solid var(--borda);border-radius:10px;padding:8px;display:flex;gap:6px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.card-cor-pop[hidden]{display:none} /* Build 214: a paleta só aparece ao clicar na ⚙ (display:flex vencia o [hidden] e mostrava todas as paletas) */
.card-cor-sw{width:22px;height:22px;border-radius:50%;border:1px solid rgba(0,0,0,.12);cursor:pointer;padding:0}
.card-cor-sw.sem{background:#fff linear-gradient(135deg,transparent 46%,#C33 46%,#C33 54%,transparent 54%) !important}
.card-cor-sw.ativa{outline:2px solid var(--navy);outline-offset:2px}
body[data-tema=escuro] .card-cor-pop{background:#1C2230;border-color:#333B4D}
body[data-tema=escuro] .card-cor-btn:hover{background:rgba(255,255,255,.08)}

/* Build 213: seletor de mês do Financeiro numa linha só */
.fin-mes-sel{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.fin-mes-sel select,.fin-mes-sel .btn{width:auto;margin:0}

/* ============ Primeiro acesso — termo, regras, dados e senha (Build 222) ============ */
.pa-wrap{max-width:880px;margin:0 auto}
.pa-termo{max-height:280px;overflow:auto;border:1px solid var(--borda,#d9dde5);border-radius:10px;padding:12px 16px;background:var(--fundo,#f7f8fa);white-space:pre-wrap;font-size:.9rem;line-height:1.55;margin-bottom:6px}
.pa-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
@media(max-width:700px){.pa-grid{grid-template-columns:1fr}}

/* ============ 📝 Criação de documentos (Build 223) ============ */
.doc-wrap{max-width:900px;margin:0 auto}
.doc-barra{position:sticky;top:64px;z-index:5;display:flex;flex-wrap:wrap;gap:3px;align-items:center;background:#F3F4F6;border:1px solid #D1D5DB;border-radius:8px;padding:5px 6px;margin-bottom:10px}
.db-btn{min-width:30px;height:28px;border:1px solid transparent;background:transparent;border-radius:5px;cursor:pointer;font-size:14px;color:#1F2937;padding:0 7px}.db-btn:hover{background:#fff;border-color:#CBD5E1}.db-btn.db-dir{transform:scaleX(-1)}.db-btn.db-primario{background:var(--navy,#1E2A4A);color:#fff;margin-left:auto;padding:0 12px;font-weight:600}.db-btn.db-primario:hover{background:#2c3d6b}
.db-sel{height:28px;margin:0;padding:0 4px;font-size:12px;width:auto}.db-sep{width:1px;height:22px;background:#CBD5E1;margin:0 3px}.db-cor{width:26px;height:26px;border:1px solid #CBD5E1;border-radius:5px;padding:0;background:#fff;cursor:pointer}
.doc-folha{background:#fff;width:210mm;max-width:100%;min-height:297mm;margin:0 auto;padding:12mm 18mm 14mm;box-shadow:0 6px 24px rgba(15,23,42,.18);box-sizing:border-box;display:flex;flex-direction:column;border-radius:2px}
.doc-area{flex:1;outline:none;min-height:200mm;padding:4px 0}.doc-area:focus{outline:none}.doc-area .page-break{border-top:2px dashed #C9A962;margin:14px 0;position:relative}.doc-area .page-break::after{content:'quebra de página';position:absolute;right:0;top:-9px;font-size:10px;color:#C9A962;background:#fff;padding:0 4px}
.doc-area td:empty::after{content:'\00a0'}
.calc-wrap{overflow:auto;max-height:calc(100vh - 230px);border:1px solid #CBD5E1;border-radius:8px;background:#fff}
table.calc{border-collapse:collapse;font:12px/1.3 "Liberation Sans",Arial,sans-serif;table-layout:fixed}table.calc th{background:#F3F4F6;border:1px solid #CBD5E1;font-weight:600;color:#374151;text-align:center;position:sticky;top:0;z-index:2;padding:2px 4px;min-width:34px}table.calc tr>th:first-child{left:0;z-index:3}table.calc td{border:1px solid #E5E7EB;padding:2px 5px;height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:cell;background:#fff}table.calc td.sel{outline:2px solid #1B74E4;outline-offset:-2px;background:#EEF5FF}table.calc td.calc-erro{color:#B02A2A}.calc-edit{width:100%;height:100%;border:0;margin:0;padding:0 2px;font:inherit;outline:none;background:#fff}
.calc-ref{font-weight:700;min-width:44px;text-align:center;font-size:12px;color:#374151}.calc-form{flex:1;min-width:200px;margin:0;height:28px;font-family:"Liberation Mono",Consolas,monospace;font-size:12px}
.rel-fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.rel-foto{border:1px solid #D9DDE5;border-radius:10px;padding:8px;background:#fff;display:flex;flex-direction:column;gap:6px}.rel-foto img{width:100%;height:170px;object-fit:cover;border-radius:6px;background:#eee}.rel-n{font-weight:700;font-size:.85rem;color:var(--navy,#1E2A4A)}.rel-foto textarea{margin:0;font-size:.85rem}.rel-acoes{display:flex;gap:4px;justify-content:flex-end}.rel-acoes button{border:1px solid #CBD5E1;background:#fff;border-radius:5px;cursor:pointer;padding:2px 8px}
@media print{.doc-barra,#doc-rodape-info{display:none}.doc-folha{box-shadow:none;width:auto;padding:0}}

/* Build 258 (Alfredo 08/09/2026, "preciso ajustar essa tela"): Vendas → Cotações cabe na largura da tela — antes Total, Situação e os botões
   ficavam fora da borda (rolagem lá embaixo). Cliente e vendedor com reticências (nome completo no title), pagamento em rótulo curto. */
.cot-tab .od-cli{max-width:250px}.cot-tab .cot-vend{max-width:140px;overflow:hidden;text-overflow:ellipsis}.cot-tab .cot-pag{max-width:170px;overflow:hidden;text-overflow:ellipsis}
.cot-tab td,.cot-tab th{padding-left:6px;padding-right:6px}
@media (max-width:1500px){.cot-tab .od-cli{max-width:190px}.cot-tab .cot-vend{max-width:110px}.cot-tab .cot-pag{max-width:140px}}
/* Build 264: cards do progresso do mês nas listas de Vendas (Cotações/Pedidos) — mais compactos que no dashboard */
.kpis-lista{margin:0 0 10px}.kpis-lista .kpi{padding:8px 12px;min-width:150px}.kpis-lista .kpi b{font-size:1.25rem}.kpis-lista .kpi span{font-size:.74rem}

/* ============================================================ BUILD 279 — tema escuro: menus, painéis e nome do topo com contraste */
body[data-tema=escuro] .apps-menu,body[data-tema=escuro] .novo-menu,body[data-tema=escuro] .notif-menu,body[data-tema=escuro] .emp-menu,
body[data-tema=escuro] .od-painel,body[data-tema=escuro] .ac-lista,body[data-tema=escuro] .bg-caixa,body[data-tema=escuro] .modal,body[data-tema=escuro] .conf-caixa{
  background:#1C2230;border:1px solid #333B4D;box-shadow:0 14px 40px rgba(0,0,0,.55);-webkit-backdrop-filter:none;backdrop-filter:none;color:#E8EAEE}
body[data-tema=escuro] .apps-titulo{color:#9AA2AE;border-bottom-color:#333B4D}
body[data-tema=escuro] .apps-titulo b{color:var(--ouro)}
body[data-tema=escuro] .app-item{color:#E8EAEE}
body[data-tema=escuro] .app-item:hover{background:#242C40}
body[data-tema=escuro] .app-item.ativo{background:rgba(201,169,98,.18);color:#fff}
body[data-tema=escuro] .menu .notif-menu .notif-item,body[data-tema=escuro] .notif-item{color:#E8EAEE;border-bottom-color:#2A3143}
body[data-tema=escuro] .menu .notif-menu .notif-item:hover{background:#242C40;color:#fff}
body[data-tema=escuro] .menu .notif-menu .notif-item small,body[data-tema=escuro] .notif-item small{color:#9AA2AE}
body[data-tema=escuro] .notif-titulo,body[data-tema=escuro] .notif-vazio{color:#E8EAEE}
body[data-tema=escuro] .conf-msg,body[data-tema=escuro] .modal h2,body[data-tema=escuro] .modal label{color:#E8EAEE}
body[data-tema=escuro] .ac-lista a,body[data-tema=escuro] .od-painel a,body[data-tema=escuro] .novo-menu a,body[data-tema=escuro] .emp-menu a{color:#E8EAEE}
body[data-tema=escuro] .ac-lista a:hover,body[data-tema=escuro] .od-painel a:hover,body[data-tema=escuro] .novo-menu a:hover,body[data-tema=escuro] .emp-menu a:hover{background:#242C40}
body[data-tema=escuro] .ajuda{color:#9AA2AE}
body[data-tema=escuro] .cab-pagina .mini,body[data-tema=escuro] .cartao .mini{color:#A3ABB8}
body[data-tema=escuro] table.lista th{color:#E8EAEE}
body[data-tema=escuro] .hub-item small,body[data-tema=escuro] .hub-sec > .mini,body[data-tema=escuro] .hub-sec p{color:#A3ABB8}

/* ============================================================ BUILD 280 — contraste: nome do topo (os dois temas) e tema escuro nas tabelas/superfícies restantes */
.menu a.menu-user,.menu-user{color:#fff !important;font-weight:700;background:rgba(255,255,255,.14);padding:5px 12px;border-radius:999px;text-decoration:none}
.menu a.menu-user:hover,.menu-user:hover{background:rgba(255,255,255,.24);color:#fff;text-decoration:none !important}
body[data-tema=escuro] .od-tabela th,body[data-tema=escuro] .lista th,body[data-tema=escuro] .od-tabela-wrap th{background:#242C40 !important;color:#E8EAEE}
body[data-tema=escuro] .od-tabela td,body[data-tema=escuro] .od-tabela tr:nth-child(even) td,body[data-tema=escuro] .lista tr:nth-child(even) td,
body[data-tema=escuro] .tri-tabela tr:not(.tri-nl) td,body[data-tema=escuro] .tri-tabela tr td{background:#1C2230 !important;color:#DCE0E8;border-color:#2A3143}
body[data-tema=escuro] .od-tabela tbody tr:hover td,body[data-tema=escuro] .lista tbody tr:hover td,body[data-tema=escuro] .lista tr:hover td,body[data-tema=escuro] .tri-tabela tr:hover td{background:#242C40 !important}
body[data-tema=escuro] .tri-tabela tr.tri-nl td{background:#1F2740 !important;color:#F2F4F8}
body[data-tema=escuro] .od-tabela td .mini,body[data-tema=escuro] .lista td .mini,body[data-tema=escuro] td .mini{color:#A3ABB8}
body[data-tema=escuro] .od-tabela td a,body[data-tema=escuro] .lista td a{color:#BFD3FF}
body[data-tema=escuro] .od-tabela tr.grp-cli td{background:#242C40 !important;border-top-color:#39415a}
body[data-tema=escuro] .od-campo,body[data-tema=escuro] .od-dd summary,body[data-tema=escuro] .od-pag a,body[data-tema=escuro] .od-acao,body[data-tema=escuro] .btn-perigo,
body[data-tema=escuro] .kcard,body[data-tema=escuro] .item-box,body[data-tema=escuro] .tk-msg,body[data-tema=escuro] .doc-box,body[data-tema=escuro] .hist li,body[data-tema=escuro] .atalhos a,
body[data-tema=escuro] .renov-lista label,body[data-tema=escuro] .resp-tabs label,body[data-tema=escuro] .prob-item,body[data-tema=escuro] .tb-wrap,body[data-tema=escuro] .mb-lista,body[data-tema=escuro] .gloss-item{background:#1C2230;border-color:#333B4D;color:#DCE0E8}
body[data-tema=escuro] .od-campo input,body[data-tema=escuro] .od-campo select{background:transparent}
body[data-tema=escuro] .od-chip{background:#242C40;color:#E8EAEE}
body[data-tema=escuro] .tk-msg.cliente{background:#26221A}
body[data-tema=escuro] .tk-msg.interna{background:#1F2430}
body[data-tema=escuro] .tk-msg.ia{background:#221E33}
body[data-tema=escuro] .doc-box.ok{background:#1B2A22;border-color:#2F5A3F}
body[data-tema=escuro] .doc-box.falta{background:#2A2418;border-color:#5d5031}
body[data-tema=escuro] .item-box.item-mensal{background:#1B2A22}
body[data-tema=escuro] .tag-amarela{background:#3A3222;color:#F0D48A}
body[data-tema=escuro] .tag-vermelha{background:#3A2230;color:#F5A3A3}
body[data-tema=escuro] .tag-verde{background:#1B2A22;color:#9BE0B0}
body[data-tema=escuro] .tag-cinza{background:#2A3143;color:#C8CEDA}
body[data-tema=escuro] .tag-azul{background:#1D4A8A;color:#DCE8FF}
body[data-tema=escuro] .app-item.ativo{background:rgba(201,169,98,.18)}
body[data-tema=escuro] .cartao .cartao,body[data-tema=escuro] details.cartao{background:#1C2230}
body[data-tema=escuro] .kpi b{color:#F2F4F8}
body[data-tema=escuro] .kpi span{color:#A3ABB8}
body[data-tema=escuro] .rodape-app,body[data-tema=escuro] .rodape-app a{color:#9AA2AE}
body[data-tema=escuro] .btn-claro:hover{background:#2A3143}
body[data-tema=escuro] .filtro,body[data-tema=escuro] .od-barra{color:#DCE0E8}
body[data-tema=escuro] .flash-ok{background:#1B2A22;border-color:#2F5A3F;color:#CFF1DA}

/* ============================================================ BUILD 281 — triagem no escuro: linhas já lidas com remetente/assunto legíveis (o estilo da tela usa #555) */
body[data-tema=escuro] .tri-tabela tr:not(.tri-nl) td>b,body[data-tema=escuro] .tri-tabela tr:not(.tri-nl) td b{color:#D5DAE4 !important}
body[data-tema=escuro] .tri-tabela tr:not(.tri-nl) td{color:#C3C9D4}
body[data-tema=escuro] .tri-tabela tr:not(.tri-nl) td .mini{color:#9AA2AE}
body[data-tema=escuro] .tri-tabela tr.tri-nl td>b{color:#FFFFFF !important}
body[data-tema=escuro] .tri-tabela td ol,body[data-tema=escuro] .tri-tabela td li{color:#DCE0E8}

/* ============================================================ BUILD 282 — e-mail (Nova mensagem / Responder) no tema escuro */
body[data-tema=escuro] .rte-barra button{background:#1C2230;color:#E8EAEE;border-color:#39415a}
body[data-tema=escuro] .rte-barra button:hover{background:#2A3143}
body[data-tema=escuro] .rte-barra button.ativo,body[data-tema=escuro] .rte-barra button[aria-pressed=true]{background:rgba(201,169,98,.25);color:#fff}
body[data-tema=escuro] .rte-url,body[data-tema=escuro] .rte-url-ok{background:#141926;color:#E8EAEE;border-color:#39415a}
body[data-tema=escuro] .em-prev{background:#FFFFFF !important;color:#22262B;border-color:#333B4D} /* a prévia é "como o cliente recebe": papel branco opaco, texto escuro */
body[data-tema=escuro] .em-prev p,body[data-tema=escuro] .em-prev li,body[data-tema=escuro] .em-prev td{color:#22262B}
body[data-tema=escuro] .em-prev .em-cit,body[data-tema=escuro] .em-prev blockquote{color:#4A525E;border-color:#C9CED8}
body[data-tema=escuro] .em-prev a{color:#0B5CC2}
body[data-tema=escuro] .em-vazio{color:#9AA2AE}
body[data-tema=escuro] .em-rte blockquote,body[data-tema=escuro] .em-rte .em-cit{color:#A3ABB8;border-color:#39415a}

/* ============================================================ BUILD 285 — calendário cabe na tela (colunas não crescem com o título) + tema escuro */
.cal{grid-template-columns:repeat(7,minmax(0,1fr)) !important;width:100%;max-width:100%}
.cal-dia{min-width:0;overflow:hidden}
.cal-ev{min-width:0;max-width:100%;box-sizing:border-box}
body[data-tema=escuro] .cal{background:#333B4D}
body[data-tema=escuro] .cal-cab,body[data-tema=escuro] .cal-dia{background:#1C2230;color:#DCE0E8}
body[data-tema=escuro] .cal-dia:hover{background:#242C40}
body[data-tema=escuro] .cal-dia.fora{background:#161B27;color:#6B7382}
body[data-tema=escuro] .cal-num{color:#E8EAEE}
body[data-tema=escuro] .cal-num small,body[data-tema=escuro] .cal-ev small{color:#9AA2AE}
body[data-tema=escuro] .cal-ev{background:#2A3550;color:#DCE0E8;border-left-color:#5B8DEF}
body[data-tema=escuro] .cal-ev.meu{background:#3A3222;color:#F0D48A;border-left-color:var(--ouro)}
body[data-tema=escuro] .cal-ev.pend{background:#1C2230;color:#F0D48A;border-color:#B7791F}
body[data-tema=escuro] .cal-leg{background:#2A3550}

/* ============================================================ BUILD 286 — botão 🤖 Ajuda legível no escuro (--navy vira claro no tema escuro) + bloco "aguardando o seu aceite" do calendário em tabela alinhada */
body[data-tema=escuro] #ast-botao,body[data-tema=escuro] .ast-topo,body[data-tema=escuro] .ast-eu,body[data-tema=escuro] .ast-atalho,body[data-tema=escuro] .ch-avatar,body[data-tema=escuro] .tb-avatar,body[data-tema=escuro] .fin-ent-chip.ativo,body[data-tema=escuro] .hero-publico,body[data-tema=escuro] .pular{background:#1E2A4A !important;color:#fff !important}
body[data-tema=escuro] #ast-botao{border-color:#C9A962;box-shadow:0 8px 24px rgba(0,0,0,.55)}
body[data-tema=escuro] .ast-atalho:hover{background:#C9A962 !important;color:#1E2A4A !important}
.cal-pend{padding:0;overflow:hidden;margin-bottom:14px;border-left:4px solid #E0A526}
.cal-pend-cab{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 14px;background:#FDF3E3;color:#7A4E00;font-weight:600}
.cal-pend-cab b{color:inherit}
.cal-pend-tab{width:100%;border-collapse:collapse;margin:0}
.cal-pend-tab td{padding:8px 14px;border-top:1px solid var(--borda);vertical-align:middle;font-size:.9rem}
.cal-pend-tab tr:first-child td{border-top:0}
.cal-pend-tab tr:hover td{background:var(--gelo)}
.cal-pend-q{white-space:nowrap;width:1%}
.cal-pend-t a{font-weight:600;text-decoration:none}
.cal-pend-t a:hover{text-decoration:underline}
.cal-pend-a{white-space:nowrap;width:1%;text-align:right}
.cal-pend-a form{display:inline}
.cal-pend-a .btn{margin:0 0 0 6px;vertical-align:middle}
@media (max-width:700px){.cal-pend-q .mini{display:none}.cal-pend-a .btn{padding:5px 8px}}
body[data-tema=escuro] .cal-pend{background:#1C2230;border-left-color:#C9A962}
body[data-tema=escuro] .cal-pend-cab{background:#3A3222;color:#EAD9A8}
body[data-tema=escuro] .cal-pend-tab td{border-color:#333B4D;color:#E8EAEE}
body[data-tema=escuro] .cal-pend-tab tr:hover td{background:#242C40}
body[data-tema=escuro] .cal-pend-t a{color:#9CC4FF}
body[data-tema=escuro] .abas{background:rgba(255,255,255,.08)}
body[data-tema=escuro] .abas a{color:#C9D0DC}
body[data-tema=escuro] .abas a.ativa{background:#2A3143;color:#fff}
body[data-tema=escuro] .abas a span,body[data-tema=escuro] .abas a.ativa span{color:inherit}

/* ============================================================ BUILD 288 — campos que faltam no lead antes do orçamento */
.campo-falta{border-color:#B02A2A !important;background:#FFF5F5 !important;box-shadow:0 0 0 2px rgba(176,42,42,.15) !important}
body[data-tema=escuro] .campo-falta{background:#3A2323 !important;border-color:#E06666 !important;color:#F3E6E6 !important}

/* ============================================================ BUILD 289 — toast da notificação clicável (link) */
.toast{pointer-events:auto}
a.toast{text-decoration:none;cursor:pointer}
a.toast-notif:hover{background:#C9A962;box-shadow:0 10px 32px rgba(0,0,0,.35)}

/* ============================================================ BUILD 291 — barra "pedidos aprovados pelo cliente" (triagem confirmou pelo pedido de compra) */
a.teste-banner.po-banner{display:block;background:rgba(26,127,55,.16);color:#14532d;border:1px solid rgba(26,127,55,.3);text-decoration:none;letter-spacing:.2px}
a.teste-banner.po-banner:hover{background:rgba(26,127,55,.26)}
body[data-tema=escuro] a.teste-banner.po-banner{background:#1E3A2A;color:#BFF0CF;border-color:#2F5E40}

/* ============================================================ BUILD 292 — seletor de tipo do compromisso no tema escuro (opção marcada era branca com texto claro) */
body[data-tema=escuro] .tipo-seg{background:rgba(255,255,255,.08)}
body[data-tema=escuro] .tipo-opt span{color:#C9D0DC}
body[data-tema=escuro] .tipo-opt input:checked+span{background:#2A3143;color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.4)}
body[data-tema=escuro] .tipo-opt span:hover{color:#fff}

/* ============================================================ BUILD 296 — filtros da lista de tarefas no tema escuro (lista de responsáveis/marcadores era branca com texto claro) */
body[data-tema=escuro] .od-painel .fl-lista{background:#1C2230;border-color:#333B4D}
body[data-tema=escuro] .od-painel .fl-lista label,body[data-tema=escuro] .od-painel .fl-bloco b,body[data-tema=escuro] .od-painel label{color:#E8EAEE}
body[data-tema=escuro] .od-painel .fl-lista label:hover{background:#242C40}
body[data-tema=escuro] .od-painel .fl-lista .mini,body[data-tema=escuro] .od-painel .fl-bloco .mini{color:#A3ABB8}

/* ============================================================ BUILD 298 — botões "virar" do webmail (oportunidade, potencial candidato, ticket) discretos: contorno tracejado, sem preenchimento */
.btn.btn-virar{background:transparent !important;border:1.5px dashed rgba(30,42,74,.35) !important;color:#4B5566 !important;box-shadow:none !important;font-weight:500}
.btn.btn-virar:hover{background:rgba(30,42,74,.06) !important;border-style:solid !important;color:var(--navy) !important}
body[data-tema=escuro] .btn.btn-virar{border-color:rgba(255,255,255,.28) !important;color:#A9B2C1 !important}
body[data-tema=escuro] .btn.btn-virar:hover{background:rgba(255,255,255,.08) !important;color:#E8EAEE !important}

/* ============================================================ BUILD 301 — dica da etapa do roteiro */
.rot-dica{margin:2px 0 6px 28px;color:var(--cinza)}
body[data-tema=escuro] .rot-dica{color:#A3ABB8}

/* ============================================================ BUILD 302 — barra "leads que chegaram" (comercial) */
.leads-banner{background:rgba(201,169,98,.18);color:#5C4300;border:1px solid rgba(201,169,98,.45)}
.leads-banner summary{cursor:pointer;list-style:none}.leads-banner summary::-webkit-details-marker{display:none}
.leads-banner-tab{width:100%;border-collapse:collapse;margin-top:8px;font-size:.84rem}.leads-banner-tab td{padding:5px 8px;border-top:1px solid rgba(201,169,98,.35);vertical-align:middle}
.leads-banner-tab td:last-child{text-align:right;white-space:nowrap}.leads-banner a{color:inherit}
body[data-tema=escuro] .leads-banner{background:#3A3222;color:#EAD9A8;border-color:#5d5031}body[data-tema=escuro] .leads-banner-tab td{border-color:#5d5031}body[data-tema=escuro] .leads-banner .mini{color:#C9BC95}

/* ============================================================ BUILD 303 — barra da Central de avisos */
a.teste-banner.avisos-banner{display:block;text-decoration:none;background:rgba(30,42,74,.10);color:#1E2A4A;border:1px solid rgba(30,42,74,.22)}
a.teste-banner.avisos-banner:hover{background:rgba(30,42,74,.16)}
body[data-tema=escuro] a.teste-banner.avisos-banner{background:#242C40;color:#E8EAEE;border-color:#39415a}
.avisos-tab td{white-space:normal}

/* ============================================================ BUILD 304 — 🎓 tour didático das telas */
#tour-raiz{position:fixed;inset:0;z-index:1500}
#tour-fundo{position:absolute;inset:0;background:rgba(10,14,26,.55)}
#tour-luz{position:fixed;border-radius:10px;box-shadow:0 0 0 9999px rgba(10,14,26,.55),0 0 0 3px #C9A962,0 10px 40px rgba(0,0,0,.5);pointer-events:none;transition:all .25s ease}
#tour-fundo{background:transparent}
#tour-caixa{position:fixed;background:#fff;color:#22262B;border-radius:14px;padding:16px 18px 14px;box-shadow:0 20px 60px rgba(0,0,0,.45);font-size:1rem;line-height:1.55;max-height:calc(100vh - 24px);overflow:auto;border-top:5px solid #C9A962}
#tour-caixa h3{margin:6px 0 6px;font-size:1.15rem;color:#1E2A4A}
#tour-caixa p{margin:0 0 8px}
#tour-caixa .tour-dica{background:#FFF8E6;border-left:3px solid #C9A962;padding:8px 10px;border-radius:8px;font-size:.93rem}
.tour-prog{display:flex;align-items:center;gap:10px;font-size:.8rem;color:#5C646E}
.tour-barra{flex:1;height:6px;background:#EEF0F4;border-radius:999px;overflow:hidden}.tour-barra i{display:block;height:100%;background:#C9A962}
.tour-bt{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:10px}
.tour-bt button{border:0;border-radius:10px;padding:11px 18px;font-size:1rem;font-weight:700;cursor:pointer}
.tour-prox{background:#1E2A4A;color:#fff}.tour-prox[disabled]{opacity:.45;cursor:wait}.tour-volta{background:#EEF0F4;color:#22262B}
.tour-obs{margin-top:8px;font-size:.78rem;color:#7A6230}
.tour-x{position:absolute;top:8px;right:10px;background:none;border:0;font-size:1.3rem;cursor:pointer;color:#5C646E}
#tour-botao{position:fixed;left:18px;bottom:18px;z-index:1200;background:#fff;color:#1E2A4A;border:2px solid #C9A962;border-radius:999px;padding:8px 14px;font:600 .85rem Inter,sans-serif;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.2)}
#tour-botao:hover{background:#FFF8E6}
body[data-tema=escuro] #tour-caixa{background:#1C2230;color:#E8EAEE}body[data-tema=escuro] #tour-caixa h3{color:#fff}body[data-tema=escuro] .tour-dica{background:#3A3222;color:#EAD9A8}
body[data-tema=escuro] .tour-volta{background:#2A3143;color:#E8EAEE}body[data-tema=escuro] .tour-barra{background:#2A3143}body[data-tema=escuro] #tour-botao{background:#1E2A4A;color:#fff}
@media print{#tour-raiz,#tour-botao{display:none}}

/* ============================================================ BUILD 305 — ✓ OK no aviso flutuante */
.toast .toast-ok{margin-left:10px;background:#1E2A4A;color:#fff;border:0;border-radius:999px;padding:4px 10px;font-size:.8rem;font-weight:700;cursor:pointer;vertical-align:middle}
.toast .toast-ok:hover{background:#0f1730}

/* ============================================================ BUILD 307 — Equipes de vendas: edição do vendedor em bloco próprio */
tr.eq-edit>td{background:#F7F8FA;padding:14px 16px !important;white-space:normal}
.eq-form-titulo{margin-bottom:8px}
.eq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 14px}
.eq-grid label{display:flex;flex-direction:column;gap:4px;font-size:.82rem;font-weight:600;margin:0}
.eq-grid label input{margin:0;width:100%;box-sizing:border-box;font-weight:400}
.eq-grid .eq-largo{grid-column:1 / -1}
.eq-form .acoes{display:flex;gap:8px;align-items:center}
body[data-tema=escuro] tr.eq-edit>td{background:#1C2230 !important}

/* ============================================================ BUILD 308 — botão 🎓 Ensinar a usar esta seção (ao lado do nome) */
.menu .menu-tour{background:rgba(201,169,98,.22);color:#fff;border:1px solid rgba(201,169,98,.6);border-radius:999px;padding:5px 12px;font:600 .8rem Inter,sans-serif;cursor:pointer;margin-left:4px;white-space:nowrap}
.menu .menu-tour:hover{background:#C9A962;color:#1E2A4A}
@media (max-width:900px){.menu .menu-tour{font-size:0;padding:5px 8px}.menu .menu-tour::before{content:'🎓';font-size:.9rem}}

/* ============================================================ BUILD 309 — cadastros de despesas + card de vendas */
.fin-grid.fin-campos{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 14px} /* hotfix 332: era .fin-grid e espremia os cards da Saúde/Financeiro em colunas de 220px */
.fin-grid label{display:flex;flex-direction:column;gap:4px;font-size:.84rem;font-weight:600;margin:0}
.fin-grid label input,.fin-grid label select,.fin-grid label textarea{margin:0;width:100%;box-sizing:border-box;font-weight:400}
.fin-grid .fin-largo{grid-column:1 / -1}.fin-grid .fin-check{flex-direction:row;align-items:center;gap:8px;align-self:end}
.card-mini-tab{width:100%;border-collapse:collapse;font-size:.82rem}.card-mini-tab td{padding:2px 4px;border-top:1px solid rgba(0,0,0,.05)}.card-mini-tab td.num{text-align:right;white-space:nowrap}
body[data-tema=escuro] .card-mini-tab td{border-color:#2A3143}

/* ============================================================ BUILD 310 — webmail ocupa a tela toda; e-mail aberto sem caixinha cortada */
.tb-wrap{height:calc(100vh - 235px)}
.tb-leitura{overflow:auto}
.tb-corpo{flex:none;min-height:240px;height:auto;overflow:hidden}
.tb-corpo[style*="height"]{overflow:hidden}

/* ============================================================ BUILD 311 — barra de progresso do ⟳ Enviar/Receber + contraste do tour no escuro */
#sync-barra{display:inline-flex;align-items:center;gap:8px;margin-left:8px;font-size:.8rem;color:var(--cinza)}
#sync-barra .sb-track{display:inline-block;width:160px;height:8px;background:#EEF0F4;border-radius:999px;overflow:hidden}
#sync-barra .sb-track i{display:block;height:100%;width:4%;background:linear-gradient(90deg,#1B74E4,#C9A962);transition:width .5s ease}
#sync-barra.pronto .sb-track i{background:#1E7B44}
/* Build 518: trilha de etapas da sincronização (conectando → conectado → enviando → recebendo → listas → sincronizado) */
#sync-barra .sb-etapas{display:inline-flex;gap:2px;flex-wrap:wrap}#sync-barra .sb-etapas b{font-weight:600;font-size:.72rem;padding:1px 7px;border-radius:999px;background:#EEF0F4;color:#8A93A0;white-space:nowrap}
#sync-barra .sb-etapas b.feita{background:#E7F6EC;color:#1E7B44}#sync-barra .sb-etapas b.atual{background:#1B74E4;color:#fff;animation:sbPulsa 1.2s ease-in-out infinite}#sync-barra.pronto .sb-etapas b.atual{background:#1E7B44;animation:none}#sync-barra.erro .sb-etapas b.atual{background:var(--erro);animation:none}
@keyframes sbPulsa{0%,100%{opacity:1}50%{opacity:.55}}#sync-barra .sb-tempo{font-variant-numeric:tabular-nums;white-space:nowrap}
body[data-tema=escuro] #sync-barra .sb-etapas b{background:#2A3143;color:#A3ABB8}body[data-tema=escuro] #sync-barra .sb-etapas b.feita{background:#1F3A2A;color:#4ADE80}
body[data-tema=escuro] #sync-barra .sb-track{background:#2A3143}body[data-tema=escuro] #sync-barra{color:#A3ABB8}
body[data-tema=escuro] #tour-caixa .tour-dica{background:#3A3222;color:#EAD9A8;border-color:#C9A962}
body[data-tema=escuro] #tour-caixa .tour-obs{color:#C9BC95}

/* ============================================================ BUILD 312 — seleção múltipla no webmail */
.tb-row{display:flex;align-items:stretch;border-bottom:1px solid #EEF0F3}.tb-row .tb-msg{flex:1;min-width:0;border-bottom:0}
.tb-row.sel{background:rgba(201,169,98,.14)}
.tb-chk{display:flex;align-items:center;padding:0 4px 0 8px;margin:0;cursor:pointer}.tb-chk input{margin:0;width:16px;height:16px;cursor:pointer}
.tb-lote{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:6px 8px;border-bottom:1px solid #EEF0F3;background:var(--gelo);margin:0;font-size:.82rem}
.tb-lote .tb-lote-btns{display:inline-flex;gap:4px;flex-wrap:wrap}.tb-lote .btn{margin:0;padding:3px 8px;min-height:26px;font-size:.78rem}
body[data-tema=escuro] .tb-row{border-color:#2A3143}body[data-tema=escuro] .tb-lote{background:#1C2230;border-color:#2A3143}body[data-tema=escuro] .tb-row.sel{background:rgba(201,169,98,.2)}

/* ============================================================ BUILD 317 — filtro de várias empresas (caixas por grupo) */
.emp-grupos{display:grid;gap:8px;border:1px solid var(--borda,#e3e6ea);border-radius:8px;padding:8px 10px;max-height:260px;overflow:auto;background:#fff;min-width:260px}
.emp-grupo-tit{display:block;font-size:.8rem;margin-bottom:2px}.emp-grupo-tit a{font-size:.76rem}
.emp-item{display:inline-flex !important;align-items:center;gap:6px;margin:2px 12px 2px 0 !important;font-size:.82rem;font-weight:400}.emp-item i{display:inline-block;width:9px;height:9px;border-radius:50%}
body[data-tema=escuro] .emp-grupos{background:#1C2230;border-color:#333B4D}body[data-tema=escuro] .emp-item{color:#E8EAEE}

/* ============================================================ BUILD 318 — versão mobile (prints do Alfredo 11/09/2026) */
@media(max-width:900px){
  .submenu-in{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.submenu-in::-webkit-scrollbar{display:none}.submenu-in a{white-space:nowrap;flex:none}
  .menu.menu-user-box{flex-wrap:nowrap;gap:6px;margin-left:auto}
  .menu a.menu-user{display:inline-block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:5px 10px}
}
@media(max-width:700px){
  html{overflow-x:hidden}body{overflow-x:hidden}
  .topo-in{gap:6px 8px;min-height:0}
  .apps-menu{position:fixed;left:8px;right:8px;top:60px;min-width:0;max-height:80vh;overflow:auto}
  .teste-banner,.avisos-banner,.leads-banner,.po-banner{font-size:.78rem;padding:6px 10px;margin-bottom:8px;border-radius:8px}
  .od-barra{gap:8px}.od-esq{flex-wrap:wrap;gap:8px;align-items:flex-start}.od-esq h1{font-size:1.15rem;flex:1 1 100%;min-width:0;white-space:normal}.od-esq .mini{flex:1 1 100%}
  .od-busca{min-width:100%;width:100%}
  #sync-barra{display:flex;width:100%;margin:6px 0 0}#sync-barra .sb-track{flex:1;width:auto}
  .cab-pagina h1{font-size:1.25rem}
  table.lista.tab-ficha{display:table;white-space:normal;width:100%}.tab-ficha td,.tab-ficha th{overflow-wrap:anywhere;white-space:normal}.tab-ficha th{width:34%!important}
  .tb-wrap,.tb-wrap.tb-com-leitura{height:auto!important;max-width:100%}.tb-leitura,.tb-lista{min-width:0;max-width:100%}.tb-corpo{max-width:100%}
  .tb-lote{gap:4px}.tb-lote .btn{padding:3px 6px;font-size:.74rem}
  .emp-grupos{min-width:0;max-height:220px}
  .kpis.kpis-lista{grid-template-columns:1fr 1fr}
  #tour-caixa{width:calc(100vw - 16px)!important;left:8px!important;max-height:70vh}
}
html:has(body[data-tema=escuro]){background:#0F1320}

/* ============================================================ BUILD 320 — faixas com × (fechar por 4 h) + faixa de status ao cliente */
.teste-banner{position:relative;padding-right:34px}
.barra-x{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;border:0;background:rgba(0,0,0,.12);color:inherit;font-size:1rem;line-height:1;cursor:pointer;padding:0}
.barra-x:hover{background:rgba(0,0,0,.24)}
a.teste-banner.status-banner{display:block;text-decoration:none;background:rgba(183,121,31,.16);color:#7A4E00;border:1px solid rgba(183,121,31,.35)}
a.teste-banner.status-banner-max{background:rgba(176,42,42,.14);color:#8A1E1E;border-color:rgba(176,42,42,.4)}
body[data-tema=escuro] a.teste-banner.status-banner{background:#3A3222;color:#EAD9A8;border-color:#5d5031}body[data-tema=escuro] a.teste-banner.status-banner-max{background:#3A2323;color:#F3C6C6;border-color:#6a3030}
body[data-tema=escuro] .barra-x{background:rgba(255,255,255,.12)}

/* ============================================================ BUILD 322 — filtro de empresas (Cotações/Pedidos): itens em linha, grade limpa */
.od-painel .emp-grupos{display:grid;gap:10px;padding:10px 12px;max-height:300px}
.od-painel .emp-grupo{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:2px 10px;align-items:center}
.od-painel .emp-grupo-tit{grid-column:1 / -1;display:flex;align-items:center;gap:8px;font-size:.8rem;margin:0 0 2px;padding-bottom:3px;border-bottom:1px solid var(--borda,#e3e6ea)}
.od-painel .emp-grupo-tit b{font-size:.82rem;letter-spacing:.03em}.od-painel .emp-grupo-tit a{font-size:.76rem;font-weight:400}
.od-painel label.emp-item{display:flex !important;flex-direction:row !important;align-items:center !important;gap:7px;margin:0 !important;padding:4px 6px;border-radius:6px;font-size:.84rem;font-weight:400;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.od-painel label.emp-item:hover{background:rgba(30,42,74,.06)}
.od-painel label.emp-item input{margin:0 !important;width:16px;height:16px;flex:none}
.od-painel label.emp-item i{width:9px;height:9px;border-radius:50%;flex:none}
body[data-tema=escuro] .od-painel .emp-grupo-tit{border-color:#333B4D}body[data-tema=escuro] .od-painel label.emp-item:hover{background:rgba(255,255,255,.08)}
@media(max-width:700px){.od-painel .emp-grupo{grid-template-columns:1fr 1fr}}
.od-painel.od-painel-largo{min-width:min(680px,92vw)} /* Build 322: painel mais largo (grade de empresas) */

/* ============================================================ BUILD 324 — relatório de UX/UI/segurança aplicado */
/* UI9: tokens do tema escuro num lugar só */
body[data-tema=escuro]{--esc-fundo:#0F1320;--esc-cartao:#1C2230;--esc-cartao2:#242C40;--esc-borda:#333B4D;--esc-cinza:#A3ABB8;--esc-texto:#E8EAEE} /* tokens novos (--esc-*): regras escuras novas usam estes nomes em vez de cores soltas */
/* UX1: faixas numa linha só */
.faixas{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.faixas:empty{display:none}
.faixas .teste-banner{margin:0;flex:1 1 260px;font-size:.8rem;padding:6px 30px 6px 10px;box-shadow:none}
.faixas details.teste-banner[open]{flex:1 1 100%}
/* UI1: menu do usuário */
.user-box{position:relative}.menu button.menu-user{background:rgba(255,255,255,.14);color:#fff;border:0;border-radius:999px;padding:5px 12px;font:600 .88rem Inter,sans-serif;cursor:pointer;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.user-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);background:#fff;color:var(--navy);border-radius:12px;box-shadow:var(--sombra-2,0 10px 30px rgba(21,29,53,.25));min-width:240px;z-index:60;padding:6px 0}
.user-menu.aberto{display:block}.user-menu a,.user-menu button{display:block;width:100%;text-align:left;background:none;border:0;padding:9px 16px;font:500 .9rem Inter,sans-serif;color:inherit;text-decoration:none;cursor:pointer}
.user-menu a:hover,.user-menu button:hover{background:var(--gelo)}.user-menu .user-sair{color:var(--erro);border-top:1px solid var(--borda);margin-top:4px}
body[data-tema=escuro] .user-menu{background:var(--esc-cartao);color:var(--esc-texto)}
/* UI2: submenu "Mais ▾" */
.submenu-mais{position:relative}.submenu-mais summary{list-style:none;cursor:pointer;color:#C9D2E0;opacity:1;font-weight:600;font-size:.87rem;padding:7px 13px;border-radius:7px;min-height:32px;display:inline-flex;align-items:center;line-height:1.2;white-space:nowrap}.submenu-mais summary:hover,.submenu-mais[open] summary{background:rgba(255,255,255,.09);color:#fff}.submenu-mais summary::-webkit-details-marker{display:none}
.submenu-mais-lista{position:absolute;left:0;top:100%;background:#1E2A4A;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.3);padding:6px 0;min-width:240px;z-index:55;display:flex;flex-direction:column}
.submenu-mais-lista a{padding:8px 14px !important;white-space:nowrap}
/* UI5: um botão dourado por bloco */
.acoes .btn:not(.btn-claro):not(.btn-virar) ~ .btn:not(.btn-claro):not(.btn-virar),.od-esq .btn:not(.btn-claro):not(.btn-virar) ~ .btn:not(.btn-claro):not(.btn-virar){background:var(--gelo,#eef0f4) !important;color:var(--navy) !important;box-shadow:none !important}
body[data-tema=escuro] .acoes .btn:not(.btn-claro):not(.btn-virar) ~ .btn:not(.btn-claro):not(.btn-virar){color:#E8EAEE !important}
/* UI4: emojis com fonte uniforme */
body,button,input,select,textarea{font-family:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif,'Segoe UI Emoji','Apple Color Emoji','Noto Color Emoji'}
/* UI7: tabelas como cartões no celular */
@media(max-width:700px){table.lista.cards{display:block;white-space:normal;border:0;background:transparent;box-shadow:none}table.lista.cards tr.cards-cab{display:none}
  table.lista.cards tr{display:block;background:#fff;border:1px solid var(--borda);border-radius:10px;margin:0 0 8px;padding:6px 10px}
  table.lista.cards td{display:flex;gap:10px;justify-content:space-between;align-items:baseline;padding:4px 0;border:0;white-space:normal;overflow-wrap:anywhere}
  table.lista.cards td::before{content:attr(data-label);color:var(--cinza);font-size:.7rem;text-transform:uppercase;letter-spacing:.02em;flex:0 0 100px;word-break:keep-all;overflow-wrap:normal}
  table.lista.cards td{width:auto !important;max-width:none !important;min-width:0 !important}
  table.lista.cards td:empty{display:none}body[data-tema=escuro] table.lista.cards tr{background:var(--esc-cartao);border-color:var(--esc-borda)}}
/* UI8: cabeçalho fixo abaixo do topo real — só quando a tabela rola com a PÁGINA; dentro de um quadro com rolagem própria o deslocamento é 0 (hotfix Build 326: o cabeçalho ficava no meio das linhas) */
.lista th{top:var(--topo-h,56px)}
.od-tabela-wrap .lista th,.tb-lista .lista th,[data-rola-dentro] .lista th{top:0}
/* UI11: ações da linha só ao passar o mouse */
@media(hover:hover){table.lista tr .btn-pequeno.btn-claro{opacity:.45;transition:opacity .15s}table.lista tr:hover .btn-pequeno.btn-claro,table.lista tr:focus-within .btn-pequeno.btn-claro{opacity:1}}
/* UI13: campo obrigatório inválido em destaque */
input:user-invalid,select:user-invalid,textarea:user-invalid{border-color:var(--erro) !important;box-shadow:0 0 0 2px rgba(176,42,42,.15)}
/* UI14: filtro do seletor longo */
.sel-filtro{display:block;width:auto;max-width:220px;align-self:flex-end;box-sizing:border-box;margin:0 0 2px;padding:1px 8px;height:22px;min-height:0;font-size:.72rem;border:0;border-bottom:1px dashed var(--borda);border-radius:0;background:transparent;color:var(--cinza)}.sel-filtro:focus{outline:0;border-bottom:1px solid var(--ouro-aa,#b8860b)} /* Build 393: era uma segunda caixa do tamanho de um campo — parecia dado a preencher */
.sel-filtro:invalid,.sel-filtro:user-invalid{border-color:var(--borda) !important;box-shadow:none !important}
#sync-barra.erro .sb-track i{background:var(--erro)}#sync-barra.erro .sb-txt{color:var(--erro)}
/* UI16: botão Ajuda menor no celular · UI17: avisos flutuantes no canto superior direito */
@media(max-width:700px){#assistente-raiz{right:10px;top:60px}#ast-painel{right:10px;top:60px}}
.toasts{top:64px;bottom:auto;right:16px;left:auto;transform:none;align-items:flex-end}
/* UI19: campos de data iguais em todos os navegadores */
input[type=date],input[type=datetime-local],input[type=month],input[type=time]{font-family:inherit;font-size:.92rem;padding:8px 10px;border:1px solid var(--borda);border-radius:8px;background:#fff;color:var(--texto);min-height:38px;color-scheme:light}
body[data-tema=escuro] input[type=date],body[data-tema=escuro] input[type=datetime-local],body[data-tema=escuro] input[type=month],body[data-tema=escuro] input[type=time]{background:var(--esc-cartao);color:var(--esc-texto);border-color:var(--esc-borda);color-scheme:dark}
/* UX4: tarefa em duas colunas */
.tarefa-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:14px;align-items:start}.tarefa-col{min-width:0}.tarefa-col>.cartao{margin-top:0}
/* UX9: rascunho visível */
#rascunho-ind{position:fixed;left:16px;bottom:16px;z-index:1190;background:rgba(21,29,53,.92);color:#fff;font-size:.78rem;padding:6px 12px;border-radius:999px;opacity:0;transition:opacity .3s;pointer-events:none}#rascunho-ind.mostra{opacity:1}
/* UX2/UX7: grupos na Central de avisos */
.avisos-tab tr.avisos-grupo td{background:var(--gelo);padding:6px 10px !important;font-size:.82rem}body[data-tema=escuro] .avisos-tab tr.avisos-grupo td{background:var(--esc-cartao2) !important}
/* hotfix Build 326: nas listas compactas, célula com etiqueta (aguardando aceite, você) ou barra do roteiro pode quebrar linha —
   a etiqueta desce para a linha de baixo em vez de invadir a coluna vizinha */
.od-tabela td:has(.tag),.od-tabela td:has(.rot-barra){white-space:normal}
.od-tabela td .tag{white-space:nowrap;display:inline-block;vertical-align:middle;margin-top:1px}
.od-tabela td .resp-btn{white-space:normal;text-align:left}
.od-tabela td .rot-barra.rot-mini{display:inline-block;margin-top:3px}
/* Build 327: e-mail inválido avisado ao digitar */
input.email-invalido{border-color:var(--erro) !important;box-shadow:0 0 0 2px rgba(176,42,42,.15) !important}
.email-msg{color:var(--erro);font-size:.78rem;margin:3px 0 0;line-height:1.3;flex-basis:100%} /* Build 348: dentro de um flex, ocupa a linha inteira (não espreme o campo) */
/* Build 328: nota longa recolhida */
.nota-txt.nota-recolhida{max-height:9.2em;overflow:hidden;position:relative}.nota-txt.nota-recolhida::after{content:'';position:absolute;left:0;right:0;bottom:0;height:2.4em;background:linear-gradient(transparent,#fff)}
body[data-tema=escuro] .nota-txt.nota-recolhida::after{background:linear-gradient(transparent,var(--esc-cartao))}
.nota-mais{background:none;border:0;color:var(--navy);font-size:.8rem;cursor:pointer;padding:2px 0;text-decoration:underline}body[data-tema=escuro] .nota-mais{color:#E8EAEE}
/* hotfix 332: cards da Saúde do sistema — colunas largas, nomes de arquivo sem quebrar */
.fin-grid{grid-template-columns:repeat(auto-fit,minmax(480px,1fr))}@media(max-width:1000px){.fin-grid{grid-template-columns:1fr}}
/* Build 463 (Alfredo 24/09/2026: "na tela do financeiro, os cards estão estourados"): item de grid nasce com min-width:auto e a tabela larga
   empurrava o card para fora da coluna; agora o card encolhe (min-width:0) e a tabela rola DENTRO dele, com o cabeçalho fixo desligado */
.fin-grid>.cartao{min-width:0;overflow:hidden}.fin-grid>.cartao>table.lista{display:block;overflow-x:auto;white-space:nowrap;max-width:100%;box-shadow:none}.fin-grid>.cartao>table.lista th{position:static}.fin-grid>.cartao>table.lista td.od-cli{overflow:hidden;text-overflow:ellipsis;max-width:220px}.fin-grid>.cartao .hbar .hb-rot{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fin-grid>.cartao>.fin-fluxo{overflow-x:auto}
#saude-backups td.mini{white-space:nowrap}
/* Build 334: barra de gravação no srv06 */
.srv06-barra{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:var(--gelo);border:1px solid var(--borda)}.srv06-linha{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;font-size:.9rem}
.srv06-track{height:10px;border-radius:999px;background:#E3E6EA;overflow:hidden;margin:8px 0 6px}.srv06-track i{display:block;height:100%;background:linear-gradient(90deg,#1B74E4,#C9A962);transition:width .6s ease}
.srv06-barra.ok .srv06-track i{background:var(--ok)}.srv06-barra.parado .srv06-track i{background:var(--erro)}.srv06-barra.parado .srv06-txt{color:var(--erro)}.srv06-barra.ok .srv06-txt{color:var(--ok)}
body[data-tema=escuro] .srv06-barra{background:var(--esc-cartao2);border-color:var(--esc-borda)}body[data-tema=escuro] .srv06-track{background:#1A2030}
/* Build 335: urgência (intimação/notificação) */
.urg-box{margin:10px 0;padding:10px 12px;border:1px dashed var(--borda);border-radius:10px;background:var(--gelo)}.urg-box.ligada{border:2px solid var(--erro);background:#FDECEC}
.urg-box .urg-check{display:flex;gap:8px;align-items:center;flex-direction:row;cursor:pointer;margin:0}.urg-box .urg-campos,.urg-box .urg-ajuda{display:none;margin-top:8px}.urg-box.ligada .urg-campos{display:grid}.urg-box.ligada .urg-ajuda{display:block}
.urg-faixa{font-size:1rem;border-left:6px solid var(--erro)}.urg-tag{font-weight:700}.urg-linha td:first-child,.urg-linha td:nth-child(2){box-shadow:inset 4px 0 0 var(--erro)}
body[data-tema=escuro] .urg-box.ligada{background:#3a1f22}
/* Build 336: seletor com filtro embrulhado */
.sel-wrap{display:inline-flex;flex-direction:column;gap:2px;min-width:0;max-width:100%;vertical-align:middle}.sel-wrap select{margin:0;width:100%}label>.sel-wrap,div>.sel-wrap{display:flex}
/* Build 340 (Alfredo 14/09/2026: "por qual razão existe o botão de trocar o vendedor?"): o formulário de troca (Build 150, só gestor) nasce
   com hidden + style="display:inline-flex" — o estilo em linha vencia o hidden e a caixa ficava sempre aberta. Fica recolhido até "✏️ trocar". */
.vend-troca form[hidden]{display:none!important}
/* Build 394 (Alfredo 19/09/2026): atendimento por WhatsApp — conversa em baloes; cliente a esquerda, equipe a direita */
.wa-grade{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
@media(max-width:980px){.wa-grade{grid-template-columns:1fr}}
.wa-conversa{max-height:56vh;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:14px}
.wa-dia{text-align:center;margin:6px 0}.wa-dia span{font-size:.72rem;color:var(--cinza);background:var(--gelo);border-radius:999px;padding:2px 10px}
.wa-msg{max-width:78%;padding:8px 12px;border-radius:14px;font-size:.93rem;line-height:1.4;box-shadow:var(--sombra-1);overflow-wrap:anywhere}
.wa-in{align-self:flex-start;background:#fff;border:1px solid var(--borda);border-bottom-left-radius:4px}
.wa-out{align-self:flex-end;background:#E7F6E1;border:1px solid #CFE8C5;border-bottom-right-radius:4px}
.wa-midia{display:inline-block;font-weight:600;margin-bottom:2px;text-decoration:none}
.wa-rodape{font-size:.7rem;color:var(--cinza);margin-top:3px;text-align:right}
.wa-nota{background:#FFF7E0;border-left:4px solid var(--alerta);border-radius:6px;padding:6px 10px;font-size:.85rem;margin-bottom:8px}
#wa-texto{width:100%;min-height:130px;resize:vertical}
body[data-tema=escuro] .wa-in{background:var(--esc-cartao2);border-color:var(--esc-borda)}
body[data-tema=escuro] .wa-out{background:#1F3A2A;border-color:#2C5140}
body[data-tema=escuro] .wa-nota{background:#3A3220}
body[data-tema=escuro] .wa-dia span{background:var(--esc-cartao2)}

/* Build 396 (Alfredo 21/09/2026): 🔔 barra de acionamentos do topo — mesma família visual da barra de compromisso (Build 161) */
.acionamentos-barra{position:sticky;top:0;z-index:59;color:#fff;padding:7px 18px;box-shadow:0 4px 14px rgba(0,0,0,.18);background:#B26A00}
.acionamentos-barra.acn-bonus{background:#1F7A45}.acionamentos-barra.acn-prazo{background:#B26A00}.acionamentos-barra.acn-estourado{background:#B02A2A}.acionamentos-barra.acn-info{background:#1E2A4A}
.acionamentos-barra .acn-linha{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:1400px;margin:0 auto;font-size:.88rem}
.acionamentos-barra .acn-ico{font-size:1.2rem}.acionamentos-barra .acn-txt{flex:1;min-width:220px}.acionamentos-barra .acn-dica{opacity:.9;font-size:.8rem;margin-left:6px}
/* Build 509: linha principal em UMA linha — texto com reticências, abre ao clicar (até 4 linhas); relógio e botões fixos à direita */
.acionamentos-barra .acn-principal{flex-wrap:nowrap}.acionamentos-barra .acn-principal .acn-txt{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;line-height:1.35}
.acionamentos-barra .acn-principal .acn-txt .acn-sub{opacity:.92}.acionamentos-barra .acn-principal .acn-txt.acn-aberto{white-space:normal;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical}
.acionamentos-barra .acn-principal .acn-txt.acn-aberto .acn-sub{opacity:1}.acionamentos-barra .acn-principal .acn-btn,.acionamentos-barra .acn-principal .acn-timer{flex:none}
.acionamentos-barra .acn-timer{font-variant-numeric:tabular-nums;font-weight:800;font-size:1.05rem;background:rgba(0,0,0,.22);padding:2px 10px;border-radius:8px;white-space:nowrap}
.acionamentos-barra .acn-btn{border:0;border-radius:999px;padding:4px 12px;font-weight:700;cursor:pointer;font-size:.82rem;text-decoration:none;white-space:nowrap}
.acionamentos-barra .acn-forte{background:#fff;color:#1E2A4A}.acionamentos-barra .acn-forte:hover{background:#FFF3B0}
.acionamentos-barra .acn-claro{background:rgba(255,255,255,.18);color:#fff}.acionamentos-barra .acn-claro:hover{background:rgba(255,255,255,.3)}
.acionamentos-barra .acn-mais{display:block;margin:4px auto 0;background:transparent;border:0;color:#fff;font-weight:700;cursor:pointer;font-size:.8rem;opacity:.9}
.acionamentos-barra .acn-lista{max-width:1400px;margin:6px auto 0;display:grid;gap:4px;border-top:1px solid rgba(255,255,255,.25);padding-top:6px}
.acionamentos-barra .acn-lista .acn-linha{font-size:.82rem;opacity:.95}.acionamentos-barra .acn-lista .acn-timer{font-size:.9rem;font-weight:700}
/* Build 457 (Alfredo 24/09/2026, "essa lista está horrível"): fila em TABELA — colunas fixas, texto truncado, checkbox + ATRIBUIR em lote */
.acionamentos-barra .acn-lista.acn-tab{gap:3px;padding-top:6px}
.acionamentos-barra .acn-tab .acn-tr{display:grid;grid-template-columns:18px 22px minmax(0,1fr) minmax(120px,210px) 84px auto;align-items:center;gap:8px;flex-wrap:nowrap;margin:0;max-width:none;width:auto;background:rgba(255,255,255,.1);border-radius:8px;padding:3px 8px;font-size:.84rem;opacity:1}
.acionamentos-barra .acn-tab .acn-tr:hover{background:rgba(255,255,255,.18)}
.acionamentos-barra .acn-tab .acn-txt,.acionamentos-barra .acn-tab .acn-ori{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:none}
.acionamentos-barra .acn-tab .acn-ori{font-size:.78rem;opacity:.9}
.acionamentos-barra .acn-tab .acn-timer{font-size:.86rem;font-weight:700;padding:1px 8px;text-align:center}
.acionamentos-barra .acn-tab .acn-acoes{display:flex;gap:4px;white-space:nowrap;justify-content:flex-end}
.acionamentos-barra .acn-tab .acn-btn{padding:3px 10px;font-size:.78rem}
.acionamentos-barra input.acn-chk{width:16px;height:16px;margin:0;accent-color:#fff;cursor:pointer}.acionamentos-barra .acn-chk-vazio{display:inline-block;width:16px}
.acionamentos-barra .acn-principal input.acn-chk{margin-right:2px}
.acionamentos-barra .acn-ferr{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:1400px;margin:6px auto 0;padding:5px 8px;border-radius:8px;background:rgba(0,0,0,.18);font-size:.82rem}
.acionamentos-barra .acn-ferr label{display:inline-flex;align-items:center;gap:6px;margin:0;font-weight:600;color:#fff;cursor:pointer}
.acionamentos-barra .acn-ferr select{margin:0;padding:3px 8px;min-height:0;height:auto;border-radius:8px;border:0;font-size:.82rem;color:#1E2A4A;background:#fff;width:auto}
.acionamentos-barra .acn-ferr-sep{flex:1}.acionamentos-barra .acn-ferr .acn-btn[disabled]{opacity:.45;cursor:default}
.acionamentos-barra .acn-aviso{flex:1 1 100%;font-weight:600;background:rgba(255,255,255,.14);padding:3px 8px;border-radius:6px}
.acionamentos-barra .acn-ferr-aviso{flex-wrap:nowrap}.acionamentos-barra .acn-ferr-aviso .acn-aviso{flex:1 1 auto}/* Build 461: resultado de ✓ Atendido / 🚫 Não é lead na própria barra */
@media(max-width:700px){.acionamentos-barra .acn-tab .acn-tr{grid-template-columns:18px 22px minmax(0,1fr) auto;row-gap:2px}.acionamentos-barra .acn-tab .acn-ori{grid-column:3/4}.acionamentos-barra .acn-tab .acn-acoes{grid-column:1/-1;justify-content:flex-start}.acionamentos-barra .acn-ferr-sep{display:none}}
body[data-tema=escuro] .acionamentos-barra{box-shadow:0 4px 14px rgba(0,0,0,.45)}
@media(max-width:700px){.acionamentos-barra .acn-principal{flex-wrap:wrap}.acionamentos-barra .acn-principal .acn-txt{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}} /* Build 509: no celular, 2 linhas e botões embaixo */
@media(max-width:700px){.acionamentos-barra{padding:6px 10px}.acionamentos-barra .acn-linha{gap:6px 8px}.acionamentos-barra .acn-txt{flex:1 1 calc(100% - 40px);min-width:0;width:auto;line-height:1.35}.acionamentos-barra .acn-timer{margin-right:auto}.acionamentos-barra .acn-dica{display:block;margin:2px 0 0} /* Build 445 (Alfredo 23/09/2026, print do celular: texto da barra quebrando palavra por palavra): flex:1 tinha flex-basis 0 e width:100% era ignorado — o texto dividia a linha com relógio e botões; agora ocupa a 1ª linha (ao lado do ícone) e relógio + botões descem para a 2ª */}

/* Build 397: acionamento bloqueante (3ª dispensa) — a barra cobre a tela; só os botões da barra e o link do item respondem */
.acionamentos-barra.acn-bloqueando{position:fixed;left:0;right:0;top:0;bottom:0;z-index:90;background:rgba(160,30,30,.97);display:flex;flex-direction:column;justify-content:center;padding:24px}
.acionamentos-barra.acn-bloqueando .acn-linha{font-size:1.05rem;max-width:900px}.acionamentos-barra .acn-bloq{max-width:900px;margin:14px auto 0;font-weight:700;background:rgba(0,0,0,.25);padding:10px 14px;border-radius:8px}
.acionamentos-barra.acn-bloqueando .acn-mais,.acionamentos-barra.acn-bloqueando .acn-lista{display:none}
body.acn-travado{overflow:hidden}

/* Build 399: spam em dúvida (vermelho) */
.tb-msg.tb-duvida{border-left:4px solid #C0170C;background:#FDECEC}body[data-tema=escuro] .tb-msg.tb-duvida{background:#3A2222}
.tb-tag.tb-duv{background:#C0170C;color:#fff}

/* Build 404: sino com bolinha (sem número) + Central de avisos em cards por nível */
a.notif-btn{text-decoration:none;display:inline-block}
/* Build 462: ❓ Ajuda no topo, ao lado do nome (substitui o flutuante 💡 e o app Ajuda do menu principal) */
.ajuda-btn{background:none;border:0;cursor:pointer;padding:3px 4px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:transform .15s}.ajuda-btn svg{display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.ajuda-btn:hover{transform:scale(1.12)}.ajuda-btn:focus-visible{outline:2px solid #C9A962;outline-offset:2px}
.ast-central{color:#F3E3B4!important;font-weight:700;text-decoration:underline}.notif-ponto{position:absolute;top:2px;right:2px;width:11px;height:11px;border-radius:50%;background:#E4483F;border:2px solid var(--navy,#1E2A4A);box-shadow:0 0 0 2px rgba(228,72,63,.25);animation:notif-pulsa 2.4s ease-in-out infinite}
@keyframes notif-pulsa{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
.avisos-kpis .kpi{text-decoration:none}.kpi.kpi-critico{border-left-color:#C0170C}.kpi.kpi-critico_breve{border-left-color:#E08A00}.kpi.kpi-pendente{border-left-color:#C9A962}
.avisos-nivel{margin:18px 0 8px}.avisos-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:10px}
.aviso-card{background:#fff;border:1px solid var(--borda);border-left:6px solid #C9A962;border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.aviso-card.nv-critico{border-left-color:#C0170C;background:#FFF5F4}.aviso-card.nv-critico_breve{border-left-color:#E08A00;background:#FFF9EE}
.aviso-txt a{color:var(--texto);font-weight:600;text-decoration:none;overflow-wrap:anywhere}.aviso-txt a:hover{text-decoration:underline}
.aviso-acoes{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
body[data-tema=escuro] .aviso-card{background:#1F2430;border-color:#3a4050}body[data-tema=escuro] .aviso-card.nv-critico{background:#3A2222}body[data-tema=escuro] .aviso-card.nv-critico_breve{background:#3A3222}body[data-tema=escuro] .aviso-txt a{color:#EDEFF3}
@media (max-width:600px){.avisos-cards{grid-template-columns:1fr}}

/* Build 406: Knowledge na tarefa */
.kn-res{display:grid;gap:8px;margin:10px 0}.kn-item{border:1px solid var(--borda);border-left:5px solid #6A3FB5;border-radius:10px;padding:8px 10px;background:#FBFAFF}
.kn-cab{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.kn-txt{margin:4px 0;white-space:pre-line}.kn-full{white-space:pre-wrap;font:inherit;font-size:.85rem;background:#fff;border:1px solid var(--borda);border-radius:8px;padding:8px;max-height:360px;overflow:auto}
.kn-votos{display:flex;gap:6px;align-items:center;margin-top:6px}.kn-novo{margin-top:8px}.kn-etapa{text-decoration:none;opacity:.55}.kn-etapa:hover{opacity:1}
body[data-tema=escuro] .kn-item{background:#262233}body[data-tema=escuro] .kn-full{background:#1F2430}

/* Build 408: ponto declarado */
.ponto-btn{color:#fff;text-decoration:none;font-size:.82rem;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:3px 10px;margin-right:6px;white-space:nowrap}.ponto-btn.em-jornada{background:rgba(52,199,89,.25);border-color:rgba(52,199,89,.7)}.ponto-btn.sem-ponto{background:rgba(228,72,63,.25);border-color:rgba(228,72,63,.7)}
.ponto-modal{max-width:520px;border-top-color:#34C759}.ponto-per{padding:4px 0;border-bottom:1px solid #EEF0F3}

/* Build 411: funil da contratação */
.funil{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:10px;overflow-x:auto}.funil-col{background:var(--gelo,#F3F5F8);border-radius:12px;padding:8px;min-height:120px}.funil-cab{display:flex;justify-content:space-between;align-items:center;margin:0 2px 8px}
.funil-card{display:block;background:#fff;border:1px solid var(--borda);border-radius:10px;padding:8px 10px;margin-bottom:8px;text-decoration:none;color:var(--texto)}.funil-card:hover{border-color:var(--ouro,#C9A962)}.funil-card.funil-resp{border-left:4px solid #1B74E4}.funil-nome{font-weight:600;line-height:1.25}.funil-meta{margin-top:4px}
body[data-tema=escuro] .funil-col{background:#1F2430}body[data-tema=escuro] .funil-card{background:#262B38;color:#EDEFF3}
@media (max-width:1100px){.funil{grid-template-columns:repeat(3,minmax(200px,1fr))}}@media (max-width:600px){.funil{grid-template-columns:1fr}}

/* Build 412: cards das pendências na Saúde */
.pend-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:10px;margin-top:8px}
.pend-card{display:flex;gap:10px;background:#fff;border:1px solid var(--borda);border-left:5px solid #C9A962;border-radius:12px;padding:10px 12px}.pend-card.pend-build{border-left-color:#6A3FB5}.pend-ic{font-size:1.4rem;line-height:1}.pend-corpo{flex:1;min-width:0}.pend-acoes{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:6px}
body[data-tema=escuro] .pend-card{background:#1F2430;border-color:#3a4050}

/* Build 431 (Alfredo 23/09/2026: "essa tela não tem a melhor UI… otimizar muito a user interface"): Triagem inteligente — cabeçalho enxuto,
   KPIs clicáveis que filtram a fila, filtros numa linha (controle segmentado + setor + "como funciona" recolhido) e tabela de 6 colunas.
   As classes .seg (controle segmentado), .kpi-azul/.kpi-cinza/.kpi-ativo valem para qualquer tela. */
.tri-cab{display:flex;justify-content:space-between;align-items:flex-start;gap:12px 16px;flex-wrap:wrap;margin:14px 0 10px}
.tri-cab h1{margin:0;font-size:1.35rem;line-height:1.2}.tri-sub{margin-top:4px;line-height:1.5}.tri-cab .btn,.tri-filtros .btn{margin:0}.tri-cab-acoes{margin:0;gap:8px}
.tri-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0 0 12px}.tri-kpis .kpi{padding:10px 14px}.tri-kpis .kpi b{font-size:1.55rem}.tri-kpis .kpi span{white-space:nowrap}
.kpis a.kpi{text-decoration:none;color:inherit}
.kpi-azul{border-left-color:#1A73E8}.kpi-azul b{color:#1A73E8}.kpi-cinza{border-left-color:#C5CBD3}.kpi-cinza b{color:var(--cinza)}
.kpi-ativo{background:#F3F6FC;box-shadow:inset 0 0 0 1.5px var(--navy)}
.seg{display:inline-flex;gap:2px;padding:3px;background:#fff;border:1px solid #CFD4DB;border-radius:999px;max-width:100%;overflow-x:auto}
.seg a{padding:5px 12px;border-radius:999px;font-size:.82rem;font-weight:600;color:var(--navy);text-decoration:none;white-space:nowrap;line-height:1.3}
.seg a:hover{background:var(--gelo);text-decoration:none}.seg a.ativo{background:var(--navy);color:#fff}
.tri-filtros{display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap;margin:0 0 10px}
.tri-filtros select{margin:0;width:auto;min-height:34px;padding:5px 28px 5px 10px;font-size:.85rem}
.tri-como{margin-left:auto}.tri-como summary{cursor:pointer;list-style:none;user-select:none}.tri-como summary::-webkit-details-marker{display:none}.tri-como[open]{flex:1 1 100%;margin-left:0}
.tri-como>div{margin-top:6px;padding:10px 14px;background:var(--gelo);border-radius:8px;line-height:1.55}
.tri-tabela{table-layout:fixed;width:100%}.tri-tabela th,.tri-tabela td{padding:8px 10px}
.tri-tabela th:nth-child(1),.tri-tabela td:nth-child(1){width:26px}.tri-tabela th:nth-child(2),.tri-tabela td:nth-child(2){width:112px}.tri-tabela th:nth-child(3),.tri-tabela td:nth-child(3){width:36%}.tri-tabela th:nth-child(4),.tri-tabela td:nth-child(4){width:132px}.tri-tabela th:nth-child(5),.tri-tabela td:nth-child(5){width:auto}.tri-tabela th:nth-child(6),.tri-tabela td:nth-child(6){width:170px}.tri-tabela th:nth-child(6){white-space:normal}
.tri-tabela td{white-space:normal;vertical-align:top;overflow-wrap:anywhere;overflow:hidden}
.tri-ord{color:inherit;text-decoration:none}.tri-ord:hover{text-decoration:underline}.tri-seta{color:var(--ouro)}.tri-seta-off{opacity:.35}.tri-ord-sep{opacity:.4;margin:0 2px}.tri-ord-off{opacity:.75;font-weight:500}
.tri-dot{text-align:center;padding-left:6px;padding-right:2px}.tri-nl-dot{color:#1A73E8;font-size:1.1rem}.tri-l-dot{color:#C5CBD3}
.tri-quando{white-space:nowrap;font-variant-numeric:tabular-nums}.tri-caixa{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tri-assunto b{font-weight:600}.tri-et{margin-right:3px}.tri-de{margin-top:1px}.tri-resumo{margin-top:3px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tri-tabela .tag{font-size:.7rem;padding:1px 7px;white-space:nowrap;line-height:1.25;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:top;margin:0 3px 3px 0;text-align:left}
.tri-fazer ol{margin:0;padding-left:16px}.tri-fazer li{margin:0 0 2px}.tri-mais{color:#888;font-size:.75rem}.tri-vazio{color:#bbb}
.tri-enc{margin-top:4px;line-height:1.4}
.tri-tabela tr.tri-nl td{font-weight:700}.tri-tabela tr.tri-nl td .mini{font-weight:600}.tri-tabela tr.tri-nl{background:#F7FAFF}
.tri-tabela tr:not(.tri-nl) .tri-assunto b{font-weight:600;color:#555}
.tri-tabela tr.tri-sel td{background:var(--gelo)}.tri-tabela tr.tri-sel td:first-child{box-shadow:inset 3px 0 0 var(--ouro)}
body[data-tema=escuro] .tri-tabela tr.tri-nl{background:#1E2538}body[data-tema=escuro] .tri-tabela tr:not(.tri-nl) .tri-assunto b{color:#B8C0CE}
body[data-tema=escuro] .seg{background:#242C40;border-color:#39415a}body[data-tema=escuro] .seg a{color:#E8EAEE}body[data-tema=escuro] .seg a:hover{background:#2A3143}body[data-tema=escuro] .seg a.ativo{background:var(--ouro);color:#151D35}
body[data-tema=escuro] .kpi-ativo{background:#242C40;box-shadow:inset 0 0 0 1.5px var(--ouro)}
body[data-tema=escuro] .tri-como>div{background:#242C40}
@media(max-width:900px){.tri-cab h1{font-size:1.2rem}.tri-kpis{grid-template-columns:repeat(3,1fr);gap:8px}.tri-kpis .kpi{padding:8px 10px}.tri-kpis .kpi b{font-size:1.3rem}.tri-kpis .kpi span{white-space:normal;font-size:.72rem}.tri-como{margin-left:0}.tri-tabela{min-width:1000px}}

/* Build 432: 💡 Ajuda avançada do sistema (antes 🤖 Ajuda) — rótulo curto no celular; seções "confira" / "cuidado" / "base" na resposta */
#ast-botao .ast-c{display:none}
.ast-topo b{flex:1 1 auto}.ast-topo .mini{flex:0 0 100%;order:5;font-size:.72rem;line-height:1.3;margin-top:-2px}
@media(max-width:700px){#ast-botao .ast-l{display:none}#ast-botao .ast-c{display:inline}}
.ast-sec{margin-top:8px;padding:7px 10px;border-radius:8px;font-size:.82rem;line-height:1.4;white-space:normal}.ast-sec b{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.ast-sec ul{margin:0;padding-left:18px}.ast-sec li{margin:2px 0}
.ast-conferir{background:#EEF7F1;color:#14532d}.ast-conferir b{color:#1E7B44}
.ast-cuidados{background:#FFF6E5;color:#6b4a06}.ast-cuidados b{color:#B7791F}
.ast-base{margin-top:6px;font-size:.7rem;color:var(--cinza,#666)}
body[data-tema=escuro] .ast-conferir{background:#16301F;color:#BFE6CB}body[data-tema=escuro] .ast-conferir b{color:#7FD39A}
body[data-tema=escuro] .ast-cuidados{background:#3A2B0B;color:#F1D9A4}body[data-tema=escuro] .ast-cuidados b{color:#E8B75A}

/* Build 435 — ↪ Transferir lead: botão + painel (oportunidade e fila) */
.lf-transf{position:relative;display:inline-block;margin:0}.lf-transf>summary{list-style:none;margin:0;display:inline-flex}.lf-transf>summary::-webkit-details-marker{display:none}.lf-transf[open]>summary{background:var(--navy);color:#fff;border-color:var(--navy)}.lf-transf-painel{position:absolute;left:0;top:calc(100% + 6px);z-index:40;min-width:300px;max-width:min(92vw,380px);background:#fff;border:1px solid var(--borda);border-radius:var(--radius);padding:12px;box-shadow:0 10px 28px rgba(0,0,0,.18);display:flex;flex-direction:column;gap:8px;text-align:left;font-weight:400}.lf-transf-painel label{font-size:.85rem;font-weight:600;display:block}.lf-transf-painel select,.lf-transf-painel input{width:100%;font-size:.9rem}td .lf-transf-painel{left:auto;right:0}.od-tabela-wrap:has(.lf-transf[open]){overflow:visible}body[data-tema=escuro] .lf-transf-painel{background:var(--esc-cartao);border-color:var(--esc-borda);color:var(--esc-texto)}

/* Build 447 — relatório do dia no ponto */
.txt-erro{color:var(--erro);font-weight:700}.txt-ok{color:var(--ok);font-weight:700}.ponto-dia-rel-alerta{background:#FFF3D6!important;border:1px solid #E5B95B}

/* Build 449 — ↩ respondida / ↪ encaminhada na lista do webmail (como no Thunderbird) */
.tb-rf{flex:none;font-size:.95rem;line-height:1;color:#1E7B44;margin-right:2px}.tb-rf-enc{color:#1E5AA8}

/* Build 450 — 🌱 Melhorias na empresa (mural) */
.mel-mural{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.mel-card{margin:0;display:flex;flex-direction:column;gap:6px;border-left:4px solid var(--borda)}.mel-card.mel-nova{border-left-color:#B7791F}.mel-card.mel-em_analise{border-left-color:#B7791F}.mel-card.mel-aprovada{border-left-color:#1E5AA8}.mel-card.mel-implantada{border-left-color:var(--ok)}.mel-card.mel-recusada{opacity:.75}.mel-topo{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.mel-titulo{margin:0;font-size:1.02rem}.mel-texto{font-size:.9rem;white-space:normal}.mel-beneficio{background:var(--gelo);border-radius:6px;padding:4px 8px}.mel-resposta{background:#EEF6F0;border-radius:8px;padding:8px 10px;font-size:.88rem}.mel-rodape{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:6px;border-top:1px solid var(--borda)}.kpi.kpi-ativo{outline:2px solid var(--navy)}body[data-tema=escuro] .mel-resposta{background:var(--esc-cartao2)}

/* ============ Build 465: 📁 documentos do pedido em cards + 💰 financeiro do pedido ============ */
.pdoc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;margin:6px 0 0}
.pdoc{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--texto);min-height:64px;padding:10px 12px;position:relative;transition:transform .12s,box-shadow .12s}
a.pdoc:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,23,42,.12);border-color:var(--ouro)}
.pdoc-sem-link{opacity:.92}
.pdoc-check{position:absolute;top:6px;right:8px;width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:900;line-height:1;color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25)}.pdoc-check-ok{background:#1E7B44}.pdoc-check-falta{background:#C0392B}.pdoc:has(.pdoc-check) .pdoc-abrir{margin-top:14px}
.pdoc-ico{font-size:1.5rem;line-height:1;flex:0 0 auto}
.pdoc-txt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.pdoc .doc-titulo{margin:0;font-size:.88rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.pdoc-sub{line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.pdoc-tag{margin-top:3px}.pdoc-tag .tag{font-size:.68rem}
.pdoc-abrir{font-size:.72rem;font-weight:700;color:var(--ouro-aa,#8A6D1D);white-space:nowrap;flex:0 0 auto}
.pdoc-h3{font-size:.86rem;margin:16px 0 4px;color:var(--navy);text-transform:uppercase;letter-spacing:.04em}.pdoc-h3 .mini{text-transform:none;letter-spacing:0}
.pdoc-serv{margin:10px 0 0;padding:10px 12px;border:1px dashed var(--borda);border-radius:10px}.pdoc-serv>b{font-size:.88rem}
.pdoc-vazio{margin:4px 0 0}
.pfin-kpis{margin:0 0 6px}.pfin-kpis .kpi span .tag{vertical-align:middle}
body[data-tema=escuro] .pdoc-abrir{color:#E8C877}body[data-tema=escuro] .pdoc-h3{color:#E8EAEE}body[data-tema=escuro] .pdoc-serv{border-color:var(--esc-borda)}
@media(max-width:600px){.pdoc-grid{grid-template-columns:1fr}}

/* ============ Build 470: CRM → 🎯 Leads em CARDS, 2 por linha ============ */
.leads-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:4px 0 0}
.lead-card{border:1px solid var(--borda);border-left:5px solid var(--borda);border-radius:12px;background:#fff;padding:12px 14px;display:flex;flex-direction:column;gap:8px;min-width:0;box-shadow:var(--sombra-1,0 1px 3px rgba(0,0,0,.06))}
.lead-card.lc-bonus{border-left-color:#1E7B44}.lead-card.lc-prazo{border-left-color:#C9A962}.lead-card.lc-estourado{border-left-color:#E4483F;background:#FFF7F6}
.lc-cab{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lc-cab .lc-chk{width:auto;margin:0}.lc-nome{flex:1;min-width:0;text-decoration:none}.lc-nome b{font-size:1rem;color:var(--navy);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lc-corpo{display:flex;flex-direction:column;gap:2px}.lc-serv{font-size:.9rem;line-height:1.3}.lc-meta,.lc-contato{overflow:hidden;text-overflow:ellipsis}
.lc-acoes{padding-top:6px;border-top:1px dashed var(--borda)}.lc-acoes .lf-transf-painel{left:0;right:auto}
body[data-tema=escuro] .lead-card{background:var(--esc-cartao);border-color:var(--esc-borda)}body[data-tema=escuro] .lead-card.lc-estourado{background:#2E1F1F}body[data-tema=escuro] .lc-nome b{color:#E8EAEE}
@media(max-width:820px){.leads-grid{grid-template-columns:1fr}}

/* ============ Build 471: Ajuda em COLUNA lateral (tela 70% · ajuda 30%), lê a tela e aponta onde clicar ============ */
body.com-ajuda{padding-right:30vw}
body.com-ajuda #ast-painel{top:0;right:0;bottom:0;height:auto;width:30vw;max-width:none;border-radius:0;border-left:3px solid #C9A962;box-shadow:-8px 0 30px rgba(15,23,42,.18)}
body.com-ajuda .ajuda-alvo-tag{max-width:calc(70vw - 40px)}
@media(max-width:900px){body.com-ajuda{padding-right:0}body.com-ajuda #ast-painel{width:min(440px,100vw);top:0}}
.ajuda-alvo{outline:3px solid #C9A962!important;outline-offset:3px;box-shadow:0 0 0 6px rgba(201,169,98,.35)!important;animation:ajuda-pulsa 1.4s ease-in-out infinite;position:relative;z-index:5}
@keyframes ajuda-pulsa{0%,100%{box-shadow:0 0 0 4px rgba(201,169,98,.35)}50%{box-shadow:0 0 0 10px rgba(201,169,98,.12)}}
.ajuda-alvo-tag{position:absolute;z-index:1300;background:#1E2A4A;color:#fff;border:2px solid #C9A962;border-radius:999px;padding:3px 10px;font:700 .78rem Inter,sans-serif;pointer-events:none;white-space:nowrap;max-width:320px;overflow:hidden;text-overflow:ellipsis;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.ast-apontar{margin-top:8px;font-size:.8rem;display:flex;gap:8px;align-items:center;flex-wrap:wrap;white-space:normal}
.ast-ir{margin-top:8px;padding:8px 10px;border:1px dashed #C9A962;border-radius:8px;background:#FFF9EC;font-size:.82rem;white-space:normal;line-height:1.4}.ast-ir b{display:block;margin-bottom:2px}.ast-ir .mini{margin-top:6px;font-weight:700}.ast-ir ol,.ast-ir ul{margin:2px 0 0;padding-left:18px}.ast-ir ol li,.ast-ir ul li{margin:2px 0}.ast-ir button{margin-top:8px;cursor:pointer;font:inherit}
.ast-aval{margin-top:8px;font-size:.76rem;color:var(--cinza,#666);display:flex;gap:6px;align-items:center;flex-wrap:wrap;white-space:normal}.ast-aval button{background:#fff;border:1px solid var(--borda,#d9dde5);border-radius:999px;padding:3px 9px;cursor:pointer;font-size:.76rem;color:var(--texto,#222)}.ast-aval button:hover{border-color:#C9A962}.ast-aval input{font-size:.76rem;padding:3px 6px;margin:0;width:180px}
body[data-tema=escuro] .ast-ir{background:#2A2418;border-color:#5d5031}body[data-tema=escuro] .ast-aval button{background:var(--esc-cartao);color:var(--esc-texto)}

/* ===== Build 477 (Alfredo 24/09/2026: "a cor dos botões de todo o sistema precisa de um ajuste… otimizar o contraste com o fundo de cada texto de botão") =====
   Um sistema só de botões, medido (WCAG AA ≥ 4,5:1) no tema claro e no escuro. Fica no FIM do arquivo para vencer as camadas anteriores
   (UI4/Apple/vidro) que reescreviam .btn-claro/.btn-perigo com branco translúcido e quebravam o tema escuro (texto claro em fundo claro).
   Hierarquia: primário = navy (claro) / dourado (escuro) · secundário = branco com borda e texto navy · perigo = vermelho escuro em rosa claro
   · WhatsApp = verde escuro · 2º botão primário da mesma barra vira secundário (não dois blocos escuros lado a lado). */
.btn{background:var(--acao);color:var(--acao-txt);border:1px solid transparent}
.btn:hover{background:var(--acao-hover);color:var(--acao-txt)}
.btn-claro{background:#fff;border:1px solid #B8C0CC;color:var(--navy);box-shadow:none}
.btn-claro:hover{background:var(--gelo);border-color:#98A2B3;color:var(--navy)}
.btn-perigo{background:#FFF5F5;border:1px solid #E5A3A3;color:#8E1B1B;box-shadow:none}
.btn-perigo:hover{background:#FDE8E8;color:#7A1414}
.btn-wa{background:#128C7E;color:#fff;border-color:transparent}.btn-wa:hover{background:#0F7A6E;color:#fff}
.btn-link{color:var(--ouro-aa);background:none;border:0}
.btn:disabled,.btn.aguarde{opacity:.55}
.acoes .btn:not(.btn-claro):not(.btn-virar):not(.btn-perigo):not(.btn-wa) ~ .btn:not(.btn-claro):not(.btn-virar):not(.btn-perigo):not(.btn-wa),.od-esq .btn:not(.btn-claro):not(.btn-virar):not(.btn-perigo):not(.btn-wa) ~ .btn:not(.btn-claro):not(.btn-virar):not(.btn-perigo):not(.btn-wa){background:#fff !important;color:var(--navy) !important;border:1px solid #B8C0CC !important;box-shadow:none !important}
.od-acao{color:var(--navy);background:#fff;border-color:#B8C0CC}.od-acao:hover{background:var(--gelo)}
.ajuda-btn{color:#fff}.ajuda-btn svg{stroke:#fff;fill:none}
.acionamentos-barra .acn-forte{background:#fff;color:#1E2A4A}
.acionamentos-barra .acn-claro{background:rgba(255,255,255,.22);color:#fff;border:1px solid rgba(255,255,255,.6);text-shadow:0 1px 1px rgba(0,0,0,.3)}.acionamentos-barra .acn-claro:hover{background:rgba(255,255,255,.34)}
.ast-envia{background:#C9A962;color:#151D35}
/* tema escuro: primário dourado com texto navy; secundário/perigo/ações pequenas em cinza-azulado com texto claro */
body[data-tema=escuro] .btn{background:var(--acao);color:var(--acao-txt)}
body[data-tema=escuro] .btn:hover{background:var(--acao-hover);color:var(--acao-txt)}
body[data-tema=escuro] .btn-claro,body[data-tema=escuro] .od-acao,body[data-tema=escuro] .od-dd summary,body[data-tema=escuro] .od-pag a,body[data-tema=escuro] .atalhos a,body[data-tema=escuro] .rte-barra button,body[data-tema=escuro] .db-btn,body[data-tema=escuro] .dens-btn{background:#242C40;border-color:#3D4660;color:#E8EAEE;box-shadow:none}
body[data-tema=escuro] .btn-claro:hover,body[data-tema=escuro] .od-acao:hover,body[data-tema=escuro] .od-dd summary:hover,body[data-tema=escuro] .od-pag a:hover,body[data-tema=escuro] .atalhos a:hover,body[data-tema=escuro] .db-btn:hover{background:#2E3750;color:#fff}
body[data-tema=escuro] .btn-perigo{background:#3A2226;border-color:#7A3A3A;color:#FFB4B4}body[data-tema=escuro] .btn-perigo:hover{background:#4A2A2F;color:#FFC8C8}
body[data-tema=escuro] .acoes .btn:not(.btn-claro):not(.btn-virar):not(.btn-perigo):not(.btn-wa) ~ .btn:not(.btn-claro):not(.btn-virar):not(.btn-perigo):not(.btn-wa),body[data-tema=escuro] .od-esq .btn:not(.btn-claro):not(.btn-virar):not(.btn-perigo):not(.btn-wa) ~ .btn:not(.btn-claro):not(.btn-virar):not(.btn-perigo):not(.btn-wa){background:#242C40 !important;color:#E8EAEE !important;border:1px solid #3D4660 !important}
body[data-tema=escuro] .itens-tab .rm,body[data-tema=escuro] .item-box .rm{color:#FF8A8A}
body[data-tema=escuro] .btn-link{color:#E2C98A}
body[data-tema=escuro] .btn-wa{background:#25D366;color:#0B1F14}
.btn[style*="var(--ok)"],.btn[style*="var(--erro)"],.btn[style*="#1B74E4"],.btn[style*="#C0170C"],.btn[style*="#1a7f37"],.btn[style*="#B02A2A"]{color:#fff !important} /* Build 477: botão com fundo colorido inline (verde/vermelho/azul) — texto sempre branco, também no tema escuro */
.i-setas button,.itens-tab .dup,.item-box .dup,.i-up,.i-down,.dup{color:#5C646E}.i-setas button:hover,.dup:hover{color:var(--navy)} /* Build 477: ícones ▲▼⧉ legíveis */
body[data-tema=escuro] .i-setas button,body[data-tema=escuro] .itens-tab .dup,body[data-tema=escuro] .item-box .dup,body[data-tema=escuro] .dup{color:#A9B2C1}body[data-tema=escuro] .i-setas button:hover,body[data-tema=escuro] .dup:hover{color:#fff}
/* Build 558 (Alfredo 30/09/2026): 🏦 Contas bancárias — resumo em 3 blocos + um cartão por conta (a tabela de 10 colunas cortava saldo e botão) */
.fcb-resumo{display:grid;grid-template-columns:minmax(200px,1fr) minmax(220px,1fr) minmax(320px,1.6fr);gap:var(--s4);margin:0 0 var(--s4)}
.fcb-bloco{display:flex;flex-direction:column;gap:6px;margin:0;padding:16px 20px}
.fcb-rot{font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--cinza)}
.fcb-bloco>b{font-size:1.65rem;line-height:1.1;color:var(--navy);letter-spacing:-.02em}
.fcb-bloco>b.fcb-total{color:var(--ouro-aa)}.fcb-bloco>b.neg,.fcb-saldo-atual b.neg{color:var(--erro)}
.fcb-barra{height:8px;border-radius:99px;background:var(--gelo);overflow:hidden;margin:2px 0}
.fcb-barra i{display:block;height:100%;border-radius:99px;background:var(--ok);transition:width .3s}
.fcb-passos{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fcb-passo{flex:1 1 170px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding:8px 12px;border-radius:12px;background:var(--gelo);min-width:0}
.fcb-passo i{grid-row:span 2;font-style:normal;font-weight:800;font-size:.8rem;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--navy);color:#fff}
.fcb-passo b{font-size:.88rem;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fcb-passo small{font-size:.74rem;color:var(--cinza);line-height:1.3}
.fcb-seta{color:var(--cinza);font-size:1.3rem;flex:0 0 auto}
.fcb-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));gap:var(--s4);margin:0 0 var(--s3)}
.fcb-card{display:flex;flex-direction:column;gap:10px;margin:0;padding:18px 20px;scroll-margin-top:120px}
.fcb-cab{display:flex;align-items:flex-start;gap:12px}
.fcb-num{flex:0 0 auto;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem;background:var(--navy);color:#fff}
.fcb-pend .fcb-num{background:#E0A526;color:#2B2000}.fcb-ok .fcb-num{background:var(--ok)}
.fcb-nome{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.fcb-nome b{font-size:1.02rem;color:var(--navy);line-height:1.2}
.fcb-cab .tag{flex:0 0 auto;margin-top:4px}
.fcb-tags{display:flex;flex-wrap:wrap;gap:6px}
.fcb-fin{margin:0;font-size:.86rem;line-height:1.45;color:var(--texto)}
.fcb-form{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px 10px;padding-top:12px;border-top:1px solid var(--borda);margin-top:2px}
.fcb-form .fcb-campo{grid-column:span 2}.fcb-form .fcb-campo.fcb-pix{grid-column:span 4}
.fcb-campo{min-width:0}.fcb-campo label{margin:0 0 4px;font-size:.74rem;font-weight:600;color:var(--cinza)}
.fcb-campo input,.fcb-campo select{width:100%;min-height:36px;padding:6px 10px;font-size:.88rem;margin:0}
.fcb-campo select{padding-right:30px}
.fcb-acoes{grid-column:1/-1;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:2px}.fcb-acoes .btn{margin:0}
.fcb-saldo{margin-top:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px 10px;align-items:end;padding:12px 14px;border-radius:12px;background:var(--gelo)}
.fcb-saldo .btn{margin:0;min-height:36px;white-space:nowrap}.fcb-saldo input[type=date]{min-width:0}
.fcb-saldo-atual{grid-column:1/-1;display:flex;align-items:baseline;gap:8px;min-width:0;flex-wrap:wrap}
.fcb-saldo-atual b{font-size:1.25rem;line-height:1.15;color:var(--navy);letter-spacing:-.02em;white-space:nowrap}
.fcb-dados{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;margin:0;padding-top:12px;border-top:1px solid var(--borda)}
.fcb-dados>div{min-width:0}.fcb-dados .fcb-pix{grid-column:1/-1}.fcb-dados dt{font-size:.72rem;font-weight:600;color:var(--cinza);text-transform:uppercase;letter-spacing:.04em}.fcb-dados dd{margin:2px 0 0;font-weight:600;color:var(--navy);overflow-wrap:anywhere}
@media(max-width:1100px){.fcb-resumo{grid-template-columns:1fr 1fr}.fcb-resumo>.fcb-bloco:last-child{grid-column:1/-1}}
@media(max-width:700px){.fcb-resumo{grid-template-columns:1fr}.fcb-passos{flex-direction:column;align-items:stretch}.fcb-seta{display:none}.fcb-form{grid-template-columns:repeat(2,minmax(0,1fr))}.fcb-form .fcb-campo{grid-column:span 1}.fcb-form .fcb-campo.fcb-pix{grid-column:span 2}.fcb-saldo{grid-template-columns:1fr 1fr}.fcb-saldo .btn{grid-column:1/-1;width:100%}}
body[data-tema=escuro] .fcb-passo,body[data-tema=escuro] .fcb-saldo,body[data-tema=escuro] .fcb-barra{background:#1B2130}
body[data-tema=escuro] .fcb-passo i,body[data-tema=escuro] .fcb-num{background:#D5DDF0;color:#151D35}body[data-tema=escuro] .fcb-ok .fcb-num{background:#3FA35F;color:#0B1F14}
body[data-tema=escuro] .fcb-bloco>b.fcb-total{color:#E2C98A}body[data-tema=escuro] .fcb-fin{color:#C9D0DA}
