/* CRM Altus. Mesma família visual das telas internas do app de orçamento: azul, laranja, DM Sans e Bebas Neue. */
@font-face{font-family:'Bebas Neue';src:url('fonts/bebas-neue-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'DM Sans';src:url('fonts/dm-sans-latin-700-normal.woff2') format('woff2');font-weight:700;font-display:swap}

:root{
  --azul:#0D1F3C; --laranja:#F07A1A; --texto:#1A2233; --suave:#5C6678; --fraco:#8A93A3;
  --linha:#DFDBD3; --papel:#F4F2EE; --branco:#fff; --vermelho:#B3261E; --verde:#1E6B45; --ambar:#8A5A00;
  --e1:4px; --e2:8px; --e3:12px; --e4:16px; --e5:24px;
  --raio:4px; --toque:44px;
}
*{box-sizing:border-box}
html{scrollbar-gutter:stable;-webkit-text-size-adjust:100%}
[hidden]{display:none!important}
body{margin:0;background:var(--papel);color:var(--texto);font:400 15px/1.5 'DM Sans',-apple-system,'Segoe UI',Roboto,Arial,sans-serif}
a{color:var(--azul)}
h1,h2{font-family:'Bebas Neue',Impact,sans-serif;font-weight:400;letter-spacing:.5px;color:var(--azul);margin:0}
h1{font-size:28px}
h2{font-size:20px;margin-bottom:var(--e3);display:flex;align-items:center;gap:var(--e2);flex-wrap:wrap}
.n{font-family:'DM Sans',Arial,sans-serif;font-size:13px;color:var(--suave);font-weight:500;letter-spacing:0}
.sub{font-size:12.5px;color:var(--suave);font-family:'DM Sans',Arial,sans-serif;letter-spacing:0;font-weight:400}
.bloco{display:block}
.nowrap{white-space:nowrap}
.vazio{color:var(--suave);margin:0}

/* Barra de topo */
.barra{background:var(--azul);color:var(--branco);display:flex;align-items:center;gap:var(--e4);padding:0 var(--e4);border-bottom:4px solid var(--laranja);flex-wrap:wrap}
.marca{display:flex;align-items:center;min-height:52px}
.marca img{display:block;height:34px;width:auto}
.menu{display:flex;gap:2px;overflow-x:auto;flex:1;scrollbar-width:none}
.menu::-webkit-scrollbar{display:none}
.menu a{color:#C6CEDC;text-decoration:none;padding:15px var(--e3);font-weight:500;font-size:14px;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-4px}
.menu a.atual{color:var(--branco);border-bottom-color:var(--branco)}
.menu a.sair{margin-left:auto;color:var(--fraco)}

.folha{max-width:1280px;margin:0 auto;padding:var(--e4)}
.topo-tela{display:flex;justify-content:space-between;align-items:center;gap:var(--e3);flex-wrap:wrap;margin-bottom:var(--e4)}
.acoes-topo{display:flex;gap:var(--e2);align-items:center;flex-wrap:wrap}

.cartao{background:var(--branco);border:1px solid var(--linha);border-radius:var(--raio);padding:var(--e4);margin-bottom:var(--e4)}
.erro{background:#FBE9E7;border-left:4px solid var(--vermelho);padding:var(--e3);border-radius:var(--raio);margin-bottom:var(--e4);font-size:14px}
.aviso-ok{background:#E8F3EC;border-left:4px solid var(--verde);padding:var(--e3);border-radius:var(--raio);margin-bottom:var(--e4);font-size:14px}

/* Formulários */
label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--suave);font-weight:500}
input,select,textarea{display:block;width:100%;margin-top:var(--e1);min-height:var(--toque);padding:10px var(--e3);border:1.5px solid var(--linha);border-radius:var(--raio);
  font:inherit;font-size:16px;color:var(--texto);background:var(--branco);text-transform:none;letter-spacing:0}
textarea{resize:vertical;min-height:72px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--azul);border-color:var(--azul)}
input[type=checkbox]{display:inline-block;width:20px;min-height:20px;height:20px;margin:0 var(--e2) 0 0;vertical-align:middle}
.caixa-alta{text-transform:uppercase}
label.marcar{display:flex;align-items:center;min-height:var(--toque);text-transform:none;letter-spacing:0;font-size:15px;color:var(--texto)}
button,.botao,.botao-sec{display:inline-flex;align-items:center;justify-content:center;min-height:var(--toque);padding:0 var(--e4);border:0;border-radius:var(--raio);
  background:var(--azul);color:var(--branco);font:700 15px 'DM Sans',Arial,sans-serif;cursor:pointer;text-decoration:none;white-space:nowrap}
button.sec,.botao-sec{background:var(--branco);color:var(--azul);border:1.5px solid var(--azul)}
button.perigo{color:var(--vermelho);border-color:var(--vermelho)}
button.mini{min-height:36px;padding:0 var(--e3);font-size:13px;background:var(--branco);color:var(--azul);border:1px solid var(--linha);font-weight:500}
button:disabled{opacity:.5;cursor:default}
button.como-link{background:none;border:0;color:var(--azul);padding:0;min-height:0;font-weight:500;font-size:12.5px;text-decoration:underline}
.campos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--e3)}
.campos .cheio,.campos label.marcar,.campos textarea{grid-column:1/-1}
.campos label:has(textarea){grid-column:1/-1}
.campos>button{justify-self:start;align-self:end}
.par{display:flex;gap:var(--e4);flex-wrap:wrap;font-size:13px;color:var(--suave);align-self:end;padding-bottom:var(--e2)}
.par b{color:var(--texto);font-weight:500}
.botoes{display:flex;gap:var(--e2);flex-wrap:wrap}
details{margin-top:var(--e3)}
summary{cursor:pointer;font-weight:500;color:var(--azul);min-height:var(--toque);display:flex;align-items:center}
details>form{margin-top:var(--e2)}
.linha-acao{margin-top:var(--e3)}

