/* =====================================================================
   PROSIM — Inspeção e Diretor (prefixo ix-)
   Visual de leitura fácil: texto preto, botões altos, cores da marca.
   ===================================================================== */
:root{
  --ix-azul:#1F4E9C; --ix-azul-esc:#163a75; --ix-ceu:#3E8EDE; --ix-verde:#1e8a5a; --ix-verde-esc:#156b45;
  --ix-amarelo:#F5B921; --ix-rosa:#C0176B; --ix-laranja:#F5811F; --ix-turquesa:#2FA88C;
  --ix-tinta:#111111; --ix-borda:#dfe6ef; --ix-fundo:#f4f7fb; --ix-raio:16px;
}
body.ix-corpo{font-size:17px; color:var(--ix-tinta); background:var(--ix-fundo)}
/* texto sempre preto (a folha geral usa cinza em notas e rótulos) */
.ix-corpo .srv-nota, .ix-corpo .srv-campo span, .ix-corpo .srv-periodo, .ix-corpo .vq-mudo, .ix-corpo .ca-dica, .ix-corpo small{color:var(--ix-tinta)}
.ix-ic{width:24px; height:24px; flex:none}

/* ---------- topo ---------- */
.ix-corpo .srv-topo{position:sticky; top:0; z-index:40; display:flex; align-items:flex-end; justify-content:space-between;
  gap:18px; padding:14px 22px 0; background:#fff; border:0; box-shadow:none}
.ix-corpo .srv-topo::after{content:""; position:absolute; left:0; right:0; bottom:0; height:6px;
  background:linear-gradient(90deg, var(--ix-azul) 0 16.6%, var(--ix-amarelo) 16.6% 33.3%, var(--ix-rosa) 33.3% 50%,
             var(--ix-laranja) 50% 66.6%, var(--ix-ceu) 66.6% 83.3%, var(--ix-turquesa) 83.3% 100%)}
.ix-corpo .srv-marca{display:flex; align-items:center; gap:14px; padding-bottom:16px; text-decoration:none}
.ix-corpo .srv-marca img{height:52px; width:auto}
.ix-corpo .srv-marca span{font-size:23px; font-weight:800; color:var(--ix-tinta); letter-spacing:-.2px}
.ix-corpo .srv-topo-nav{display:flex; align-items:flex-end; gap:6px; flex-wrap:wrap}
.ix-corpo .srv-topo-nav a, .ix-corpo .srv-topo-nav .srv-link{display:inline-flex; align-items:center; gap:10px;
  min-height:56px; padding:10px 20px 16px; border-radius:6px 6px 0 0 !important; border:2px solid var(--ix-borda); border-bottom:0;
  background:#fff; color:var(--ix-tinta) !important; font-size:17px; font-weight:700; text-decoration:none}
.ix-corpo .srv-topo-nav a:hover{background:#eef4fc}
.ix-corpo .srv-topo-nav a.ix-nav--ativo{background:var(--ix-azul); border-color:var(--ix-azul); color:#fff !important}
.ix-corpo .srv-topo-nav form{margin:0}
.ix-corpo .srv-topo-nav .srv-link{cursor:pointer; font-family:inherit}
.ix-corpo .srv-principal{max-width:1200px; margin:0 auto; padding:26px 18px 70px}
.ix-corpo .srv-aviso{border-radius:6px !important; font-size:17px; color:var(--ix-tinta)}

/* ---------- botões ---------- */
.ix-botao{display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:60px; padding:12px 26px;
  border:2px solid transparent; border-radius:6px !important; cursor:pointer; text-decoration:none; font:inherit; font-size:18px;
  font-weight:800; line-height:1.15; color:#fff; background:var(--ix-azul); transition:transform .1s, filter .1s, box-shadow .1s;
  box-shadow:0 6px 16px rgba(31,78,156,.18)}
.ix-botao:hover{filter:brightness(1.08)}
.ix-botao:active{transform:translateY(2px)}
.ix-botao:focus-visible{outline:4px solid var(--ix-amarelo); outline-offset:3px}
.ix-botao .ix-ic{width:26px; height:26px}
.ix-botao--verde{background:var(--ix-verde); box-shadow:0 6px 16px rgba(30,138,90,.22)}
.ix-botao--claro{background:#fff; color:var(--ix-azul); border-color:#bcd0ea; box-shadow:none}
.ix-botao--claro:hover{background:#eef4fc; filter:none}
.ix-botao--rosa{background:#fdeef5; color:#a8125c; border-color:#f3bfd7; box-shadow:none}
.ix-botao--rosa:hover{background:#fbe1ec; filter:none}
.ix-botao--perigo{background:#fff; color:#c0262d; border-color:#e7a3a6; box-shadow:none}
.ix-botao--perigo:hover{background:#fff1f1; filter:none}
.ix-botao--pequeno{min-height:52px; padding:8px 20px; font-size:17px}
.ix-botao--largo{width:100%}
.ix-botoes{display:flex; flex-wrap:wrap; gap:14px; align-items:center}
.ix-botoes form{margin:0}

/* ---------- título ---------- */
.ix-cabeca{display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:22px}
.ix-cabeca h1{margin:0 0 10px; font-size:34px; line-height:1.15; font-weight:800; color:var(--ix-tinta); letter-spacing:-.4px}
.ix-meta{display:flex; flex-wrap:wrap; align-items:center; gap:14px; font-size:18px}
.ix-meta .ix-ic{color:#c0262d}
.ix-volta{display:inline-flex; align-items:center; gap:8px; margin-bottom:10px; font-weight:700; font-size:17px;
  color:var(--ix-azul); text-decoration:none}

/* ---------- blocos ---------- */
.ix-bloco{background:#fff; border:1px solid var(--ix-borda); border-radius:8px !important; padding:24px; margin-bottom:22px;
  box-shadow:0 2px 6px rgba(16,24,40,.04), 0 14px 32px rgba(31,78,156,.06)}
.ix-bloco > h2{margin:0 0 18px; font-size:24px; font-weight:800; color:var(--ix-tinta)}
.ix-vazio{padding:34px 10px; text-align:center; font-size:19px; font-weight:600}

/* ---------- selos ---------- */
.ix-selo{display:inline-flex; align-items:center; gap:8px; padding:8px 18px; border-radius:6px !important; font-size:17px; font-weight:800;
  color:#fff; background:var(--cor, #5b6573)}
.ix-selo .ix-ic{width:20px; height:20px}
.ix-sit--preparacao{--cor:#c98a00; --claro:#fff4d6}
.ix-sit--publicado{--cor:#1f6fd1; --claro:#e3effd}
.ix-sit--andamento{--cor:#1e8a5a; --claro:#e2f5ec}
.ix-sit--finalizado{--cor:#1F4E9C; --claro:#e6edf8}
.ix-sit--arquivado{--cor:#5b6573; --claro:#eef1f5}

.ix-chip{display:inline-flex; align-items:center; gap:8px; padding:7px 14px; border-radius:6px !important; font-size:16px; font-weight:700}
.ix-chip .ix-ic{width:20px; height:20px}
.ix-chip--data{background:#e2f5ec; color:#14613f}
.ix-chip--sem{background:#fdeef5; color:#a8125c}
.ix-estado{display:inline-flex; align-items:center; justify-content:center; min-width:120px; padding:9px 16px; border-radius:6px !important;
  font-size:16px; font-weight:800; background:#eef1f5; color:#3a4350}
.ix-estado--rascunho{background:#fff1cc; color:#8a5a00}
.ix-estado--aguardando, .ix-estado--devolvida, .ix-estado--aprovada{background:#ffe8d4; color:#9a4a00}
.ix-estado--publicada{background:#dceafc; color:#1857a8}
.ix-estado--retirada, .ix-estado--cancelada{background:#eef1f5; color:#3a4350}
.ix-estado--associada{background:#fde3ee; color:#a8125c}
.ix-estado--aguardacontrato{background:#ffe8d4; color:#9a4a00}
.ix-estado--contratada{background:#d8f2e5; color:#14613f}

/* ---------- abas ---------- */
.ix-abas{display:flex; flex-wrap:wrap; gap:12px; margin:0 0 22px}
.ix-aba{display:inline-flex; align-items:center; gap:12px; min-height:58px; padding:8px 20px; border-radius:6px !important; text-decoration:none;
  font-weight:800; font-size:17px; color:var(--ix-tinta); background:#fff; border:2px solid var(--ix-borda)}
.ix-aba b{min-width:34px; height:34px; padding:0 10px; border-radius:6px !important; display:inline-flex; align-items:center; justify-content:center;
  background:#eef2f7; font-size:17px}
.ix-aba:hover{border-color:#bcd0ea}
.ix-aba--ativa{border-color:var(--ix-azul); background:var(--ix-azul); color:#fff}
.ix-aba--ativa b{background:rgba(255,255,255,.22); color:#fff}

/* ---------- cartões de processo ---------- */
.ix-processos{display:grid; grid-template-columns:repeat(auto-fill, minmax(340px, 1fr)); gap:18px}
.ix-processo{display:flex; flex-direction:column; gap:14px; padding:22px; background:#fff; border:2px solid var(--ix-borda);
  border-radius:8px !important; text-decoration:none; color:var(--ix-tinta); transition:border-color .12s, transform .12s, box-shadow .12s;
  border-top:8px solid var(--cor, #5b6573)}
.ix-processo:hover{border-color:var(--cor); transform:translateY(-2px); box-shadow:0 14px 28px rgba(31,78,156,.12)}
.ix-processo h3{margin:0; font-size:22px; line-height:1.25; font-weight:800}
.ix-numeros{display:flex; flex-wrap:wrap; gap:10px}
.ix-num{display:inline-flex; flex-direction:column; min-width:88px; padding:10px 14px; border-radius:6px !important; background:var(--claro, #f2f5fa)}
.ix-num b{font-size:26px; line-height:1}
.ix-num span{font-size:15px; font-weight:700; margin-top:4px}

/* ---------- passo a passo ---------- */
.ix-passos{display:flex; margin:4px 0 0; padding:0; list-style:none}
.ix-passos li{flex:1; position:relative; display:flex; flex-direction:column; align-items:center; gap:12px; font-size:18px; font-weight:700;
  color:#5b6573; text-align:center}
.ix-passos li .ix-n{position:relative; z-index:1; width:68px; height:68px; border-radius:8px !important; display:flex; align-items:center;
  justify-content:center; font-size:28px; font-weight:800; background:#f2f5f9; color:#5b6573; border:2px solid var(--ix-borda)}
.ix-passos li::before{content:""; position:absolute; top:33px; right:50%; width:100%; height:5px; background:var(--ix-borda)}
.ix-passos li:first-child::before{display:none}
.ix-passos li.ix-feito{color:var(--ix-verde)}
.ix-passos li.ix-feito .ix-n{background:var(--ix-verde); border-color:var(--ix-verde); color:#fff}
.ix-passos li.ix-feito::before, .ix-passos li.ix-agora::before{background:var(--ix-verde)}
.ix-passos li.ix-agora{color:var(--ix-tinta); font-weight:800}
.ix-passos li.ix-agora .ix-n{background:var(--ix-azul); border-color:var(--ix-azul); color:#fff; box-shadow:0 0 0 7px rgba(31,78,156,.14)}

.ix-agora-caixa{margin-top:26px; padding:22px; border-radius:8px !important; background:#f7faff; border:2px solid #e2eaf5}
.ix-agora-caixa h3{display:flex; align-items:center; gap:12px; margin:0 0 18px; font-size:24px; font-weight:800}
.ix-agora-caixa h3 .ix-ic{width:32px; height:32px; color:var(--ix-azul)}
.ix-agora-caixa .ix-botoes > *{flex:1 1 220px}
.ix-agora-caixa .ix-botoes .ix-botao{width:100%; min-height:72px; font-size:20px}

/* ---------- vagas ---------- */
.ix-vagas{display:flex; flex-direction:column; gap:14px}
.ix-vaga{display:grid; grid-template-columns:150px 1fr auto; gap:20px; align-items:center; padding:20px;
  background:#fff; border:2px solid var(--ix-borda); border-radius:8px !important}
.ix-vaga h3{margin:0 0 10px; font-size:22px; font-weight:800}
.ix-info{display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; font-size:17px}
.ix-info span{display:inline-flex; align-items:center; gap:8px}
.ix-info .ix-ic{width:22px; height:22px; color:#3a4350}
.ix-info b{font-weight:800}
.ix-linha2{display:flex; flex-wrap:wrap; gap:10px; margin-top:12px}
.ix-quem{display:flex; align-items:center; gap:10px; margin-top:12px; padding:10px 14px; border-radius:6px !important; background:#e2f5ec;
  font-size:17px; font-weight:700}
.ix-quem--fora{background:#fde3ee}
.ix-quem .ix-ic{color:#a8125c}
.ix-vaga .ix-botoes{justify-content:flex-end}
@media (max-width:860px){
  .ix-vaga{grid-template-columns:1fr}
  .ix-vaga .ix-botoes{justify-content:flex-start}
  .ix-passos li{font-size:14px}
  .ix-passos li .ix-n{width:52px; height:52px; font-size:22px}
  .ix-passos li::before{top:25px}
  .ix-cabeca h1{font-size:27px}
  .ix-corpo .srv-topo{flex-direction:column; align-items:stretch}
}

/* ---------- formulários ---------- */
.ix-form .srv-campo span{font-size:16px; font-weight:800; color:var(--ix-tinta)}
.ix-form .srv-campo input, .ix-form .srv-campo select, .ix-form .srv-campo textarea{min-height:56px; font-size:18px;
  color:var(--ix-tinta); border:2px solid #cdd8e6; border-radius:6px !important; padding:10px 14px; background:#fff}
.ix-form .srv-campo input:focus, .ix-form .srv-campo select:focus, .ix-form .srv-campo textarea:focus{border-color:var(--ix-ceu);
  outline:none; box-shadow:0 0 0 4px rgba(62,142,222,.2)}
.ix-grade{display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:16px; align-items:end}

/* ---------- janela (popup) ---------- */
dialog.ix-janela{width:min(640px, calc(100% - 28px)); max-height:calc(100vh - 40px); padding:0; border:0; border-radius:8px !important;
  color:var(--ix-tinta); background:#fff; box-shadow:0 30px 80px rgba(16,24,40,.35); overflow:auto}
dialog.ix-janela--larga{width:min(980px, calc(100% - 28px))}
dialog.ix-janela::backdrop{background:rgba(17,24,39,.55); backdrop-filter:blur(2px)}
dialog.ix-janela[open]{animation:ix-sobe .18s ease-out}
@keyframes ix-sobe{from{transform:translateY(14px); opacity:0} to{transform:none; opacity:1}}
.ix-janela-topo{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:22px 24px 0}
.ix-janela-topo h2{margin:0; font-size:26px; font-weight:800}
.ix-janela-corpo{padding:22px 24px 26px}
.ix-fechar{display:inline-flex; align-items:center; justify-content:center; width:52px; height:52px; border-radius:6px !important;
  border:2px solid var(--ix-borda); background:#fff; color:var(--ix-tinta); cursor:pointer}
.ix-fechar:hover{background:#f2f5f9}
.ix-confirma{display:flex; flex-direction:column; align-items:center; gap:18px; padding:34px 26px 28px; text-align:center}
.ix-confirma .ix-grande{width:92px; height:92px; border-radius:8px !important; display:flex; align-items:center; justify-content:center;
  background:var(--claro, #e6edf8); color:var(--cor, var(--ix-azul))}
.ix-confirma .ix-grande .ix-ic{width:48px; height:48px}
.ix-confirma h2{margin:0; font-size:28px; font-weight:800}
.ix-confirma .ix-botoes{width:100%; justify-content:center}
.ix-confirma .ix-botoes > *{flex:1 1 200px}
.ix-confirma .ix-botoes .ix-botao{width:100%; min-height:66px}
.ix-confirma .ix-sub{margin:-6px 0 0; font-size:18px}

/* ---------- histórico ---------- */
.ix-linha-tempo{list-style:none; margin:0; padding:0}
.ix-linha-tempo li{display:grid; grid-template-columns:44px 1fr; gap:14px; padding:12px 0; border-bottom:1px solid var(--ix-borda)}
.ix-linha-tempo li:last-child{border:0}
.ix-linha-tempo .ix-pt{width:44px; height:44px; border-radius:6px !important; display:flex; align-items:center; justify-content:center;
  background:#e6edf8; color:var(--ix-azul)}
.ix-linha-tempo b{display:block; font-size:18px}
.ix-linha-tempo span{font-size:16px}

.ix-rodape-link{margin-top:26px; text-align:center}

/* a folha geral deixa tudo reto; aqui a associação ganha cantos arredondados */
.ix-corpo .cha-etapa, .ix-corpo .cha-busca, .ix-corpo .cha-cartao, .ix-corpo .cha-escolhido,
.ix-corpo .cha-matricula, .ix-corpo .cha-enviar, .ix-corpo .cha-mais, .ix-corpo .cha-cadastro--aviso{border-radius:8px !important}
.ix-corpo .cha-selo, .ix-corpo .cha-ok, .ix-corpo .cha-trocar, .ix-corpo .cha-titulo b{border-radius:6px !important}
.ix-corpo .srv-cartao{border-radius:8px !important}
.ix-corpo .srv-campo input, .ix-corpo .srv-campo select, .ix-corpo .srv-campo textarea{border-radius:6px !important}
.ix-corpo .srv-aviso{border-radius:6px !important}
.ix-processo .ix-chip{align-self:flex-start}
.ix-processo .ix-numeros{flex-wrap:nowrap}
.ix-processo .ix-num{flex:1; min-width:0}
.ix-janela-corpo .ix-botoes{margin-top:20px}

/* =====================================================================
   v3 — mais cores da marca + logotipo ao fundo
   ===================================================================== */
.ix-corpo .marca-fundo{background-image:url('/assets/prosim-logo.png'); background-size:min(80vw, 900px) auto;
  background-position:center 60%; opacity:.08}
.ix-corpo .srv-topo{background:rgba(255,255,255,.96)}
.ix-corpo .srv-marca img{height:54px}

/* menu: cada item com a sua cor da logo */
.ix-corpo .srv-topo-nav > :nth-child(6n+1){--c:var(--ix-azul)}
.ix-corpo .srv-topo-nav > :nth-child(6n+2){--c:var(--ix-turquesa)}
.ix-corpo .srv-topo-nav > :nth-child(6n+3){--c:var(--ix-ceu)}
.ix-corpo .srv-topo-nav > :nth-child(6n+4){--c:var(--ix-laranja)}
.ix-corpo .srv-topo-nav > :nth-child(6n+5){--c:var(--ix-rosa)}
.ix-corpo .srv-topo-nav > :nth-child(6n+6){--c:var(--ix-amarelo)}
.ix-corpo .srv-topo-nav a .ix-ic, .ix-corpo .srv-topo-nav .srv-link .ix-ic{color:var(--c)}
.ix-corpo .srv-topo-nav > form .srv-link{--c:#c0262d}
.ix-corpo .srv-topo-nav a.ix-nav--ativo{background:var(--c, var(--ix-azul)); border-color:var(--c, var(--ix-azul))}
.ix-corpo .srv-topo-nav a.ix-nav--ativo .ix-ic{color:#fff}

/* abas: cada posição com uma cor */
.ix-abas > .ix-aba:nth-child(6n+1){--c:var(--ix-azul);     --cl:#e6edf8}
.ix-abas > .ix-aba:nth-child(6n+2){--c:var(--ix-amarelo);  --cl:#fff4d6}
.ix-abas > .ix-aba:nth-child(6n+3){--c:var(--ix-ceu);      --cl:#e3effd}
.ix-abas > .ix-aba:nth-child(6n+4){--c:var(--ix-laranja);  --cl:#ffe8d4}
.ix-abas > .ix-aba:nth-child(6n+5){--c:var(--ix-turquesa); --cl:#dcf3ec}
.ix-abas > .ix-aba:nth-child(6n+6){--c:var(--ix-rosa);     --cl:#fde3ee}
.ix-aba{border-bottom:5px solid var(--c, var(--ix-borda))}
.ix-aba .ix-ic{color:var(--c)}
.ix-aba b{background:var(--cl, #eef2f7)}
.ix-aba:hover{border-color:var(--c)}
.ix-aba--ativa{background:var(--c, var(--ix-azul)); border-color:var(--c, var(--ix-azul)); color:#fff}
.ix-aba--ativa .ix-ic{color:#fff}
/* amarelo é claro demais para texto branco */
.ix-abas > .ix-aba--ativa:nth-child(6n+2){color:var(--ix-tinta)}
.ix-abas > .ix-aba--ativa:nth-child(6n+2) .ix-ic{color:var(--ix-tinta)}
.ix-abas > .ix-aba--ativa:nth-child(6n+2) b{background:rgba(0,0,0,.12); color:var(--ix-tinta)}

/* passo a passo: cada etapa com uma cor da logo */
.ix-passos li:nth-child(1){--c:var(--ix-amarelo)}
.ix-passos li:nth-child(2){--c:var(--ix-ceu)}
.ix-passos li:nth-child(3){--c:var(--ix-turquesa)}
.ix-passos li:nth-child(4){--c:var(--ix-laranja)}
.ix-passos li:nth-child(5){--c:var(--ix-rosa)}
.ix-passos li .ix-n{border-color:var(--c); color:var(--ix-tinta); background:#fff}
.ix-passos li.ix-feito{color:var(--ix-tinta)}
.ix-passos li.ix-feito .ix-n, .ix-passos li.ix-agora .ix-n{background:var(--c); border-color:var(--c); color:#fff}
.ix-passos li:nth-child(1).ix-feito .ix-n, .ix-passos li:nth-child(1).ix-agora .ix-n{color:var(--ix-tinta)}
.ix-passos li.ix-feito::before, .ix-passos li.ix-agora::before{background:var(--c)}
.ix-passos li.ix-agora .ix-n{box-shadow:0 0 0 7px color-mix(in srgb, var(--c) 22%, transparent); transform:scale(1.06)}

/* blocos com uma faixa de cor no título */
.ix-bloco > h2{display:flex; align-items:center; gap:12px}
.ix-bloco > h2::before{content:""; width:8px; height:28px; border-radius:4px !important;
  background:linear-gradient(var(--ix-azul) 0 25%, var(--ix-amarelo) 25% 50%, var(--ix-rosa) 50% 75%, var(--ix-turquesa) 75%)}
.ix-agora-caixa{background:#fffaf0; border-color:#f7dfa3}
.ix-agora-caixa h3 .ix-ic{color:var(--ix-laranja)}

/* vagas: faixa lateral com a cor da situação */
.ix-vaga:has(.ix-estado--publicada){--c:var(--ix-ceu)}
.ix-vaga:has(.ix-estado--associada){--c:var(--ix-rosa)}
.ix-vaga:has(.ix-estado--aguardacontrato){--c:var(--ix-laranja)}
.ix-vaga:has(.ix-estado--contratada){--c:var(--ix-turquesa)}
.ix-vaga:has(.ix-estado--rascunho){--c:var(--ix-amarelo)}
.ix-vaga:has(.ix-estado--aguardando), .ix-vaga:has(.ix-estado--devolvida){--c:var(--ix-laranja)}
.ix-estado--publicada{background:#dcecfb; color:#174f8c}
.ix-estado--contratada{background:#dcf3ec; color:#14614c}

/* botões coloridos da marca */
.ix-botao--laranja{background:var(--ix-laranja); box-shadow:0 6px 16px rgba(245,129,31,.25)}
.ix-botao--turquesa{background:var(--ix-turquesa); box-shadow:0 6px 16px rgba(47,168,140,.25)}

/* ---------- diretor ---------- */
.ix-cabeca--escola{justify-content:flex-start; align-items:center; gap:20px}
.ix-cabeca-ic{width:78px; height:78px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:8px !important;
  background:var(--ix-amarelo); color:var(--ix-tinta); box-shadow:0 10px 22px rgba(245,185,33,.3)}
.ix-cabeca-ic .ix-ic{width:42px; height:42px}
.ix-cabeca--escola h1{margin:0}
.ix-cabeca--escola .ix-sub{margin:6px 0 0; font-size:18px}
.ix-estado-vazio{display:flex; flex-direction:column; align-items:center; gap:16px; padding:46px 20px; text-align:center;
  background:rgba(255,255,255,.9); border:2px dashed var(--ix-borda); border-radius:8px !important}
.ix-estado-vazio .ix-grande{width:92px; height:92px; display:flex; align-items:center; justify-content:center; border-radius:8px !important;
  background:#e3effd; color:var(--ix-azul)}
.ix-estado-vazio .ix-grande .ix-ic{width:48px; height:48px}
.ix-estado-vazio h2{margin:0; font-size:24px; font-weight:800}
.ix-janela-corpo > .ix-sub{margin:0 0 10px; font-size:18px; font-weight:700}
@media (max-width:860px){
  .ix-cabeca-ic{width:60px; height:60px}
  .ix-abas .ix-aba{flex:1 1 calc(50% - 12px)}
}
.ix-aba--ativa b, .ix-abas > .ix-aba.ix-aba--ativa b{background:rgba(255,255,255,.25); color:#fff}
/* abas do diretor: a cor acompanha a situação */
.ix-abas > .ix-aba.ix-aba--atuais{--c:var(--ix-azul);      --cl:#e6edf8}
.ix-abas > .ix-aba.ix-aba--disponiveis{--c:var(--ix-ceu);  --cl:#e3effd}
.ix-abas > .ix-aba.ix-aba--associadas{--c:var(--ix-laranja); --cl:#ffe8d4}
.ix-abas > .ix-aba.ix-aba--contratadas{--c:var(--ix-turquesa); --cl:#dcf3ec}
.ix-abas > .ix-aba.ix-aba--anteriores{--c:var(--ix-rosa);  --cl:#fde3ee}
.ix-abas > .ix-aba--ativa.ix-aba--disponiveis, .ix-abas > .ix-aba--ativa.ix-aba--disponiveis .ix-ic{color:#fff}
/* situações do processo com as cores da logo (aba e selo iguais) */
.ix-abas > .ix-aba.ix-aba--preparacao{--c:var(--ix-amarelo); --cl:#fff4d6}
.ix-abas > .ix-aba.ix-aba--publicado{--c:var(--ix-ceu);      --cl:#e3effd}
.ix-abas > .ix-aba.ix-aba--andamento{--c:var(--ix-turquesa); --cl:#dcf3ec}
.ix-abas > .ix-aba.ix-aba--finalizado{--c:var(--ix-laranja); --cl:#ffe8d4}
.ix-abas > .ix-aba.ix-aba--arquivado{--c:var(--ix-rosa);     --cl:#fde3ee}
.ix-abas > .ix-aba--ativa.ix-aba--preparacao, .ix-abas > .ix-aba--ativa.ix-aba--preparacao .ix-ic{color:var(--ix-tinta)}
.ix-abas > .ix-aba--ativa.ix-aba--preparacao b{background:rgba(0,0,0,.12); color:var(--ix-tinta)}
.ix-abas > .ix-aba--ativa.ix-aba--publicado, .ix-abas > .ix-aba--ativa.ix-aba--publicado .ix-ic{color:#fff}
.ix-abas > .ix-aba--ativa.ix-aba--publicado b{background:rgba(255,255,255,.25); color:#fff}
.ix-sit--preparacao{--cor:#d39a06; --claro:#fff4d6}
.ix-sit--publicado{--cor:#2f7fd0; --claro:#e3effd}
.ix-sit--andamento{--cor:#22906f; --claro:#dcf3ec}
.ix-sit--finalizado{--cor:#e0700f; --claro:#ffe8d4}
.ix-sit--arquivado{--cor:#5b6573; --claro:#eef1f5}
.ix-corpo .marca-fundo{opacity:.1}
.ix-corpo .marca-fundo{background-position:center calc(100% - 50px); background-size:min(70vw, 820px) auto}
.ix-corpo .ix-processo, .ix-corpo .ix-vaga, .ix-corpo .ix-bloco{background:rgba(255,255,255,.93)}

/* =====================================================================
   v4 — bordas escuras (nada cinza) e telas novas
   ===================================================================== */
:root{--ix-borda:#1d2a3f; --ix-trilho:#cfe0f5}
.ix-passos li::before{background:var(--ix-trilho)}
.ix-botao--claro{border-color:var(--ix-azul)}
.ix-botao--claro:hover{background:#eef4fc}
.ix-botao--perigo{border-color:#c0262d}
.ix-botao--rosa{border-color:var(--ix-rosa)}
.ix-aba:hover{border-color:var(--c, var(--ix-azul))}
.ix-agora-caixa{border-color:var(--ix-amarelo)}
.ix-form .srv-campo input, .ix-form .srv-campo select, .ix-form .srv-campo textarea,
.ix-corpo .srv-campo input, .ix-corpo .srv-campo select, .ix-corpo .srv-campo textarea{border:2px solid var(--ix-borda)}
.ix-bloco{border-width:2px}
.ix-estado-vazio{border-style:solid}
.ix-form textarea{width:100%; font:inherit; min-height:130px; resize:vertical}
.ix-corpo .srv-topo-nav a, .ix-corpo .srv-topo-nav .srv-link{border-color:var(--ix-borda)}
.ix-corpo .srv-topo-nav{gap:4px}
.ix-corpo .srv-topo-nav a, .ix-corpo .srv-topo-nav .srv-link{padding:10px 16px 16px}

/* chips novos */
.ix-chip--outra{background:#fff1e3; color:#9a4a00; border:2px solid var(--ix-laranja)}
.ix-chip--colab{background:#e3effd; color:#163a75}
.ix-chip--titular{background:#dcf3ec; color:#14614c}

/* atalhos do diretor */
.ix-atalhos{display:grid; grid-template-columns:repeat(auto-fit, minmax(210px, 1fr)); gap:14px; margin:0 0 24px}
.ix-atalho{position:relative; display:flex; align-items:center; gap:16px; min-height:92px; padding:16px 20px; text-align:left; cursor:pointer;
  background:#fff; border:2px solid var(--ix-borda); border-bottom:6px solid var(--c); border-radius:8px !important; font:inherit;
  font-size:20px; color:var(--ix-tinta); text-decoration:none; transition:transform .1s, box-shadow .1s}
.ix-atalho:hover{transform:translateY(-2px); box-shadow:0 12px 24px rgba(31,78,156,.12)}
.ix-atalho:focus-visible{outline:4px solid var(--ix-amarelo); outline-offset:3px}
.ix-atalho b{font-weight:800}
.ix-atalho-ic{width:58px; height:58px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:8px !important;
  background:var(--c); color:#fff}
.ix-atalho-ic .ix-ic{width:32px; height:32px}
.ix-atalho em{position:absolute; top:10px; right:12px; min-width:30px; height:30px; padding:0 8px; display:flex; align-items:center;
  justify-content:center; border-radius:6px !important; background:var(--ix-rosa); color:#fff; font-style:normal; font-weight:800; font-size:16px}
.ix-atalho--rosa{--c:var(--ix-rosa)}
.ix-atalho--amarelo{--c:var(--ix-amarelo)}
.ix-atalho--amarelo .ix-atalho-ic{color:var(--ix-tinta)}
.ix-atalho--turquesa{--c:var(--ix-turquesa)}
.ix-atalho--azul{--c:var(--ix-azul)}

/* arquivados por chamada */
.ix-dobra{margin:0 0 14px; background:rgba(255,255,255,.95); border:2px solid var(--ix-borda); border-radius:8px !important}
.ix-dobra > summary{display:flex; align-items:center; gap:14px; min-height:68px; padding:12px 20px; cursor:pointer; list-style:none;
  font-size:20px; font-weight:800}
.ix-dobra > summary::-webkit-details-marker{display:none}
.ix-dobra > summary > .ix-ic:first-child{color:var(--ix-rosa)}
.ix-dobra > summary span{flex:1}
.ix-dobra > summary b{min-width:36px; height:36px; display:flex; align-items:center; justify-content:center; border-radius:6px !important;
  background:#fde3ee; font-size:17px}
.ix-dobra-seta{transition:transform .15s}
.ix-dobra[open] .ix-dobra-seta{transform:rotate(90deg)}
.ix-dobra > .ix-vagas{padding:0 16px 16px}

/* escolas */
.ix-escolas{display:grid; grid-template-columns:repeat(auto-fill, minmax(330px, 1fr)); gap:16px}
.ix-escola{display:flex; flex-direction:column; gap:14px; padding:20px; background:rgba(255,255,255,.95); border:2px solid var(--ix-borda);
  border-top:8px solid var(--ix-amarelo); border-radius:8px !important}
.ix-escola-topo{display:flex; flex-direction:column; gap:10px; align-items:flex-start}
.ix-escola h3{margin:0; font-size:21px; line-height:1.25; font-weight:800}
.ix-dados{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; font-size:17px}
.ix-dados li{display:flex; gap:10px; align-items:flex-start}
.ix-dados .ix-ic{width:22px; height:22px; color:var(--ix-azul); margin-top:1px}
.ix-dados span{word-break:break-word}
.ix-escola-pe{display:flex; flex-wrap:wrap; gap:10px; align-items:center; justify-content:space-between; margin-top:auto}
.ix-faixa-alerta{display:flex; align-items:center; gap:12px; margin:0 0 16px; padding:14px 16px; border-radius:6px !important;
  background:#fff1e3; border:2px solid var(--ix-laranja); font-size:18px; font-weight:800}
.ix-faixa-alerta .ix-ic{color:var(--ix-laranja); width:28px; height:28px}
.ix-ciente{display:flex; align-items:center; gap:12px; margin:16px 0 0; font-size:18px; font-weight:800}
.ix-ciente input{width:26px; height:26px}
.ix-form--escola + .ix-form--escola{margin-top:22px; padding-top:22px; border-top:2px solid var(--ix-borda)}
.ix-form--escola h3{margin:0 0 12px; font-size:20px}
.ix-form--escola .ix-linha2{margin:12px 0}

/* avisos */
.ix-avisos{display:grid; grid-template-columns:repeat(auto-fill, minmax(320px, 1fr)); gap:16px}
.ix-avisos--leitura{grid-template-columns:1fr}
.ix-aviso{display:flex; flex-direction:column; gap:10px; padding:20px; background:#fff; border:2px solid var(--ix-borda);
  border-top:8px solid var(--ix-rosa); border-radius:8px !important}
.ix-aviso h3{margin:0; font-size:21px; font-weight:800}
.ix-aviso-texto{margin:0; font-size:17px; line-height:1.55; white-space:pre-line}
.ix-aviso-acoes{margin-top:auto}
.ix-desligado{display:flex; align-items:center; justify-content:center; gap:12px; padding:30px 10px; font-size:20px; font-weight:800}
.ix-desligado .ix-ic{width:32px; height:32px; color:var(--ix-rosa)}

/* chaves liga/desliga (meus e-mails) */
.ix-chaves{display:flex; flex-direction:column; gap:10px; margin:0 0 18px}
.ix-chave{position:relative; display:flex; align-items:center; gap:14px; min-height:64px; padding:10px 16px; cursor:pointer;
  border:2px solid var(--ix-borda); border-radius:8px !important; background:#fff; font-size:18px}
.ix-chave input{position:absolute; opacity:0; width:1px; height:1px}
.ix-chave-ic{width:42px; height:42px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:6px !important;
  background:#e3effd; color:var(--ix-azul)}
.ix-chave b{flex:1; font-weight:800}
.ix-chave i{position:relative; width:56px; height:32px; flex:none; border-radius:16px !important; background:#d5dbe3; transition:background .15s}
.ix-chave i::after{content:""; position:absolute; top:4px; left:4px; width:24px; height:24px; border-radius:12px !important; background:#fff;
  box-shadow:0 1px 3px rgba(0,0,0,.3); transition:left .15s}
.ix-chave input:checked ~ i{background:var(--ix-verde)}
.ix-chave input:checked ~ i::after{left:28px}
.ix-chave input:checked ~ .ix-chave-ic{background:var(--ix-turquesa); color:#fff}
.ix-chave input:focus-visible ~ i{outline:4px solid var(--ix-amarelo); outline-offset:2px}
.ix-chave--so{align-self:end}

/* escolher escolas */
.ix-escolher{margin:16px 0 0; padding:0; border:0}
.ix-escolher legend{font-size:16px; font-weight:800; margin-bottom:8px}
.ix-escolher-lista{display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:8px; max-height:300px; overflow:auto;
  padding:10px; border:2px solid var(--ix-borda); border-radius:6px !important}
.ix-escolher-lista label{display:flex; align-items:center; gap:10px; padding:8px; font-size:16px; border-radius:6px !important; cursor:pointer}
.ix-escolher-lista label:hover{background:#eef4fc}
.ix-escolher-lista input{width:22px; height:22px; flex:none}
.ix-escolher-lista small{display:block; font-size:13px}

/* admin: inspeção e escolas */
.ix-adm{font-size:17px; color:var(--ix-tinta)}
.ix-colabs{display:flex; flex-direction:column; gap:10px}
.ix-colab{display:grid; grid-template-columns:48px 1fr auto auto; gap:14px; align-items:center; padding:12px 16px;
  border:2px solid var(--ix-borda); border-radius:8px !important}
.ix-colab-ic{width:48px; height:48px; display:flex; align-items:center; justify-content:center; border-radius:6px !important;
  background:var(--ix-ceu); color:#fff}
.ix-colab b{display:block; font-size:18px}
.ix-tabela{display:flex; flex-direction:column}
.ix-tabela-linha{display:grid; grid-template-columns:1fr minmax(220px, 300px) auto; gap:12px; align-items:center; padding:10px 0;
  border-bottom:1px solid var(--ix-borda); margin:0}
.ix-tabela-linha:last-child{border-bottom:0}
.ix-tabela-nome{display:flex; flex-wrap:wrap; gap:8px; align-items:center}
.ix-tabela-linha select{min-height:48px; font-size:16px; border:2px solid var(--ix-borda); border-radius:6px !important; padding:6px 10px; background:#fff}
@media (max-width:860px){
  .ix-colab{grid-template-columns:48px 1fr}
  .ix-tabela-linha{grid-template-columns:1fr}
  .ix-atalho{min-height:78px; font-size:18px}
}
.ix-corpo .srv-topo{flex-wrap:wrap; row-gap:0}
.ix-corpo .srv-topo-nav{margin-left:auto; flex-wrap:nowrap}
.ix-corpo .srv-topo-nav a, .ix-corpo .srv-topo-nav .srv-link{padding:10px 14px 16px; gap:8px; white-space:nowrap}
@media (max-width:1100px){ .ix-corpo .srv-topo-nav{flex-wrap:wrap; margin-left:0} }
@media (max-width:860px){ .ix-corpo .srv-topo{position:relative} }

/* =====================================================================
   v5 — bordas cinza bem leves; início do diretor em cartões grandes; foto
   ===================================================================== */
:root{--ix-borda:#e3e9f1}
.ix-botao--claro{border-color:#c9d8ec}
.ix-botao--perigo{border-color:#ecb6b8}
.ix-botao--rosa{border-color:#f3bfd7}
.ix-form .srv-campo input, .ix-form .srv-campo select, .ix-form .srv-campo textarea,
.ix-corpo .srv-campo input, .ix-corpo .srv-campo select, .ix-corpo .srv-campo textarea{border:2px solid #d6dee9}
.ix-escolher-lista, .ix-tabela-linha select{border-color:#d6dee9}
.ix-agora-caixa{border-color:#f7e2a8}
.ix-chip--outra{border-color:#f9c99b}
.ix-bloco{border-width:1px}
.ix-estado-vazio{border-style:dashed}

/* início do diretor: três cartões grandes e quadrados */
.ix-cartoes{display:grid; grid-template-columns:repeat(3, 1fr); gap:22px; margin:6px 0 10px}
.ix-cartao{position:relative; aspect-ratio:1 / 1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:22px;
  padding:24px; text-decoration:none; color:var(--ix-tinta); background:rgba(255,255,255,.96); border:1px solid var(--ix-borda);
  border-bottom:10px solid var(--c); border-radius:10px !important; box-shadow:0 2px 6px rgba(16,24,40,.04), 0 18px 40px rgba(31,78,156,.08);
  transition:transform .12s, box-shadow .12s}
.ix-cartao:hover{transform:translateY(-4px); box-shadow:0 22px 44px rgba(31,78,156,.16)}
.ix-cartao:focus-visible{outline:5px solid var(--ix-amarelo); outline-offset:4px}
.ix-cartao-ic{width:min(42%, 150px); aspect-ratio:1 / 1; display:flex; align-items:center; justify-content:center; border-radius:10px !important;
  background:var(--c); color:#fff}
.ix-cartao-ic .ix-ic{width:56%; height:56%; stroke-width:1.8}
.ix-cartao b{font-size:clamp(24px, 2.6vw, 34px); font-weight:800; text-align:center; line-height:1.15}
.ix-cartao em{position:absolute; top:16px; right:16px; min-width:44px; height:44px; padding:0 12px; display:flex; align-items:center;
  justify-content:center; border-radius:8px !important; background:var(--c); color:#fff; font-style:normal; font-weight:800; font-size:22px}
.ix-cartao--azul{--c:var(--ix-azul)}
.ix-cartao--amarelo{--c:var(--ix-amarelo)}
.ix-cartao--amarelo .ix-cartao-ic, .ix-cartao--amarelo em{color:var(--ix-tinta)}
.ix-cartao--rosa{--c:var(--ix-rosa)}
@media (max-width:860px){
  .ix-cartoes{grid-template-columns:1fr; gap:14px}
  .ix-cartao{aspect-ratio:auto; flex-direction:row; justify-content:flex-start; min-height:130px; padding:18px 22px}
  .ix-cartao-ic{width:84px}
  .ix-cartao b{font-size:24px; text-align:left}
}

/* foto da escola no lugar do ícone */
.ix-cabeca--escola .ix-cabeca-ic{display:none}
.ix-foto{position:relative; flex:none; width:96px; height:96px; padding:0; cursor:pointer; overflow:hidden; display:flex; align-items:center;
  justify-content:center; background:#eef2f7; color:#7a8797; border:1px solid var(--ix-borda); border-radius:10px !important}
.ix-foto img{width:100%; height:100%; object-fit:cover; display:block}
.ix-foto > .ix-ic{width:48px; height:48px; stroke-width:1.6}
.ix-foto-cam{position:absolute; right:6px; bottom:6px; width:32px; height:32px; display:flex; align-items:center; justify-content:center;
  border-radius:6px !important; background:rgba(255,255,255,.95); color:var(--ix-azul); box-shadow:0 2px 6px rgba(0,0,0,.18)}
.ix-foto-cam .ix-ic{width:20px; height:20px}
.ix-foto:hover{box-shadow:0 0 0 4px rgba(62,142,222,.25)}
.ix-foto:focus-visible{outline:4px solid var(--ix-amarelo); outline-offset:3px}
.ix-foto--grande{width:260px; height:200px}
.ix-foto--grande > .ix-ic{width:84px; height:84px}
.ix-foto-grande{position:relative; display:block; width:100%; padding:0; border:0; cursor:zoom-in; background:#f2f5f9; border-radius:8px !important; overflow:hidden}
.ix-foto-grande img{display:block; width:100%; max-height:60vh; object-fit:contain}
.ix-foto-grande .ix-foto-cam{width:44px; height:44px; right:12px; bottom:12px}
.ix-foto-vazia{display:flex; align-items:center; justify-content:center; height:260px; background:#f2f5f9; color:#7a8797; border-radius:8px !important}
.ix-foto-vazia .ix-ic{width:110px; height:110px; stroke-width:1.4}
.ix-foto-acoes{margin-top:18px}
.ix-foto-acoes form{margin:0}
.ix-foto-acoes label.ix-botao{position:relative; overflow:hidden}
.ix-arquivo{position:absolute; inset:0; opacity:0; cursor:pointer; font-size:0}
dialog.ix-janela--cheia{width:100vw; height:100vh; max-width:100vw; max-height:100vh; margin:0; padding:0; background:#0b0f16; border-radius:0 !important}
dialog.ix-janela--cheia img{width:100%; height:100%; object-fit:contain; display:block}
dialog.ix-janela--cheia .ix-fechar{position:fixed; top:16px; right:16px; z-index:2}

/* minha escola */
.ix-minha{display:flex; gap:28px; align-items:flex-start}
.ix-minha-dados{flex:1; min-width:0}
.ix-minha-dados h2{margin:0 0 14px; font-size:26px; font-weight:800}
.ix-dados--grande{font-size:19px; gap:12px}
.ix-minha-acoes{margin-top:18px}
.ix-minha-acoes form{margin:0}
.ix-config{display:grid; grid-template-columns:1.3fr 1fr; gap:22px; align-items:start}
.ix-escola-foto{width:calc(100% + 40px); margin:-20px -20px 0; height:160px; object-fit:cover; border-radius:8px 8px 0 0 !important}
.ix-escola:has(.ix-escola-foto){border-top-width:1px}
@media (max-width:860px){
  .ix-minha{flex-direction:column}
  .ix-foto--grande{width:100%; height:220px}
  .ix-config{grid-template-columns:1fr}
  .ix-foto{width:76px; height:76px}
}
/* menu do diretor com as mesmas cores dos cartões do início */
.ix-corpo .ix-nav-diretor > :nth-child(1){--c:var(--ix-azul)}
.ix-corpo .ix-nav-diretor > :nth-child(2){--c:var(--ix-amarelo)}
.ix-corpo .ix-nav-diretor > :nth-child(3){--c:var(--ix-rosa)}
.ix-corpo .ix-nav-diretor > :nth-child(4){--c:var(--ix-turquesa)}
.ix-corpo .ix-nav-diretor > :nth-child(2).ix-nav--ativo{color:var(--ix-tinta) !important}
.ix-corpo .ix-nav-diretor > :nth-child(2).ix-nav--ativo .ix-ic{color:var(--ix-tinta)}

/* =====================================================================
   v6 — validar / divulgar com segurança; página pública de vagas
   ===================================================================== */
.ix-chip--agenda{background:#fff1e3; color:#9a4a00}

/* escolhas grandes (validar / agendar) */
.ix-opcao{position:relative; display:flex; align-items:center; gap:16px; width:100%; min-height:76px; margin:0 0 12px; padding:12px 18px;
  cursor:pointer; text-align:left; font:inherit; font-size:20px; color:var(--ix-tinta); background:#fff;
  border:2px solid var(--ix-borda); border-radius:8px !important}
.ix-opcao b{font-weight:800}
.ix-opcao input{position:absolute; opacity:0; width:1px; height:1px}
.ix-opcao-ic{width:50px; height:50px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:8px !important;
  background:var(--c); color:#fff}
.ix-opcao-ic .ix-ic{width:28px; height:28px}
.ix-opcao:hover{box-shadow:0 8px 20px rgba(31,78,156,.12)}
.ix-opcao:has(input:checked){background:color-mix(in srgb, var(--c) 10%, #fff); border-color:var(--c)}
.ix-opcao:has(input:focus-visible){outline:4px solid var(--ix-amarelo); outline-offset:2px}
.ix-opcao--verde{--c:var(--ix-verde)}
.ix-opcao--azul{--c:var(--ix-azul)}
.ix-opcao--laranja{--c:var(--ix-laranja)}
.ix-validar{margin-top:4px}
.ix-quando{margin:0 0 14px}

/* popup de divulgação */
.ix-divulgar{padding:22px 24px 26px}
.ix-divulgar-topo{display:flex; align-items:center; gap:16px; margin-bottom:18px}
.ix-divulgar-topo > div{flex:1}
.ix-divulgar-topo h2{margin:0; font-size:26px; font-weight:800}
.ix-divulgar-topo .ix-sub{margin:4px 0 0; font-size:18px}
.ix-divulgar-topo .ix-grande{width:72px; height:72px; flex:none; display:flex; align-items:center; justify-content:center;
  border-radius:8px !important; background:var(--ix-verde); color:#fff}
.ix-divulgar-topo .ix-grande .ix-ic{width:40px; height:40px}
.ix-impacto{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:16px}
.ix-impacto-item{display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:14px; align-items:center;
  padding:16px 18px; border-radius:8px !important; background:var(--cl); border:1px solid var(--ix-borda)}
.ix-impacto-item .ix-ic{grid-row:1 / 3; width:40px; height:40px; color:var(--c)}
.ix-impacto-item b{font-size:30px; line-height:1; font-weight:800}
.ix-impacto-item span{font-size:16px; font-weight:700}
.ix-impacto--todos{--c:var(--ix-azul); --cl:#e6edf8}
.ix-impacto--email{--c:var(--ix-rosa); --cl:#fde3ee}
.ix-impacto--sem{--c:#7a8797; --cl:#f2f5f9}
.ix-previa{margin:0 0 16px; border:1px solid var(--ix-borda); border-radius:8px !important; background:#fff}
.ix-previa > summary{display:flex; align-items:center; gap:12px; min-height:56px; padding:8px 16px; cursor:pointer; list-style:none;
  font-size:18px; font-weight:800}
.ix-previa > summary::-webkit-details-marker{display:none}
.ix-previa > summary span, .ix-previa > summary .ix-dobra-seta{margin-left:auto}
.ix-previa[open] .ix-dobra-seta{transform:rotate(90deg)}
.ix-previa iframe{display:block; width:100%; height:420px; border:0; border-top:1px solid var(--ix-borda)}
.ix-ciente--grande{min-height:60px; margin:0 0 14px; padding:12px 16px; border-radius:8px !important; background:#fffaf0;
  border:2px solid #f7e2a8; font-size:19px; cursor:pointer}
.ix-senha{display:block; margin:0 0 18px}
.ix-senha span{font-size:16px; font-weight:800}
.ix-senha input{width:100%; min-height:58px; font-size:20px; padding:10px 14px; border:2px solid #d6dee9; border-radius:6px !important}
.ix-divulgar-botoes{justify-content:flex-end}
.ix-divulgar-botoes .ix-botao[disabled]{opacity:.55; cursor:not-allowed; filter:grayscale(.3)}
.ix-conta:empty{display:none}
.ix-conta{display:inline-flex; min-width:30px; height:30px; align-items:center; justify-content:center; border-radius:6px !important;
  background:rgba(255,255,255,.25)}
@media (max-width:640px){ .ix-impacto{grid-template-columns:1fr} }

/* página pública */
.ix-publico .srv-topo{padding-bottom:14px}
.ix-publico .srv-marca{padding-bottom:0}
.ix-publicas{display:grid; grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); gap:14px}
.ix-publica{display:flex; flex-direction:column; gap:12px; padding:18px; background:#fff; border:1px solid var(--ix-borda);
  border-top:6px solid var(--ix-ceu); border-radius:8px !important}
.ix-publica h3{margin:0; font-size:21px; font-weight:800}
.ix-filtro-cargo{display:flex; gap:12px; align-items:flex-end; flex-wrap:wrap}
.ix-filtro-cargo .srv-campo{margin:0}
.ix-filtro-cargo select{min-height:56px; font-size:18px; padding:8px 12px; border:2px solid #d6dee9; border-radius:6px !important; background:#fff; max-width:80vw}
.ix-filtro-cargo .srv-campo span{font-size:16px; font-weight:800}
.ix-bloco > h2 .ix-chip{margin-left:6px}

/* =====================================================================
   v7 — estatísticas
   ===================================================================== */
.ix-numeros-grandes{display:grid; grid-template-columns:repeat(auto-fit, minmax(170px, 1fr)); gap:14px; margin:0 0 22px}
.ix-numero{display:flex; flex-direction:column; gap:6px; padding:18px 20px; background:#fff; border:1px solid var(--ix-borda);
  border-top:6px solid var(--c); border-radius:8px !important}
.ix-numero b{font-size:40px; line-height:1; font-weight:800; color:var(--ix-tinta); font-variant-numeric:tabular-nums}
.ix-numero span{font-size:16px; font-weight:700; color:var(--ix-tinta)}
.ix-numero--azul{--c:var(--ix-azul)} .ix-numero--ceu{--c:var(--ix-ceu)} .ix-numero--laranja{--c:var(--ix-laranja)}
.ix-numero--turquesa{--c:var(--ix-turquesa)} .ix-numero--amarelo{--c:var(--ix-amarelo)} .ix-numero--rosa{--c:var(--ix-rosa)}
.ix-estat-grade{display:grid; grid-template-columns:1fr 1fr; gap:0 22px}
.ix-estat-largo{grid-column:1 / -1}
.ix-barras{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px}
.ix-barras li{display:grid; grid-template-columns:minmax(120px, 38%) 1fr 56px; gap:12px; align-items:center; font-size:16px}
.ix-barras-rot{font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.ix-barras-trilho{width:100%; height:18px; display:block}
.ix-barras-fundo{fill:#eef2f7}
.ix-barras-valor{fill:var(--ix-azul)}
.ix-barras li:hover .ix-barras-valor{fill:var(--ix-ceu)}
.ix-barras b{text-align:right; font-size:18px; font-variant-numeric:tabular-nums}
.ix-tabela-num{width:100%; border-collapse:collapse; font-size:16px}
.ix-tabela-num th, .ix-tabela-num td{padding:10px 8px; text-align:right; border-bottom:1px solid var(--ix-borda)}
.ix-tabela-num th:first-child, .ix-tabela-num td:first-child{text-align:left}
.ix-tabela-num th{font-weight:800}
.ix-tabela-num td{font-variant-numeric:tabular-nums}
@media (max-width:860px){ .ix-estat-grade{grid-template-columns:1fr} .ix-barras li{grid-template-columns:1fr 48px} .ix-barras-trilho{grid-column:1 / -1; grid-row:2} .ix-barras b{grid-row:1; grid-column:2} }

/* v8 — tipo de chamada */
.ix-tipo{display:inline-flex; align-items:center; gap:8px; align-self:flex-start; padding:7px 14px; border-radius:6px !important;
  font-size:16px; font-weight:800}
.ix-tipo .ix-ic{width:20px; height:20px}
.ix-tipo--regular{background:#e6edf8; color:#163a75}
.ix-tipo--chamadao{background:#ffe8d4; color:#9a4a00}
.ix-tipos{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:16px 0 0}
.ix-tipos .ix-opcao{margin:0}
@media (max-width:640px){ .ix-tipos{grid-template-columns:1fr} }

/* =====================================================================
   v9 — início da inspeção, menu longo, números coloridos
   ===================================================================== */
.ix-cartao--turquesa{--c:var(--ix-turquesa)}
.ix-cartao--laranja{--c:var(--ix-laranja)}
.ix-foto--icone{cursor:default; background:#e3effd; color:var(--ix-azul)}
.ix-foto--icone:hover{box-shadow:none}

/* menu do diretor: Início, Vagas, Minha escola, Configurações, Ajuda */
.ix-corpo .ix-nav-diretor > :nth-child(1){--c:#163a75}
.ix-corpo .ix-nav-diretor > :nth-child(2){--c:var(--ix-azul)}
.ix-corpo .ix-nav-diretor > :nth-child(3){--c:var(--ix-amarelo)}
.ix-corpo .ix-nav-diretor > :nth-child(4){--c:var(--ix-rosa)}
.ix-corpo .ix-nav-diretor > :nth-child(5){--c:var(--ix-turquesa)}
.ix-corpo .ix-nav-diretor > :nth-child(2).ix-nav--ativo, .ix-corpo .ix-nav-diretor > :nth-child(2).ix-nav--ativo .ix-ic{color:#fff !important}
.ix-corpo .ix-nav-diretor > :nth-child(3).ix-nav--ativo, .ix-corpo .ix-nav-diretor > :nth-child(3).ix-nav--ativo .ix-ic{color:var(--ix-tinta) !important}

/* menu da inspeção (muitos itens): mais compacto e com as cores dos cartões */
.ix-corpo .ix-nav-longo{gap:3px}
.ix-corpo .ix-nav-longo a, .ix-corpo .ix-nav-longo .srv-link{padding:10px 11px 14px; font-size:16px; gap:7px; min-height:52px}
.ix-corpo .ix-nav-longo .ix-ic{width:21px; height:21px}
.ix-corpo .ix-nav-longo > :nth-child(1){--c:#163a75}
.ix-corpo .ix-nav-longo > :nth-child(2){--c:var(--ix-azul)}
.ix-corpo .ix-nav-longo > :nth-child(3){--c:var(--ix-turquesa)}
.ix-corpo .ix-nav-longo > :nth-child(4){--c:var(--ix-laranja)}
.ix-corpo .ix-nav-longo > :nth-child(5){--c:var(--ix-rosa)}
.ix-corpo .ix-nav-longo > :nth-child(6){--c:var(--ix-amarelo)}
.ix-corpo .ix-nav-longo > :nth-child(7){--c:var(--ix-ceu)}
.ix-corpo .ix-nav-longo > :nth-child(8){--c:var(--ix-verde)}
.ix-corpo .ix-nav-longo > :nth-child(9){--c:var(--ix-laranja)}
.ix-corpo .ix-nav-longo > :nth-child(10){--c:var(--ix-turquesa)}
.ix-corpo .ix-nav-longo > :nth-child(6).ix-nav--ativo, .ix-corpo .ix-nav-longo > :nth-child(6).ix-nav--ativo .ix-ic{color:var(--ix-tinta) !important}
.ix-corpo .ix-nav-longo > form .srv-link{--c:#c0262d}
@media (max-width:1400px){ .ix-corpo .ix-nav-longo{flex-wrap:wrap; margin-left:0; justify-content:flex-start} }

/* estatísticas: cartão inteiro colorido */
.ix-numero{background:var(--c); border:0; border-top:0}
.ix-numero b, .ix-numero span{color:#fff}
.ix-numero--amarelo b, .ix-numero--amarelo span{color:var(--ix-tinta)}
.ix-corpo .ix-nav-longo a, .ix-corpo .ix-nav-longo .srv-link{padding:10px 9px 14px; font-size:15px; gap:6px}
.ix-corpo .ix-nav-longo .ix-ic{width:19px; height:19px}
.ix-corpo .ix-nav-longo{gap:2px}
.ix-corpo .ix-nav-longo a, .ix-corpo .ix-nav-longo .srv-link{padding:10px 8px 14px}
@media (min-width:861px){ .ix-corpo .ix-nav-longo .ix-nav-txt{display:none} }

/* =====================================================================
   v10 — nome no topo, cartões de vaga com janela, busca, avisos em passos
   ===================================================================== */
/* marca: perfil + nome resumido */
.ix-marca-txt{display:flex; flex-direction:column; line-height:1.1}
.ix-corpo .srv-marca .ix-marca-txt b{font-size:23px; font-weight:800; color:var(--ix-tinta)}
.ix-corpo .srv-marca .ix-marca-txt small{font-size:15px; font-weight:700; color:var(--ix-tinta); margin-top:3px;
  max-width:260px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}

/* cartões do início: subtítulo pequeno; versão com dois */
.ix-cartao small{font-size:17px; font-weight:700; text-align:center; color:var(--ix-tinta); max-width:90%;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; margin-top:-12px}
button.ix-cartao{font:inherit; cursor:pointer; width:100%}
.ix-cartoes--2{grid-template-columns:repeat(2, minmax(0, 360px)); justify-content:center}
@media (max-width:860px){ .ix-cartao small{text-align:left; margin-top:0} .ix-cartao{flex-wrap:wrap} .ix-cartoes--2{grid-template-columns:1fr} }

/* cabeçalho com busca */
.ix-cabeca--vagas{align-items:center}
.ix-cabeca--vagas h1{margin:0}
.ix-barra{display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:0}
.ix-busca{display:flex; align-items:center; gap:10px; min-width:min(380px, 100%); min-height:60px; padding:0 16px; background:#fff;
  border:2px solid #d6dee9; border-radius:8px !important}
.ix-busca:focus-within{border-color:var(--ix-ceu); box-shadow:0 0 0 4px rgba(62,142,222,.15)}
.ix-busca .ix-ic{width:24px; height:24px; color:var(--ix-azul)}
.ix-busca input{flex:1; border:0; outline:0; background:transparent; font:inherit; font-size:18px; color:var(--ix-tinta); min-width:0}
.ix-barra .ix-botao{min-height:60px}

/* cartões de vaga */
.ix-vcs{display:grid; grid-template-columns:repeat(auto-fill, minmax(290px, 1fr)); gap:14px}
.ix-vc{position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:18px 20px; text-align:left; cursor:pointer;
  font:inherit; color:var(--ix-tinta); background:rgba(255,255,255,.97); border:1px solid var(--ix-borda); border-radius:10px !important;
  box-shadow:0 2px 6px rgba(16,24,40,.04), 0 10px 24px rgba(31,78,156,.06); transition:transform .12s, box-shadow .12s}
.ix-vc:hover{transform:translateY(-3px); box-shadow:0 18px 36px rgba(31,78,156,.14)}
.ix-vc:focus-visible{outline:4px solid var(--ix-amarelo); outline-offset:3px}
.ix-vc[hidden], .ix-escola[hidden], .ix-vaga[hidden], details[hidden], section[hidden]{display:none !important}
.ix-vc-topo{display:flex; width:100%; align-items:center; justify-content:space-between; gap:10px}
.ix-vc-topo .ix-estado{min-width:0; padding:6px 12px; font-size:15px}
.ix-vc-num{display:inline-flex; align-items:center; padding:5px 12px; border-radius:6px !important; background:var(--ix-azul); color:#fff;
  font-size:15px; font-weight:800; letter-spacing:.3px; font-variant-numeric:tabular-nums}
.ix-vc-num--grande{font-size:16px; margin-bottom:8px}
.ix-vc-cargo{font-size:21px; font-weight:800; line-height:1.25}
.ix-vc-linha{display:flex; align-items:center; gap:8px; font-size:16px}
.ix-vc-linha .ix-ic{width:20px; height:20px; color:var(--ix-azul); flex:none}
.ix-vc .ix-linha2{margin-top:2px}
.ix-vc-dados li{align-items:flex-start}
.ix-vc-dados small{display:block; font-size:14px; font-weight:800; color:var(--ix-tinta); opacity:.75}
.ix-vc-acoes{margin-top:18px}
.ix-janela-topo > div h2{margin:0}
.ix-vaga .ix-vc-num{margin-bottom:8px}

/* escolas: cartão clicável e perfil na janela */
.ix-escola--botao{font:inherit; color:var(--ix-tinta); text-align:left; cursor:pointer; padding:0; overflow:hidden; gap:0;
  border-top:1px solid var(--ix-borda) !important; transition:transform .12s, box-shadow .12s}
.ix-escola--botao:hover{transform:translateY(-3px); box-shadow:0 18px 36px rgba(31,78,156,.14)}
.ix-escola--botao .ix-escola-foto{width:100%; margin:0; height:150px; border-radius:0 !important}
.ix-escola-semfoto{display:flex; align-items:center; justify-content:center; height:110px; background:#f2f5f9; color:#9aa6b5}
.ix-escola-semfoto .ix-ic{width:54px; height:54px; stroke-width:1.5}
.ix-escola-corpo{display:flex; flex-direction:column; gap:10px; padding:16px 18px 18px}
.ix-escola-nome{font-size:20px; font-weight:800; line-height:1.25}
.ix-perfil-escola{display:grid; grid-template-columns:240px 1fr; gap:22px; align-items:start}
.ix-perfil-foto{width:100%; height:180px; object-fit:cover; border-radius:8px !important; display:block}
.ix-perfil-foto--vazia{display:flex; align-items:center; justify-content:center; background:#f2f5f9; color:#9aa6b5}
.ix-perfil-foto--vazia .ix-ic{width:70px; height:70px; stroke-width:1.4}
.ix-editar-escola{margin-top:20px}
.ix-editar-form{padding:4px 16px 16px}
@media (max-width:640px){ .ix-perfil-escola{grid-template-columns:1fr} }

/* aviso em passos */
.ix-passo{display:flex; align-items:center; gap:10px; margin:18px 0 10px; font-size:18px; font-weight:800}
.ix-passo:first-of-type{margin-top:0}
.ix-passo span{width:32px; height:32px; display:flex; align-items:center; justify-content:center; border-radius:6px !important;
  background:var(--ix-azul); color:#fff; font-size:16px}
.ix-tipos--3{grid-template-columns:repeat(3, 1fr); margin:0}
.ix-escolher-topo{display:flex; justify-content:flex-end; margin-bottom:8px}
.ix-ate{max-width:260px}
.ix-dica-email{margin:10px 0 0; font-size:17px; font-weight:700}
.ix-dica-email span{display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border-radius:6px !important}
.ix-dica-email .ix-ic{width:20px; height:20px}
.ix-dica-off{background:#f2f5f9}
.ix-dica-on{background:#dcf3ec; display:none !important}
.ix-aviso-form:has(input[name=email]:checked) .ix-dica-off{display:none !important}
.ix-aviso-form:has(input[name=email]:checked) .ix-dica-on{display:inline-flex !important}
.ix-aviso--admin{border-top-color:var(--ix-azul)}
@media (max-width:640px){ .ix-tipos--3{grid-template-columns:1fr} }
.ix-cabeca--vagas{flex-wrap:nowrap; gap:20px}
.ix-cabeca--vagas .ix-barra{flex:1; justify-content:flex-end; flex-wrap:nowrap}
.ix-cabeca--vagas .ix-busca{flex:1; max-width:440px; min-width:220px}
@media (max-width:980px){
  .ix-cabeca--vagas{flex-wrap:wrap}
  .ix-cabeca--vagas .ix-barra{flex-wrap:wrap; justify-content:flex-start; width:100%}
  .ix-cabeca--vagas .ix-busca{max-width:none; flex-basis:100%}
}

/* =====================================================================
   v11 — número em destaque, data de início, inspeção responsável
   ===================================================================== */
.ix-vc-num{font-size:20px; padding:6px 14px; letter-spacing:.5px; box-shadow:0 4px 10px rgba(31,78,156,.22)}
.ix-vc-num--grande{font-size:22px}
.ix-vaga .ix-vc-num{font-size:18px}
.ix-vc-insp{display:inline-flex; align-items:center; gap:5px; margin-top:2px; font-size:13px; font-weight:700; color:var(--ix-tinta); opacity:.72}
.ix-vc-insp .ix-ic{width:15px; height:15px}
.ix-vaga .ix-vc-insp{margin-top:8px}

/* data (início, conferido): azul claro com o ícone num quadradinho */
.ix-chip--data{background:#eef4fc; color:#163a75; border:1px solid #d3e2f6; padding:5px 12px 5px 6px; font-weight:800}
.ix-chip--data .ix-ic{width:26px; height:26px; padding:4px; border-radius:5px !important; background:var(--ix-azul); color:#fff}
.ix-chip--sem{background:#fff5f9; border:1px dashed #f0b8d0; padding:5px 12px 5px 6px}
.ix-chip--sem .ix-ic{width:26px; height:26px; padding:4px; border-radius:5px !important; background:#fde3ee; color:#a8125c}
.ix-aviso-curto{display:inline-flex; align-items:center; gap:6px; margin-top:6px; font-weight:800; color:#9a4a00}
.ix-aviso-curto .ix-ic{width:18px; height:18px}

/* v12 — escolas e vagas de outra inspeção: esmaecidas */
.ix-escola--fora, .ix-vc--fora, .ix-vaga--fora{opacity:.5; filter:grayscale(.7)}
.ix-escola--fora:hover, .ix-vc--fora:hover, .ix-vaga--fora:hover{opacity:.75}
.ix-colab--excluido .ix-colab-ic{background:#c0262d}
.ix-confirma--topo{padding:0 0 10px}

/* =====================================================================
   v14 — Admin no mesmo estilo da Inspeção e do Diretor
   ===================================================================== */
.ix-cartoes--adm{grid-template-columns:repeat(3, 1fr); gap:18px}
.ix-cartoes--adm .ix-cartao{aspect-ratio:auto; min-height:190px; flex-direction:row; justify-content:flex-start; gap:22px; padding:26px 28px}
.ix-cartoes--adm .ix-cartao-ic{width:96px; flex:none}
.ix-cartoes--adm .ix-cartao b{font-size:28px; text-align:left}
.ix-cartao--ceu{--c:var(--ix-ceu)}
.ix-cartao--verde{--c:var(--ix-verde)}
.ix-cartao--cinza{--c:#4b5768}
@media (max-width:980px){ .ix-cartoes--adm{grid-template-columns:1fr 1fr} }
@media (max-width:640px){ .ix-cartoes--adm{grid-template-columns:1fr} .ix-cartoes--adm .ix-cartao{min-height:120px} .ix-cartoes--adm .ix-cartao-ic{width:72px} }

.ix-opcoes{display:grid; grid-template-columns:repeat(2, 1fr); gap:12px}
.ix-opcoes .ix-opcao{margin:0; text-decoration:none}
.ix-opcao--verde{--c:var(--ix-verde)}
@media (max-width:640px){ .ix-opcoes{grid-template-columns:1fr} }
.ix-numeros-pequenos{margin-bottom:18px}
.ix-numeros-pequenos .ix-numero b{font-size:30px}
.ix-faixa-botao{width:100%; cursor:pointer; font:inherit; font-size:18px; font-weight:800; color:var(--ix-tinta); text-align:left; margin-bottom:18px}
.ix-faixa-botao .ix-dobra-seta{margin-left:auto}
.ix-pt--bloqueante, .ix-pt--alta{background:#fde3ee !important; color:#a8125c !important}
.ix-pt--media{background:#fff1e3 !important; color:#9a4a00 !important}

/* chaves das telas Regras e E-mails */
.ix-chave--adm{min-height:72px}
.ix-chave-txt{flex:1; display:flex; flex-direction:column; gap:2px}
.ix-chave-txt b{font-weight:800}
.ix-chave-txt small{font-size:14px; font-weight:600; opacity:.75}
.ix-num-campo{max-width:320px; margin-top:6px}
.ix-num-campo span{font-size:16px; font-weight:800; color:var(--ix-tinta)}
.ix-num-campo input{min-height:56px; font-size:20px}
.ix-tipos--2{grid-template-columns:1fr 1fr}
.ix-resumo-campos{margin:12px 0 4px; display:none}
.ix-emails-form:has(input[name="c[email.candidatos.modo]"][value=resumo]:checked) .ix-resumo-campos{display:grid}
.ix-adm-form .ix-bloco .srv-campo input, .ix-adm-form .ix-bloco .srv-campo select{min-height:56px; font-size:18px; border:2px solid #d6dee9; border-radius:6px !important; padding:8px 12px}
.ix-adm-form > .ix-botao{margin-top:4px}

/* telas antigas do Admin com a mesma cara */
.adm-corpo .srv-cartao{border:1px solid var(--ix-borda); border-radius:10px !important; padding:24px; margin-bottom:20px;
  background:rgba(255,255,255,.96); box-shadow:0 2px 6px rgba(16,24,40,.04), 0 14px 32px rgba(31,78,156,.06)}
.adm-corpo .srv-cartao h2{display:flex; align-items:center; gap:12px; font-size:22px; text-transform:none; letter-spacing:0; color:var(--ix-tinta); font-weight:800}
.adm-corpo .srv-cartao h2::before{content:""; width:8px; height:26px; border-radius:4px !important;
  background:linear-gradient(var(--ix-azul) 0 25%, var(--ix-amarelo) 25% 50%, var(--ix-rosa) 50% 75%, var(--ix-turquesa) 75%)}
.adm-corpo .srv-botao{min-height:52px; padding:0 22px; border-radius:6px !important; font-size:17px; font-weight:800}
.adm-corpo .srv-botao--primario{background:var(--ix-azul)}
.adm-corpo .srv-botao--claro{background:#fff; color:var(--ix-azul); border:2px solid #c9d8ec}
.adm-corpo .srv-campo span{font-size:15px; font-weight:800; color:var(--ix-tinta)}
.adm-corpo .srv-campo input, .adm-corpo .srv-campo select, .adm-corpo .srv-campo textarea{min-height:52px; font-size:17px; border:2px solid #d6dee9; border-radius:6px !important}
.adm-corpo .srv-lista li{background:#fff; border:1px solid var(--ix-borda); border-radius:8px !important; font-size:16px; padding:14px 16px}
.adm-corpo .srv-nota, .adm-corpo .srv-periodo, .adm-corpo .srv-vazio{font-size:15px; color:var(--ix-tinta)}
.adm-corpo .srv-tag{border-radius:6px !important; font-weight:800}
.adm-corpo table{border-collapse:collapse; width:100%; background:#fff}
.adm-corpo th, .adm-corpo td{padding:10px 8px; border-bottom:1px solid var(--ix-borda); text-align:left; font-size:15px}
.adm-corpo .ix-adm{font-size:inherit}
.ix-corpo .ix-nav-admin > :nth-child(1){--c:#163a75}
.ix-corpo .ix-nav-admin > :nth-child(2){--c:var(--ix-azul)}
.ix-corpo .ix-nav-admin > :nth-child(3){--c:var(--ix-turquesa)}
.ix-corpo .ix-nav-admin > :nth-child(4){--c:var(--ix-rosa)}
.ix-corpo .ix-nav-admin > :nth-child(5){--c:var(--ix-laranja)}
.ix-corpo .ix-nav-admin > :nth-child(6){--c:var(--ix-ceu)}

/* v15 — Manutenção e vagas no Admin */
.ix-periodo-campos{margin:12px 0 4px; display:none}
.ix-manut-form:has(input[name=quando][value=periodo]:checked) .ix-periodo-campos{display:grid}
.ix-manut-status{display:flex; align-items:center; gap:18px; padding:20px 24px; margin:0 0 20px; border-radius:10px !important; color:#fff; background:var(--c)}
.ix-manut-status--verde{--c:var(--ix-verde)}
.ix-manut-status--rosa{--c:var(--ix-rosa)}
.ix-manut-status--laranja{--c:var(--ix-laranja)}
.ix-manut-ic{width:60px; height:60px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:8px !important; background:rgba(255,255,255,.2)}
.ix-manut-ic .ix-ic{width:34px; height:34px}
.ix-manut-status b{display:block; font-size:24px; font-weight:800}
.ix-manut-status span{font-size:17px; font-weight:700}
.ix-manut-form textarea{width:100%; min-height:96px; font-size:18px; border:2px solid #d6dee9; border-radius:6px !important; padding:10px 12px; font-family:inherit}
.ix-ip-campo{max-width:520px; margin-top:12px}
.ix-faixa-manut{background:#fde3ee; border-color:var(--ix-rosa); color:#7d0f47}
.ix-botao--ativo{background:var(--ix-azul) !important; color:#fff !important; border-color:var(--ix-azul) !important}
.ix-vc-acoes .ix-botao{flex:1 1 180px}

/* v16 — aba Backup */
.ix-bk-numeros{grid-template-columns:repeat(2, 1fr)}
.ix-bk-freq{margin:12px 0 4px}
.ix-bk-chaves{margin-top:14px}
.ix-bk-form{margin-bottom:22px}
.ix-bk-lista{display:grid; gap:10px}
.ix-bk-item{display:flex; align-items:center; gap:16px; width:100%; padding:14px 18px; background:#fff; border:2px solid var(--ix-borda);
  border-radius:8px !important; font:inherit; color:var(--ix-tinta); text-align:left; cursor:pointer}
.ix-bk-item:hover{box-shadow:0 8px 20px rgba(31,78,156,.12)}
.ix-bk-item:focus-visible{outline:4px solid var(--ix-amarelo); outline-offset:2px}
.ix-bk-ic{width:48px; height:48px; flex:none; display:flex; align-items:center; justify-content:center; border-radius:8px !important; color:#fff}
.ix-bk-ic .ix-ic{width:26px; height:26px}
.ix-bk-ic--ok{background:var(--ix-verde)}
.ix-bk-ic--falha{background:var(--ix-rosa)}
.ix-bk-ic--andamento{background:var(--ix-laranja)}
.ix-bk-txt{flex:1; display:flex; flex-direction:column; gap:2px}
.ix-bk-txt b{font-size:19px; font-weight:800}
.ix-bk-txt small{font-size:15px; font-weight:700; opacity:.75}
.ix-bk-estado--ok{background:#e3f4ec !important; color:#14663f !important}
.ix-bk-estado--falha{background:#fde3ee !important; color:#a8125c !important}
.ix-bk-estado--andamento{background:#fff1e3 !important; color:#9a4a00 !important}
.ix-hash{display:block; font-size:13px; word-break:break-all}
.ix-bk-teste{margin-top:18px; padding-top:16px; border-top:2px solid var(--ix-borda)}
.ix-bk-teste h3{margin:0 0 12px; font-size:20px; font-weight:800}
.ix-bk-teste .ix-grade{margin:12px 0}
.ix-botao[disabled]{opacity:.5; cursor:not-allowed}
@media (max-width:640px){ .ix-bk-numeros{grid-template-columns:1fr} .ix-bk-item .ix-chip{display:none} }

/* v17 — telas de entrada (login, código, senha) */
body.ix-login{min-height:100vh; margin:0; background:var(--ix-fundo); color:var(--ix-tinta)}
.ix-login .marca-fundo{opacity:.06; background-position:center bottom 40px}
.ix-login-palco{position:relative; z-index:1; min-height:100vh; display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:40px 16px 24px; box-sizing:border-box}
.ix-login-caixa{position:relative; width:100%; max-width:540px; box-sizing:border-box; padding:44px 48px 36px; background:#fff;
  border:1px solid var(--ix-borda); border-radius:14px !important; overflow:hidden;
  box-shadow:0 2px 6px rgba(16,24,40,.05), 0 30px 60px rgba(31,78,156,.12)}
.ix-login-caixa::before{content:""; position:absolute; left:0; right:0; top:0; height:8px;
  background:linear-gradient(90deg, var(--ix-azul) 0 17%, var(--ix-amarelo) 17% 34%, var(--ix-rosa) 34% 51%, var(--ix-laranja) 51% 68%, var(--ix-ceu) 68% 84%, var(--ix-turquesa) 84%)}
.ix-login-topo{display:flex; flex-direction:column; align-items:center; gap:18px; margin-bottom:30px}
.ix-login-logo{display:block; width:min(100%, 340px); height:auto}
.ix-login-perfil{display:inline-flex; align-items:center; gap:10px; padding:8px 18px 8px 8px; border-radius:8px !important;
  font-size:20px; font-weight:800; background:color-mix(in srgb, var(--c) 12%, #fff); color:var(--ix-tinta)}
.ix-login-perfil .ix-ic{width:36px; height:36px; padding:7px; box-sizing:border-box; border-radius:6px !important; background:var(--c); color:#fff}
.ix-login-perfil--azul{--c:var(--ix-azul)} .ix-login-perfil--amarelo{--c:var(--ix-amarelo)} .ix-login-perfil--rosa{--c:var(--ix-rosa)}
.ix-login-perfil--laranja{--c:var(--ix-laranja)} .ix-login-perfil--ceu{--c:var(--ix-ceu)} .ix-login-perfil--turquesa{--c:var(--ix-turquesa)}
.ix-login-perfil--amarelo .ix-ic{color:var(--ix-tinta)}
.ix-login-titulo{margin:0 0 20px; font-size:28px; font-weight:800; text-align:center; color:var(--ix-tinta)}
.ix-login-form{display:flex; flex-direction:column; gap:20px; margin:0}
.ix-login-campo{display:flex; flex-direction:column; gap:8px; margin:0}
.ix-login-campo > span{font-size:19px; font-weight:800; color:var(--ix-tinta)}
.ix-login-campo input{width:100%; box-sizing:border-box; min-height:64px; padding:12px 16px; font:inherit; font-size:22px; color:var(--ix-tinta);
  background:#fff; border:2px solid #cfd9e6; border-radius:8px !important; box-shadow:none; transition:border-color .15s, box-shadow .15s}
.ix-login-campo input:focus{outline:none; border-color:var(--ix-azul); box-shadow:0 0 0 4px rgba(31,78,156,.18)}
.ix-login-campo input[readonly]{background:#f4f7fb}
.ix-login-codigo{text-align:center; letter-spacing:.4em; font-size:30px !important; font-weight:800}
.ix-login-chave{font-family:ui-monospace, monospace; font-size:18px !important; letter-spacing:.06em}
.ix-senha-caixa{position:relative; display:block}
.ix-senha-caixa input{padding-right:118px}
.ix-ver-senha{position:absolute; right:8px; top:50%; transform:translateY(-50%); min-height:48px; padding:0 14px; font:inherit; font-size:16px;
  font-weight:800; color:var(--ix-azul); background:#eef4fc; border:0; border-radius:6px !important; cursor:pointer}
.ix-ver-senha:focus-visible{outline:4px solid var(--ix-amarelo)}
.ix-login-botao{display:flex; align-items:center; justify-content:center; width:100%; min-height:66px; margin-top:6px; padding:0 20px;
  font:inherit; font-size:23px; font-weight:800; color:#fff; text-decoration:none; background:var(--ix-azul); border:0;
  border-radius:8px !important; cursor:pointer; box-shadow:0 10px 22px rgba(31,78,156,.25)}
.ix-login-botao:hover{filter:brightness(1.08)}
.ix-login-botao:focus-visible{outline:5px solid var(--ix-amarelo); outline-offset:3px}
.ix-login-botao[disabled]{opacity:.5; cursor:not-allowed}
.ix-login-link{display:flex; align-items:center; justify-content:center; width:100%; box-sizing:border-box; min-height:56px; margin-top:14px;
  font:inherit; font-size:19px; font-weight:800; color:var(--ix-azul); text-decoration:none; background:#fff;
  border:2px solid #d6e1ef; border-radius:8px !important; cursor:pointer}
.ix-login-link:hover{background:#f3f7fd}
.ix-login-link--forte{color:var(--ix-tinta)}
.ix-login-quem{display:flex; align-items:center; gap:12px; margin:0 0 20px; padding:12px 14px; background:#f4f7fb; border:1px solid var(--ix-borda);
  border-radius:8px !important; color:var(--ix-tinta); text-decoration:none; font-size:18px; font-weight:700}
.ix-login-quem span{flex:1; min-width:0; overflow-wrap:anywhere}
.ix-login-quem b{color:var(--ix-azul); font-weight:800}
.ix-login-quem .ix-ic{width:26px; height:26px; color:var(--ix-azul); flex:none}
.ix-login-aviso{display:flex; align-items:flex-start; gap:12px; margin:0 0 20px; padding:14px 16px; border-radius:8px !important;
  font-size:18px; font-weight:700; line-height:1.4}
.ix-login-aviso .ix-ic{width:26px; height:26px; flex:none}
.ix-login-aviso--erro{background:#fde3ee; color:#7d0f47}
.ix-login-aviso--sucesso{background:#e3f4ec; color:#14663f}
.ix-login-aviso--info, .ix-login-aviso--aviso{background:#fff4e5; color:#7a3d00}
.ix-login-dica{display:flex; align-items:center; justify-content:center; gap:8px; margin:-8px 0 20px; font-size:17px; font-weight:700; color:#3a4656}
.ix-login-dica .ix-ic{width:22px; height:22px; color:var(--ix-turquesa)}
.ix-login-codigos{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:0 0 20px; padding:0; list-style:none}
.ix-login-codigos li{padding:12px; text-align:center; font-family:ui-monospace, monospace; font-size:20px; font-weight:800; letter-spacing:.12em;
  background:#f4f7fb; border:1px solid var(--ix-borda); border-radius:6px !important}
.ix-login-rodape{display:flex; align-items:center; gap:8px; margin:22px 0 0; font-size:15px; font-weight:700; color:#4a5566}
.ix-login-rodape .ix-ic{width:18px; height:18px}
@media (max-width:520px){
  .ix-login-palco{padding-top:20px; justify-content:flex-start}
  .ix-login-caixa{padding:34px 20px 26px}
  .ix-login-logo{width:min(100%, 280px)}
}

/* v18 — selo do perfil no canto e mensagens em janela */
.ix-login-caixa{padding-top:56px}
.ix-login-perfil{position:absolute; top:22px; right:22px; gap:8px; padding:6px 14px 6px 6px; font-size:16px; color:#fff; background:var(--c)}
.ix-login-perfil .ix-ic{width:28px; height:28px; padding:5px; background:rgba(255,255,255,.22); color:#fff}
.ix-login-perfil--amarelo{color:var(--ix-tinta)}
.ix-login-perfil--amarelo .ix-ic{background:rgba(255,255,255,.45); color:var(--ix-tinta)}
.ix-login-topo{margin-top:8px}
.ix-login-janela{width:min(440px, calc(100% - 32px)); box-sizing:border-box; padding:36px 32px 28px; border:0; border-radius:14px !important;
  text-align:center; color:var(--ix-tinta); background:#fff; box-shadow:0 30px 80px rgba(16,24,40,.35)}
.ix-login-janela::backdrop{background:rgba(17,25,40,.55); backdrop-filter:blur(3px)}
.ix-login-janela:not([open]){display:none}
.ix-login-janela-ic{display:inline-flex; align-items:center; justify-content:center; width:84px; height:84px; margin-bottom:14px;
  border-radius:50% !important; color:#fff; background:var(--c)}
.ix-login-janela-ic .ix-ic{width:44px; height:44px; stroke-width:2}
.ix-login-janela--erro{--c:var(--ix-rosa)}
.ix-login-janela--ok{--c:var(--ix-verde)}
.ix-login-janela--info{--c:var(--ix-laranja)}
.ix-login-janela h2{margin:0 0 10px; font-size:28px; font-weight:800}
.ix-login-janela p{margin:0 0 8px; font-size:20px; font-weight:600; line-height:1.45}
.ix-login-janela form{margin:20px 0 0}
.ix-login-janela .ix-login-botao{background:var(--c); box-shadow:none}
.ix-login-janela--info .ix-login-botao{background:var(--ix-azul)}
@media (max-width:520px){
  .ix-login-caixa{padding-top:64px}
  .ix-login-perfil{top:16px; right:16px; font-size:15px}
}

/* v19 — Admin > Inspeção: um cartão por inspeção */
.ix-insp-cartoes{display:grid; grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); gap:18px; margin:6px 0 24px}
.ix-insp-cartao{position:relative; display:flex; flex-direction:column; align-items:flex-start; gap:10px; min-height:190px; padding:24px 24px 20px;
  text-align:left; font:inherit; color:var(--ix-tinta); background:#fff; border:1px solid var(--ix-borda); border-radius:10px !important;
  border-top:8px solid var(--c); cursor:pointer; box-shadow:0 2px 6px rgba(16,24,40,.04), 0 14px 32px rgba(31,78,156,.06)}
.ix-insp-cartao:hover{transform:translateY(-3px); box-shadow:0 20px 40px rgba(31,78,156,.14)}
.ix-insp-cartao:focus-visible{outline:5px solid var(--ix-amarelo); outline-offset:3px}
.ix-insp-cartao--azul{--c:var(--ix-azul)} .ix-insp-cartao--turquesa{--c:var(--ix-turquesa)} .ix-insp-cartao--rosa{--c:var(--ix-rosa)}
.ix-insp-cartao--laranja{--c:var(--ix-laranja)} .ix-insp-cartao--ceu{--c:var(--ix-ceu)} .ix-insp-cartao--verde{--c:var(--ix-verde)}
.ix-insp-cartao--alerta{--c:var(--ix-amarelo); background:#fffaf0}
.ix-insp-num{position:absolute; top:18px; right:20px; font-size:44px; font-weight:800; line-height:1; color:var(--c)}
.ix-insp-cartao--alerta .ix-insp-num{color:#9a6a00}
.ix-insp-txt{display:flex; flex-direction:column; gap:4px; padding-right:70px}
.ix-insp-txt b{font-size:26px; font-weight:800}
.ix-insp-txt small{font-size:16px; font-weight:700; opacity:.75}
.ix-insp-rodape{display:flex; align-items:center; gap:8px; margin-top:auto; font-size:16px; font-weight:800}
.ix-insp-rodape .ix-ic{width:22px; height:22px; color:var(--c)}
.ix-busca--janela{margin-bottom:12px}
.ix-insp-lista{max-height:52vh; overflow:auto}
.ix-insp-lista label.ix-insp-dela{background:#eef6f2}
.ix-insp-lista small{margin-left:6px; padding:2px 8px; font-size:13px; font-weight:800; background:#fff1e3; color:#9a4a00; border-radius:5px !important}
.ix-insp-sem{margin:0; padding:0; list-style:none; display:grid; gap:8px}
.ix-insp-sem li{display:flex; align-items:center; gap:10px; padding:12px 14px; font-size:18px; font-weight:700; background:#f4f7fb; border-radius:6px !important}
.ix-insp-sem .ix-ic{width:22px; height:22px; color:var(--ix-azul)}

/* v20 — Pessoas, Funções, Chamados e Prazo dos chamados */
.ix-pe-numeros{grid-template-columns:repeat(3, 1fr)}
.ix-pe-lista{display:grid; grid-template-columns:repeat(auto-fill, minmax(360px, 1fr)); gap:12px}
.ix-pe-item{display:flex; align-items:center; gap:14px; width:100%; padding:14px 16px; font:inherit; text-align:left; color:var(--ix-tinta);
  background:#fff; border:1px solid var(--ix-borda); border-radius:10px !important; cursor:pointer; box-shadow:0 2px 6px rgba(16,24,40,.04)}
.ix-pe-item:hover{box-shadow:0 12px 26px rgba(31,78,156,.12)}
.ix-pe-item:focus-visible{outline:4px solid var(--ix-amarelo); outline-offset:2px}
.ix-pe-item--off{opacity:.55}
.ix-pe-av{width:52px; height:52px; flex:none; display:flex; align-items:center; justify-content:center; font-size:24px; font-weight:800;
  color:#fff; background:var(--c); border-radius:10px !important}
.ix-pe-av--azul{--c:var(--ix-azul)} .ix-pe-av--turquesa{--c:var(--ix-turquesa)} .ix-pe-av--rosa{--c:var(--ix-rosa)}
.ix-pe-av--laranja{--c:var(--ix-laranja)} .ix-pe-av--ceu{--c:var(--ix-ceu)} .ix-pe-av--verde{--c:var(--ix-verde)}
.ix-pe-txt{flex:1; min-width:0; display:flex; flex-direction:column; gap:2px}
.ix-pe-txt b{font-size:18px; font-weight:800}
.ix-pe-txt small{font-size:14px; font-weight:600; opacity:.75; overflow-wrap:anywhere}
.ix-pe-chips{display:flex; flex-direction:column; align-items:flex-end; gap:4px}
.ix-pe-perfil{padding:3px 10px; font-size:13px; font-weight:800; color:#163a75; background:#eef4fc; border-radius:5px !important; white-space:nowrap}
.ix-pe-alerta{padding:3px 10px; font-size:13px; font-weight:800; color:#9a4a00; background:#fff1e3; border-radius:5px !important}
.ix-pe-inativos{margin-top:20px}
.ix-pe-inativos summary, .ix-pe-bloco summary{display:flex; align-items:center; gap:10px; padding:14px 16px; font-size:18px; font-weight:800;
  background:#fff; border:1px solid var(--ix-borda); border-radius:8px !important; cursor:pointer; list-style:none}
.ix-pe-inativos summary::-webkit-details-marker, .ix-pe-bloco summary::-webkit-details-marker{display:none}
.ix-pe-inativos[open] summary{margin-bottom:12px}
.ix-pe-bloco{margin-top:12px}
.ix-pe-bloco summary .ix-ic{width:22px; height:22px; color:var(--ix-azul)}
.ix-pe-bloco[open] summary{margin-bottom:12px}
.ix-pe-bloco--perigo summary{color:#a8125c}
.ix-pe-bloco--perigo summary .ix-ic{color:#a8125c}
.ix-pe-acoes{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:10px; margin:14px 0 4px}
.ix-pe-acoes form{margin:0}
.ix-pe-acoes .ix-botao{width:100%; justify-content:center}
.ix-pe-perfis{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:10px; margin-bottom:16px}
.ix-pe-perfis .ix-opcao{margin:0; min-height:64px; font-size:18px}
@media (max-width:640px){ .ix-pe-lista{grid-template-columns:1fr} .ix-pe-numeros{grid-template-columns:1fr} .ix-pe-chips{display:none} }

.ix-fn-lista{display:grid; gap:10px; margin:12px 0 20px}
.ix-fn{display:flex; flex-wrap:wrap; align-items:center; gap:12px 18px; padding:14px 16px; background:#fff; border:1px solid var(--ix-borda);
  border-radius:8px !important}
.ix-fn--sim{background:#f2faf6}
.ix-fn-txt{flex:1 1 280px; display:flex; flex-direction:column; gap:2px}
.ix-fn-txt b{font-size:18px; font-weight:800}
.ix-fn-txt small{font-size:14px; font-weight:600; opacity:.75}
.ix-fn-opcoes{display:flex; gap:6px; flex-wrap:wrap}
.ix-fn-op{position:relative; cursor:pointer}
.ix-fn-op input{position:absolute; opacity:0; width:1px; height:1px}
.ix-fn-op span{display:block; min-height:46px; padding:0 16px; line-height:44px; font-size:16px; font-weight:800; color:var(--ix-tinta);
  background:#fff; border:2px solid #d6e1ef; border-radius:6px !important}
.ix-fn-op input:checked + span{color:#fff; background:var(--ix-azul); border-color:var(--ix-azul)}
.ix-fn-op--permitir input:checked + span{background:var(--ix-verde); border-color:var(--ix-verde)}
.ix-fn-op--negar input:checked + span{background:var(--ix-rosa); border-color:var(--ix-rosa)}
.ix-fn-op input:focus-visible + span{outline:4px solid var(--ix-amarelo)}

.ix-abas-ch{display:flex; flex-wrap:wrap; gap:8px; margin:0 0 16px}
.ix-abas-ch a{min-height:48px; padding:0 18px; line-height:46px; font-size:17px; font-weight:800; color:var(--ix-azul); text-decoration:none;
  background:#fff; border:2px solid #d6e1ef; border-radius:8px !important}
.ix-abas-ch a.ix-aba-ativa{color:#fff; background:var(--ix-azul); border-color:var(--ix-azul)}
a.ix-ch-item{text-decoration:none}
.ix-bk-ic--fechado{background:#8a94a3}
.ix-bk-estado--fechado{background:#eef0f3 !important; color:#4a5566 !important}
.ix-ch-item .pz-chip{white-space:nowrap}

.pz-q{display:none; margin:12px 0 4px}
.pz-form:has(input[name=tipo][value=data]:checked) .pz-q-data,
.pz-form:has(input[name=tipo][value=dia]:checked) .pz-q-dia,
.pz-form:has(input[name=tipo][value=grupo]:checked) .pz-q-grupo{display:block}
.pz-form:has(input[name=tipo][value=data]:checked) .pz-q-data{display:grid}
.pz-form:has(input[name=tipo][value=dia]:checked) .pz-q-dia{display:flex}
.pz-dias{flex-wrap:wrap; gap:8px}
.pz-q-grupo .pz-dias{display:flex; margin-bottom:12px}
.pz-dia{position:relative; cursor:pointer}
.pz-dia input{position:absolute; opacity:0; width:1px; height:1px}
.pz-dia span{display:block; min-width:96px; min-height:52px; padding:0 14px; line-height:48px; text-align:center; font-size:17px; font-weight:800;
  background:#fff; border:2px solid #d6e1ef; border-radius:8px !important}
.pz-dia input:checked + span{color:#fff; background:var(--ix-azul); border-color:var(--ix-azul)}
.pz-dia input:focus-visible + span{outline:4px solid var(--ix-amarelo)}
.pz-faixas{display:grid; grid-template-columns:1fr 1fr 1.2fr; gap:8px 10px; align-items:center}
.pz-faixas-cab{font-size:15px; font-weight:800}
.pz-faixas input{width:100%; box-sizing:border-box; min-height:52px; font:inherit; font-size:18px; padding:6px 10px;
  border:2px solid #d6dee9; border-radius:6px !important; background:#fff}
.pz-regras{display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:12px}
.pz-regra{display:flex; flex-direction:column; gap:6px; padding:16px 18px; font:inherit; text-align:left; color:var(--ix-tinta); background:#fff;
  border:1px solid var(--ix-borda); border-top:6px solid var(--c); border-radius:10px !important; cursor:pointer}
.pz-regra:hover{box-shadow:0 12px 26px rgba(31,78,156,.12)}
.pz-regra b{font-size:20px; font-weight:800; margin-bottom:4px}
.pz-regra span{display:flex; justify-content:space-between; gap:10px; font-size:17px; font-weight:700}
.pz-regra em{font-style:normal; font-weight:800; color:var(--c)}
.pz-regra--rosa{--c:var(--ix-rosa)} .pz-regra--azul{--c:var(--ix-azul)} .pz-regra--turquesa{--c:var(--ix-turquesa)} .pz-regra--laranja{--c:var(--ix-laranja)}
.pz-ordem{display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; font-size:18px; font-weight:800; color:#fff;
  background:var(--c); border-radius:6px !important}
.pz-ordem--rosa{--c:var(--ix-rosa)} .pz-ordem--azul{--c:var(--ix-azul)} .pz-ordem--turquesa{--c:var(--ix-turquesa)} .pz-ordem--laranja{--c:var(--ix-laranja)}
.ix-bloco h2 .pz-ordem + *{margin-left:0}
.pz-geral{display:flex; flex-wrap:wrap; align-items:flex-end; gap:14px}
.pz-geral .ix-num-campo{margin:0}
.pz-excluir{padding-top:0}
.ix-adm h2 .pz-ordem, .ix-bloco > h2 .pz-ordem{margin-right:4px}
@media (max-width:640px){ .pz-faixas{grid-template-columns:1fr 1fr} .pz-faixas-cab:nth-child(3){display:none} .pz-faixas input[type=number]{grid-column:1 / -1} }
.ix-opcao--rosa{--c:var(--ix-rosa)} .ix-opcao--turquesa{--c:var(--ix-turquesa)} .ix-opcao--ceu{--c:var(--ix-ceu)}
.pz-regra span{flex-wrap:wrap}

/* v21 — E-mails: números clicáveis, lista de envios e reenvio */
button.ix-numero--botao{font:inherit; text-align:left; border:0; cursor:pointer; width:100%}
button.ix-numero--botao:hover{filter:brightness(1.06); transform:translateY(-2px)}
button.ix-numero--botao:focus-visible{outline:5px solid var(--ix-amarelo); outline-offset:3px}
.ix-emails-form:has(input[name="c[email.servidores]"]:not(:checked)) .ix-em-aviso,
.ix-emails-form:has(input[name="c[email.servidores]"]:not(:checked)) label:has(input[name="c[email.candidatos]"]){opacity:.45}
.ix-em-todos{margin:0 0 14px}
.ix-em-lista{display:grid; gap:10px}
.ix-em-item{display:flex; align-items:center; gap:14px; padding:14px 16px; background:#fff; border:1px solid var(--ix-borda);
  border-left-width:1px; border-radius:8px !important}
.ix-em-txt{flex:1; min-width:0; display:flex; flex-direction:column; gap:4px}
.ix-em-txt b{font-size:17px; font-weight:800}
.ix-em-txt small{font-size:14px; font-weight:600; opacity:.75}
.ix-em-erro{display:flex; align-items:flex-start; gap:8px; margin-top:4px; padding:8px 10px; font-size:15px; font-weight:700;
  color:#7d0f47; background:#fde3ee; border-radius:6px !important}
.ix-em-item--bloqueado .ix-em-erro{color:#7a5a00; background:#fff6dc}
.ix-em-erro .ix-ic{width:20px; height:20px; flex:none}
.ix-em-item form{margin:0}

/* v22 — Modelos de e-mail */
.ix-md-lista{display:grid; grid-template-columns:repeat(auto-fill, minmax(380px, 1fr)); gap:12px}
.ix-md{display:flex; align-items:center; gap:14px; width:100%; padding:14px 16px; font:inherit; text-align:left; color:var(--ix-tinta);
  background:#fff; border:1px solid var(--ix-borda); border-radius:10px !important; cursor:pointer}
.ix-md:hover{box-shadow:0 12px 26px rgba(31,78,156,.12)}
.ix-md--falta{background:#fff5f9}
.ix-md--off{opacity:.65}
.ix-md-txt{flex:1; min-width:0; display:flex; flex-direction:column; gap:2px}
.ix-md-txt b{font-size:18px; font-weight:800}
.ix-md-txt small{font-size:14px; font-weight:600; opacity:.75}
.ix-md-vars{display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 0}
.ix-md-vars code{padding:2px 8px; font-size:13px; background:#eef4fc; border-radius:5px !important}
.ix-md-previa{display:block; width:100%; height:420px; border:1px solid var(--ix-borda); border-radius:8px !important; background:#f2f5fa}
.ix-md-acoes{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:12px 0}
.ix-md-acoes form{margin:0}
.ix-md-acoes .ix-botao{width:100%; justify-content:center}
.ix-md-badge{margin-left:6px; padding:1px 8px; font-style:normal; font-size:14px; color:#fff; background:var(--ix-rosa); border-radius:10px !important}
@media (max-width:640px){ .ix-md-lista{grid-template-columns:1fr} .ix-md-acoes{grid-template-columns:1fr} }
.ix-md-acoes{grid-template-columns:2fr 1fr}
.ix-md-teste{display:flex; gap:8px}
.ix-md-teste input{flex:1; min-width:0; min-height:52px; padding:6px 12px; font:inherit; font-size:17px; border:2px solid #d6dee9; border-radius:6px !important}
.ix-md-teste .ix-botao{width:auto; flex:none}
@media (max-width:640px){ .ix-md-acoes{grid-template-columns:1fr} .ix-md-teste{flex-direction:column} }

/* v24 — Cronograma do pacote */
.ix-processo-caixa{display:flex; flex-direction:column; gap:0}
.ix-processo-caixa .ix-processo{flex:1; border-bottom-left-radius:0 !important; border-bottom-right-radius:0 !important}
.ix-cr-botao{display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:56px; font:inherit; font-size:18px;
  font-weight:800; color:#fff; background:var(--ix-rosa); border:0; border-radius:0 0 10px 10px !important; cursor:pointer}
.ix-cr-botao:hover{filter:brightness(1.08)}
.ix-cr-botao:focus-visible{outline:5px solid var(--ix-amarelo); outline-offset:2px}
.ix-cr-botao .ix-ic{width:24px; height:24px}
.ix-cr-ver{min-height:66px; font-size:22px; letter-spacing:.04em; color:#fff !important; background:var(--ix-rosa) !important;
  border-color:var(--ix-rosa) !important; margin-bottom:18px}
.ix-cr-form .srv-campo{margin-bottom:12px}
.ix-cr-form textarea, .ix-cr-form input{min-height:52px; font-size:17px; border:2px solid #d6dee9; border-radius:6px !important; padding:8px 12px; font-family:inherit; width:100%; box-sizing:border-box}
.ix-cr-id{grid-template-columns:220px 1fr}
.ix-cr-linhas{display:grid; gap:10px; margin-bottom:14px}
.ix-cr-linha{display:grid; grid-template-columns:170px 1.4fr 120px 120px 1.6fr; gap:8px; padding:12px; background:#f4f7fb; border-radius:8px !important}
.ix-cr-linha .srv-campo{margin:0}
.ix-cr-linha span{font-size:14px}
.ix-cr-fim{display:grid; grid-template-columns:1fr 1fr; gap:10px}
.ix-cr-fim .ix-botao{justify-content:center}
@media (max-width:900px){ .ix-cr-linha{grid-template-columns:1fr 1fr} .ix-cr-cargo, .ix-cr-part{grid-column:1 / -1} .ix-cr-id{grid-template-columns:1fr} }
.ix-cr-linha .srv-campo, .ix-cr-id .srv-campo{grid-column:auto}
@media (max-width:900px){ .ix-cr-linha .ix-cr-cargo, .ix-cr-linha .ix-cr-part{grid-column:1 / -1} }
.ix-botao.ix-cr-destaque{color:#fff; background:var(--ix-rosa); border-color:var(--ix-rosa)}

/* v25 — Pessoas: entrar como, definir senha */
.ix-botao.ix-botao--rosa-cheio{color:#fff; background:var(--ix-rosa); border-color:var(--ix-rosa)}
.ix-pe-trocar{margin:12px 0}
.cha-novo-cadastro{display:flex; align-items:center; justify-content:center; gap:10px; width:100%; box-sizing:border-box; min-height:60px; margin-top:14px;
  font-size:19px; font-weight:800; color:#fff; text-decoration:none; background:var(--ix-turquesa); border-radius:8px !important}
.cha-novo-cadastro:hover{filter:brightness(1.06)}
.cha-novo-cadastro .ix-ic{width:24px; height:24px}

/* v26 — Visível / Não visível na página de vagas */
.ix-processo-rodape{display:grid; grid-template-columns:1fr auto; gap:0}
.ix-processo-rodape:has(> :only-child){grid-template-columns:1fr}
.ix-processo-rodape form{margin:0; display:flex}
.ix-processo-rodape .ix-cr-botao{border-radius:0 0 0 10px !important}
.ix-processo-rodape:has(> :only-child) .ix-cr-botao{border-radius:0 0 10px 10px !important}
.ix-vis{display:inline-flex; align-items:center; gap:10px; min-height:56px; padding:0 16px; font:inherit; font-size:16px; font-weight:800;
  color:#4a5566; background:#eef0f3; border:0; cursor:pointer; white-space:nowrap}
.ix-processo-rodape .ix-vis{border-radius:0 0 10px 0 !important; width:100%}
.ix-vis i{position:relative; width:46px; height:26px; flex:none; background:#c9d1dc; border-radius:13px !important; transition:background .15s}
.ix-vis i::after{content:""; position:absolute; top:3px; left:3px; width:20px; height:20px; background:#fff; border-radius:50% !important; transition:left .15s}
.ix-vis--on{color:#14663f; background:#e3f4ec}
.ix-vis--on i{background:var(--ix-verde)}
.ix-vis--on i::after{left:23px}
.ix-vis:focus-visible{outline:4px solid var(--ix-amarelo); outline-offset:2px}
.ix-vis--grande{min-height:52px; border-radius:8px !important; border:2px solid #d6e1ef}
.ix-vis--grande.ix-vis--on{border-color:#b9e2cd}

/* ajuste 17: cronograma no topo da pagina de vagas */
.ix-vg-cronos{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:14px; margin:0 0 22px}
.ix-vg-crono,.ix-vg-crono:visited,.ix-vg-crono:hover{color:#fff}
.ix-vg-crono{display:flex; align-items:center; gap:16px; min-height:84px; padding:16px 20px; color:#fff; background:var(--ix-rosa); border:2px solid var(--ix-rosa);
  border-radius:8px !important; text-decoration:none; box-shadow:0 6px 18px rgba(168,18,92,.18)}
.ix-vg-crono:hover{filter:brightness(1.07)}
.ix-vg-crono:focus-visible{outline:5px solid var(--ix-amarelo); outline-offset:3px}
.ix-vg-crono-ic{display:flex; align-items:center; justify-content:center; width:52px; height:52px; flex:none; background:rgba(255,255,255,.2); border-radius:8px !important}
.ix-vg-crono-ic .ix-ic{width:30px; height:30px}
.ix-vg-crono-txt{display:flex; flex-direction:column; gap:3px; min-width:0}
.ix-vg-crono-txt b{font-size:22px; letter-spacing:.01em; text-transform:uppercase}
.ix-vg-crono-txt small{font-size:16px; color:#fff; overflow-wrap:anywhere}
.ix-bloco-vagas h2 .ix-vg-crono-mini{margin-left:auto; min-height:44px; font-size:16px}
@media (max-width:600px){.ix-vg-crono-txt b{font-size:19px}}
.ix-estat-grade > .ix-bloco--largo{grid-column:1 / -1}
.ix-opcoes--4{grid-template-columns:repeat(4, 1fr); margin-bottom:16px}
@media (max-width:860px){ .ix-opcoes--4{grid-template-columns:1fr 1fr} }
@media (max-width:640px){ .ix-opcoes--4{grid-template-columns:1fr} }
.ix-bloco-vagas h2{flex-wrap:wrap; row-gap:10px}
@media (max-width:600px){ .ix-bloco-vagas h2 .ix-vg-crono-mini{margin-left:0; width:100%; justify-content:center} }
@media (max-width:600px){ .ix-bloco-vagas h2::before{display:none} }

/* ajuste 18: pagina de vagas com as cores do PROSIM; cartao abre o PDF */
.ix-vg-crono--azul{background:var(--ix-azul); border-color:var(--ix-azul); box-shadow:0 6px 18px rgba(31,78,156,.2)}
.ix-vg-crono--laranja{background:#d9670a; border-color:#d9670a; box-shadow:0 6px 18px rgba(217,103,10,.2)}
.ix-vg-crono--turquesa{background:#1f8a71; border-color:#1f8a71; box-shadow:0 6px 18px rgba(31,138,113,.2)}
.ix-vp{--c:var(--ix-azul); --cf:#eaf1fb; overflow:hidden; padding-top:24px; color:var(--ix-tinta); text-decoration:none; background:#fff}
.ix-vp::before{content:""; position:absolute; top:0; left:0; right:0; height:8px; background:var(--c)}
.ix-vp:hover{box-shadow:0 18px 36px rgba(17,17,17,.12)}
.ix-vp .ix-vc-num.ix-vp-num{background:var(--c); color:#fff; box-shadow:none}
.ix-vp .ix-vc-cargo{color:var(--ix-tinta)}
.ix-vp .ix-vc-linha .ix-ic{color:var(--c)}
.ix-vp-pdf{display:flex; align-items:center; justify-content:center; gap:10px; width:calc(100% + 40px); margin:auto -20px -18px; padding:14px 16px;
  font-size:17px; font-weight:800; color:var(--ct, var(--c)); background:var(--cf); border-top:1px solid var(--ix-borda)}
.ix-vp-pdf .ix-ic{width:22px; height:22px}
.ix-vp:hover .ix-vp-pdf{background:var(--c); color:#fff}
.ix-vp--azul{--c:#1F4E9C; --cf:#eaf1fb}
.ix-vp--rosa{--c:#C0176B; --cf:#fdeef5}
.ix-vp--laranja{--c:#d9670a; --cf:#fff2e6}
.ix-vp--turquesa{--c:#1f8a71; --cf:#e6f6f1}
.ix-vp--ceu{--c:#2f7cc9; --cf:#e9f3fc}
.ix-vp--amarelo{--c:#F5B921; --cf:#fff7e0; --ct:#7a5600}
.ix-vp--amarelo .ix-vc-num.ix-vp-num{color:#3b2a00}
.ix-vp--amarelo .ix-vc-linha .ix-ic{color:#b98500}
.ix-vp--amarelo:hover .ix-vp-pdf{color:#3b2a00}

/* numeracao das vagas (Admin > Regras) */
.ix-nm{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; margin:0 0 16px; padding:16px 18px;
  border:1px solid var(--ix-borda); border-radius:8px !important; background:#fff}
.ix-nm-caixa{display:flex; align-items:center; gap:16px; min-width:0}
.ix-nm-num{display:inline-flex; align-items:center; justify-content:center; min-width:96px; min-height:52px; padding:0 14px; font-size:22px; font-weight:800;
  color:#fff; background:var(--ix-rosa); border-radius:8px !important}
.ix-nm-txt{display:flex; flex-direction:column; gap:3px}
.ix-nm-txt b{font-size:19px}
.ix-nm-txt small{font-size:16px}
.ix-nm-exemplo{display:flex; align-items:center; justify-content:center; gap:14px; margin:0 0 18px; font-size:20px; font-weight:800}
.ix-nm-exemplo span{padding:10px 16px; border-radius:8px !important; background:#eef2f7}
.ix-nm-exemplo span:last-child{color:#fff; background:var(--ix-rosa)}
.ix-nm-seta{width:26px; height:26px; transform:rotate(180deg)}
@media (max-width:600px){ .ix-nm .ix-botao{width:100%} }

/* ajuste 19: pagina publica de vagas no estilo Google Sites (faixa azul, cronograma aberto) */
body.ix-gs{background:var(--ix-azul)}
.ix-gs .marca-fundo{display:none}
.ix-gs .srv-topo{position:relative; z-index:2}
.ix-gs .srv-principal{max-width:1080px; padding:34px 18px 80px}
.ix-gs-topo{display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:16px; margin:0 0 30px}
.ix-gs-topo h1{margin:0; font-size:clamp(30px, 5vw, 44px); font-weight:800; color:#fff; letter-spacing:.5px; text-transform:uppercase}
.ix-gs-topo .ix-busca{flex:1 1 320px; max-width:460px; background:#fff; border-color:#fff}
.ix-gs-pacote{margin:0 0 64px; padding:0}
.ix-gs-pacote + .ix-gs-pacote{padding-top:54px; border-top:2px solid rgba(255,255,255,.22)}
.ix-gs-titulo{display:block; margin:0 0 12px; text-align:center; font-size:clamp(28px, 5.4vw, 48px); line-height:1.15; font-weight:800;
  color:#fff; text-transform:uppercase; letter-spacing:.5px}
.ix-gs-titulo::before{display:none !important}
.ix-gs-data{display:flex; align-items:center; justify-content:center; gap:8px; margin:0 0 30px; font-size:19px; font-weight:700; color:#fff}
.ix-gs-data .ix-ic{width:22px; height:22px; color:var(--ix-amarelo)}
.ix-gs-pdf{margin:0 auto 54px; max-width:820px; background:#fff; border-radius:6px !important; overflow:hidden; box-shadow:0 14px 36px rgba(0,0,0,.25)}
.ix-gs-moldura{display:flex; justify-content:center; padding:18px 12px; background:#2b2f36}
.ix-gs-folha{position:relative; width:100%; max-width:560px; aspect-ratio:794 / 1123; background:#fff; box-shadow:0 4px 18px rgba(0,0,0,.4)}
.ix-gs-folha iframe{position:absolute; inset:0; width:100%; height:100%; border:0; background:#fff; pointer-events:none}
.ix-gs-capa{position:absolute; inset:0; z-index:1}
.ix-gs-capa:focus-visible{outline:5px solid var(--ix-amarelo); outline-offset:3px}
.ix-gs-pdf figcaption a{display:flex; align-items:center; gap:14px; min-height:68px; padding:12px 20px; font-size:18px; font-weight:700;
  color:var(--ix-tinta); text-decoration:none; background:#f1f3f4; overflow-wrap:anywhere}
.ix-gs-pdf figcaption a:hover{background:#e8eaed}
.ix-gs-pdf-ic{display:flex; align-items:center; justify-content:center; width:40px; height:40px; flex:none; color:#fff; background:var(--ix-rosa); border-radius:6px !important}
.ix-gs-pdf-ic .ix-ic{width:22px; height:22px}
.ix-gs-sub{margin:0 0 26px; text-align:center; font-size:clamp(26px, 4.6vw, 42px); font-weight:800; color:#fff; text-transform:uppercase; letter-spacing:.5px}
.ix-gs-sub::after{content:""; display:block; width:180px; height:6px; margin:14px auto 0;
  background:linear-gradient(90deg, var(--ix-azul-esc) 0 16.6%, var(--ix-amarelo) 16.6% 33.3%, var(--ix-rosa) 33.3% 50%,
             var(--ix-laranja) 50% 66.6%, var(--ix-ceu) 66.6% 83.3%, var(--ix-turquesa) 83.3% 100%)}
.ix-gs .ix-vp{border:0; box-shadow:0 8px 22px rgba(0,0,0,.18)}
.ix-gs .ix-vp:hover{box-shadow:0 16px 34px rgba(0,0,0,.28)}
.ix-gs-vazio{display:flex; flex-direction:column; align-items:center; gap:10px; padding:60px 16px; color:#fff; text-align:center}
.ix-gs-vazio .ix-ic{width:56px; height:56px; color:var(--ix-amarelo)}
.ix-gs-vazio h2{margin:0; font-size:28px; color:#fff}
@media (max-width:600px){
  .ix-gs .srv-principal{padding:24px 14px 60px}
  .ix-gs-topo h1{width:100%; text-align:center}
  .ix-gs-topo .ix-busca{max-width:none}
  .ix-gs-moldura{padding:12px 8px}
}
