/* ============================================================
   CRM Comercial Goodwin Bombas — tema alinhado à marca
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@500;600;700&family=JetBrains+Mono:wght@400;500&display=swap');

:root{
  --ink:#0A0F1E; --panel:#111A2E; --panel-2:#16223B;
  --line:rgba(234,240,250,0.09); --line-forte:rgba(234,240,250,0.16);
  --text:#EAF0FA; --muted:#8C99B4;
  --cyan:#E93236; --cyan-dim:rgba(233,50,54,0.16);
  --amber:#FFB648; --amber-dim:rgba(255,182,72,0.14);
  --danger:#FF6B6B; --danger-dim:rgba(255,107,107,0.14);
  --verde:#4CD97B; --verde-dim:rgba(76,217,123,0.14);
  --font-display:'Space Grotesk',sans-serif;
  --font-body:'Inter',sans-serif;
  --font-mono:'JetBrains Mono',monospace;
  --radius:14px; --radius-sm:9px;
  color-scheme:dark;
}
/* ---------- Tema claro ---------- */
html[data-theme="light"]{
  color-scheme:light;
  --ink:#eef1f6; --panel:#ffffff; --panel-2:#f2f5fa;
  --line:rgba(15,23,42,.10); --line-forte:rgba(15,23,42,.20);
  --text:#17202e; --muted:#5a6577;
  --cyan:#D42A2E; --cyan-dim:rgba(212,42,46,.12);
  --amber:#C97C09; --amber-dim:rgba(201,124,9,.14);
  --danger:#E5484D; --danger-dim:rgba(229,72,77,.12);
  --verde:#2FA968; --verde-dim:rgba(47,169,104,.14);
}
html[data-theme="light"] body{background-image:radial-gradient(circle at 1px 1px, rgba(15,23,42,.05) 1px, transparent 1px)}
html[data-theme="light"] .topo{background:rgba(255,255,255,.94)}
html[data-theme="light"] .topo .marca{color:#0A0F1E}
/* troca de logo por tema */
.marca .logo-light{display:none}
html[data-theme="light"] .marca .logo-dark{display:none}
html[data-theme="light"] .marca .logo-light{display:inline-block}
/* botão alternar tema */
.btn-tema{background:transparent;border:1px solid var(--line-forte);border-radius:8px;width:36px;height:36px;
  padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted)}
.btn-tema:hover{color:var(--cyan);border-color:var(--cyan);box-shadow:none}
.btn-tema svg{width:18px;height:18px}
.btn-tema .ic-lua{display:none}
html[data-theme="light"] .btn-tema .ic-sol{display:none}
html[data-theme="light"] .btn-tema .ic-lua{display:inline}
/* botão hambúrguer (só aparece no mobile) */
.nav-toggle{display:none;background:transparent;border:1px solid var(--line-forte);border-radius:8px;
  width:38px;height:38px;align-items:center;justify-content:center;color:var(--text);cursor:pointer;padding:0}
.nav-toggle svg{width:20px;height:20px}
.nav-toggle:hover{border-color:var(--cyan);color:var(--cyan)}

*{box-sizing:border-box}
body{
  margin:0;background:var(--ink);color:var(--text);
  font-family:var(--font-body);line-height:1.55;-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(circle at 1px 1px, rgba(234,240,250,0.045) 1px, transparent 1px);
  background-size:34px 34px;
}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;margin:0}
h1{font-size:24px;font-weight:600}
h2{font-size:16px;font-weight:600}

