/* ═══════════════════════════════════════════════════════════════════
   Clarion CRM · camada de design (v22)
   Tokens do design system + componentes novos. Carregado DEPOIS dos estilos
   principais do index.html. Poppins é a única fonte da interface.
   ═══════════════════════════════════════════════════════════════════ */
:root {
  /* Escala de texto: use estes tamanhos em qualquer tela nova */
  --fs-2xs: 10px;  --fs-xs: 11.5px;  --fs-sm: 12.5px;  --fs-md: 14px;  --fs-lg: 16px;  --fs-xl: 20px;  --fs-2xl: 28px;
  /* Raios de borda */
  --r-sm: 8px;  --r-md: 12px;  --r-lg: 18px;  --r-pill: 999px;
  /* Espaçamento (múltiplos de 4) */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px;  --sp-4: 16px;  --sp-5: 24px;  --sp-6: 32px;
  /* Sombras */
  --sh-1: 0 1px 2px rgba(15,23,42,.06), 0 1px 3px rgba(15,23,42,.08);
  --sh-2: 0 6px 16px rgba(15,23,42,.12);
  --sh-3: 0 24px 64px rgba(0,0,0,.22);
  /* Camadas */
  --z-sticky: 100;  --z-sidebar: 200;  --z-dropdown: 300;  --z-modal: 1000;  --z-toast: 10000;  --z-top: 9999;
}