/* Filtros */
.filtros{display:flex;flex-wrap:wrap;gap:var(--e2);margin-bottom:var(--e4);align-items:center}
.filtros input,.filtros select{width:auto;flex:1 1 150px;margin:0}
.filtros .largo{flex:2 1 260px}
.filtros .limpar{font-size:14px;padding:0 var(--e2)}
nav.abas{display:flex;gap:var(--e1);flex-wrap:wrap}
nav.abas a{padding:10px var(--e3);border:1px solid var(--linha);border-radius:var(--raio);text-decoration:none;font-size:14px;font-weight:500;background:var(--branco);white-space:nowrap}
nav.abas a.atual{background:var(--azul);color:var(--branco);border-color:var(--azul)}

/* Selos: a cor é forma, o texto carrega o sentido */
.selo{display:inline-block;padding:2px var(--e2);border-radius:3px;font:700 12px 'DM Sans',Arial,sans-serif;letter-spacing:0;white-space:nowrap;border:1px solid;vertical-align:middle}
.s-novo{background:#FDECD9;color:#A14D00;border-color:#EFCFA8}
.s-conversa{background:#EAEFF7;color:var(--azul);border-color:#C3CFE2}
.s-orcamento{background:#FFF4E5;color:var(--ambar);border-color:#E8D5AE}
.s-agendado,.e-marcado,.e-confirmado{background:#E6F0FA;color:#0B4A8B;border-color:#B9D2EC}
.s-servico{background:#EFEAF7;color:#4B2C82;border-color:#D3C6EA}
.s-concluido,.e-compareceu{background:#E8F3EC;color:var(--verde);border-color:#BFDCC9}
.s-perdido,.e-faltou,.e-cancelado{background:#FBE9E7;color:var(--vermelho);border-color:#EEC9C4}
.e-confirmado{background:#0B4A8B;color:var(--branco);border-color:#0B4A8B}
.e-remarcado{background:var(--papel);color:var(--suave);border-color:var(--linha)}

/* Tabelas e listas */
.rolar{overflow-x:auto}
table.grade{width:100%;border-collapse:collapse;font-size:14px;background:var(--branco)}
table.grade th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--suave);border-bottom:1.5px solid var(--linha);padding:var(--e2);font-weight:500;white-space:nowrap}
table.grade td{border-bottom:1px solid var(--linha);padding:var(--e2);vertical-align:top}
table.grade tfoot th{border-top:1.5px solid var(--linha);border-bottom:0;color:var(--texto)}
table.grade .num{text-align:right;white-space:nowrap}
table.grade td a{text-decoration:none}
ul.lista{list-style:none;margin:0;padding:0}
ul.lista li{border-bottom:1px solid var(--linha)}
ul.lista li:last-child{border-bottom:0}
ul.lista a{display:block;padding:10px 0;text-decoration:none;color:var(--texto)}
ul.lista .sub{display:block}
ul.lista .trecho{display:block;font-size:13.5px;color:var(--suave);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
ul.lista.conversas{background:var(--branco);border:1px solid var(--linha);border-radius:var(--raio);padding:0 var(--e4)}
ul.lista.conversas li.pendente b::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--laranja);margin-right:var(--e2);vertical-align:middle}

.grade-painel{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--e4)}
.grade-painel .cartao{margin-bottom:0}
.grade-painel+.cartao{margin-top:var(--e4)}
.nav-semana{margin-left:auto;display:flex;gap:var(--e1)}
.nav-semana a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--linha);border-radius:var(--raio);text-decoration:none;font-family:'DM Sans',Arial,sans-serif;font-size:18px}

/* Colunas por status */
.colunas{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:var(--e3);overflow-x:auto;padding-bottom:var(--e3)}
.coluna{background:var(--branco);border:1px solid var(--linha);border-radius:var(--raio);padding:var(--e3);min-height:200px}
.ficha-mini{display:block;border:1px solid var(--linha);border-radius:var(--raio);padding:var(--e2) 10px;margin-bottom:var(--e2);text-decoration:none;color:var(--texto);font-size:14px}
.ficha-mini span{display:block}
.ficha-mini:hover{border-color:var(--azul)}

/* Ficha do cliente */
.ficha{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--e4)}
.ficha>*{min-width:0}
.bloco-at{border-top:1px solid var(--linha);padding-top:var(--e3);margin-top:var(--e3)}
.bloco-at:first-of-type{border-top:0;padding-top:0;margin-top:0}
.bloco-at.antigo{opacity:.85}
.cabeca{font-size:14px}
.agend{border-bottom:1px solid var(--linha);padding:var(--e3) 0}
.botoes-estado{display:flex;gap:var(--e1);flex-wrap:wrap;margin-top:var(--e2)}
.veic{border-bottom:1px solid var(--linha);padding-bottom:var(--e3);margin-bottom:var(--e3)}
ul.historico{list-style:none;margin:var(--e2) 0 0;padding:0;font-size:13.5px}
ul.historico li{padding:var(--e1) 0;border-bottom:1px solid var(--linha)}

.ficha-conversa{display:flex;flex-direction:column;margin-bottom:0}
.conversa{background:var(--papel);border-radius:var(--raio);padding:var(--e3);overflow-y:auto;height:60vh;min-height:320px;display:flex;flex-direction:column;gap:6px}
.msg{max-width:85%;padding:var(--e2) 10px;border-radius:6px;font-size:14px;line-height:1.4;overflow-wrap:anywhere;background:var(--branco);border:1px solid var(--linha);align-self:flex-start}
.msg.sai{align-self:flex-end;background:#E6F0FA;border-color:#B9D2EC}
.msg .hora{display:block;font-size:11px;color:var(--fraco);margin-top:2px;text-align:right}
.msg .midia{font-size:12px;font-weight:700;color:var(--suave)}
.msg .sit{color:var(--ambar);font-weight:700}
.msg .sit-erro{color:var(--vermelho)}
.msg form.reenviar{display:inline;margin-left:var(--e1)}
.dia{align-self:center;font-size:12px;color:var(--suave);background:var(--branco);border:1px solid var(--linha);border-radius:3px;padding:1px var(--e2);margin:var(--e2) 0}
.envio{display:grid;gap:var(--e2);margin-top:var(--e3)}
.envio select,.envio textarea{margin:0}
.anexos{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e1)}
.anexos .botao-sec,.anexos button{padding:0 var(--e1);font-size:13.5px;min-width:0}
.anexar.desligado{opacity:.5;cursor:default}
.anexo-linha{display:flex;gap:var(--e2);align-items:center;flex-wrap:wrap}
.anexo-linha button[type=submit]{margin-left:auto}
.anexar{text-transform:none;letter-spacing:0;font-size:15px;cursor:pointer}
.anexar input{display:none}
.msg .quem{font-weight:700;color:var(--texto)}
.msg a.arq{display:inline-block;font-weight:500;margin-bottom:var(--e1)}

/* Agenda */
.nav-data{display:flex;gap:var(--e2);align-items:center;flex-wrap:wrap;margin-bottom:var(--e4)}
.nav-data input{margin:0;width:auto}
.item-ag{border-left:4px solid #B9D2EC;padding:var(--e2) var(--e3);margin-bottom:var(--e2);background:var(--branco);border-top:1px solid var(--linha);border-right:1px solid var(--linha);border-bottom:1px solid var(--linha);border-radius:0 var(--raio) var(--raio) 0}
.item-ag a{text-decoration:none}
.item-ag.choque{border-left-color:var(--vermelho)}
.item-ag.est-compareceu{border-left-color:var(--verde)}
.item-ag.est-faltou,.item-ag.est-cancelado{border-left-color:var(--linha);opacity:.7}
.semana{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--e3)}
.dia-sem{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);padding:var(--e2);min-height:120px}
.dia-sem.hoje{border-color:var(--azul)}
.dia-sem h2{font-size:17px}
.dia-sem h2 a{text-decoration:none}
.dia-sem .item-ag{font-size:13.5px}