/* ---------- Login ---------- */
.tela-login{display:flex;align-items:center;justify-content:center;min-height:100vh;
  background:radial-gradient(ellipse 70% 60% at 50% 0%, #16223B 0%, #0A0F1E 70%)}
.card-login{background:var(--panel);padding:40px 36px;border-radius:var(--radius);width:360px;
  border:1px solid var(--line);box-shadow:0 30px 60px -20px rgba(0,0,0,.7);position:relative;overflow:hidden}
.card-login::before{content:'';position:absolute;top:-120px;right:-90px;width:280px;height:280px;
  background:radial-gradient(circle,rgba(233,50,54,.18),transparent 70%);pointer-events:none}
.card-login .marca-login{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.card-login .logo-img{max-height:40px;width:auto}
.card-login h1{font-size:20px;font-family:var(--font-display)}
.card-login h1 em{color:var(--cyan);font-style:normal}
.card-login .sub{color:var(--muted);font-size:13px;margin:2px 0 22px;font-family:var(--font-mono)}
.card-login label{display:block;font-size:13px;color:var(--muted);margin:14px 0 6px}
.card-login input{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:var(--radius-sm);
  font-size:14px;background:var(--panel-2);color:var(--text);font-family:var(--font-body)}
.card-login input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.card-login button{width:100%;margin-top:24px;padding:13px;background:var(--cyan);color:#fff;
  border:0;border-radius:999px;font-size:15px;font-weight:600;cursor:pointer;transition:box-shadow .15s}
.card-login button:hover{box-shadow:0 0 24px rgba(233,50,54,.4)}

/* ---------- Topo ---------- */
.topo{display:flex;align-items:center;gap:26px;background:rgba(10,15,30,.82);
  backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:0 26px;height:64px;
  position:sticky;top:0;z-index:50}
.topo .marca{font-family:var(--font-display);font-weight:700;font-size:18px;display:flex;align-items:center;gap:9px}
.topo .marca em{color:var(--cyan);font-style:normal}
.topo .marca .logo-img{max-height:34px;width:auto}
.topo nav{display:flex;gap:4px;flex:1}
.topo nav a{color:var(--muted);padding:8px 14px;border-radius:999px;font-size:14px;font-weight:500;transition:.15s;
  display:inline-flex;align-items:center;gap:7px}
.topo nav a svg{width:16px;height:16px;flex-shrink:0}
.topo nav a:hover{color:var(--text)}
.topo nav a.ativo{background:var(--cyan-dim);color:var(--cyan)}
.topo .usuario{display:flex;align-items:center;gap:14px;font-size:13px;color:var(--muted)}
.topo .usuario a{color:var(--muted);transition:.15s}
.topo .usuario a:hover{color:var(--cyan)}
.topo .sair{color:var(--danger)!important}
/* Submenu suspenso do nav (Configurações) */
.nav-drop{position:relative}
.nav-drop>summary{list-style:none;cursor:pointer;color:var(--muted);padding:8px 14px;border-radius:999px;
  font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:7px;user-select:none;transition:.15s}
.nav-drop>summary::-webkit-details-marker{display:none}
.nav-drop>summary::marker{content:""}
.nav-drop>summary svg{width:16px;height:16px;flex-shrink:0}
.nav-drop>summary .chev{transition:transform .15s}
.nav-drop[open]>summary .chev{transform:rotate(180deg)}
.nav-drop>summary:hover{color:var(--text)}
.nav-drop[open]>summary,.nav-drop>summary.ativo-grupo{color:var(--cyan);background:var(--cyan-dim)}
.nav-drop-menu{position:absolute;right:0;top:calc(100% + 6px);background:var(--panel);border:1px solid var(--line);
  border-radius:12px;padding:6px;min-width:190px;display:flex;flex-direction:column;gap:2px;z-index:60;
  box-shadow:0 12px 34px rgba(0,0,0,.35)}
.nav-drop-menu a{white-space:nowrap;width:100%}

main{max-width:1180px;margin:30px auto;padding:0 26px}
.cabecalho-pagina{display:flex;justify-content:space-between;align-items:center}

button{background:var(--cyan);color:#fff;border:0;padding:11px 20px;border-radius:999px;
  font-size:14px;font-weight:600;cursor:pointer;font-family:var(--font-body);transition:box-shadow .15s}
button:hover{box-shadow:0 0 20px rgba(233,50,54,.32)}
button.secundario{background:transparent;color:var(--text);border:1px solid var(--line-forte)}
button.secundario:hover{border-color:var(--cyan);color:var(--cyan);box-shadow:none}

/* ---------- KPIs ---------- */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}
.kpi{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:20px;
  display:flex;flex-direction:column;gap:4px;position:relative;overflow:hidden}
.kpi::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--muted)}
.kpi.verde::before{background:var(--verde)}.kpi.azul::before{background:var(--cyan)}.kpi.roxo::before{background:var(--amber)}.kpi.laranja::before{background:var(--danger)}
a.kpi{color:inherit;text-decoration:none;transition:transform .08s ease,box-shadow .12s ease}a.kpi:hover{transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.18)}a.kpi.ativo{box-shadow:0 0 0 2px var(--danger) inset}
.kpi .rot{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-mono)}
.kpi .num{font-size:30px;font-weight:700;font-family:var(--font-display)}
.kpi .sub{font-size:12px;color:var(--muted)}
.kpi-ic{position:absolute;top:16px;right:16px;color:var(--muted);opacity:.45}
.kpi-ic svg{width:22px;height:22px}
.kpi.verde .kpi-ic{color:var(--verde);opacity:.9}
.kpi.azul .kpi-ic{color:var(--cyan);opacity:.9}
.kpi.roxo .kpi-ic{color:var(--amber);opacity:.9}
.kpi:not(.verde):not(.azul):not(.roxo) .kpi-ic{color:var(--cyan);opacity:.7}

