/* ===== Cadastro do colaborador (modal "Editar Colaborador") — layout em cartões =====
   Mesmo visual em todas as abas: cartão de resumo no topo (anel de progresso + indicadores),
   seções em cartões com título e campos em grade. Cores do sistema (--g azul-marinho, --y amarelo). */
.modal.fnx{max-width:1100px;width:96%;padding:0;border-radius:16px;background:#F6F8FD;display:flex;flex-direction:column;overflow:hidden}
.fnx-head{display:flex;justify-content:space-between;align-items:center;padding:18px 26px 10px;background:#fff}
.fnx-head h3{margin:0;font-size:21px;font-weight:800;color:var(--g);letter-spacing:-.2px}
.fnx-close{width:38px;height:38px;border-radius:9px;border:1px solid var(--bd);background:#fff;color:var(--d);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.fnx-close:hover{background:var(--cl)}
.fnx-tabs{display:flex;gap:4px;padding:0 22px;background:#fff;border-bottom:2px solid var(--bd);overflow-x:auto}
.fnx-tabs .tab-btn{height:46px;padding:0 20px;font-size:14.5px;font-weight:600;color:var(--d);border-radius:9px 9px 0 0;transform:none!important;box-shadow:none!important;gap:8px}
.fnx-tabs .tab-btn:hover{background:var(--cl);color:var(--g)}
.fnx-tabs .tab-btn.active{background:var(--g);color:#fff}
.fnx-tabs .tab-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.fnx-body{padding:18px 26px;overflow-y:auto;flex:1;min-height:0}
.fnx-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 26px;background:#fff;border-top:1px solid var(--bd);flex-wrap:wrap}

/* Cartões e seções */
.fnx-card{background:#fff;border:1px solid var(--bd);border-radius:14px;padding:18px 20px;margin-bottom:14px}
.fnx-sum{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.fnx-sum-txt{flex:1;min-width:200px}
.fnx-sum-txt h4{margin:0 0 4px;font-size:20px;font-weight:800;color:var(--g)}
.fnx-sum-txt p{margin:0;font-size:15px;color:var(--m)}
.fnx-sum-txt p b{color:var(--g)}
.fnx-sep{width:1px;align-self:stretch;background:var(--bd)}
.fnx-tiles{display:flex;gap:12px;flex-wrap:wrap}
.fnx-tile{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:12px;min-width:170px}
.fnx-tile i{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-style:normal;flex:none}
.fnx-tile i svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.fnx-tile b{display:block;font-size:22px;font-weight:800;line-height:1.1}
.fnx-tile span{font-size:14px;color:var(--m)}
.fnx-tile.vermelho{background:#FFF1F1}.fnx-tile.vermelho i{background:#FFDCDC;color:#D92D20}.fnx-tile.vermelho b{color:#D92D20}
.fnx-tile.verde{background:#EEFAF2}.fnx-tile.verde i{background:#D3F2DF;color:#16884A}.fnx-tile.verde b{color:#16884A}
.fnx-tile.amarelo{background:#FFF9E6}.fnx-tile.amarelo i{background:#FFEDB8;color:#B7791F}.fnx-tile.amarelo b{color:#8A5A00}
.fnx-tile.azul{background:#EEF3FC}.fnx-tile.azul i{background:#DCE7FA;color:var(--g)}.fnx-tile.azul b{color:var(--g)}
.fnx-ring{position:relative;width:96px;height:96px;flex:none}
.fnx-ring svg{width:96px;height:96px;transform:rotate(-90deg)}
.fnx-ring b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:21px;font-weight:800;color:var(--d)}
.fnx-foto{width:88px;height:88px;border-radius:50%;overflow:hidden;background:var(--gp);display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800;color:var(--g);flex:none;border:3px solid #fff;box-shadow:0 0 0 2px var(--bd)}
.fnx-foto img{width:100%;height:100%;object-fit:cover}

.fnx-aviso{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#EEF4FE;border:1px solid #C9DAF8;border-radius:12px;margin-bottom:14px;font-size:14px;color:#24324F}
.fnx-aviso svg{width:20px;height:20px;flex:none;color:#2563EB}
.fnx-aviso button{margin-left:auto;background:none;border:none;font-size:18px;color:var(--m);cursor:pointer}

.fnx-filtros{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.fnx-busca{flex:1;min-width:220px;position:relative}
.fnx-busca input{width:100%;height:44px;border:1px solid var(--bd);border-radius:10px;padding:0 14px 0 42px;font-size:14px;background:#fff}
.fnx-busca svg{position:absolute;left:14px;top:12px;width:20px;height:20px;fill:none;stroke:var(--m);stroke-width:2}
.fnx-chip{height:42px;padding:0 16px;border-radius:10px;border:1px solid var(--bd);background:#fff;font-size:14px;font-weight:600;color:var(--d);cursor:pointer;display:inline-flex;align-items:center;gap:7px}
.fnx-chip svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2}
.fnx-chip.on{background:var(--g);border-color:var(--g);color:#fff}

.fnx-sec{border-radius:14px;margin-bottom:14px;border:1px solid var(--bd);background:#fff}
.fnx-sec-h{display:flex;align-items:center;gap:10px;padding:13px 18px;cursor:pointer;user-select:none;width:100%;border:none;background:none;text-align:left;border-radius:13px 13px 0 0}
.fnx-sec.fechada>.fnx-sec-h{border-radius:13px}
.fnx-sec-h h5{margin:0;font-size:19px;font-weight:800;color:var(--g)}
.fnx-sec-h small{font-size:13px;padding:3px 10px;border-radius:20px;background:var(--gp);color:var(--g);font-weight:500}
.fnx-sec-h .fnx-seta{margin-left:auto;width:20px;height:20px;fill:none;stroke:var(--d);stroke-width:2.2;transition:transform .2s}
.fnx-sec.fechada .fnx-seta{transform:rotate(180deg)}
.fnx-sec.fechada .fnx-sec-b{display:none}
.fnx-sec-b{padding:4px 14px 14px}
.fnx-sec.obrig{border-color:#F6CACA}.fnx-sec.obrig>.fnx-sec-h{background:#FFF3F3}.fnx-sec.obrig>.fnx-sec-h small{background:#FFE0E0;color:#B42318}
.fnx-sec.opc{border-color:#CFE0FA}.fnx-sec.opc>.fnx-sec-h{background:#F1F6FE}
.fnx-sec-ic{width:24px;height:24px;flex:none}
.fnx-sec-desc{font-size:13px;color:var(--m);margin:0 4px 10px}

.fnx-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fnx-doc{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;border:1px solid var(--bd);border-radius:10px;background:#fff;min-height:56px;position:relative}
.fnx-doc>svg{width:24px;height:24px;flex:none;fill:none;stroke:var(--d);stroke-width:1.6;stroke-linejoin:round}
.fnx-doc-nome{flex:1;font-size:15px;font-weight:700;color:var(--g);min-width:0}
.fnx-doc-nome small{display:block;font-weight:400;font-size:12px;color:var(--m);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fnx-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:20px;font-size:13px;font-weight:600;white-space:nowrap}
.fnx-pill svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2}
.fnx-pill.pend{background:#FFE4E4;color:#C81E1E}.fnx-pill.ok{background:#DDF5E6;color:#14703C}.fnx-pill.ok svg{fill:#16884A;stroke:#fff}
.fnx-pill.opc{background:#FFF0C7;color:#8A5A00}.fnx-pill.disp{background:#ECEFF5;color:#4A5672}
.fnx-acoes{display:flex;gap:8px;align-items:center;flex:none}
.fnx-btn{height:38px;padding:0 16px;border-radius:8px;font-size:14px;font-weight:700;display:inline-flex;align-items:center;gap:7px;cursor:pointer;border:1px solid transparent;text-decoration:none;white-space:nowrap}
.fnx-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.fnx-btn.p{background:var(--g);color:#fff}.fnx-btn.p:hover{background:#082E6E}
.fnx-btn.o{background:#fff;color:var(--g);border-color:#B9CAE8}.fnx-btn.o:hover{background:var(--cl)}
.fnx-btn.ic{width:44px;padding:0;justify-content:center;font-size:18px;letter-spacing:1px}
.fnx-btn input[type=file]{display:none}
.fnx-menu{display:none;position:absolute;right:10px;top:52px;z-index:20;background:#fff;border:1px solid var(--bd);border-radius:10px;box-shadow:0 12px 30px rgba(15,30,61,.16);min-width:250px;padding:6px}
.fnx-menu.on{display:block}
.fnx-menu a,.fnx-menu label,.fnx-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border:none;background:none;border-radius:7px;font-size:13.5px;color:var(--d);text-decoration:none;cursor:pointer;text-align:left}
.fnx-menu a:hover,.fnx-menu label:hover,.fnx-menu button:hover{background:var(--cl)}
.fnx-menu .del{color:#C81E1E}
.fnx-menu small{color:var(--m)}
.fnx-menu hr{border:none;border-top:1px solid var(--bd);margin:4px 0}
.fnx-envio{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px dashed #B9CAE8;border-radius:10px;background:#FAFCFF;margin-bottom:10px}
.fnx-envio input[type=text]{flex:1;min-width:220px;height:38px;border:1px solid var(--bd);border-radius:8px;padding:0 12px;font-size:14px}
.fnx-vazio{color:var(--m);font-size:13.5px;margin:6px 4px}

/* Campos (abas Básico, Pessoal, Banco, Endereço) */
.fnx-campos{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px 16px}
.fnx-campos .fg{gap:6px}
.fnx-campos .fg label{font-size:13px;font-weight:700;color:var(--d)}
.fnx-campos .fg input:not([type=checkbox]):not([type=file]),.fnx-campos .fg select,.fnx-campos .fg textarea{height:42px;border:1px solid var(--bd)!important;border-radius:9px!important;padding:0 12px!important;font-size:14px;background:#fff;width:100%}
.fnx-campos .fg textarea{height:auto;padding:10px 12px!important}
.fnx-campos .fg input:focus,.fnx-campos .fg select:focus,.fnx-campos .fg textarea:focus{outline:none;border-color:var(--g)!important;box-shadow:0 0 0 3px rgba(11,61,145,.12)}
.fnx-campos .fg input:disabled{background:#F1F4FB!important;font-weight:800;color:var(--g)}
.fnx-campos .fg small{color:var(--m);font-size:12px}
.fnx-campos .larga{grid-column:1/-1}
.fnx-check{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid var(--bd);border-radius:10px;cursor:pointer;font-size:14px;font-weight:700;color:var(--d)}
.fnx-check input{margin-top:3px;width:17px;height:17px;accent-color:var(--g)}
.fnx-check small{display:block;font-weight:400;color:var(--m);font-size:12.5px;margin-top:2px}
.fnx-titulo{display:flex;align-items:center;gap:10px;margin:0 0 14px}
.fnx-titulo i{width:34px;height:34px;border-radius:9px;background:var(--gp);color:var(--g);display:flex;align-items:center;justify-content:center;font-style:normal}
.fnx-titulo i svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.fnx-titulo h5{margin:0;font-size:17px;font-weight:800;color:var(--g)}
.fnx-titulo span{font-size:13px;color:var(--m);margin-left:auto}
.fnx-foto-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.fnx-foto-acoes input[type=file]{display:none}

/* Holerites */
.fnx-mes{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;border:1px solid var(--bd);border-radius:10px;background:#fff}
.fnx-mes svg{width:24px;height:24px;flex:none;fill:none;stroke:var(--d);stroke-width:1.6}
.fnx-mes .fnx-doc-nome{font-size:15px}

@media (max-width:780px){
  .fnx-grid{grid-template-columns:1fr}
  .fnx-head,.fnx-body,.fnx-foot{padding-left:14px;padding-right:14px}
  .fnx-tabs{padding:0 10px}.fnx-tabs .tab-btn{padding:0 12px;font-size:13.5px}
  .fnx-sep{display:none}.fnx-tile{min-width:0;flex:1}
  .fnx-doc{flex-wrap:wrap}.fnx-acoes{margin-left:auto}
}
/* cabeçalho, abas e rodapé não encolhem; só o corpo rola */
.fnx-head,.fnx-tabs,.fnx-foot{flex:none}
.fnx-foot .btn{height:42px;padding:0 18px;font-size:14px;border-radius:9px}
.fnx-menu{min-width:290px;max-width:360px}
.fnx-menu svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.fnx-menu a span{line-height:1.35}
.fnx-tile{min-width:148px;padding:12px 14px}
.fnx-tiles{flex:0 1 auto}
.fnx-sum-txt{flex:1 1 250px}
.fnx-tile b{white-space:nowrap}
@media (max-width:780px){
  .fnx-sum{gap:12px}
  .fnx-ring,.fnx-ring svg{width:72px;height:72px}.fnx-ring b{font-size:17px}
  .fnx-sum-txt{flex:1 1 150px}.fnx-sum-txt h4{font-size:17px}.fnx-sum-txt p{font-size:13.5px}
  .fnx-tiles{width:100%;flex-wrap:nowrap;gap:8px}
  .fnx-tile{flex:1 1 0;min-width:0;padding:10px;gap:0}
  .fnx-tile i{display:none}
  .fnx-tile b{font-size:18px;white-space:normal}.fnx-tile span{font-size:12px}
  .fnx-foot{gap:8px}.fnx-foot .btn{flex:1 1 auto;height:40px;padding:0 10px;font-size:13px}
  .fnx-filtros .fnx-chip{height:36px;padding:0 11px;font-size:13px}
  .fnx-sec-h h5{font-size:17px}
  .fnx-doc{padding:10px 12px}.fnx-doc-nome{flex:1 1 60%}
}

/* ===== Alertas do Dia (public/alertas-dia.js) — mesmo padrão de cartões ===== */
#daily-alert-modal .modal.fnx{max-width:1000px}
.da-head-t{display:flex;align-items:center;gap:10px}
.da-sum{align-items:flex-start}
.da-sum .fnx-sum-txt{flex:1 1 220px;padding-top:6px}
.da-tiles{flex:3 1 520px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.da-tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border-radius:12px;border:1px solid transparent;cursor:pointer;text-align:left;font:inherit;background:var(--da-bg);color:var(--da-cor)}
.da-tile:hover{border-color:var(--da-borda)}
.da-tile b{font-size:22px;font-weight:800;line-height:1.1}
.da-tile span{font-size:13px;color:var(--m)}
.da-tile .da-tile-e{font-size:16px;color:inherit}
.da-tile.zero{background:#F6F8FD;color:#9AA5BD}
.da-sec .fnx-sec{border-color:var(--da-borda)}
.da-sec .fnx-sec>.fnx-sec-h{background:var(--da-bg)}
.da-sec .fnx-sec>.fnx-sec-h h5{color:var(--da-cor);font-size:17px}
.da-sec .fnx-sec>.fnx-sec-h small{background:#fff;color:var(--da-cor);font-weight:700}
.da-sec .fnx-sec.fechada{opacity:.75}
.da-sec-e{font-size:20px;line-height:1}
.da-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--bd);border-radius:10px;background:#fff}
.da-item.alerta{border-color:#F6B4B4;background:#FFF7F7}
.da-av{width:38px;height:38px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;background:var(--da-bg);color:var(--da-cor)}
.da-item .fnx-doc-nome{font-size:14px}
.da-selo{flex:none;padding:5px 11px;border-radius:20px;font-size:12.5px;font-weight:700;background:var(--da-bg);color:var(--da-cor);white-space:nowrap}
.da-item.alerta .da-selo{background:#FFE0E0;color:#C81E1E}
.da-foot{justify-content:space-between;align-items:center}
.da-foot label{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--m);cursor:pointer}
.da-laranja{--da-bg:#FFF4E8;--da-cor:#C2410C;--da-borda:#F9C99A}
.da-roxo{--da-bg:#F4EEFF;--da-cor:#6B46C1;--da-borda:#CDB8F5}
.da-rosa{--da-bg:#FFEFF6;--da-cor:#B83280;--da-borda:#F5B8D5}
.da-azul{--da-bg:#EAF3FF;--da-cor:#2B6CB0;--da-borda:#B5D3F5}
.da-verde{--da-bg:#EAF8EF;--da-cor:#16884A;--da-borda:#A8E0BE}
.da-vermelho{--da-bg:#FFEEEE;--da-cor:#C81E1E;--da-borda:#F6B4B4}
.da-amarelo{--da-bg:#FFF7DD;--da-cor:#8A5A00;--da-borda:#F2D27A}
.da-laranja2{--da-bg:#FFF1E6;--da-cor:#B45309;--da-borda:#F5C08F}
@media (max-width:780px){
  .da-tiles{grid-template-columns:repeat(2,minmax(0,1fr));flex-basis:100%}
  .da-item{flex-wrap:wrap}.da-selo{margin-left:50px;white-space:normal}
}

.da-sec .fnx-grid{grid-template-columns:1fr}
.da-item .fnx-doc-nome{min-width:0}
@media (max-width:780px){
  .da-tiles{gap:6px}
  .da-tile{flex-direction:row;align-items:center;gap:6px;padding:8px 10px}
  .da-tile b{font-size:17px}.da-tile span{font-size:12px}
}

/* ===== Benefícios por colaborador: linha clara entre um colaborador e outro ===== */
#tb-ben>tr>td{border-bottom:2px solid #C3D2EA!important;vertical-align:middle}
#tb-ben>tr:nth-child(even)>td{background:#F6F9FF}
#tb-ben>tr:hover>td{background:#EDF3FF}
#tb-ben>tr>td:first-child{border-left:4px solid transparent}
#tb-ben>tr:hover>td:first-child{border-left-color:var(--g)}
.av-acao:disabled{opacity:.45;cursor:not-allowed}

/* aba Treinamentos */
.fnx-chk{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:14px;cursor:pointer}
.fnx-chk small{color:#6b7a90}
.trn-lista{display:grid;gap:2px}

/* ===== Benefícios › Importar (public/beneficios-importar.js) ===== */
.bi-wrap{position:relative;display:inline-block}
.bi-menu{display:none;position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:270px;background:#fff;border:1px solid var(--bd);border-radius:10px;box-shadow:0 12px 30px rgba(15,30,61,.16);padding:6px}
.bi-menu.on{display:block}
.bi-menu button{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:9px 12px;border:none;background:none;border-radius:7px;font-size:13.5px;font-weight:700;color:var(--d);cursor:pointer;text-align:left}
.bi-menu button:hover{background:var(--cl);color:var(--g)}
.bi-menu small{font-weight:400;color:var(--m);font-size:11.5px}
.bi-recebido{display:inline-block;margin-top:4px;padding:2px 7px;border-radius:10px;background:#E8F7EE;color:#14703C;font-size:10px;font-weight:700;white-space:nowrap}
.bi-situacao{display:inline-block;padding:2px 9px;border-radius:10px;font-size:10.5px;font-weight:700;white-space:nowrap}
.bi-escolha{max-width:330px;width:100%;height:32px;border:1px solid #E2C46A;border-radius:7px;padding:0 6px;font-size:12.5px;background:#fff}