/* Usuários e configurações */
.usuario.inativo{opacity:.6}
.opcao{display:grid;grid-template-columns:70px 1fr auto auto;gap:var(--e2);align-items:center;border-bottom:1px solid var(--linha);padding:var(--e2) 0}
.opcao input,.opcao textarea{margin:0}
.opcao.modelo{grid-template-columns:70px 1fr auto auto}
.opcao.modelo textarea{grid-column:1/-1}
.opcao.nova{grid-template-columns:1fr auto;border-bottom:0}
.opcao.nova textarea{grid-column:1/-1}
.opcao.inativo input[type=text]{color:var(--fraco)}

/* Login */
.entrar{max-width:380px;margin:var(--e5) auto;display:grid;gap:var(--e3)}

@media (min-width:1000px){
  .ficha{grid-template-columns:minmax(0,1fr) 440px;align-items:start}
  .ficha.so-dados{grid-template-columns:minmax(0,720px)}
  .ficha-conversa{position:sticky;top:var(--e4)}
  .conversa{height:calc(100vh - 300px)}
}
@media (max-width:640px){
  .folha{padding:var(--e3)}
  .barra{padding:0 var(--e3);gap:0}
  .menu{flex-basis:100%;order:2;margin:0 calc(-1 * var(--e3))}
  .menu a.sair{margin-left:0}
  table.grade .so-largo{display:none}
  .filtros input,.filtros select{flex:1 1 45%}
  .filtros .largo{flex-basis:100%}
  .filtros button{flex:1 1 100%}
  .opcao,.opcao.modelo{grid-template-columns:56px 1fr}
  .opcao label.marcar,.opcao button{grid-column:auto}
  .campos{grid-template-columns:1fr}
  .campos>button{justify-self:stretch}
  .colunas{grid-auto-columns:82%}
  .anexo-linha button[type=submit]{flex:1 1 100%}
}