.painel-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.bloco{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px;margin-bottom:18px}
.bloco h2{margin-bottom:16px;display:flex;align-items:center;gap:9px}
.bloco h2 svg{width:18px;height:18px;color:var(--cyan);flex-shrink:0}
.alerta-bloco{border-color:var(--amber-dim)}
.alerta-bloco h2 svg{color:var(--amber)}

/* ---------- Funil ---------- */
.funil-linha{display:flex;align-items:center;gap:10px;margin:10px 0}
.funil-rot{width:92px;font-size:13px;color:var(--muted);font-family:var(--font-mono)}
.funil-barra{flex:1;background:var(--panel-2);border-radius:6px;overflow:hidden}
.funil-fill{padding:5px 9px;color:#fff;font-size:12px;font-weight:700;border-radius:6px;min-width:24px}
.f-lead{background:#5b6b8c}.f-contato{background:#5aa9e6}.f-proposta{background:var(--amber)}
.f-composicao{background:#6366f1}.f-negociacao{background:#b48cff}.f-ganho{background:var(--verde)}.f-perdido{background:var(--danger)}
.funil-val{width:118px;text-align:right;font-size:13px;font-weight:600;font-family:var(--font-mono)}
.lista-venc{margin:0;padding-left:18px;font-size:14px;line-height:2;color:var(--text)}
.lista-venc em{color:var(--amber);font-style:normal;font-family:var(--font-mono);font-size:12px}

/* ---------- Tabelas ---------- */
.tabela{width:100%;border-collapse:collapse;background:var(--panel);border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden;margin-top:16px}
.tabela th{background:var(--panel-2);text-align:left;padding:12px 15px;font-size:11px;color:var(--muted);
  text-transform:uppercase;letter-spacing:.4px;font-family:var(--font-mono);font-weight:500}
.tabela td{padding:12px 15px;border-top:1px solid var(--line);font-size:14px}
.tabela tr:hover td{background:rgba(233,50,54,.03)}
.tabela .vazio{text-align:center;color:var(--muted);padding:30px}
.inline-status select,.mover select,.card-neg select,select.inline-status,.tabela select{padding:6px 8px;border:1px solid var(--line);
  border-radius:7px;font-size:13px;background:var(--panel-2);color:var(--text);font-family:var(--font-body);cursor:pointer}
.tabela select:focus,.inline-status select:focus,select.inline-status:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.tabela select option,.filtro-pipeline select option,.modal select option{background:var(--panel-2);color:var(--text)}
.link-del{color:var(--danger);font-size:13px}
.link-acao{color:var(--cyan);font-size:13px}
.acoes-linha a{margin-right:14px}
.acoes-linha a:last-child{margin-right:0}
.barra-busca{display:flex;gap:8px;margin-top:16px}
.barra-busca input{flex:1;padding:11px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);
  background:var(--panel-2);color:var(--text);font-family:var(--font-body)}
.barra-busca input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.barra-busca select{height:44px;padding:0 34px 0 13px;border:1px solid var(--line);border-radius:var(--radius-sm);background-color:var(--panel-2);color:var(--text);font-size:14px;font-family:var(--font-body);cursor:pointer;-webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238C99B4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 13px center}
.barra-busca select:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}

/* ---------- Badges ---------- */
.badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600;
  font-family:var(--font-mono);background:var(--panel-2);color:var(--muted);border:1px solid var(--line)}