/* Poppins em tudo, inclusive campos de formulário */
html, body { font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
button, input, select, textarea { font-family: inherit; }

/* Foco visível para quem navega pelo teclado (o mouse não mostra o anel) */
:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
input:focus-visible, select:focus-visible, textarea:focus-visible { outline: none; } /* já têm borda própria de foco */
.nav-item:focus-visible { outline-offset: -2px; border-radius: 10px; }

/* Respeita quem pediu menos animação no sistema */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* ── Modais próprios (confirmar, formulário curto, copiar texto): seguem o modo escuro ── */
.ux-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.55); z-index: var(--z-top); display: flex; align-items: center; justify-content: center; padding: 1rem; animation: uxFade .12s ease-out; }
.ux-modal { background: var(--white); color: var(--gray-800); border: 1px solid var(--gray-200); border-radius: var(--r-lg); box-shadow: var(--sh-3); max-width: 440px; width: 100%; padding: 1.8rem; }
.ux-modal-head { display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; }
.ux-modal-ico { font-size: 26px; flex-shrink: 0; }
.ux-modal-title { font-size: var(--fs-lg); font-weight: 800; color: var(--gray-800); }
.ux-modal-body { font-size: 13.5px; color: var(--gray-700); line-height: 1.6; margin-bottom: 1.4rem; white-space: pre-line; }
.ux-modal-sub { font-size: var(--fs-sm); color: var(--gray-400); margin: -.4rem 0 .8rem; }
.ux-modal-actions { display: flex; gap: .75rem; justify-content: flex-end; margin-top: 1rem; }
.ux-btn { padding: 9px 20px; border-radius: 10px; font-size: 13px; font-weight: 700; cursor: pointer; border: 1.5px solid var(--gray-200); background: var(--white); color: var(--gray-700); transition: transform .08s, box-shadow .12s; }
.ux-btn:hover { box-shadow: var(--sh-1); }
.ux-btn:active { transform: translateY(1px); }
.ux-btn-ok { border-color: transparent; color: #fff; }
.ux-btn-ok.t-warning { background: #d97706; } .ux-btn-ok.t-danger { background: #dc2626; } .ux-btn-ok.t-info { background: #2563eb; } .ux-btn-ok.t-success { background: #16a34a; } .ux-btn-ok.t-primary { background: #2563eb; }
.ux-field { display: block; margin-bottom: .9rem; font-size: var(--fs-xs); font-weight: 700; color: var(--gray-600); }
.ux-input { width: 100%; margin-top: 4px; padding: 10px 12px; border: 1.5px solid var(--gray-200); border-radius: 10px; font-size: 14px; background: var(--white); color: var(--gray-800); }
.ux-input:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(37,99,235,.15); }
.ux-error { display: none; color: var(--danger-text); font-size: var(--fs-sm); margin-bottom: .6rem; }
@keyframes uxFade { from { opacity: 0; } to { opacity: 1; } }

/* ── Avisos (toasts) empilhados, com botão opcional (ex.: Desfazer) ── */
#toast { display: none !important; } /* o aviso único antigo foi substituído por #ux-toasts */
#ux-toasts { position: fixed; right: 1.5rem; bottom: 1.5rem; z-index: var(--z-toast); display: flex; flex-direction: column; gap: 8px; align-items: flex-end; pointer-events: none; max-width: min(420px, calc(100vw - 2rem)); }
.ux-toast { pointer-events: auto; display: flex; align-items: center; gap: 12px; padding: 11px 16px; border-radius: 12px; font-size: 13px; font-weight: 600; color: #fff; background: #111827; box-shadow: var(--sh-2); animation: uxToastIn .18s ease-out; }
.ux-toast.saindo { opacity: 0; transform: translateY(6px); transition: opacity .2s, transform .2s; }
.ux-toast.t-success { background: #16a34a; } .ux-toast.t-error { background: #dc2626; } .ux-toast.t-warning { background: #d97706; } .ux-toast.t-info { background: #2563eb; }
.ux-toast-btn { background: rgba(255,255,255,.2); color: #fff; border: 0; border-radius: 8px; padding: 4px 10px; font-size: 12px; font-weight: 800; cursor: pointer; }
.ux-toast-btn:hover { background: rgba(255,255,255,.32); }
@keyframes uxToastIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

/* ── Skeleton: esqueleto cinza que aparece enquanto algo carrega ── */
.ux-skel { padding: 1rem 1.2rem; }
.ux-skel i { display: block; height: 12px; border-radius: 6px; margin: 10px 0; background: linear-gradient(90deg, var(--gray-100) 25%, var(--gray-200) 37%, var(--gray-100) 63%); background-size: 400% 100%; animation: uxShimmer 1.3s ease infinite; }
.ux-skel i:nth-child(1) { width: 62%; } .ux-skel i:nth-child(2) { width: 90%; } .ux-skel i:nth-child(3) { width: 74%; } .ux-skel i:nth-child(4) { width: 48%; }
@keyframes uxShimmer { 0% { background-position: 100% 50%; } 100% { background-position: 0 50%; } }

/* ── Ícones SVG do menu: herdam a cor do texto ── */
.nav-item .nav-icon, .nav-item > span:first-child { display: inline-flex; align-items: center; justify-content: center; width: 20px; flex-shrink: 0; }
.ux-ico { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }

/* ── Dashboard: Fila de hoje ── */
#dash-fila { margin: 0 0 1.4rem; }
.fila-card { background: var(--white); border: 1px solid var(--gray-200); border-radius: var(--r-lg); box-shadow: var(--sh-1); padding: 1.1rem 1.3rem; }
.fila-head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; margin-bottom: .7rem; }
.fila-title { font-size: var(--fs-md); font-weight: 800; color: var(--gray-800); }
.fila-sub { font-size: var(--fs-xs); color: var(--gray-400); }
.fila-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 8px 14px; }
.fila-item { display: flex; align-items: center; gap: 10px; width: 100%; text-align: left; padding: 9px 12px; border: 1px solid var(--gray-200); border-radius: var(--r-md); background: var(--gray-50); color: var(--gray-800); cursor: pointer; transition: border-color .12s, transform .08s; }
.fila-item:hover { border-color: var(--primary); }
.fila-item:active { transform: translateY(1px); }
.fila-num { min-width: 30px; height: 30px; border-radius: 9px; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 13px; color: #fff; }
.fila-num.t-red { background: #ef4444; } .fila-num.t-amber { background: #f59e0b; } .fila-num.t-blue { background: #3b82f6; } .fila-num.t-violet { background: #7c3aed; }
.fila-txt { font-size: 13px; font-weight: 700; line-height: 1.25; }
.fila-txt small { display: block; font-weight: 500; color: var(--gray-400); font-size: var(--fs-xs); }
.fila-vazia { font-size: 13px; color: var(--gray-400); padding: 4px 0; }

/* ── Lista de candidatos: mais densa e sem quebra de linha em telefone/status ── */
#page-candidatos table td:nth-child(6), #page-candidatos table td:nth-child(5) { white-space: nowrap; }

/* ── Ficha do candidato: barra de ações fixa no rodapé do modal ── */
.ux-sticky-actions { position: sticky; bottom: -1px; background: var(--white); padding: 10px 0 4px; border-top: 1px solid var(--gray-200); z-index: 2; }

/* ── Linha do tempo ── */
.tl { position: relative; margin: .4rem 0 0 .6rem; padding-left: 1.4rem; border-left: 2px solid var(--gray-200); }
.tl-item { position: relative; padding: 0 0 1.1rem; }
.tl-item::before { content: ''; position: absolute; left: calc(-1.4rem - 7px); top: 4px; width: 12px; height: 12px; border-radius: 50%; background: var(--primary); border: 2px solid var(--white); box-shadow: 0 0 0 2px var(--gray-200); }
.tl-item.t-nota::before { background: #f59e0b; } .tl-item.t-entrevista::before { background: #7c3aed; } .tl-item.t-status::before { background: #10b981; }
.tl-when { font-size: var(--fs-2xs); font-weight: 700; color: var(--gray-400); text-transform: uppercase; letter-spacing: .4px; }
.tl-what { font-size: 13px; font-weight: 600; color: var(--gray-800); margin-top: 2px; }
.tl-who { font-size: var(--fs-xs); color: var(--gray-400); }

/* ── Sidebar: seção some sozinha quando nenhum item dela está liberado para o perfil ── */
.nav-section.ux-oculta { display: none; }

/* ── Telas pequenas: barra de navegação inferior ── */
#ux-bottomnav { display: none; }
@media (max-width: 768px) {
  #ux-bottomnav { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: var(--z-sticky); background: var(--white); border-top: 1px solid var(--gray-200); padding: 4px 4px calc(4px + env(safe-area-inset-bottom)); justify-content: space-around; box-shadow: 0 -4px 14px rgba(15,23,42,.08); }
  #ux-bottomnav button { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 6px 2px; border: 0; background: none; color: var(--gray-500); font-size: 10px; font-weight: 700; border-radius: 10px; cursor: pointer; }
  #ux-bottomnav button.active { color: var(--primary); background: var(--primary-pale); }
  #ux-bottomnav .ux-ico { width: 22px; height: 22px; }
  .main-content { padding-bottom: 72px; }
  #ux-toasts { bottom: 76px; right: 1rem; }
}

.fila-acoes { margin: -.2rem 0 .8rem; }
.fila-acoes .ux-btn { padding: 6px 14px; font-size: 12px; }

/* ── Filtros salvos ── */
.fs-menu { position: absolute; z-index: var(--z-menu, 50); top: calc(100% + 6px); left: 0; min-width: 280px; max-width: 360px; background: var(--white); border: 1px solid var(--gray-200); border-radius: 12px; box-shadow: var(--sh-2); padding: 6px; }
.fs-menu[hidden] { display: none; }
.fs-item { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 8px 10px; border-radius: 8px; cursor: pointer; font-size: 13px; font-weight: 600; color: var(--gray-800); }
.fs-item:hover, .fs-item:focus-visible { background: var(--gray-100); }
.fs-nome small { display: block; font-weight: 500; font-size: 11px; color: var(--gray-400); margin-top: 1px; }
.fs-del { border: 0; background: transparent; color: var(--gray-400); cursor: pointer; font-size: 12px; padding: 4px 6px; border-radius: 6px; }
.fs-del:hover { background: var(--gray-200); color: var(--danger-text, #b91c1c); }
.fs-vazio { padding: 10px; font-size: 12px; color: var(--gray-400); }
.fs-novo { width: 100%; text-align: left; border: 0; border-top: 1px solid var(--gray-200); margin-top: 4px; padding: 10px; background: transparent; color: var(--primary); font-weight: 700; font-size: 13px; cursor: pointer; border-radius: 0 0 8px 8px; }
.fs-novo:hover { background: var(--gray-100); }

/* ═══ Cores da marca (#2563eb, #1e3a8a, #c0deff, #edf6ff, branco e preto) ═══
   Os tons de apoio (verde, vermelho, âmbar) ficam só onde significam sucesso, erro ou alerta. */
.ux-modal-title, .fila-title { color: var(--primary-dark); }
.ux-btn:hover { background: var(--primary-pale); border-color: var(--primary-light); color: var(--primary); }
.ux-btn-ok:hover { filter: brightness(.9); background-image: none; }
.ux-btn-ok.t-primary:hover, .ux-btn-ok.t-info:hover { background: #1e3a8a; filter: none; }
.ux-btn-ok.t-primary, .ux-btn-ok.t-info { background: #2563eb; }
.ux-input:focus { border-color: var(--primary); box-shadow: 0 0 0 3px var(--primary-light); }
.fila-card { border-color: var(--primary-light); }
.fila-item { background: var(--primary-pale); border-color: var(--primary-light); }
.fila-item:hover { border-color: var(--primary); background: var(--white); }
.fila-num.t-red { background: #dc2626; }
.fila-num.t-amber, .fila-num.t-violet { background: #2563eb; }
.fila-num.t-blue { background: #1e3a8a; }
.ux-toast { background: #1e3a8a; }
.ux-toast.t-info { background: #2563eb; }
.ux-toast-btn { background: #fff; color: #1e3a8a; }
.ux-toast-btn:hover { background: #edf6ff; }
.fs-menu { border-color: var(--primary-light); }
.fs-item:hover, .fs-item:focus-visible, .fs-novo:hover { background: var(--primary-pale); }
.fs-item .fs-nome { color: var(--gray-800); }
#ux-bottomnav { border-top-color: var(--primary-light); }
#ux-bottomnav button.active { color: var(--primary); background: var(--primary-pale); }
.ux-sticky-actions { border-top-color: var(--primary-light); }
.ux-skel i { background: linear-gradient(90deg, var(--primary-pale), var(--primary-light), var(--primary-pale)); background-size: 400% 100%; }

/* ── Ficha: pendências e mensagem pronta ── */
#det-extras { margin: 0 0 .6rem; }
.det-extras-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; }
.det-pend { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: var(--fs-xs); }
.det-pend-t { font-weight: 800; color: var(--primary-dark); }
.det-pend-pill { border: 1px solid var(--primary-light); background: var(--primary-pale); color: var(--primary); font-weight: 700; font-size: var(--fs-xs); padding: 3px 10px; border-radius: var(--r-pill); cursor: pointer; }
.det-pend-pill:hover { border-color: var(--primary); }
.det-pend-ok { color: var(--success-text); font-weight: 700; }
#det-msg-sel { max-width: 260px; }

/* ── Celular: cabeçalho da ficha não corta o botão Fechar ── */
@media (max-width: 600px) {
  #modal-detalhe .modal { padding: 1rem 1rem !important; }
  #modal-detalhe .modal > div:first-child { flex-wrap: wrap; }
  #modal-detalhe .modal > div:first-child > div:first-child { flex: 1 1 100%; min-width: 0; }
  #modal-detalhe .modal > div:first-child > div:last-child { flex: 1 1 100%; justify-content: flex-end; }
  #det-msg-sel { max-width: 100%; flex: 1 1 100%; }
}
@media (max-width: 600px) { .ux-sticky-actions { position: static; } }

/* ═══ Modo claro no padrão do BPO (v25) ═══
   Mesmas cores e formas do BPO Clarion: fundo #f5f8fd, menu azul-marinho com item ativo azul sólido,
   topo branco com linha fina, cartões brancos com borda #e2e8f0 e sombra suave, números com ícone
   em quadradinho azul claro, tabelas com cabeçalho cinza e botões com degradê.
   Só vale fora do modo escuro. Para voltar ao visual anterior, apague este bloco. */
body:not(.dark){background:#f5f8fd;color:#0f172a}
body:not(.dark) .page-title{color:#1e3a8a}
body:not(.dark) .page-subtitle{color:#475569}
/* menu lateral */
body:not(.dark) .sidebar{background:linear-gradient(180deg,#1e3a8a,#152a63);border-right:0;box-shadow:none}
body:not(.dark) .sidebar-brand{border-bottom:1px solid rgba(255,255,255,.08)}
body:not(.dark) .brand-tag{color:rgba(255,255,255,.7)}
body:not(.dark) .nav-section{color:rgba(255,255,255,.62);letter-spacing:.08em}
body:not(.dark) .nav-item{color:rgba(255,255,255,.82);border-radius:11px;font-weight:500}
body:not(.dark) .nav-item:hover{background:rgba(255,255,255,.1);color:#fff}
body:not(.dark) .nav-item.active{background:#2563eb;color:#fff;font-weight:600;box-shadow:0 3px 12px rgba(37,99,235,.45)}
body:not(.dark) .nav-item.active::before{display:none}
body:not(.dark) .sidebar-footer{border-top:1px solid rgba(255,255,255,.08)}
body:not(.dark) .sidebar-user-card{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14)}
body:not(.dark) .sidebar-user-card .user-info{color:rgba(255,255,255,.7)}
body:not(.dark) .sidebar-user-card .btn-logout{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.22)}
body:not(.dark) .sidebar-footer>div:first-child,body:not(.dark) .sidebar-footer label{color:rgba(255,255,255,.85)}
/* topo */
body:not(.dark) .global-topbar{background:#fff!important;border-bottom:1px solid #e2e8f0;box-shadow:none}
body:not(.dark) .global-search-input{background:#f1f5f9;border:1.5px solid #e2e8f0}
body:not(.dark) .global-search-input:focus{background:#fff;border-color:#2563eb}
/* cartões */
body:not(.dark) .card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 20px rgba(15,23,42,.05)}
body:not(.dark) .card-header{border-bottom-color:#e2e8f0}
body:not(.dark) .card-title{color:#1e3a8a}
/* cartões de números (estilo KPI do BPO) */
body:not(.dark) .stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 20px rgba(15,23,42,.05);position:relative;padding-right:56px}
body:not(.dark) .stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(15,23,42,.06),0 14px 28px rgba(15,23,42,.08)}
body:not(.dark) .stat-card::after{display:none}
body:not(.dark) .stat-card,body:not(.dark) .stat-card[class]{border-left:1px solid #e2e8f0!important}
body:not(.dark) .stat-icon{position:absolute;top:14px;right:14px;width:36px;height:36px;margin:0;border-radius:11px;background:#edf6ff;display:flex;align-items:center;justify-content:center;font-size:16px}
body:not(.dark) .stat-value{color:#1e3a8a;font-weight:800}
body:not(.dark) .stat-label{color:#475569;text-transform:none;letter-spacing:0;font-size:12px;font-weight:600}
body:not(.dark) .fin-card{border:1px solid #e2e8f0;border-left-width:1px;border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 20px rgba(15,23,42,.05)}
body:not(.dark) .fin-val{color:#1e3a8a}
/* tabelas */
body:not(.dark) th{background:#f1f5f9;color:#475569;border-bottom:1.5px solid #e2e8f0;letter-spacing:.04em}
body:not(.dark) td{border-bottom-color:#e2e8f0}
body:not(.dark) tbody tr:hover td{background:#edf6ff}
/* campos e botões */
body:not(.dark) .search-input,body:not(.dark) .filter-select,body:not(.dark) .form-input{border:1.5px solid #e2e8f0;border-radius:10px;background:#fff}
body:not(.dark) .search-input:focus,body:not(.dark) .filter-select:focus,body:not(.dark) .form-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #edf6ff}
body:not(.dark) .btn{border-radius:10px}
body:not(.dark) .btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 1px 2px rgba(37,99,235,.15),0 4px 10px rgba(37,99,235,.18)}
body:not(.dark) .btn-primary:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 2px 4px rgba(37,99,235,.18),0 8px 16px rgba(37,99,235,.24)}
body:not(.dark) .btn-secondary,body:not(.dark) .btn-ghost{background:#f1f5f9;color:#0f172a;border:1px solid #e2e8f0}
body:not(.dark) .btn-secondary:hover,body:not(.dark) .btn-ghost:hover{background:#e5eaf1}

/* ═══ Acertos de telas (v25) ═══ */
.exp-auto-grp{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.exp-auto-grp .exp-auto-hdr{display:inline-flex;gap:6px;margin:0}
@media (min-width:900px){.fin-grid{grid-template-columns:repeat(3,1fr)}}
.nav-item[data-page="tarefas"]{display:none!important}

/* ═══ Ajustes gerais de telas (v25) ═══ */
.btn{white-space:nowrap}
.mkt-form-row2{margin-top:14px}
.mkt-chips{margin-bottom:14px}
@media (min-width:601px){
  body:not(.dark) .sidebar-footer{padding:.6rem .75rem}
  body:not(.dark) .sidebar-user-card{padding:.5rem}
  body:not(.dark) .sidebar-user-card .user-info{display:none}
  body:not(.dark) .sidebar-user-top{margin-bottom:6px}
}
@media (max-width:600px){
  .fin-grid{grid-template-columns:1fr 1fr!important}
  #_gcal-banner{left:12px!important;right:12px!important;bottom:84px!important;max-width:none!important}
}

/* ═══ Layout das telas no padrão do BPO (v25) ═══
   Título e subtítulo da página no topo, ao lado da busca; filtros reunidos em um cartão branco. */
.topbar-titulo{display:none}
@media (min-width:901px){
  .global-topbar{display:flex;align-items:center;gap:18px}
  .topbar-titulo{display:block;flex:1;min-width:0}
  .topbar-titulo h2{margin:0;font-size:19px;font-weight:800;color:#1e3a8a;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .topbar-titulo p{margin:2px 0 0;font-size:12px;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .global-topbar .global-search-wrap{flex:0 1 380px;max-width:380px}
  .page-header-titulo{display:none}
  .page-header:has(> .page-header-titulo){justify-content:flex-end;margin-bottom:1rem}
  .page > .toolbar,.page > .page-header + .toolbar,.page > .filters-bar{
    background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:14px 16px;margin-bottom:1.1rem;
    box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 20px rgba(15,23,42,.05)}
}
body.dark .topbar-titulo h2{color:#8ab4f8}
body.dark .topbar-titulo p{color:#93a1b8}
body.dark .page > .toolbar{background:var(--white)}
.ux-na-barra:first-of-type{margin-left:auto}
.toolbar > .ux-na-barra{flex-shrink:0}
.toolbar > .ux-na-barra:not(.ux-na-barra ~ .ux-na-barra){margin-left:auto}

/* ═══ Janelas (modais), abas e formulários padronizados no estilo do BPO (v25) ═══ */
#_gcal-banner{z-index:150!important}
.modal-overlay{background:rgba(15,23,42,.5);backdrop-filter:blur(3px)}
.modal{border-radius:16px;box-shadow:0 20px 60px rgba(15,23,42,.25);border:1px solid #e2e8f0}
body.dark .modal{border-color:#26314a}
/* janelas com cabeçalho/corpo/rodapé próprios: sem espaçamento duplicado */
.modal:has(> .modal-header),.modal:has(> .modal-body){padding:0;overflow-y:auto}
.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1.1rem 1.5rem;border-bottom:1px solid #e2e8f0}
.modal-header .modal-title{margin:0}
.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;background:#f8fafc;border-radius:0 0 16px 16px}
body.dark .modal-header,body.dark .modal-footer{border-color:#26314a}
body.dark .modal-footer{background:rgba(255,255,255,.03)}
/* título */
.modal-title{font-size:18px;font-weight:800;letter-spacing:-.2px}
body:not(.dark) .modal-title{color:#1e3a8a}
/* botão de fechar: mesmo visual em todas as janelas */
.modal .btn-ghost.btn-sm[onclick*="fecharModal"],.modal .btn-ghost.btn-sm[aria-label*="Fechar"]{
  background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;border-radius:9px;padding:5px 10px;font-size:12.5px;font-weight:600;line-height:1.2;cursor:pointer}
.modal .btn-ghost.btn-sm[onclick*="fecharModal"]:hover{background:#e5eaf1;color:#0f172a}
body.dark .modal .btn-ghost.btn-sm[onclick*="fecharModal"]{background:#182339;color:#93a1b8;border-color:#26314a}
/* rótulos e campos, como no BPO */
.flabel{font-size:12.5px;font-weight:600;color:#475569;text-transform:none;letter-spacing:0}
body.dark .flabel{color:#93a1b8}
.finput{border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 13px}
.finput:focus{border-color:#2563eb;box-shadow:0 0 0 3px #edf6ff}
body.dark .finput{border-color:#26314a}
body.dark .finput:focus{box-shadow:0 0 0 3px rgba(59,130,246,.2)}
/* abas: sublinhado azul e fundo azul claro na ativa (padrão das abas do BPO) */
.modal-tabs,.det-tabs,.cfg-tabs-bar,.bf-tabs{border-bottom:1.5px solid #e2e8f0;gap:2px}
.modal-tab,.det-tab,.cfg-tab,.bf-tab{font-size:12.5px;font-weight:600;color:#475569;border-radius:8px 8px 0 0;padding:11px 14px;border-bottom:2.5px solid transparent;background:transparent;transition:background .12s,color .12s}
.modal-tab:hover:not(.active),.det-tab:hover:not(.active),.cfg-tab:hover:not(.active),.bf-tab:hover:not(.active){color:#1d4ed8;background:#edf6ff;border-bottom-color:transparent}
.modal-tab.active,.det-tab.active,.cfg-tab.active,.bf-tab.active{color:#2563eb;background:#edf6ff;border-bottom-color:#2563eb;font-weight:700}
body.dark .modal-tab,body.dark .det-tab,body.dark .cfg-tab,body.dark .bf-tab{color:#93a1b8}
body.dark .modal-tab.active,body.dark .det-tab.active,body.dark .cfg-tab.active,body.dark .bf-tab.active{color:#60a5fa;background:rgba(59,130,246,.14);border-bottom-color:#3b82f6}
/* alternadores Lista/Kanban */
.cand-view-tabs{border:1px solid #e2e8f0;border-radius:12px;box-shadow:none}
.cand-view-tab{font-weight:600}
/* atalhos de relatórios */
.rel-quicknav-pill{border-color:#e2e8f0;font-weight:600}
.usr-label,.cfg-label,.form-label{font-size:12.5px!important;font-weight:600!important;color:#475569;text-transform:none!important;letter-spacing:0!important}
body.dark .usr-label,body.dark .cfg-label,body.dark .form-label{color:#93a1b8}

/* ═══ Responsividade das janelas (v25) ═══ */
.modal{box-sizing:border-box;overflow-x:hidden}
.modal .btn{white-space:normal}
.modal input,.modal select,.modal textarea{max-width:100%;box-sizing:border-box}
.modal .fgroup,.modal .form-grid>*{min-width:0}
.modal table{max-width:100%}
.modal .table-wrap,.modal [style*="overflow-x"]{max-width:100%;overflow-x:auto}
#vg-toggle-detalhes{white-space:normal;text-align:left;justify-content:flex-start;line-height:1.4;border:1.5px dashed #c0deff;background:#f6faff;color:#1d4ed8;padding:9px 12px;border-radius:10px}
#vg-toggle-detalhes:hover{background:#edf6ff}
.modal-tabs,.det-tabs{overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}
.modal-tabs::-webkit-scrollbar,.det-tabs::-webkit-scrollbar{display:none}
.modal-tab,.det-tab{white-space:nowrap;flex:0 0 auto}
@media (max-width:600px){
  .modal-overlay{align-items:flex-end!important;padding:0!important}
  .modal{width:100%!important;max-width:100%!important;max-height:94dvh!important;border-radius:18px 18px 0 0!important;margin:0!important;padding:1.1rem 1rem 1.25rem;border-width:1px 0 0 0;animation:ux-sobe .22s ease}
  .modal:has(> .modal-header),.modal:has(> .modal-body){padding:0}
  .modal-header{position:sticky;top:0;background:var(--white);z-index:2;padding:.9rem 1rem}
  .modal-body{padding:1rem!important}
  .modal-footer{position:sticky;bottom:0;flex-wrap:wrap;padding:.75rem 1rem!important}
  .modal-footer .btn{flex:1 1 auto;justify-content:center}
  .modal .form-grid{grid-template-columns:1fr!important}
  .modal [style*="grid-template-columns:1fr 1fr"],.modal [style*="grid-template-columns: 1fr 1fr"],.modal [style*="repeat(2"]{grid-template-columns:1fr!important}
  .modal .fgroup.span2{grid-column:auto}
  .modal-title{font-size:16.5px}
  .modal .finput,.modal input,.modal select,.modal textarea{font-size:16px}
  .modal-tab,.det-tab{padding:10px 12px}
  .modal .btn-primary:only-child,.modal > .btn-primary{width:100%;justify-content:center}
}
@keyframes ux-sobe{from{transform:translateY(24px);opacity:.6}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.modal{animation:none!important}}
.flabel{font-size:12.5px!important;font-weight:600!important;text-transform:none!important;letter-spacing:0!important;color:#475569}
body.dark .flabel{color:#93a1b8!important}
/* o botão do chat não fica por cima de janelas abertas */
body:has(.modal-overlay.open) #msn-root,body:has(.modal-overlay.open) #msn-toasts,body:has(.modal-overlay.open) #chat-widget{display:none!important}

/* ═══ Envio ao gestor e relatório da vaga (v26) ═══ */
.eg-modal{max-width:660px}
.eg-modal-rel{max-width:720px}
.eg-body{padding:1.1rem 1.4rem;display:flex;flex-direction:column;gap:1rem}
.eg-hint{font-size:11.5px;color:#64748b;margin-top:4px;line-height:1.4}
.eg-hint code{background:#eef2f7;border-radius:4px;padding:0 4px}
.eg-sub{font-size:11.5px;color:#64748b;font-weight:400}
.eg-conta{font-weight:500;color:#64748b;text-transform:none;letter-spacing:0}
.eg-cands{border:1px solid #e2e8f0;border-radius:12px;max-height:230px;overflow:auto;background:#fff}
.eg-cand{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #eef2f7;cursor:pointer;margin:0}
.eg-cand:last-child{border-bottom:0}
.eg-cand:hover{background:#f8fafc}
.eg-cand input{flex:none;width:16px;height:16px}
.eg-cand-info{display:flex;flex-direction:column;min-width:0;flex:1}
.eg-cand-info strong{font-size:13px;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.eg-cand-info .eg-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.eg-tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end;flex:none;max-width:48%}
.eg-tag{font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:20px;background:#f1f5f9;color:#475569;white-space:nowrap}
.eg-tag.ok{background:#ecfdf5;color:#047857}
.eg-tag.warn{background:#fffbeb;color:#b45309}
.eg-chk{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:#1e293b;margin:0 0 6px;cursor:pointer;line-height:1.35;text-transform:none;letter-spacing:0;font-weight:500}
.eg-chk input{margin-top:2px;flex:none}
.eg-status{font-size:12.5px;color:#1e3a8a;background:#eff6ff;border-radius:10px;padding:0;min-height:0}
.eg-status:not(:empty){padding:10px 12px}
.eg-status.erro{color:#b91c1c;background:#fef2f2}
.eg-rel-top{display:grid;grid-template-columns:1fr 220px;gap:12px}
.eg-rel-vaga{font-size:14px;font-weight:700;color:#1e293b;padding:9px 0}
.eg-prev-wrap{position:relative;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}
.eg-prev{width:100%;height:420px;border:0;display:block;background:#fff}
.eg-prev-load{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.9);font-size:13px;color:#475569;z-index:1}
.eg-foot-rel{flex-wrap:wrap;gap:8px}
@media(max-width:600px){
  .eg-rel-top{grid-template-columns:1fr}
  .eg-tags{max-width:none;flex:1 1 100%;justify-content:flex-start;padding-left:26px}
  .eg-cand{flex-wrap:wrap}
  .eg-body{padding:1rem}
}
body.dark .eg-cands,body.dark .eg-prev-wrap{border-color:#334155;background:#0f172a}
body.dark .eg-cand{border-color:#1e293b}
body.dark .eg-cand:hover{background:#1e293b}
body.dark .eg-cand-info strong,body.dark .eg-chk,body.dark .eg-rel-vaga{color:#e2e8f0}
body.dark .eg-tag{background:#1e293b;color:#cbd5e1}
body.dark .eg-status{background:#172554;color:#bfdbfe}
.eg-modal .modal-footer{position:sticky;bottom:0;background:var(--white,#fff);z-index:3;border-top:1px solid #eef2f7}

.eg-vazio{padding:18px 14px;text-align:center;font-size:12.5px;color:#64748b;line-height:1.5}
.eg-outras{margin:8px 0 0}


/* ═══ Telas de Entrevista e Triagem (v38) ═══ */
#modal-nova-entrevista .modal,#modal-nova-triagem .modal{padding:1.25rem 1.25rem 0!important}
.ment-nav{position:sticky;bottom:0;z-index:6;display:flex;align-items:center;gap:.6rem;margin:1rem -1.25rem 0;padding:.75rem 1.25rem;background:var(--white,#fff);border-top:1px solid var(--gray-200,#e2e8f0)}
.ment-nav .btn-ghost{order:0}
.ment-nav .ment-hint{order:1;flex:1;text-align:right;font-size:11.5px;color:var(--gray-500,#64748b);line-height:1.35;display:none}
.ment-nav .btn-primary{order:2;margin-left:auto}
.ment-nav button:disabled~.ment-hint,.ment-nav .ment-hint.aviso{display:block}
.ment-hint.aviso{color:#b45309;font-weight:600}
.ment-hint.ok{color:#15803d;font-weight:600}
#mtr-hint{order:0;text-align:left;margin-right:auto}
.ment-nav .btn-primary:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:560px){.ment-nav{flex-wrap:wrap}.ment-nav .ment-hint{flex:1 1 100%;order:-1;text-align:left}.ment-nav .btn-primary{flex:1}#mtr-hint{order:-1}}

/* listas de vaga e candidato */
#ment-lista-vagas,#ment-lista-cands{max-height:min(340px,46vh);overflow-y:auto;padding-right:4px;margin-right:-4px}
.ment-vaga-item,.ment-cand-item{align-items:center;gap:.7rem;padding:10px 12px;position:relative}
.ment-vaga-item.selected,.ment-cand-item.selected{box-shadow:inset 3px 0 0 var(--primary-solid,#2563eb)}
.ment-item-main{flex:1;min-width:0}
.ment-item-t{font-size:13px;font-weight:700;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ment-item-s{display:flex;gap:.5rem;align-items:center;font-size:11px;color:var(--gray-500,#64748b);margin-top:2px;min-width:0}
.ment-item-cli{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:0 1 auto}
.ment-item-sal{flex:0 0 auto;font-weight:700;color:#15803d;background:rgba(34,197,94,.12);padding:0 7px;border-radius:99px}
.ment-item-end{display:flex;align-items:center;gap:.45rem;flex:0 0 auto}
.ment-ok{width:20px;text-align:center;color:var(--primary-solid,#2563eb);font-weight:900;font-size:15px}
.ment-st{font-size:10.5px;font-weight:700;padding:2px 9px;border-radius:99px;background:rgba(100,116,139,.15);color:#475569;text-transform:capitalize}
.ment-st-aberta{background:rgba(34,197,94,.15);color:#15803d}
.ment-st-pausada,.ment-st-emandamento{background:rgba(245,158,11,.16);color:#b45309}
.ment-st-fechada,.ment-st-encerrada,.ment-st-cancelada{background:rgba(239,68,68,.13);color:#b91c1c}
.ment-disc-tag{font-size:10.5px;font-weight:800;letter-spacing:.2px;padding:2px 8px;border-radius:99px;background:rgba(139,92,246,.15);color:#7c3aed}
#ment-filtro-empresa{background:var(--white,#fff);color:inherit;cursor:pointer}

/* DISC: resumo + grade compacta */
.ment-disc-status{margin-bottom:.6rem;font-size:12px;color:var(--gray-500,#64748b)}
.ment-disc-resumo{display:flex;align-items:center;gap:.8rem;padding:.7rem .8rem;border:1.5px solid var(--primary-solid,#2563eb);border-radius:12px;background:var(--primary-pale,#edf6ff);margin-bottom:.4rem}
.ment-disc-big{flex:0 0 auto;min-width:46px;height:46px;padding:0 8px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:17px;color:#fff;background:var(--dc,#2563eb)}
.ment-disc-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:12px}
.ment-disc-txt span{font-size:11px;color:var(--gray-500,#64748b);line-height:1.35}
.ment-disc-picker .ment-disc-grid{display:block;margin-top:0}
.ment-disc-sec{font-size:10.5px;font-weight:700;color:var(--gray-500,#64748b);text-transform:uppercase;letter-spacing:.5px;margin:.4rem 0 .35rem}
.ment-disc-row{display:grid;gap:.45rem}
.ment-disc-row.r4{grid-template-columns:repeat(4,1fr)}
.ment-disc-row.r3{grid-template-columns:repeat(3,1fr)}
.ment-disc-chip{display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:8px 10px;text-align:left;font-family:inherit;background:var(--white,#fff);border:1.5px solid var(--gray-200,#e2e8f0);border-left:4px solid var(--dc);border-radius:10px;cursor:pointer;color:inherit;min-height:48px}
.ment-disc-chip b{font-size:14px;font-weight:900;color:var(--dc)}
.ment-disc-chip small{font-size:10.5px;color:var(--gray-500,#64748b);line-height:1.2}
.ment-disc-chip:hover{border-color:var(--dc);background:var(--primary-pale,#edf6ff)}
.ment-disc-chip.selected{background:var(--primary-pale,#edf6ff);border-color:var(--primary-solid,#2563eb);border-left-color:var(--dc)}
.ment-disc-chip:focus-visible{outline:2px solid var(--primary-solid,#2563eb);outline-offset:2px}
@media(max-width:560px){.ment-disc-row.r3{grid-template-columns:repeat(2,1fr)}}

/* feedback */
.ment-media{font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:99px;background:rgba(100,116,139,.15);color:#475569}
.ment-media.alta{background:rgba(34,197,94,.16);color:#15803d}
.ment-media.media{background:rgba(245,158,11,.18);color:#b45309}
.ment-media.baixa{background:rgba(239,68,68,.14);color:#b91c1c}
.ment-score-btn{width:38px;height:38px;border-radius:10px}
.ment-score-row{gap:.8rem;flex-wrap:wrap}
@media(max-width:560px){.ment-score-row>div:first-child{flex:1 1 100%}.ment-resultado-grid{grid-template-columns:1fr!important}.ment-score-btn{flex:1;width:auto;height:42px}.ment-score-row>div:last-child{width:100%}}

/* triagem */
.ment-num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--primary-solid,#2563eb);color:#fff;font-size:11px;font-weight:800;margin-right:6px}
.mtr-drop-zone{padding:1.6rem 1rem;background:var(--gray-50,#f8fafc);border:2px dashed var(--gray-300,#cbd5e1)}
.mtr-dz-icon{width:52px;height:52px;margin:0 auto .6rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;background:var(--primary-pale,#edf6ff)}
#modal-nova-triagem .flabel{display:block;margin-bottom:.35rem}
#modal-nova-triagem .form-input{margin-top:0!important}
.mtr-vaganova{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
body.dark .ment-nav{background:#14172a;border-color:#2a2f45}
body.dark .ment-disc-chip{background:#1a1d2e;border-color:#2a2f45;border-left-color:var(--dc)}
body.dark .ment-disc-chip:hover,body.dark .ment-disc-chip.selected{background:#1d2540}
body.dark .ment-disc-resumo{background:#1d2540}
body.dark .ment-st{color:#cbd5e1}
body.dark .ment-st-aberta{color:#4ade80}
body.dark .ment-item-sal{color:#4ade80}
body.dark .ment-disc-tag{color:#c4b5fd}
body.dark .ment-media{color:#cbd5e1}
body.dark .ment-media.alta{color:#4ade80}
body.dark .ment-media.media{color:#fbbf24}
body.dark .ment-media.baixa{color:#f87171}
body.dark .mtr-drop-zone{background:#1a1d2e}
body.dark .mtr-dz-icon{background:#1d2540}
body.dark #ment-filtro-empresa{background:#1a1d2e}
body.dark .ment-hint.ok{color:#4ade80}
body.dark .ment-hint.aviso{color:#fbbf24}
#modal-nova-entrevista .card-body,#modal-nova-triagem .card-body{padding:1rem 1.1rem}
#modal-nova-entrevista .card-header,#modal-nova-triagem .card-header{padding:.8rem 1.1rem}
#modal-nova-entrevista .ment-score-row{padding:10px 0}
body.dark #modal-nova-triagem .modal>div:first-child span{background:rgba(37,99,235,.2)!important;color:#93c5fd!important}

/* parecer da entrevista: estado do salvamento, edição e grade responsiva */
.ment-save{display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap;font-size:12px;font-weight:600;padding:8px 12px;border-radius:10px;margin-bottom:.8rem;background:rgba(100,116,139,.12);color:#475569}
.ment-save.ok{background:rgba(34,197,94,.14);color:#15803d}
.ment-save.err{background:rgba(245,158,11,.16);color:#b45309}
.ment-2col{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.8rem}
.ment-edit textarea{width:100%;margin-bottom:.6rem;resize:vertical}
@media(max-width:640px){.ment-2col{grid-template-columns:1fr}}
body.dark .ment-save{color:#cbd5e1}body.dark .ment-save.ok{color:#4ade80}body.dark .ment-save.err{color:#fbbf24}
.ment-report-header span{color:#fff!important}

/* triagem: lista de arquivos e zona de upload compacta com arquivos */
.mtr-file-item{gap:.6rem}
.mtr-file-nome{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}
.mtr-file-tam{flex:0 0 auto;color:var(--gray-400,#94a3b8);font-size:11px}
.mtr-drop-zone.has-file{padding:.9rem 1rem;background:var(--primary-pale,#edf6ff)}
.mtr-drop-zone.has-file .mtr-dz-icon{width:36px;height:36px;font-size:18px;margin-bottom:.3rem}
body.dark .mtr-drop-zone.has-file{background:#1d2540}
#mtr-vaga-select{width:100%;cursor:pointer}
#mtr-vaga{min-height:120px;resize:vertical}

/* ===== Cadastrar Vaga (v41) ===== */
#modal-vaga .vg-modal{max-width:720px;width:95%;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;padding:0}
#modal-vaga .vg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem 1.4rem .6rem}
#modal-vaga .vg-title{font-size:18px;font-weight:800}
#modal-vaga .vg-sub{font-size:12px;color:var(--text-muted,#64748b);margin-top:2px}
#modal-vaga .vg-progress{display:flex;align-items:center;gap:.7rem;padding:0 1.4rem;font-size:11.5px;color:var(--text-muted,#64748b)}
#modal-vaga .vg-progress-bar{flex:1;height:6px;border-radius:99px;background:rgba(100,116,139,.2);overflow:hidden}
#modal-vaga .vg-progress-bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,#2563eb,#10b981);transition:width .25s}
#modal-vaga .vg-tabs{display:flex;gap:.3rem;padding:.8rem 1.4rem 0;border-bottom:1px solid rgba(100,116,139,.25)}
#modal-vaga .vg-tab{background:none;border:0;border-bottom:3px solid transparent;padding:.55rem .9rem;font-weight:700;font-size:13px;color:var(--text-muted,#64748b);cursor:pointer;font-family:inherit}
#modal-vaga .vg-tab i{font-style:normal;font-weight:600;font-size:10.5px;margin-left:4px;padding:1px 6px;border-radius:99px;background:rgba(100,116,139,.18)}
#modal-vaga .vg-tab.active{color:#2563eb;border-bottom-color:#2563eb}
#modal-vaga .vg-tab.active i{background:rgba(37,99,235,.15)}
#modal-vaga .vg-body{flex:1;overflow-y:auto;padding:1.1rem 1.4rem}
#modal-vaga .vg-body .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
#modal-vaga .vg-body .span2{grid-column:span 2}
#modal-vaga .vg-req{color:#ef4444}
#modal-vaga .vg-err{display:none;color:#ef4444;font-size:11.5px;margin-top:3px}
#modal-vaga .vg-foot{display:flex;align-items:center;gap:.6rem;padding:.8rem 1.4rem;border-top:1px solid rgba(100,116,139,.25);background:inherit}
@media(max-width:600px){
  #modal-vaga .vg-body .form-grid{grid-template-columns:1fr}
  #modal-vaga .vg-body .span2{grid-column:auto}
  #modal-vaga .vg-tab{padding:.5rem .55rem;font-size:12px}
  #modal-vaga .vg-foot{flex-wrap:wrap}
}

/* ===== Novo Candidato (v41) ===== */
#modal-candidato .cd-modal{max-width:740px;width:95%;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;padding:0}
#modal-candidato .cd-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem 1.4rem .4rem}
#modal-candidato .cd-sub{font-size:12px;color:var(--text-muted,#64748b);margin-top:3px}
#modal-candidato .cd-dup{padding:0 1.4rem}
#modal-candidato .cd-dup .fgroup{margin:0}
#modal-candidato .cd-tabs{display:flex;gap:.3rem;padding:.6rem 1.4rem 0;border-bottom:1px solid rgba(100,116,139,.25);overflow-x:auto}
#modal-candidato .cd-tab{background:none;border:0;border-bottom:3px solid transparent;padding:.55rem .9rem;font-weight:700;font-size:13px;color:var(--text-muted,#64748b);cursor:pointer;font-family:inherit;white-space:nowrap}
#modal-candidato .cd-tab.active{color:#2563eb;border-bottom-color:#2563eb}
#modal-candidato .cd-body{flex:1;overflow-y:auto;padding:1.1rem 1.4rem}
#modal-candidato .cd-body .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
#modal-candidato .cd-body .span2{grid-column:span 2}
#modal-candidato .cd-body .fgroup{min-width:0}
#modal-candidato .cd-body #contrato-fields{grid-column:span 2}
#modal-candidato .cd-foot{display:flex;align-items:center;gap:.6rem;padding:.8rem 1.4rem;border-top:1px solid rgba(100,116,139,.25)}
@media(max-width:600px){
  #modal-candidato .cd-body .form-grid{grid-template-columns:1fr}
  #modal-candidato .cd-body .span2,#modal-candidato .cd-body #contrato-fields{grid-column:auto}
  #modal-candidato .cd-tab{padding:.5rem .6rem;font-size:12px}
  #modal-candidato .cd-foot{flex-wrap:wrap}
}

/* ===== Banco de Currículos: áreas e compatibilidade (v43) ===== */
.bc-vaga-box{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;padding:.7rem .9rem;margin-bottom:.8rem;border:1px dashed rgba(37,99,235,.45);border-radius:12px;background:rgba(37,99,235,.06)}
.bc-vaga-box .filter-select{min-width:260px;max-width:100%}
.bc-vaga-dica{font-size:12px;color:var(--gray-500,#64748b);flex:1;min-width:200px}
.bc-areas{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.9rem}
.bc-area-chip{--ac:#2563eb;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:99px;border:1.5px solid color-mix(in srgb,var(--ac) 40%,transparent);background:color-mix(in srgb,var(--ac) 8%,transparent);color:inherit;font:600 12.5px/1 inherit;font-family:inherit;cursor:pointer;transition:.15s}
.bc-area-chip b{font-weight:800;font-size:11px;padding:2px 7px;border-radius:99px;background:color-mix(in srgb,var(--ac) 22%,transparent)}
.bc-area-chip:hover{border-color:var(--ac)}
.bc-area-chip.on{background:var(--ac);border-color:var(--ac);color:#fff}
.bc-area-chip.on b{background:rgba(255,255,255,.28)}
.bc-status-line{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.9rem}
.bc-ordem-lbl{display:flex;align-items:center;gap:.5rem;font-size:12px;color:var(--gray-500,#64748b)}
.bc-areas-row{display:flex;flex-wrap:wrap;gap:6px;margin:.1rem 0 .5rem}
.bc-area-tag{--ac:#2563eb;display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:8px;font-size:11.5px;font-weight:700;cursor:pointer;color:var(--ac);background:color-mix(in srgb,var(--ac) 12%,transparent);border:1px solid color-mix(in srgb,var(--ac) 35%,transparent)}
.bc-nivel-tag{display:inline-flex;align-items:center;padding:3px 9px;border-radius:8px;font-size:11px;font-weight:600;color:var(--gray-500,#64748b);border:1px solid rgba(100,116,139,.35)}
.bc-compat{--cc:#94a3b8;display:grid;grid-template-columns:70px auto;grid-template-areas:"bar txt" "bar sub";gap:0 .6rem;align-items:center;margin:.1rem 0 .55rem;padding:.4rem .6rem;border-radius:9px;background:color-mix(in srgb,var(--cc) 10%,transparent);border:1px solid color-mix(in srgb,var(--cc) 35%,transparent)}
.bc-compat-bar{grid-area:bar;height:7px;border-radius:99px;background:rgba(100,116,139,.25);overflow:hidden}
.bc-compat-bar span{display:block;height:100%;background:var(--cc)}
.bc-compat b{grid-area:txt;font-size:12px;color:var(--cc)}
.bc-compat small{grid-area:sub;font-size:11px;color:var(--gray-500,#64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ===== Nova Mensagem (v44) ===== */
#modal-novo-lembrete .nl-modal{max-width:980px;width:96%;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;padding:0}
#modal-novo-lembrete .nl-head{display:flex;justify-content:space-between;align-items:flex-start;padding:1.2rem 1.4rem .6rem}
#modal-novo-lembrete .nl-title{font-size:18px;font-weight:800}
#modal-novo-lembrete .nl-sub{font-size:12px;color:var(--text-muted,#64748b);margin-top:2px}
#modal-novo-lembrete .nl-cols{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:1.2rem;padding:0 1.4rem 1rem;overflow:hidden}
#modal-novo-lembrete .nl-form{overflow-y:auto;padding-right:.4rem}
#modal-novo-lembrete .nl-side{overflow-y:auto;position:relative}
#modal-novo-lembrete .nl-sec{font-size:11px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:#2563eb;margin:.9rem 0 .5rem;padding-bottom:4px;border-bottom:1px solid rgba(100,116,139,.25)}
#modal-novo-lembrete .nl-sec:first-child{margin-top:.2rem}
#modal-novo-lembrete .nl-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.4rem}
#modal-novo-lembrete .nl-grid .span2{grid-column:span 2}
#modal-novo-lembrete .nl-search-wrap{position:relative}
#modal-novo-lembrete .nl-search-wrap .finput{padding-left:2.4rem !important;padding-right:8rem !important;border-color:#2563eb;border-width:2px}
#modal-novo-lembrete .nl-search-ico{position:absolute;left:.8rem;top:50%;transform:translateY(-50%);pointer-events:none}
#modal-novo-lembrete .nl-search-state{position:absolute;right:.8rem;top:50%;transform:translateY(-50%);font-size:11px;color:var(--text-muted,#64748b)}
#modal-novo-lembrete .nl-busca-box{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--white,#fff);border:1.5px solid #2563eb;border-radius:12px;box-shadow:0 10px 28px rgba(0,0,0,.18);z-index:999;max-height:260px;overflow-y:auto}
#modal-novo-lembrete .nl-busca-item{display:flex;align-items:center;gap:.7rem;padding:.55rem .9rem;cursor:pointer}
#modal-novo-lembrete .nl-busca-item:hover,#modal-novo-lembrete .nl-busca-hover{background:rgba(37,99,235,.12)}
#modal-novo-lembrete .nl-busca-av{width:34px;height:34px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;background:rgba(37,99,235,.15);color:#2563eb}
#modal-novo-lembrete .nl-busca-nome{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#modal-novo-lembrete .nl-busca-det{font-size:11px;color:var(--text-muted,#64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#modal-novo-lembrete .nl-busca-vazio{padding:.8rem 1rem;font-size:12px;color:var(--text-muted,#64748b)}
#modal-novo-lembrete .nl-side-label{font-size:11px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:#16a34a;margin-bottom:.5rem}
#modal-novo-lembrete .nl-wa{background:#e5ddd5;border-radius:14px;padding:1rem;min-height:260px}
#modal-novo-lembrete .nl-bubble{min-height:70px;word-break:break-word}
#modal-novo-lembrete .nl-foot{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.8rem 1.4rem;border-top:1px solid rgba(100,116,139,.25)}
@media(max-width:820px){
  #modal-novo-lembrete .nl-cols{grid-template-columns:1fr;overflow-y:auto}
  #modal-novo-lembrete .nl-form,#modal-novo-lembrete .nl-side{overflow:visible}
  #modal-novo-lembrete .nl-grid{grid-template-columns:1fr}
  #modal-novo-lembrete .nl-grid .span2{grid-column:auto}
}

/* Nova Mensagem: versão numa tela só (v45) */
#modal-novo-lembrete .nl-single{max-width:640px}
#modal-novo-lembrete .nl-body{flex:1;min-height:0;overflow-y:auto;padding:.2rem 1.4rem 1rem;display:flex;flex-direction:column;gap:.8rem}
#modal-novo-lembrete .nl-body .flabel{font-size:11.5px;margin-bottom:3px}
#modal-novo-lembrete .nl-prev summary{cursor:pointer;font-size:11px;font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:#16a34a;margin-bottom:.5rem}
#modal-novo-lembrete .nl-prev .nl-wa{min-height:0;max-height:220px;overflow-y:auto;padding:.6rem}
@media(max-width:600px){#modal-novo-lembrete .nl-single .nl-grid{grid-template-columns:1fr}#modal-novo-lembrete .nl-single .nl-grid .span2{grid-column:auto}}
#modal-novo-lembrete #nl-obs{min-height:0;height:44px}

/* ===== Configurações (v48) ===== */
/* Resumo no topo: faixa compacta em vez de 4 cartões grandes */
#page-config .cfg-stats{gap:.7rem !important;margin-bottom:1rem !important}
#page-config .cfg-stats .stat-card{padding:.7rem 1rem !important;min-height:0 !important;display:flex;align-items:center;justify-content:space-between;gap:.6rem;border-radius:12px !important}
#page-config .cfg-stats .stat-card .stat-icon{position:static !important;width:32px !important;height:32px !important;font-size:15px !important;flex-shrink:0;order:2}
#page-config .cfg-stats .stat-card>div:not(.stat-icon){display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}
#page-config .cfg-stats .stat-value,#page-config .cfg-stats .stat-num{font-size:22px !important;line-height:1 !important;margin:0 !important}
#page-config .cfg-stats .stat-label{font-size:11.5px !important;margin:0 !important}
/* Abas: barra fixa no topo ao rolar, com pílulas */
#page-config .cfg-tabs-bar{position:sticky;top:0;z-index:20;background:var(--white,#fff) !important;margin:0 -2px 1.2rem !important;padding:.35rem .35rem 0 !important;border-radius:12px 12px 0 0 !important;overflow-x:auto;flex-wrap:nowrap !important;scrollbar-width:thin}
#page-config .cfg-tab{white-space:nowrap;padding:.7rem 1.1rem !important}
body.dark #page-config .cfg-tabs-bar{background:#14172a !important}
/* Cartões */
#page-config .cfg-panel .card{margin-bottom:1rem;border-radius:14px}
#page-config .cfg-panel .card-header{padding:1rem 1.3rem}
#page-config .cfg-panel .card-title{font-size:15px}
#page-config .cfg-field{min-width:0}
#page-config .cfg-hint{font-size:11.5px;color:var(--gray-400,#94a3b8);line-height:1.4}
/* Barra de salvar fixa no rodapé da aba */
.cfg-save-bar{position:sticky;bottom:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1.1rem;margin:0 0 1.2rem;border-radius:14px;background:var(--white,#fff);border:1px solid rgba(100,116,139,.28);box-shadow:0 -6px 20px rgba(15,23,42,.10)}
.cfg-save-hint{font-size:12px;color:var(--gray-500,#64748b)}
body.dark .cfg-save-bar{background:#1a1e33;border-color:#2a2f45}
/* LGPD */
.lgpd-card{margin-bottom:1.2rem;padding:1.3rem 1.4rem;border-radius:16px;border:1px solid rgba(37,99,235,.28);background:linear-gradient(135deg,rgba(37,99,235,.06),rgba(124,58,237,.05))}
.lgpd-head{display:flex;gap:.9rem;align-items:flex-start;margin-bottom:1rem}
.lgpd-ico{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;background:rgba(37,99,235,.14);flex-shrink:0}
.lgpd-title{font-size:16px;font-weight:800;color:var(--gray-900,#0f172a)}
.lgpd-sub{font-size:12.5px;color:var(--gray-500,#64748b);margin-top:3px;line-height:1.5;max-width:70ch}
.lgpd-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1rem}
.lgpd-step{display:flex;align-items:center;gap:.6rem;padding:.55rem .8rem;border-radius:10px;background:var(--white,#fff);border:1px solid rgba(100,116,139,.22);font-size:12px;color:var(--gray-600,#475569)}
.lgpd-step b{width:22px;height:22px;border-radius:50%;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11.5px;flex-shrink:0}
.lgpd-ctrl{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.lgpd-prazo label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--gray-500,#64748b);margin-bottom:4px}
.lgpd-prazo-in{display:flex;align-items:center;gap:.5rem}
.lgpd-prazo-in .finput{width:96px !important;text-align:center;font-weight:700}
.lgpd-prazo-in span{font-size:13px;color:var(--gray-500,#64748b)}
.lgpd-actions{display:flex;gap:.6rem;flex-wrap:wrap}
.lgpd-note{margin-top:.9rem;font-size:11.5px;color:var(--gray-500,#64748b);padding:.5rem .8rem;border-left:3px solid #f59e0b;background:rgba(245,158,11,.08);border-radius:0 8px 8px 0}
.lgpd-lista:not(:empty){margin-top:1rem}
.lgpd-ok{padding:.8rem 1rem;border-radius:10px;background:rgba(16,185,129,.12);color:#047857;font-size:13px;font-weight:600}
.lgpd-res-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.6rem;font-size:13px}
.lgpd-res-btns{display:flex;gap:.5rem;flex-wrap:wrap}
.lgpd-tabela{max-height:340px;overflow:auto;border:1px solid rgba(100,116,139,.25);border-radius:12px;background:var(--white,#fff)}
.lgpd-tabela table{width:100%;font-size:12.5px}
.lgpd-tabela thead th{position:sticky;top:0;background:var(--gray-50,#f8fafc);z-index:1}
body.dark .lgpd-step,body.dark .lgpd-tabela{background:#1a1e33}
body.dark .lgpd-tabela thead th{background:#20253d}
@media(max-width:700px){.lgpd-steps{grid-template-columns:1fr}.cfg-save-bar{flex-direction:column;align-items:stretch}}
/* Ferramentas de manutenção */
#page-config .manut-grid{gap:.9rem}
#page-config .manut-card{border-radius:14px}
/* Janela de Perfil de Acesso */
#modal-perfil-acesso .pf-modal{max-width:800px;width:96%;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;padding:0}
#modal-perfil-acesso .pf-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.2rem 1.4rem .8rem;border-bottom:1px solid rgba(100,116,139,.25)}
#modal-perfil-acesso .pf-sub{font-size:12px;color:var(--gray-500,#64748b)}
#modal-perfil-acesso .pf-body{flex:1;overflow-y:auto;padding:1.1rem 1.4rem}
#modal-perfil-acesso .pf-grid{display:grid;grid-template-columns:1fr 110px;gap:.9rem;margin-bottom:1.1rem}
#modal-perfil-acesso .pf-f-full{grid-column:1/-1}
#modal-perfil-acesso .pf-f label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--gray-600,#475569);margin-bottom:4px}
#modal-perfil-acesso .pf-f label b{color:#ef4444}
#modal-perfil-acesso .pf-f-ico .finput{text-align:center;font-size:18px}
#modal-perfil-acesso .pf-sec{font-size:13px;font-weight:800;margin:.2rem 0 .6rem}
#modal-perfil-acesso .pf-table-wrap{border:1px solid rgba(100,116,139,.25);border-radius:12px;overflow:auto}
#modal-perfil-acesso #perfil-matriz-table{width:100%;border-collapse:collapse;font-size:12.5px}
#modal-perfil-acesso #perfil-matriz-table th{padding:9px 10px;text-align:center;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.6px;background:var(--gray-50,#f8fafc);position:sticky;top:0;z-index:1}
#modal-perfil-acesso #perfil-matriz-table th:first-child{text-align:left;min-width:170px}
#modal-perfil-acesso #perfil-matriz-tbody tr:hover{background:rgba(37,99,235,.05)}
#modal-perfil-acesso #perfil-matriz-tbody input[type=checkbox]{width:17px;height:17px;cursor:pointer;accent-color:#2563eb}
body.dark #modal-perfil-acesso #perfil-matriz-table th{background:#20253d}
#modal-perfil-acesso .pf-foot{display:flex;align-items:center;gap:.6rem;padding:.8rem 1.4rem;border-top:1px solid rgba(100,116,139,.25)}
#page-config .cfg-stats .stat-card>div:not(.stat-icon){flex:1;justify-content:flex-start !important;gap:.6rem !important}

/* ── v51: logo do login (claro/escuro) ── */
.login-logo img { display:inline-block; max-width:100%; height:auto; }
.login-logo .login-logo-dark { display:none; }
body.dark .login-logo .login-logo-light { display:none; }
body.dark .login-logo .login-logo-dark { display:inline-block; }

/* ── v51: aviso de rolagem lateral do Kanban ── */
.kb-hint { display:none; align-items:center; justify-content:flex-end; gap:8px; margin:0 0 .5rem; font-size:12px; color:var(--gray-500); }
.kb-hint.show { display:flex; }
.kb-hint button { border:1px solid var(--gray-200); background:var(--white); color:var(--gray-700); border-radius:8px; width:30px; height:28px; cursor:pointer; font-size:15px; line-height:1; }
.kb-hint button:hover { background:var(--gray-100); }
.kb-hint button:disabled { opacity:.35; cursor:default; }
#kanban-board.kb-more-right { -webkit-mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent); mask-image:linear-gradient(to right,#000 calc(100% - 36px),transparent); }

/* Banco de Currículos: nota da IA para a vaga (js/banco-ia.js) */
.bc-ia-box{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:0 0 .7rem}
.bc-ia-status{font-size:12px;color:var(--gray-500,#64748b)}
.bc-ia{--cc:#94a3b8;margin:.1rem 0 .55rem;padding:.5rem .65rem;border-radius:9px;background:color-mix(in srgb,var(--cc) 9%,transparent);border:1px solid color-mix(in srgb,var(--cc) 35%,transparent)}
.bc-ia-top{display:flex;flex-wrap:wrap;gap:.35rem .5rem;align-items:center;font-size:12px}
.bc-ia-top b{color:var(--cc)}
.bc-ia-top span{font-size:11px;padding:1px 7px;border-radius:99px;background:rgba(100,116,139,.15);color:var(--gray-600,#475569)}
.bc-ia-resumo{font-size:12px;margin-top:.3rem;color:var(--gray-600,#475569);line-height:1.4}
.bc-ia-det{margin-top:.3rem;font-size:12px}
.bc-ia-det summary{cursor:pointer;color:var(--cc);font-weight:600}
.bc-ia-det ul{margin:.3rem 0 0;padding-left:1rem}

/* Busca inteligente, ficha, pipeline da vaga, prazos e sugestões (v28) */
.bc-busca-chips{display:none;flex-wrap:wrap;align-items:center;gap:.4rem;padding:0 0 .7rem}
.bc-bi-t{font-size:12px;font-weight:700;color:var(--gray-600,#475569)}
.bc-bi-chip{display:inline-flex;align-items:center;gap:.35rem;font-size:12px;padding:3px 9px;border-radius:99px;background:rgba(99,102,241,.12);border:1px solid rgba(99,102,241,.3);color:var(--gray-700,#334155)}
.bc-bi-chip small{opacity:.7}
.bc-bi-chip button{border:0;background:none;cursor:pointer;color:inherit;font-size:11px;padding:0 2px}
.bc-ficha-ia{margin:0 0 1rem;padding:.8rem .9rem;border-radius:12px;border:1px solid var(--gray-200,#e2e8f0)}
.bc-ficha-ia-t{font-size:13px;font-weight:800;margin-bottom:.5rem}
.bc-ficha-ia-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:.4rem}
.bc-ficha-ia-row select{flex:1;min-width:180px}
.vk-badges{display:flex;gap:4px;margin-top:4px;flex-wrap:wrap}
.vk-ia{font-size:10px;font-weight:700;padding:2px 7px;border-radius:20px;color:var(--cc,#64748b);background:color-mix(in srgb,var(--cc,#94a3b8) 12%,transparent)}
.kc-sla-off{background:rgba(100,116,139,.12);color:#64748b}
.bcsug-box{background:var(--white,#fff);color:inherit;border-radius:14px;max-width:640px;width:100%;max-height:90vh;display:flex;flex-direction:column;padding:1.1rem 1.2rem}
.bcsug-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.bcsug-titulo{font-size:16px;font-weight:800}
.bcsug-barra{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin:.7rem 0 .3rem}
.bcsug-barra select{flex:1;min-width:200px}
.bcsug-corpo{overflow:auto;margin-top:.5rem;display:flex;flex-direction:column;gap:.6rem}
.bcsug-item{border:1px solid var(--gray-200,#e2e8f0);border-radius:11px;padding:.65rem .8rem}
.bcsug-top{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start}
.bcsug-nome{font-weight:700;font-size:13.5px}
.bcsug-sub{font-size:12px;color:var(--gray-500,#64748b)}
.bcsug-pct{font-weight:800;font-size:15px;color:var(--cc,#64748b)}
.bcsug-motivos{font-size:11.5px;color:var(--gray-500,#64748b);margin:.25rem 0 .4rem}
.bcsug-aviso{color:#b45309;font-weight:600}
.bcsug-acoes{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.4rem}
.bcsug-vazio{padding:1.5rem;text-align:center;font-size:13px;color:var(--gray-500,#64748b)}
.bc-fora-lbl{display:inline-flex;align-items:center;gap:.4rem;font-size:12.5px;font-weight:600;cursor:pointer}

/* ── Painel Financeiro v2 (js/financeiro.js) ── */
.fx-bar{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;margin-bottom:1rem;font-size:13px}
.fx-bar label{display:flex;align-items:center;gap:.4rem;font-weight:600}
.fx-bar-info{color:var(--gray-500);font-size:12px;flex:1;min-width:160px}
.fx-sub{font-size:11.5px;color:var(--gray-500)}
.fin-card .fx-sub{margin-top:.25rem}
.fx-bloco{margin-bottom:1rem}
.fx-duas{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
@media (max-width:900px){.fx-duas{grid-template-columns:1fr}}
.fx-lista{max-height:420px;overflow:auto}
.fx-row{gap:.7rem}
.fx-dir{display:flex;align-items:center;gap:.6rem;flex-shrink:0}
.fx-val{font-weight:700;white-space:nowrap}
.fx-red{color:#dc2626}
.fx-cli{font-weight:600;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fx-cli:hover{text-decoration:underline}
.fx-tag{display:inline-block;font-size:10.5px;font-weight:700;padding:1px 7px;border-radius:99px}
.fx-tag-red{background:#fee2e2;color:#b91c1c}
.fx-tag-amb{background:#fef3c7;color:#b45309}
.fx-chart{display:flex;align-items:flex-end;gap:6px;height:190px;padding:.4rem 1rem 0}
.fx-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}
.fx-col-val{font-size:9.5px;color:var(--gray-500);height:14px;white-space:nowrap}
.fx-col-bar{width:100%;max-width:38px;height:140px;display:flex;flex-direction:column;justify-content:flex-end;background:var(--gray-50,#f8fafc);border-radius:5px;overflow:hidden}
.fx-seg-rec{background:#10b981}.fx-seg-abe{background:#f59e0b}
.fx-col-lbl{font-size:10px;margin-top:4px;color:var(--gray-500)}
.fx-legenda{display:flex;gap:1rem;flex-wrap:wrap;padding:.5rem 1rem .8rem;font-size:11.5px}
.fx-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px}
.fx-leg-nota{margin-left:auto;color:var(--gray-500)}
.fx-prev{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.7rem;padding:.4rem 1rem 1rem}
.fx-prev-i{border-left:4px solid var(--c);background:var(--gray-50,#f8fafc);border-radius:8px;padding:.6rem .8rem}
.fx-prev-v{font-weight:800;font-size:14px}.fx-prev-l{font-size:11.5px;color:var(--gray-500)}
.fx-dica{margin:0 1rem 1rem;font-size:12px;background:#fef3c7;color:#92400e;border-radius:8px;padding:.5rem .7rem}
.fx-sep{height:1px;background:var(--gray-100);margin:.8rem 0}

/* ── Funil de Vendas v2 (js/prospeccao.js) ── */
.ps-card{margin-bottom:1rem}
.ps-card .card-header{flex-wrap:wrap;gap:.5rem}
.ps-sem{font-size:12px;color:var(--gray-500);margin-left:auto}
.ps-corpo{padding:.2rem 1rem .6rem}
.ps-grp{margin-top:.6rem}
.ps-grp-t{font-size:12px;font-weight:800;margin-bottom:.25rem}
.ps-grp-t span{background:var(--gray-100);border-radius:99px;padding:0 7px;font-size:11px;margin-left:4px}
.ps-lin{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.5rem 0;border-bottom:1px solid var(--gray-50)}
.ps-lin-t{min-width:0}.ps-emp{font-weight:700;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ps-sub{font-size:11.5px;color:var(--gray-500)}.ps-acao{color:var(--primary)}
.ps-lin-d{display:flex;align-items:center;gap:.5rem;flex-shrink:0}
.ps-mais{padding:.2rem 1rem .8rem}
.ps-chip{display:inline-block;font-size:10.5px;font-weight:700;padding:1px 8px;border-radius:99px;white-space:nowrap}
.ps-verm{background:#fee2e2;color:#b91c1c}.ps-amb{background:#fef3c7;color:#92400e}.ps-azul{background:#dbeafe;color:#1d4ed8}.ps-cinza{background:#f1f5f9;color:#475569}
.ps-selo{display:flex;gap:4px;flex-wrap:wrap;align-items:center;margin-top:6px}
.ps-mini{border:0;background:#dcfce7;color:#166534;font-size:10.5px;font-weight:700;border-radius:6px;padding:2px 8px;cursor:pointer}
.ps-met-g{display:grid;grid-template-columns:1.2fr 1fr;gap:1.2rem;padding:.4rem 1rem 1rem}
@media (max-width:800px){.ps-met-g{grid-template-columns:1fr}}
.ps-fun{display:grid;grid-template-columns:96px 1fr 70px;gap:.5rem;align-items:center;margin:.25rem 0;font-size:12px}
.ps-fun-b{background:var(--gray-50,#f8fafc);border-radius:6px;height:14px;overflow:hidden}.ps-fun-b div{height:100%;background:#6366f1;border-radius:6px}
.ps-fun-v small{color:var(--gray-500)}
.ps-ln{display:flex;justify-content:space-between;font-size:12px;padding:.2rem 0;border-bottom:1px solid var(--gray-50)}
.ps-ov{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:99999;display:flex;align-items:center;justify-content:center;padding:1rem}
.ps-box{background:var(--white,#fff);border-radius:14px;max-width:560px;width:100%;max-height:92vh;overflow:auto;padding:1.1rem 1.2rem}
.ps-top{display:flex;justify-content:space-between;gap:.6rem;margin-bottom:.7rem}.ps-tit{font-size:16px;font-weight:800}
.ps-btns{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-top:.4rem}
.ps-dica{margin-top:.5rem;font-size:12px;background:#eff6ff;color:#1e40af;border-radius:8px;padding:.45rem .65rem}
.ps-reg{margin-top:1rem;border-top:1px solid var(--gray-100);padding-top:.8rem}
.ps-res{display:flex;gap:.4rem;flex-wrap:wrap}
.ps-perd{display:flex;gap:.5rem;align-items:center;margin-top:.7rem}.ps-perd select{flex:1}
.ps-hist{margin-top:.8rem;border-top:1px solid var(--gray-100);padding-top:.6rem}
.ps-larga{max-width:760px}
.ps-drop{display:flex;flex-direction:column;align-items:center;gap:.25rem;border:2px dashed var(--gray-200,#cbd5e1);border-radius:12px;padding:1.2rem;text-align:center;cursor:pointer;font-size:13px;transition:.15s}
.ps-drop:hover,.ps-drop-on{border-color:#2563eb;background:#eff6ff}
.ps-drop-i{font-size:28px}
.ps-colar{flex:1;min-width:200px}.ps-colar summary{list-style:none;display:inline-block}.ps-colar textarea{margin-top:.5rem}
.ps-resumo{margin-top:.9rem;font-size:14px}
.ps-mapa{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem .7rem;margin-top:.5rem}
@media (max-width:640px){.ps-mapa{grid-template-columns:1fr 1fr}}
.ps-map{display:flex;flex-direction:column;gap:2px;font-size:11.5px;font-weight:600}.ps-map select{font-weight:400}
.ps-prev{width:100%;font-size:12px}.ps-prev th,.ps-prev td{padding:.3rem .5rem;text-align:left;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}
.ps-cksel{position:absolute;top:6px;right:6px;cursor:pointer;line-height:1}
.ps-cksel input,.lead-sel,.ps-colsel{width:16px;height:16px;cursor:pointer;accent-color:#2563eb}
.lk-card{position:relative}.lk-card.ps-sel{outline:2px solid #2563eb;background:#eff6ff}
.ps-colsel{margin-right:6px;vertical-align:middle}
#ps-selbar{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:9999;display:flex;gap:.7rem;align-items:center;background:#0f172a;color:#fff;padding:.6rem 1rem;border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.3);font-size:13px}
.fp-card{margin-bottom:1rem;padding:.8rem 1rem}
.fp-top{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.fp-top .search-input{flex:1;min-width:240px}
.fp-conta{font-size:12px;color:var(--gray-500);white-space:nowrap}
.fp-chips{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.6rem}.fp-chips:empty{display:none}
.fp-chip{border:1px solid var(--gray-200,#e2e8f0);background:var(--white,#fff);border-radius:99px;padding:2px 10px;font-size:12px;cursor:pointer}
.fp-chip b{color:var(--gray-500);font-weight:700}.fp-chip.on{background:#2563eb;color:#fff;border-color:#2563eb}.fp-chip.on b{color:#dbeafe}
.fp-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.55rem .7rem;margin-top:.7rem}
.fp-c{display:flex;flex-direction:column;gap:2px;font-size:11px;font-weight:700;color:var(--gray-500)}.fp-c select{width:100%;font-weight:400}

/* ── Prospecção: abas Hoje / Achar leads / Funil (js/comercial-ui.js) ── */
.cm-abas{display:inline-flex;gap:4px;background:var(--gray-100);border-radius:12px;padding:4px;margin-bottom:1rem;flex-wrap:wrap}
.cm-aba{border:0;background:transparent;font:inherit;font-size:13.5px;font-weight:700;color:var(--gray-600);padding:.5rem 1rem;border-radius:9px;cursor:pointer}
.cm-aba.active{background:var(--white,#fff);color:var(--primary);box-shadow:0 1px 4px rgba(0,0,0,.1)}
.cm-pill{display:inline-block;background:var(--primary);color:#fff;border-radius:99px;padding:0 8px;margin-left:4px;font-size:11px}
.cm-meta{padding:.9rem 1rem .4rem;font-size:13px}.cm-bar{height:6px;background:var(--gray-100);border-radius:99px;overflow:hidden;margin-top:6px}
.cm-bar i{display:block;height:100%;background:#3b82f6;border-radius:99px;transition:width .25s}.cm-bar i.ok{background:#10b981}
.cm-lin{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .8rem;padding:.7rem 1rem;border-top:1px solid var(--gray-100)}
.cm-lin-t{min-width:0;flex:1 1 240px}.cm-lin-a{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.cm-edit{flex-basis:100%}.cm-edit textarea{width:100%}
.cm-wa{background:#16a34a;color:#fff;border:0}.cm-wa:hover{background:#15803d}.cm-ok{background:#dcfce7;color:#166534;border:0}
.cm-passo{margin-bottom:1rem}
.cm-mx{width:100%;border-collapse:collapse;font-size:12.5px}.cm-mx th,.cm-mx td{padding:.35rem .5rem;text-align:left;border-top:1px solid var(--gray-100)}
.cm-mx thead th{font-size:11.5px;color:var(--gray-500);border-top:0;white-space:nowrap}.cm-sg{white-space:nowrap;font-weight:700}
.cm-cel{border:1px dashed var(--gray-200,#cbd5e1);background:transparent;border-radius:8px;padding:.3rem .6rem;font:inherit;font-size:12px;color:var(--gray-500);cursor:pointer;white-space:nowrap}
.cm-cel:hover{border-color:var(--primary);color:var(--primary)}.cm-cel.feito{border-style:solid;background:#f0fdf4;color:#166534;border-color:#bbf7d0}
.cm-cel.sel{outline:2px solid var(--primary)}
.cm-x{border:0;background:none;color:var(--gray-400);cursor:pointer;font-size:14px;padding:0 2px}.cm-x:hover{color:#b91c1c}
.cm-add{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;padding:.7rem 1rem 1rem}.cm-add .finput{width:170px}

/* ── Ficha do lead (js/comercial-ficha.js) ── */
.cm-link{cursor:pointer}.cm-link:hover{color:var(--primary);text-decoration:underline}
.lk-card{cursor:pointer;transition:transform .15s,box-shadow .15s}.lk-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(30,58,138,.14)}
.cmf-bk{position:fixed;inset:0;background:rgba(15,23,42,.45);backdrop-filter:blur(2px);z-index:99990;opacity:0;transition:opacity .2s}.cmf-bk.on{opacity:1}
.cmf{position:fixed;top:0;right:0;bottom:0;width:min(580px,100vw);background:#f4f6fb;z-index:99991;display:flex;flex-direction:column;box-shadow:-18px 0 50px rgba(15,23,42,.25);transform:translateX(100%);transition:transform .22s ease}.cmf.on{transform:none}
.cmf-hd{display:flex;gap:.9rem;align-items:flex-start;padding:1.2rem 1.3rem 1.1rem;color:#fff;background:linear-gradient(135deg,#1e3a8a 0%,#2563eb 100%)}
.cmf-av{width:48px;height:48px;border-radius:14px;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;flex-shrink:0}
.cmf-hd-t{min-width:0;flex:1}.cmf-nome{font-size:19px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}.cmf-sub{font-size:12.5px;opacity:.85;margin-top:3px}
.cmf-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.cmf-x{border:0;background:rgba(255,255,255,.16);color:#fff;width:32px;height:32px;border-radius:10px;cursor:pointer;font-size:14px;flex-shrink:0}.cmf-x:hover{background:rgba(255,255,255,.3)}
.cmf-chip{font-size:11px;font-weight:700;border-radius:99px;padding:2px 10px;background:rgba(255,255,255,.2);color:#fff;white-space:nowrap}
.cmf-chip.verm{background:#fee2e2;color:#b91c1c}.cmf-chip.amb{background:#fef3c7;color:#92400e}.cmf-chip.ver{background:#dcfce7;color:#166534}.cmf-chip.cin{background:rgba(255,255,255,.2);color:#fff}
.cmf-bd{flex:1;overflow:auto;padding:1rem 1.1rem 2.5rem}
.cmf-steps{display:flex;align-items:center;background:#fff;border-radius:14px;padding:.75rem .6rem;box-shadow:0 1px 3px rgba(15,23,42,.08)}
.cmf-lin{flex:1;height:2px;background:var(--gray-200,#e2e8f0);min-width:6px}
.cmf-st{border:0;background:none;font:inherit;font-size:11px;font-weight:700;color:var(--gray-500);display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;padding:0 .2rem}
.cmf-st i{font-style:normal;width:26px;height:26px;border-radius:50%;background:var(--gray-100);display:flex;align-items:center;justify-content:center;font-size:12px;transition:.15s}
.cmf-st:hover i{background:#dbeafe;color:#1d4ed8}.cmf-st.feito i{background:#10b981;color:#fff}.cmf-st.atual i{background:#2563eb;color:#fff;box-shadow:0 0 0 4px #dbeafe}.cmf-st.atual{color:#1e3a8a}
.cmf-acoes{display:flex;gap:.45rem;flex-wrap:wrap;margin:.8rem 0}
.cmf-b{border:0;background:#fff;color:var(--gray-700,#334155);font:inherit;font-size:12.5px;font-weight:700;padding:.5rem .85rem;border-radius:10px;cursor:pointer;text-decoration:none;box-shadow:0 1px 3px rgba(15,23,42,.1);transition:.15s;display:inline-flex;align-items:center;gap:4px}
.cmf-b:hover{background:#eff6ff;color:#1d4ed8}.cmf-b.ver{background:#dcfce7;color:#166534}.cmf-b.ver:hover{background:#bbf7d0}.cmf-b.perd{color:#b91c1c}.cmf-b.perd:hover{background:#fee2e2}.cmf-b:disabled{opacity:.5}
.cmf-wa{border:0;background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;font:inherit;font-weight:800;font-size:13.5px;padding:.6rem 1.1rem;border-radius:12px;cursor:pointer;box-shadow:0 4px 12px rgba(22,163,74,.35);margin-left:auto}.cmf-wa:hover{filter:brightness(.95)}
.cmf-card{background:#fff;border-radius:14px;padding:1rem 1.05rem;margin-top:.8rem;box-shadow:0 1px 3px rgba(15,23,42,.08)}
.cmf-ct{font-size:12.5px;font-weight:800;color:#1e3a8a;margin-bottom:.6rem}
.cmf-linha{display:flex;gap:.5rem;align-items:center;margin:.5rem 0 0}.cmf-linha select{flex:1}
.cmf-g2{display:grid;grid-template-columns:1fr 1fr;gap:.55rem .7rem}@media(max-width:520px){.cmf-g2{grid-template-columns:1fr}}
.cmf-f{display:flex;flex-direction:column;gap:3px;font-size:11px;font-weight:700;color:var(--gray-500)}.cmf-f .finput{font-weight:400}
.cmf-chips{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.6rem}
.cmf-c{border:1px solid var(--gray-200,#e2e8f0);background:#fff;border-radius:99px;font:inherit;font-size:12px;font-weight:600;padding:.25rem .8rem;cursor:pointer;color:var(--gray-600)}.cmf-c:hover{border-color:#2563eb;color:#2563eb;background:#eff6ff}
.cmf-res{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;margin-top:.7rem;padding:.7rem;border-radius:12px;background:#f0fdf4}.cmf-res>span{font-size:12px;font-weight:700;color:#166534;width:100%}
.cmf-tl{display:flex;gap:.6rem;padding:.5rem 0;border-top:1px solid var(--gray-100);font-size:13px}.cmf-tl:first-of-type{border-top:0}.cmf-tl>span{font-size:16px}.cmf-tl small{color:var(--gray-400);font-size:11px}
.cmf-vazio{font-size:12.5px;color:var(--gray-400)}

/* trilha na ficha e painel de números */
.cmf-trilha{display:flex;align-items:flex-start;gap:0;padding:.2rem 0}
.cmf-tr{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:44px;flex:0 0 auto}
.cmf-tr i{width:30px;height:30px;border-radius:50%;background:var(--gray-100);display:flex;align-items:center;justify-content:center;font-style:normal;font-size:14px;color:#64748b}
.cmf-tr small{font-size:10px;color:#94a3b8}
.cmf-tr.feito i{background:#10b981;color:#fff;font-weight:700}
.cmf-tr.atual i{background:#7c3aed;color:#fff;box-shadow:0 0 0 3px #ede9fe}
.cmf-tr.atual small{color:#7c3aed;font-weight:700}
.cmf-trl{flex:1;height:2px;background:var(--gray-100);margin-top:15px;min-width:6px}
.cmf-plano{margin-top:.6rem;padding:.55rem .7rem;border-radius:10px;background:#f5f3ff;color:#5b21b6;font-size:13px;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.cmf-plano.cin{background:var(--gray-100);color:#64748b}
.cm-pn{padding:1rem}.cm-pn-tt{font-weight:800;font-size:16px}
.cm-pn-l{margin-top:.8rem}.cm-pn-t{display:flex;justify-content:space-between;font-size:13px}
.cm-pn-d{margin-top:1rem;padding:.7rem .9rem;border-radius:12px;background:#ecfdf5;color:#065f46;font-size:13px}
.cm-pn-d.fraco{background:#fffbeb;color:#92400e}
.cm-pn-k{margin-top:.8rem;display:flex;align-items:center;gap:.7rem;padding:.7rem .9rem;border-radius:12px;background:#f5f3ff;color:#5b21b6;font-size:13px}
.cm-pn-k b{font-size:24px}

/* Hoje: linhas mais limpas (v19) */
.cm-lista{padding:.4rem .6rem .6rem;display:flex;flex-direction:column;gap:6px}
.cm-lin{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;padding:.7rem .9rem;border:1px solid var(--gray-100);border-radius:14px;background:transparent;transition:background .15s,border-color .15s}
.cm-lin:hover{background:rgba(124,58,237,.06);border-color:rgba(124,58,237,.35)}
.cm-av{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#3b82f6);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}
.cm-lin-t{min-width:0;flex:1 1 220px}
.cm-nm{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-weight:700;font-size:14px}
.cm-lin-a{display:flex;gap:.4rem;align-items:center;justify-content:flex-end;flex:0 0 auto}
.cm-lin-a .btn{white-space:nowrap}
@media(max-width:700px){.cm-lin-a{flex:1 1 100%;justify-content:flex-start}}

/* modo noturno: texto legível nos chips e botões (v20) */
.fp-chip{color:inherit}
.fp-chip.on{color:#fff}
.cmf-b{background:var(--white,#fff)}
.cmf-c{background:var(--white,#fff)}
body.dark .cmf-b:not(.ver):not(.perd):not(.cmf-wa){color:#e2e8f0}
body.dark .cmf-c{color:#cbd5e1;border-color:rgba(255,255,255,.14)}
body.dark .cmf-plano{background:rgba(124,58,237,.18);color:#ddd6fe}
body.dark .cmf-plano.cin{background:rgba(255,255,255,.06);color:#94a3b8}
body.dark .cm-pn-d{background:rgba(16,185,129,.15);color:#a7f3d0}
body.dark .cm-pn-d.fraco{background:rgba(245,158,11,.15);color:#fde68a}
body.dark .cm-pn-k{background:rgba(124,58,237,.18);color:#ddd6fe}

/* ficha no modo noturno: tudo escuro e coerente (v21) */
body.dark .cmf{background:#141726;color:#e2e8f0;box-shadow:-18px 0 50px rgba(0,0,0,.5)}
body.dark .cmf-hd{background:linear-gradient(135deg,#1e2a5e 0%,#3b4fd1 100%)}
body.dark .cmf-card,body.dark .cmf-steps{background:#1c2033;box-shadow:none;border:1px solid rgba(255,255,255,.06)}
body.dark .cmf-ct{color:#c7d2fe}
body.dark .cmf-lin,body.dark .cmf-trl{background:rgba(255,255,255,.1)}
body.dark .cmf-st{color:#94a3b8}
body.dark .cmf-st i,body.dark .cmf-tr i{background:#2a2f47;color:#cbd5e1}
body.dark .cmf-st.atual{color:#c7d2fe}
body.dark .cmf-st.atual i{background:#3b5bdb;color:#fff;box-shadow:0 0 0 4px rgba(59,91,219,.3)}
body.dark .cmf-st.feito i,body.dark .cmf-tr.feito i{background:#10b981;color:#fff}
body.dark .cmf-tr.atual i{background:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.35)}
body.dark .cmf-tr small{color:#94a3b8}
body.dark .cmf-b{background:#262b43;color:#e2e8f0;box-shadow:none}
body.dark .cmf-b:hover{background:#323859;color:#fff}
body.dark .cmf-b.ver{background:rgba(34,197,94,.18);color:#86efac}
body.dark .cmf-b.perd{background:rgba(239,68,68,.15);color:#fca5a5}
body.dark .cmf-c{background:#262b43;color:#cbd5e1}
body.dark .cmf-c:hover{background:#323859;color:#fff;border-color:#6366f1}
body.dark .cmf-res{background:rgba(34,197,94,.12)}body.dark .cmf-res>span{color:#86efac}
body.dark .cmf-tl{border-color:rgba(255,255,255,.07)}
body.dark .cmf-tl small,body.dark .cmf-vazio,body.dark .cmf-f{color:#94a3b8}
body.dark .cmf-chip.verm{background:rgba(239,68,68,.2);color:#fca5a5}
body.dark .cmf-chip.amb{background:rgba(245,158,11,.2);color:#fcd34d}
body.dark .cmf-chip.ver{background:rgba(34,197,94,.2);color:#86efac}

/* emojis coloridos em qualquer sistema (v22) */
body,button,input,select,textarea{font-family:Poppins,-apple-system,"system-ui","Segoe UI",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji"}