.s-rascunho{background:var(--panel-2);color:var(--muted)}
.s-enviada{background:var(--cyan-dim);color:var(--cyan)}
.s-em_negociacao{background:var(--amber-dim);color:var(--amber)}
.s-aceita{background:var(--verde-dim);color:var(--verde)}
.s-recusada{background:var(--danger-dim);color:var(--danger)}
.s-expirada{background:var(--panel-2);color:var(--muted)}

/* ---------- Barra de filtros ---------- */
.filtro-pipeline{display:flex;align-items:flex-end;gap:14px;margin-top:18px;flex-wrap:wrap;
  background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:0 6px 18px -14px rgba(0,0,0,.35)}
.filtro-campo{display:flex;flex-direction:column;gap:6px}
.filtro-pipeline label{font-size:11px;color:var(--muted);font-family:var(--font-mono);
  text-transform:uppercase;letter-spacing:.5px;margin:0}
.filtro-pipeline input,.filtro-pipeline select{height:42px;padding:0 13px;border:1px solid var(--line);
  border-radius:10px;background:var(--panel-2);color:var(--text);font-family:var(--font-body);
  font-size:14px;transition:border-color .15s,box-shadow .15s;cursor:pointer}
.filtro-pipeline input:hover,.filtro-pipeline select:hover{border-color:var(--line-forte)}
.filtro-pipeline input[type=date],.filtro-pipeline input[type=month],.filtro-pipeline input[type=datetime-local]{min-width:190px}
.filtro-pipeline select{min-width:150px;cursor:pointer;-webkit-appearance:none;appearance:none;padding-right:34px;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238C99B4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat;background-position:right 12px center}
.filtro-pipeline input:focus,.filtro-pipeline select:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.filtro-pipeline button{height:40px;padding:0 22px}
.limpar-filtro{color:var(--muted);font-size:13px;align-self:center;padding-bottom:9px}
.limpar-filtro:hover{color:var(--cyan)}
/* Botão converter lead */
.btn-converter{display:inline-block;padding:7px 16px;border:0;border-radius:999px;background:var(--verde);
  color:#fff;font-size:13px;font-weight:700;cursor:pointer;font-family:var(--font-body)}
.btn-converter:hover{box-shadow:0 0 16px rgba(76,217,123,.4)}
.nota-pipeline{font-size:12.5px;color:var(--muted);font-family:var(--font-mono);margin:10px 0 0}
.nota-pipeline strong{color:var(--cyan)}

/* ---------- Kanban ---------- */
.kanban{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:22px}
.col-kanban{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px;min-height:130px}
.col-topo{display:flex;justify-content:space-between;font-weight:600;font-size:13px;padding:2px 4px;font-family:var(--font-display)}
.col-topo .qtd{background:var(--panel-2);border-radius:999px;padding:1px 9px;font-size:12px;color:var(--muted)}
.col-total{font-size:12px;color:var(--muted);padding:2px 4px 10px;font-family:var(--font-mono)}
.card-neg{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-sm);
  padding:11px;margin-bottom:9px;font-size:13px}
.card-neg strong{display:block;font-size:13px}
.card-cli{color:var(--muted);font-size:12px;margin:3px 0}
.card-val{font-weight:700;font-size:14px;margin:5px 0;color:var(--verde);font-family:var(--font-mono)}
.card-neg select{width:100%;margin-top:5px}

/* ---------- Modal ---------- */
.modal{border:1px solid var(--line);border-radius:var(--radius);padding:28px;width:460px;max-width:92vw;
  background:var(--panel);color:var(--text);box-shadow:0 30px 70px rgba(0,0,0,.7)}
.modal::backdrop{background:rgba(5,8,16,.7);backdrop-filter:blur(3px)}
.modal h2{margin-bottom:6px;font-size:18px}
.modal .dica{color:var(--muted);font-size:13px;margin:0 0 16px;font-family:var(--font-mono)}
.modal label{display:block;font-size:13px;color:var(--muted);margin:12px 0 5px}
.modal input,.modal select,.modal textarea{width:100%;padding:11px;border:1px solid var(--line);
  border-radius:var(--radius-sm);font-size:14px;background:var(--panel-2);color:var(--text);font-family:var(--font-body)}
.modal input:focus,.modal select:focus,.modal textarea:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.modal select{-webkit-appearance:none;appearance:none;padding-right:34px;cursor:pointer;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238C99B4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 12px center}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.acoes-modal{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}

/* ---------- Alertas ---------- */
.alerta{padding:12px 16px;border-radius:var(--radius-sm);margin:16px 0;font-size:14px;border:1px solid transparent}
.alerta.ok{background:var(--verde-dim);color:var(--verde);border-color:rgba(76,217,123,.3)}
.alerta.erro{background:var(--danger-dim);color:var(--danger);border-color:rgba(255,107,107,.3)}

/* ---------- Página senha ---------- */
.card-form{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);
  padding:28px;max-width:440px;margin-top:20px}
.card-form label{display:block;font-size:13px;color:var(--muted);margin:14px 0 6px}
.card-form input{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:var(--radius-sm);
  background:var(--panel-2);color:var(--text);font-size:14px;font-family:var(--font-body)}
.card-form input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.card-form button{margin-top:22px}
.card-form .dica{color:var(--muted);font-size:13px;font-family:var(--font-mono);margin-top:4px}

/* ---------- Formulários de itens / dados comerciais ---------- */
.cab-botoes{display:flex;gap:12px;align-items:center}
.btn-pdf{display:inline-flex;align-items:center;gap:7px;background:var(--cyan);color:#fff;
  padding:9px 18px;border-radius:999px;font-size:14px;font-weight:600}
.btn-pdf:hover{box-shadow:0 0 20px rgba(233,50,54,.35);color:#fff}
.form-item{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap;align-items:center}
.form-item input{padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);
  background:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:14px}
.form-item input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.form-dados{display:flex;flex-direction:column;max-width:640px}
.form-dados label{font-size:13px;color:var(--muted);margin:10px 0 5px}
.form-dados input{padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);
  background:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:14px}
.form-dados input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.form-dados button{margin-top:16px;align-self:flex-start}
.tabela tfoot td{border-top:2px solid var(--line-forte)}

/* ---------- Botões abrir / voltar ---------- */
.btn-abrir{display:inline-block;padding:6px 14px;border:1px solid var(--line-forte);border-radius:999px;
  font-size:13px;color:var(--text);transition:.15s}
.btn-abrir:hover{border-color:var(--cyan);color:var(--cyan)}
.btn-voltar{color:var(--muted);font-size:14px}
.btn-voltar:hover{color:var(--cyan)}

/* ---------- Contatos do cliente ---------- */
.cabecalho-secao{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.cabecalho-secao h2{margin-bottom:0}
.contatos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.contato-card{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:15px}
.contato-topo{display:flex;justify-content:space-between;align-items:center;gap:8px}
.contato-topo strong{font-size:15px;font-family:var(--font-display)}
.contato-cargo{font-size:13px;color:var(--muted);margin-top:2px}
.contato-dados{font-size:13px;color:var(--text);margin-top:10px;display:grid;gap:4px}
.contato-obs{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.5;border-top:1px solid var(--line);padding-top:8px}
.contato-rodape{display:flex;justify-content:space-between;align-items:center;margin-top:12px;gap:8px}
.contato-autor{font-size:11px;color:var(--muted);font-family:var(--font-mono)}
.contato-acoes{display:flex;gap:6px;align-items:center}
.contato-acoes form{margin:0}
.mini-arq{color:var(--muted);border-color:var(--line)}
.mini-arq:hover{border-color:var(--danger);color:var(--danger)}
.papel-decisor{background:var(--cyan-dim);color:var(--cyan)}
.papel-tecnico{background:rgba(96,165,250,.16);color:#7ab8ff}
.papel-financeiro{background:var(--verde-dim);color:var(--verde)}
.papel-comprador{background:var(--amber-dim);color:var(--amber)}
.papel-outro{background:var(--panel);color:var(--muted)}
.ver-arquivados{margin-top:16px;font-size:13px}
.ver-arquivados a{color:var(--muted)}
.ver-arquivados a:hover{color:var(--cyan)}
.arquivados-bloco{margin-top:14px;border-top:1px solid var(--line);padding-top:14px}
.arquivados-bloco h3{font-family:var(--font-display);font-size:14px;color:var(--muted);margin:0 0 6px}

/* ---------- Histórico do cliente ---------- */
.hist-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.hist-form .hist-tipo{height:40px;padding:0 34px 0 12px;border:1px solid var(--line);border-radius:var(--radius-sm);
  background-color:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:14px;min-width:140px;cursor:pointer;
  -webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238C99B4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 12px center}
.hist-form input[type=text]{flex:1;min-width:220px;height:40px;padding:0 12px;border:1px solid var(--line);
  border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:14px}
.hist-form input[type=date],.hist-form input[type=datetime-local],.hist-form input[type=month]{
  height:40px;padding:0 38px 0 12px;border:1px solid var(--line);border-radius:var(--radius-sm);
  background-color:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:14px}
.hist-form input:focus,.hist-form .hist-tipo:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.hist-form button{height:40px;padding:0 20px}
.hist-form select{height:40px;padding:0 34px 0 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background-color:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:14px;cursor:pointer;-webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238C99B4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 12px center}
.hist-form select:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}

/* ---------- Detalhe da proposta ---------- */
.prop-topo{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;margin-top:20px}
.prop-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}
.prop-grid > div, .prop-desc{font-size:14px;color:var(--text)}
.rot-i{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;
  font-family:var(--font-mono);margin-bottom:3px}
.prop-desc{margin-top:16px}

/* Abas de adicionar */
.abas{display:flex;gap:6px;margin-bottom:14px}
.aba{background:var(--panel-2);color:var(--muted);border:1px solid var(--line);padding:7px 15px;
  border-radius:999px;font-size:13px}
.aba.ativa{background:var(--cyan-dim);color:var(--cyan);border-color:transparent}
.painel-aba{display:flex;flex-direction:column}
.painel-aba.oculto{display:none}
.painel-aba label{font-size:13px;color:var(--muted);margin:10px 0 5px}
.painel-aba textarea,.painel-aba input{padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);
  background:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:14px}
.painel-aba textarea:focus,.painel-aba input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
.painel-aba button{margin-top:14px;align-self:flex-start}
.painel-aba input[type=date],.painel-aba input[type=file]{color-scheme:inherit}

/* ---------- Campo de arquivo (estilizado com o tema) ---------- */
input[type=file]{font-size:13px;color:var(--muted);font-family:var(--font-body);max-width:100%}

/* ---------- Campos de data (ícone de calendário no tema) ---------- */
input[type=date],input[type=datetime-local],input[type=month]{
  height:42px;padding:0 38px 0 13px;border:1px solid var(--line);border-radius:var(--radius-sm);
  background-color:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:14px;cursor:pointer;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='15' height='15' viewBox='0 0 24 24' fill='none' stroke='%238C99B4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");
  background-repeat:no-repeat;background-position:right 12px center}
input[type=date]:focus,input[type=datetime-local]:focus,input[type=month]:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim)}
input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator,input[type=month]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:20px}
input[type=file]::file-selector-button{margin-right:12px;padding:9px 16px;border:1px solid var(--line-forte);
  border-radius:999px;background:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:13px;
  font-weight:600;cursor:pointer;transition:border-color .15s,color .15s}
input[type=file]::file-selector-button:hover{border-color:var(--cyan);color:var(--cyan)}
input[type=file]::-webkit-file-upload-button{margin-right:12px;padding:9px 16px;border:1px solid var(--line-forte);
  border-radius:999px;background:var(--panel-2);color:var(--text);font-family:var(--font-body);font-size:13px;
  font-weight:600;cursor:pointer}

/* Timeline */
.timeline{position:relative;margin-top:6px;padding-left:6px}
.tl-item{position:relative;display:flex;gap:14px;padding:0 0 20px 16px;border-left:2px solid var(--line)}
.tl-item:last-child{border-left-color:transparent;padding-bottom:0}
.tl-marca{position:absolute;left:-7px;top:2px;width:12px;height:12px;border-radius:50%;
  background:var(--cyan);border:3px solid var(--ink)}
.tl-followup .tl-marca{background:var(--amber)}
.tl-anexo .tl-marca{background:var(--verde)}
.tl-corpo{flex:1}
.tl-cabeca{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.tl-tipo{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--text)}
.tl-meta{font-size:12px;color:var(--muted);font-family:var(--font-mono)}
.tl-texto{font-size:14px;color:var(--text);margin-top:5px;line-height:1.5}
.tl-anexo-link,.tl-anexo{margin-top:6px}
.tl-anexo a{color:var(--cyan);font-size:14px}
.tl-tam{color:var(--muted);font-size:12px;margin-left:8px;font-family:var(--font-mono)}
.tl-feito{display:inline-block;margin-top:8px;font-size:12px;color:var(--verde);font-family:var(--font-mono)}
.tl-feito-form{margin-top:8px}
.mini{background:transparent;color:var(--amber);border:1px solid var(--amber-dim);padding:5px 12px;
  border-radius:999px;font-size:12px}
.mini:hover{border-color:var(--amber);box-shadow:none}
.vazio-tl{color:var(--muted);font-size:14px;padding:10px 0}

@media(max-width:900px){
  .cards{grid-template-columns:1fr 1fr}.painel-grid{grid-template-columns:1fr}
  .kanban{grid-template-columns:1fr 1fr}
  .prop-topo{grid-template-columns:1fr}.prop-grid{grid-template-columns:1fr}
  /* Cabeçalho mobile: marca à esquerda, botões à direita, menu hambúrguer */
  .topo{flex-wrap:wrap;height:auto;padding:10px 14px;gap:8px}
  .topo .marca{font-size:16px}
  .topo .marca .logo-img{max-height:28px}
  .topo .usuario{margin-left:auto;font-size:12px;gap:8px}
  .nav-toggle{display:inline-flex}
  /* menu fica escondido e abre ao tocar no hambúrguer */
  .topo nav{order:4;width:100%;display:none;flex-direction:column;gap:2px;
    background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:8px;margin-top:6px}
  .topo nav.aberto{display:flex}
  .topo nav a{font-size:15px;padding:12px 14px;border-radius:8px;width:100%}
  .topo nav a.ativo{background:var(--cyan-dim)}
  .nav-drop{width:100%}
  .nav-drop>summary{width:100%;padding:12px 14px;border-radius:8px;font-size:15px}
  .nav-drop-menu{position:static;box-shadow:none;border:0;padding:2px 0 2px 14px;min-width:0;margin-top:2px}
}
@media(max-width:560px){
  .cards{grid-template-columns:1fr}
  .kanban{grid-template-columns:1fr}
  .cabecalho-pagina{flex-wrap:wrap;gap:10px}
  .filtro-pipeline{gap:10px}
  .tabela{display:block;overflow-x:auto;white-space:nowrap}
  .topo .usuario span{display:none}
}

/* Subtítulos de seção dentro dos modais (ex.: conversão de lead) */
.modal .sub-sec{font-family:var(--font-mono);font-size:11px;letter-spacing:.6px;text-transform:uppercase;
  color:var(--muted);margin:18px 0 8px;padding-top:12px;border-top:1px solid var(--line)}
.modal .sub-sec:first-of-type{border-top:0;padding-top:0;margin-top:6px}
