/* =========================================================
   PORTAL CSS - HEI V2
   =========================================================
   Arquivo consolidado e higienizado.

   Objetivos desta versão:
   - remover duplicações
   - manter a base visual já construída
   - consolidar o menu modular novo
   - evitar conflitos de cascata
   - preservar organização por blocos
   - corrigir o botão dropdown do header
   ========================================================= */


/* =========================================================
   BASE NEUTRA / GLOBAL
   ========================================================= */

:root{
  --hei-text:#1f2937;
  --hei-muted:#6b7280;
  --hei-line:#e5e7eb;
  --hei-soft:#f3f4f6;
  --hei-soft-2:#f9fafb;

  /* Ações neutras */
  --hei-btn-bg:#ffffff;
  --hei-btn-bd:#d1d5db;
  --hei-btn-tx:#374151;

  /* Botão principal */
  --hei-primary-bg:#4b5563;
  --hei-primary-bd:#4b5563;
  --hei-primary-tx:#ffffff;

  /* Estados */
  --hei-ok-bg:#eef6f0;
  --hei-ok-bd:#cfe7d5;

  --hei-err-bg:#fdecee;
  --hei-err-bd:#f1b7be;
  --hei-err-tx:#b42318;

  --hei-danger:#b42318;
  --hei-warn:#b54708;
  --hei-success:#067647;
}

*,
*::before,
*::after{
  box-sizing:border-box;
}

html,
body{
  overflow-x:hidden;
}

html{
  overflow-y:scroll;
}

/* Wrap principal do portal */
.hei-wrap{
  max-width:1180px;
  margin:0 auto;
  padding:20px 20px 60px;
  font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  color:var(--hei-text);
  overflow-x:clip;
  min-width:0;
}

.hei-card{
  border:0;
  box-shadow:none;
  border-radius:0;
  padding:0;
  background:transparent;
  min-width:0;
}

.hei-head{
  margin-bottom:10px;
}

.hei-head h2{
  margin:0 0 4px 0;
  font-size:22px;
  font-weight:600;
  letter-spacing:-0.2px;
}

.hei-sub{
  margin:0;
  color:var(--hei-muted);
  font-size:13px;
  font-weight:400;
}

.hei-hr{
  border:0;
  height:1px;
  background:var(--hei-line);
  margin:16px 0;
}

.hei-muted{
  color:var(--hei-muted);
  font-size:13px;
  font-weight:400;
}

.hei-section-title{
  margin:22px 0 12px;
  font-size:16px;
  font-weight:600;
  color:#667085;
  border-bottom:1px solid var(--hei-line);
  padding-bottom:10px;
}

.hei-card h3{
  margin:18px 0 10px;
  font-size:18px;
  font-weight:600;
  letter-spacing:-0.2px;
  color:#111827;
}


/* =========================================================
   AUTH PÚBLICO / LOGIN / RESET
   ========================================================= */

.hei-public-auth{
  min-height:calc(100vh - 120px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:40px 20px 60px;
}

.hei-public-auth__shell{
  width:100%;
  max-width:500px;
  background:#fff;
  border:1.5px solid #4c00d3;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 8px 26px rgba(17,24,39,.05);
}

.hei-public-auth__shell--empresa{
  max-width:820px;
}

.hei-public-auth__top{
  background:#4c00d3;
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px 20px;
}

.hei-public-auth__top--empresa{
  min-height:96px;
  background:#ffffff;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px 24px 18px;
}

.hei-public-auth__empresa-line{
  height:5px;
  width:100%;
}

.hei-public-auth__logo img{
  display:block;
  max-width:170px;
  width:auto;
  height:auto;
}

.hei-public-auth__logo--empresa{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
}

.hei-public-auth__logo--empresa img{
  display:block;
  max-width:220px;
  max-height:58px;
  width:auto;
  height:auto;
  object-fit:contain;
}

.hei-public-auth__logo-fallback{
  display:inline-block;
  font-size:28px;
  line-height:1.1;
  font-weight:700;
  letter-spacing:-0.02em;
  text-align:center;
}

.hei-public-auth__logo-fallback--dark{
  color:#111827;
}

.hei-public-auth__body{
  padding:50px 56px 20px;
}

.hei-auth-box{
  width:100%;
  max-width:none;
  margin:0;
}

.hei-auth-box--wide{
  max-width:none;
  text-align:center;
}

.hei-auth-box h3{
  margin:0 0 10px;
  font-size:20px;
  font-weight:700;
  color:#111827;
}

.hei-auth-box p{
  margin:0 0 18px;
  color:#94a3b8;
  line-height:1.5;
}

.hei-auth-box label{
  display:block;
  margin:0 0 6px;
  font-size:14px;
  font-weight:600;
  color:#374151;
}

.hei-auth-box input[type="text"],
.hei-auth-box input[type="email"],
.hei-auth-box input[type="password"],
.hei-auth-box select{
  width:100%;
  min-height:44px;
  padding:10px 12px;
  border:1px solid #d1d5db;
  border-radius:8px;
  background:#fff;
  font-size:14px;
  color:#111827;
}

.hei-auth-box input[type="text"]:focus,
.hei-auth-box input[type="email"]:focus,
.hei-auth-box input[type="password"]:focus,
.hei-auth-box select:focus{
  outline:none;
  border-color:#9ca3af;
  box-shadow:0 0 0 3px rgba(156,163,175,.18);
}

.hei-auth-box .button,
.hei-auth-box input[type="submit"],
.hei-auth-box button[type="submit"],
.hei-auth-box .hei-btn{
  min-height:44px;
  border-radius:8px;
}

/* Botão principal do auth */
.hei-auth-box input[type="submit"],
.hei-auth-box button[type="submit"],
.hei-auth-box .button.button-primary,
.hei-auth-box .button-primary{
  width:100%;
  padding:10px 16px;
  border:1px solid #4c00d3 !important;
  background:#4c00d3 !important;
  color:#fff !important;
  font-size:14px;
  font-weight:700;
  line-height:1.2;
  text-align:center;
  box-shadow:none;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  transition:background .15s ease, border-color .15s ease, transform .08s ease, box-shadow .15s ease;
}

.hei-auth-box input[type="submit"]:hover,
.hei-auth-box button[type="submit"]:hover,
.hei-auth-box .button.button-primary:hover,
.hei-auth-box .button-primary:hover{
  background:#4c00d3 !important;
  border-color:#4c00d3 !important;
  color:#fff !important;
  transform:translateY(-1px);
  box-shadow:0 6px 18px rgba(75,0,216,.25);
}

.hei-auth-box input[type="submit"]:active,
.hei-auth-box button[type="submit"]:active,
.hei-auth-box .button.button-primary:active,
.hei-auth-box .button-primary:active{
  transform:translateY(1px);
}

.hei-auth-box input[type="submit"]:focus,
.hei-auth-box button[type="submit"]:focus,
.hei-auth-box .button.button-primary:focus,
.hei-auth-box .button-primary:focus{
  outline:none;
  box-shadow:0 0 0 3px rgba(75,0,216,.18) !important;
}

.hei-auth-actions{
  margin-top:14px;
  text-align:center;
}

.hei-auth-actions .hei-btn-outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:160px;
  padding:10px 16px;
  border:1px solid #d1d5db;
  border-radius:10px;
  background:#fff;
  color:#374151;
  text-decoration:none;
  font-weight:600;
}

.hei-auth-actions .hei-btn-outline:hover{
  background:#f8fafc;
}

.hei-auth-choice{
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:10px;
}

.hei-auth-choice .hei-btn{
  min-width:180px;
}

.hei-auth-help{
  margin:6px 0 0;
  font-size:13px;
  color:#6b7280 !important;
}

.hei-auth-check{
  margin:12px 0 0;
  font-size:14px;
  color:#374151;
}

.hei-auth-check label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  margin:0;
  font-weight:500;
}

.hei-auth-check input[type="checkbox"]{
  width:16px;
  height:16px;
}

.hei-msg-sucesso,
.hei-msg-erro{
  margin-bottom:14px;
}


/* =========================================================
   GRID / LAYOUT
   ========================================================= */

.hei-grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 24px;
  margin-top:12px;
}

.hei-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  flex-wrap:wrap;
  min-width:0;
}

.hei-inline{
  display:inline;
}


/* =========================================================
   BOTÕES / LINKS
   ========================================================= */

.hei-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:20px;
  margin-bottom:50px;
  max-width:100%;
  min-width:0;
}

.hei-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:8px;
  border:1px solid var(--hei-btn-bd);
  text-decoration:none;
  background:var(--hei-btn-bg);
  color:var(--hei-btn-tx);
  cursor:pointer;
  font-weight:600;
  font-size:13px;
  line-height:1.1;
  transition:background .12s ease, border-color .12s ease, transform .06s ease;
}

.hei-btn:hover{
  background:var(--hei-soft);
  border-color:#cbd5e1;
}

.hei-btn:active{
  transform:translateY(1px);
}

.hei-btn-primary{
  border-color:var(--hei-primary-bd);
  background:var(--hei-primary-bg);
  color:var(--hei-primary-tx);
}

.hei-btn-primary:hover{
  background:#374151;
  border-color:#374151;
  color:#ffffff;  
}

.hei-link{
  text-decoration:none;
  color:#4b5563;
}

.hei-link:hover{
  text-decoration:underline;
}

/* Botão pequeno base */
.hei-btn-sm{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:8px;
  border:1px solid var(--hei-btn-bd);
  background:#fff;
  color:var(--hei-btn-tx);
  cursor:pointer;
  font-weight:600;
  font-size:12px;
  line-height:1;
  text-decoration:none;
  transition:background .12s ease, border-color .12s ease, opacity .12s ease;
}

.hei-btn-sm:hover{
  background:var(--hei-soft);
  border-color:#cbd5e1;
}

/* Variações para ações */
.hei-btn-edit{
  background:#f3f4f6;
  color:#111827;
  border-color:#d1d5db;
}

.hei-btn-success{
  background:#16a34a;
  color:#ffffff;
  border-color:#16a34a;
}

.hei-btn-danger{
  background:#dc2626;
  color:#ffffff;
  border-color:#dc2626;
}


/* =========================================================
   ALERTAS
   ========================================================= */

.hei-alert,
.hei-msg-sucesso,
.hei-msg-erro,
.hei-ok,
.hei-err{
  padding:10px 12px;
  border-radius:10px;
  border:1px solid var(--hei-line);
  font-size:13px;
  font-weight:600;

}

.hei-alert{
  margin:12px 0;
  background:#ffd368;
}

.hei-msg-sucesso,
.hei-ok{
  background:var(--hei-ok-bg);
  border-color:var(--hei-ok-bd);
  color:#111827;
}

.hei-msg-erro,
.hei-err{
  background:var(--hei-err-bg);
  border-color:var(--hei-err-bd);
  color:var(--hei-err-tx);
}


/* =========================================================
   FORM
   ========================================================= */

.hei-form-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:10px 40px;
  width:100%;
  min-width:0;
}

.hei-form-grid--public{
  grid-template-columns:1fr 1fr;
  gap:14px 24px;
  margin-top:10px;
}

.hei-field{
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:10px 14px;
  align-items:center;
  min-width:0;
}

.hei-field--public{
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:stretch;
}

.hei-field label{
  margin:0;
  font-size:13px;
  font-weight:600;
  color:#4a4a4a;
  min-width:0;
}

.hei-field--public label{
  margin:0;
  font-size:14px;
  font-weight:600;
  color:#374151;
}

.hei-input{
  width:100%;
  max-width:100%;
  min-width:0;
  padding:10px 12px;
  border:1px solid #d1d5db;
  border-radius:8px;
  outline:none;
  background:#fff;
  color:var(--hei-text);
  font-size:13px;
  box-sizing:border-box;
}

.hei-field input,
.hei-field select,
.hei-field textarea{
  width:100%;
  max-width:100%;
  min-width:0;
}

.hei-field--public .hei-input{
  min-height:44px;
}

select.hei-input{
  background-color:#fff;
  color:var(--hei-text);
}

.hei-input:focus{
  border-color:#9ca3af;
  box-shadow:0 0 0 3px rgba(156,163,175,.25);
}

.hei-field.is-invalid .hei-input,
.hei-field--public.is-invalid .hei-input{
  border-color:#ef4444;
  box-shadow:0 0 0 3px rgba(239,68,68,.12);
}

.hei-error{
  grid-column:2 / 3;
  margin-top:-6px;
  color:#b42318;
  font-size:12px;
  font-weight:600;
}

.hei-error--public{
  margin-top:2px;
  font-size:12px;
  font-weight:600;
  color:#b42318;
}

.hei-card,
.hei-form-grid,
.hei-company-grid,
.hei-row{
  min-width:0;
}

.hei-alert,
.hei-tabs{
  max-width:100%;
  min-width:0;
}


/* =========================================================
   TABELA
   ========================================================= */

.hei-table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--hei-line);
  border-radius:10px;
  background:#fff;
}

.hei-table{
  width:100%;
  border-collapse:collapse;
  min-width:760px;
}

.hei-table th,
.hei-table td{
  padding:10px;
  border-bottom:1px solid #eef2f7;
  text-align:left;
  font-size:13px;
  vertical-align:middle;
}

.hei-table th{
  background:var(--hei-soft-2);
  font-size:12px;
  font-weight:600;
  color:#374151;
}

.hei-status{
  display:inline-flex;
  align-items:center;
  padding:3px 10px;
  border-radius:999px;
  border:1px solid #e5e7eb;
  background:#fff;
  font-size:12px;
  font-weight:600;
  line-height:1;
}

.hei-status--ativo{
  border-color:rgba(6,118,71,.20);
  background:rgba(6,118,71,.06);
  color:var(--hei-success);
}

.hei-status--pendente{
  border-color:rgba(181,71,8,.20);
  background:rgba(181,71,8,.06);
  color:var(--hei-warn);
}

.hei-status--recusado{
  border-color:rgba(180,35,24,.22);
  background:rgba(180,35,24,.06);
  color:var(--hei-danger);
}

.hei-table button,
.hei-table .hei-btn-sm{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:8px;
  font-weight:600;
  font-size:12px;
  line-height:1;
  cursor:pointer;
}

.hei-actions-col{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}


/* =========================================================
   ABAS
   ========================================================= */

.hei-tabs{
  display:flex;
  gap:10px;
  align-items:flex-end;
  border-bottom:1px solid var(--hei-line);
  margin:12px 0 18px;
  padding:0 2px;
  overflow-x:auto;
  scrollbar-width:none;
}

.hei-tabs::-webkit-scrollbar{
  display:none;
}

.hei-tab{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border:1px solid var(--hei-line);
  border-bottom:0;
  border-top-left-radius:12px;
  border-top-right-radius:12px;
  background:#f6f7f9;
  color:#374151;
  text-decoration:none;
  font-weight:600;
  font-size:13px;
  line-height:1;
  position:relative;
  top:1px;
  white-space:nowrap;
  transition:background .12s ease, color .12s ease, border-color .12s ease;
}

.hei-tab:hover{
  background:#eef0f3;
  border-color:#d7dde6;
}

.hei-tab.is-active{
  background:#fff;
  color:#111827;
  border-color:#d7dde6;
  z-index:2;
}

.hei-tab.is-active::after{
  content:"";
  position:absolute;
  left:-1px;
  right:-1px;
  bottom:-1px;
  height:2px;
  background:#fff;
}

.hei-tab.is-active::before{
  content:"";
  position:absolute;
  left:10px;
  right:10px;
  top:0;
  height:2px;
  border-radius:999px;
  background:#9ca3af;
  opacity:.55;
}

/* Aba "aguardando" com destaque */
.hei-tab.has-alert{
  background:#fff7ed;
  border-color:#fdba74;
  color:#c2410c;
  font-weight:600;
}

.hei-tab-badge{
  display:inline-block;
  margin-left:6px;
  min-width:18px;
  padding:0 6px;
  border-radius:999px;
  background:#ea580c;
  color:#fff;
  font-size:12px;
  line-height:18px;
  text-align:center;
  vertical-align:middle;
}


/* =========================================================
   PAGINAÇÃO
   ========================================================= */

.hei-pagination{
  margin:12px 0;
  padding:0;
}

.hei-pagination .page-numbers{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}

.hei-pagination .page-numbers li{
  margin:0;
  padding:0;
}

.hei-pagination .page-numbers a,
.hei-pagination .page-numbers span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 10px;
  border-radius:8px;
  border:1px solid var(--hei-btn-bd);
  background:#fff;
  color:var(--hei-btn-tx);
  text-decoration:none;
  font-weight:600;
  font-size:12px;
  line-height:1;
  transition:background .12s ease, border-color .12s ease, transform .06s ease;
}

.hei-pagination .page-numbers a:hover{
  background:var(--hei-soft);
  border-color:#cbd5e1;
}

.hei-pagination .page-numbers a:active{
  transform:translateY(1px);
}

.hei-pagination .page-numbers .current{
  border-color:var(--hei-primary-bd);
  background:var(--hei-primary-bg);
  color:var(--hei-primary-tx);
}

.hei-pagination .page-numbers .dots{
  border-color:transparent;
  background:transparent;
  padding:7px 4px;
  color:var(--hei-muted);
}

.hei-pagination .page-numbers .prev,
.hei-pagination .page-numbers .next{
  padding:7px 12px;
}

.hei-table-wrap + .hei-pagination{
  margin-top:14px;
}

.hei-pagination + .hei-table-wrap{
  margin-top:10px;
}


/* =========================================================
   SWITCH EMPRESA
   ========================================================= */

.hei-company-switch{
  border:1px solid var(--hei-line);
  border-radius:10px;
  background:#fff;
  padding:14px;
  margin:12px 0 14px;
}

.hei-company-switch__title{
  font-size:14px;
  font-weight:600;
  color:#111827;
  margin-bottom:10px;
}

.hei-company-switch__form{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.hei-company-switch__form .hei-input{
  max-width:720px;
}


/* =========================================================
   DADOS DA EMPRESA
   ========================================================= */

.hei-company-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.hei-company-box{
  border:1px solid var(--hei-line);
  border-radius:12px;
  background:#fff;
  padding:16px 18px;
}

.hei-read-grid{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.hei-read-row{
  display:grid;
  grid-template-columns:180px 1fr;
  gap:14px;
  align-items:flex-start;
  padding-bottom:10px;
  border-bottom:1px solid #f1f5f9;
}

.hei-read-row:last-child{
  border-bottom:0;
  padding-bottom:0;
}

.hei-read-label{
  font-size:13px;
  font-weight:600;
  color:#667085;
}

.hei-read-value{
  font-size:14px;
  color:#111827;
  word-break:break-word;
}

.hei-pill-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.hei-pill{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid #dbe3ea;
  background:#f8fafc;
  color:#334155;
  font-size:12px;
  font-weight:600;
  line-height:1;
}

.hei-pill--dark{
  background:#4b5563;
  border-color:#4b5563;
  color:#fff;
}

.hei-color-dot{
  width:18px;
  height:18px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.08);
  display:inline-block;
  flex:0 0 18px;
}

/* Perfil executivo da empresa - leitura compacta no portal */
.hei-company-population{
  margin:0 0 18px;
  padding:18px;
  border:1px solid #dce6ee;
  border-radius:16px;
  background:linear-gradient(180deg, #fbfdff 0%, #f7fafc 100%);
}

.hei-company-population__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}

.hei-company-population__eyebrow{
  display:block;
  margin-bottom:4px;
  color:var(--hei-company-accent, #0f8f83);
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
}

.hei-company-population__head h3{
  margin:0;
  color:#0f172a;
  font-size:18px;
  line-height:1.25;
}

.hei-company-population__head p{
  margin:4px 0 0;
  color:#64748b;
  font-size:12px;
}

.hei-company-population__badge{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border:1px solid color-mix(in srgb, var(--hei-company-accent, #0f8f83) 24%, #dbe5ec);
  border-radius:999px;
  background:color-mix(in srgb, var(--hei-company-accent, #0f8f83) 7%, #fff);
  color:#475569;
  font-size:10px;
  font-weight:700;
  white-space:nowrap;
}

.hei-company-kpis{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-bottom:12px;
}

.hei-company-kpi{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
  padding:12px 14px;
  border:1px solid #e2e8f0;
  border-top:3px solid #8da5c3;
  border-radius:12px;
  background:#fff;
}

.hei-company-kpi--positive{
  border-top-color:#17a673;
}

.hei-company-kpi--attention{
  border-top-color:#e1a008;
}

.hei-company-kpi__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:10px;
  background:#eef6f8;
  color:var(--hei-company-accent, #0f8f83);
}

.hei-company-kpi__icon svg{
  width:17px;
  height:17px;
}

.hei-company-kpi > div{
  display:grid;
  min-width:0;
}

.hei-company-kpi strong{
  color:#0f172a;
  font-size:21px;
  line-height:1;
}

.hei-company-kpi span:not(.hei-company-kpi__icon){
  margin-top:5px;
  color:#334155;
  font-size:12px;
  font-weight:700;
}

.hei-company-kpi small{
  margin-top:2px;
  color:#8491a3;
  font-size:10px;
}

.hei-company-profile-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
}

.hei-company-profile-card{
  min-width:0;
  padding:13px 14px;
  border:1px solid #e2e8f0;
  border-radius:12px;
  background:#fff;
}

.hei-company-profile-card__title{
  margin-bottom:10px;
  color:#26364a;
  font-size:12px;
  font-weight:800;
}

.hei-company-profile-card__items{
  display:grid;
  gap:8px;
}

.hei-company-profile-item__line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:3px;
  color:#475569;
  font-size:10px;
}

.hei-company-profile-item__line span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.hei-company-profile-item__line strong{
  flex:0 0 auto;
  color:#1e293b;
  font-size:10px;
}

.hei-company-profile-item__track{
  height:4px;
  overflow:hidden;
  border-radius:999px;
  background:#e8eef3;
}

.hei-company-profile-item__track span{
  display:block;
  height:100%;
  min-width:0;
  border-radius:inherit;
  background:var(--hei-company-accent, #0f8f83);
}

.hei-company-profile-item small{
  display:block;
  margin-top:3px;
  color:#94a3b8;
  font-size:9px;
}

.hei-company-profile-card__more,
.hei-company-profile-card__empty{
  margin-top:8px;
  color:#8491a3;
  font-size:9px;
}

@media (max-width:1100px){
  .hei-company-profile-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:720px){
  .hei-company-population{
    padding:14px;
  }

  .hei-company-population__head{
    display:block;
  }

  .hei-company-population__badge{
    margin-top:10px;
  }

  .hei-company-kpis,
  .hei-company-profile-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   DASHBOARD / HOME - GERAL
   ========================================================= */

.hei-dashboard{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:16px;
  margin-top:20px;
}

.hei-card-modulo{
  background:#fff;
  border:1px solid #e5e7eb;
  padding:20px;
  border-radius:12px;
  text-decoration:none;
  color:#111;
  font-weight:600;
  transition:.15s;
}

.hei-card-modulo:hover{
  transform:translateY(-2px);
  box-shadow:0 4px 10px rgba(0,0,0,.08);
}

.hei-home-card{
  padding:28px 30px 30px;
}

.hei-home-head{
  margin-bottom:18px;
}

/* SAUDACAO DA HOME - ALTERACAO CODEX 30/08/2026 */
.hei-home-welcome{
  position:relative;
  margin-bottom:26px;
  padding:4px 0 22px;
  border-bottom:1px solid #e2e8f0;
}

.hei-home-welcome__kicker{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-bottom:9px;
  color:#087f77;
  font-size:11px;
  font-weight:850;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.hei-home-welcome__kicker svg{
  width:16px;
  height:16px;
  stroke-width:2.4;
}

.hei-home-welcome h2{
  margin:0 0 8px;
  color:#0f172a;
  font-size:30px;
  font-weight:750;
  letter-spacing:-.025em;
  line-height:1.15;
}

.hei-home-welcome__subtitle{
  max-width:780px;
  margin:0;
  color:#53657b;
  font-size:14px;
  line-height:1.65;
}

.hei-home-colab{
  margin-top:8px;
  margin-bottom: 6;
}

.hei-home-colab-apresentacao{
  margin-bottom:60px;
}

.hei-home-colab-box{
  max-width:980px;
}

.hei-home-colab-box h3{
  margin:0 0 10px;
}

.hei-home-colab-box p{
  margin:0;
  line-height:1.75;
}

.hei-home-empty{
  margin-top:8px;
}

.hei-home-empty .hei-muted{
  font-size:14px;
}

.hei-home-news{
  margin-top:34px;
  padding-top:8px;
  border-top:1px solid var(--hei-line);
}

.hei-home-news .hei-home-head{
  margin-bottom:16px;

}

.hei-home-news-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:16px;
}

.hei-home-news-card{
  margin-top:15px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:18px;
  transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.hei-home-news-card:hover{
  transform:translateY(-2px);
  box-shadow:0 4px 10px rgba(0,0,0,.08);
  border-color:#d8dee6;
}

.hei-home-news-meta{
  font-size:12px;
  font-weight:600;
  color:#6b7280;
  margin-bottom:10px;
}

.hei-home-news-title{
  margin:0 0 10px;
  font-size:18px;
  line-height:1.3;
  font-weight:700;
  color:#111827;
}

.hei-home-news-title a{
  color:inherit;
  text-decoration:none;
}

.hei-home-news-title a:hover{
  text-decoration:underline;
}

.hei-home-news-excerpt{
  font-size:14px;
  line-height:1.55;
  color:#4b5563;
  margin-bottom:14px;
}

.hei-home-news-link a{
  font-size:13px;
  font-weight:700;
  color:#374151;
  text-decoration:none;
}

.hei-home-news-link a:hover{
  text-decoration:underline;
}

.hei-home-news-empty{
  padding-top:4px;
}


/* =========================================================
   HOME DASHBOARD - GESTOR / ADMIN
   ========================================================= */

/* =========================================================
   HOME PROATIVA DA MATRIZ - ALTERACAO CODEX 05/08/2026
   ========================================================= */
.hei-home-raci{
  margin:26px 0 8px;
  overflow:hidden;
  border:1px solid #b9e2de;
  border-left:5px solid #15978d;
  border-radius:18px;
  background:linear-gradient(135deg,#f3fbfa 0%,#ffffff 72%);
  box-shadow:0 14px 34px rgba(15,23,42,.055);
}

.hei-home-raci.has-action{
  border-color:#f3d28b;
  border-left-color:#dc9400;
  background:linear-gradient(135deg,#fffaf0 0%,#ffffff 72%);
}

.hei-home-raci__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:22px 24px;
  border-bottom:1px solid #dce8ec;
}

.hei-home-raci__identity{
  display:flex;
  align-items:center;
  min-width:0;
  gap:15px;
}

.hei-home-raci__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 46px;
  width:46px;
  height:46px;
  border-radius:14px;
  background:#dff5f2;
  color:#087f77;
}

.hei-home-raci.has-action .hei-home-raci__icon{
  background:#fff0cc;
  color:#a96700;
}

.hei-home-raci__icon svg{width:23px;height:23px;}
.hei-home-raci__eyebrow{
  display:block;
  margin-bottom:4px;
  color:#087f77;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.hei-home-raci__identity h3{
  margin:0 0 4px;
  color:#0f172a;
  font-size:20px;
  line-height:1.2;
}
.hei-home-raci__identity p{
  margin:0;
  color:#53657b;
  font-size:13px;
}

.hei-home-raci__summary{
  display:flex;
  align-items:stretch;
  gap:8px;
  flex:0 0 auto;
}
.hei-home-raci__summary > span{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-width:70px;
  min-height:58px;
  padding:7px 12px;
  border:1px solid #d8e4e8;
  border-radius:12px;
  background:#fff;
  color:#64748b;
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
}
.hei-home-raci__summary strong{
  color:#0f172a;
  font-size:21px;
  line-height:1.1;
}
.hei-home-raci__summary .is-action{border-color:#f2d38e;background:#fff9ec;}
.hei-home-raci__summary .is-action strong{color:#a96700;}
.hei-home-raci__summary .is-late{border-color:#f3b2b6;background:#fff5f5;}
.hei-home-raci__summary .is-late strong{color:#c43d49;}

.hei-home-raci__list{
  max-height:374px;
  overflow:auto;
  scrollbar-width:thin;
}
.hei-home-raci__item{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(210px,.58fr) auto;
  align-items:center;
  gap:18px;
  padding:15px 20px;
  border-bottom:1px solid #e6edf0;
  background:rgba(255,255,255,.78);
}
.hei-home-raci__item:last-child{border-bottom:0;}
.hei-home-raci__item.has-action{background:rgba(255,250,240,.7);}
.hei-home-raci__trail{
  display:block;
  margin-bottom:2px;
  color:#087f77;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.hei-home-raci__item h4{
  margin:0 0 7px;
  color:#0f172a;
  font-size:15px;
  line-height:1.25;
}
.hei-home-raci__roles{display:flex;flex-wrap:wrap;gap:6px;}
.hei-home-raci__roles span{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:3px 7px;
  border-radius:999px;
  background:#edf6f7;
  color:#466276;
  font-size:10px;
}
.hei-home-raci__roles strong{color:#087f77;}
.hei-home-raci__item-state{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
}
.hei-home-raci__item-state > span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#52657a;
  font-size:12px;
  font-weight:700;
}
.hei-home-raci__item-state svg{width:15px;height:15px;}
.hei-home-raci__item-state .is-action{color:#9a6500;}
.hei-home-raci__item-state .is-late{color:#bd3542;}
.hei-home-raci__item-state .is-ok{color:#07866e;}
.hei-home-raci__item-state small{
  max-width:260px;
  overflow:hidden;
  color:#687a8d;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hei-home-raci__deadline{display:flex!important;gap:6px;align-items:center;width:max-content;margin-top:7px;padding:6px 9px;border-radius:9px;background:#fff4d8;color:#8a5b00!important;font-size:11px!important}.hei-home-raci__deadline svg{width:14px!important;height:14px!important}.hei-home-raci__deadline.is-late{background:#fde9ed;color:#b72e42!important}

/* MINHA JORNADA NA HOME - ALTERACAO CODEX 11/08/2026 */
.hei-home-journey{margin:22px 0;padding:22px;border:1px solid #cfe2e6;border-radius:20px;background:linear-gradient(135deg,#f3fbfa,#fff)}.hei-home-journey>header{display:flex;justify-content:space-between;gap:18px;align-items:center}.hei-home-journey>header span{color:#087f78;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.hei-home-journey>header h3{margin:4px 0}.hei-home-journey>header p{margin:0;color:#66788d}.hei-home-journey>header>a{padding:9px 13px;border:1px solid #bcd9d5;border-radius:10px;background:#fff;color:#087f78;font-weight:800}.hei-home-journey__kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:16px}.hei-home-journey__kpis>span{padding:11px 13px;border:1px solid #dce7eb;border-top:3px solid #8aa2bd;border-radius:12px;background:#fff;color:#617185;font-size:11px}.hei-home-journey__kpis>span.is-progress{border-top-color:#0d9386}.hei-home-journey__kpis>span.is-done{border-top-color:#18a168}.hei-home-journey__kpis strong{display:block;margin-bottom:2px;color:#15263d;font-size:21px}.hei-home-journey__list{display:grid;gap:8px;margin-top:13px}.hei-home-journey__list article{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,240px) auto;gap:16px;align-items:center;padding:12px 14px;border:1px solid #dce7eb;border-left:4px solid #8aa2bd;border-radius:12px;background:#fff}.hei-home-journey__list article.status-andamento{border-left-color:#0d9386}.hei-home-journey__list article.status-concluida{border-left-color:#18a168}.hei-home-journey__list article>div:first-child small,.hei-home-journey__list article>div:first-child strong,.hei-home-journey__list article>div:first-child em{display:block}.hei-home-journey__list article>div:first-child small{color:#087f78;font-size:9px;font-weight:800;text-transform:uppercase}.hei-home-journey__list article>div:first-child strong{margin-top:3px}.hei-home-journey__list article>div:first-child em{margin-top:3px;color:#758397;font-size:10px;font-style:normal}.hei-home-journey__progress{display:flex;gap:9px;align-items:center}.hei-home-journey__progress>span{display:block;overflow:hidden;flex:1;height:7px;border-radius:999px;background:#e8eff2}.hei-home-journey__progress i{display:block;height:100%;border-radius:inherit;background:#109185}.hei-home-journey__progress strong{font-size:11px}.hei-home-journey__list article>a{display:flex;gap:6px;align-items:center;padding:8px 11px;border-radius:9px;background:#0d8177;color:#fff;text-decoration:none;font-size:11px;font-weight:800}.hei-home-journey__list article>a svg{width:14px}@media(max-width:800px){.hei-home-journey__kpis{grid-template-columns:1fr 1fr}.hei-home-journey__list article{grid-template-columns:1fr}.hei-home-journey__list article>a{width:max-content}}@media(max-width:520px){.hei-home-journey{padding:16px}.hei-home-journey>header{align-items:flex-start;flex-direction:column}.hei-home-journey__kpis{grid-template-columns:1fr 1fr}}
/* IDENTIDADE PREMIUM DAS TRILHAS NA HOME - ALTERACAO CODEX 11/08/2026 */
.hei-home-journey{overflow:hidden;padding:0;border-color:#c9d6e4;background:#fff;box-shadow:0 18px 38px rgba(20,38,67,.09)}
.hei-home-journey>header{position:relative;padding:22px 24px;background:linear-gradient(115deg,#0c1830 0%,#18365b 72%,#0c8178 145%);color:#fff}
.hei-home-journey>header:after{position:absolute;right:115px;top:-70px;width:190px;height:190px;border:1px solid rgba(255,255,255,.08);border-radius:50%;content:""}
.hei-home-journey__heading{display:flex;gap:14px;align-items:center}
.hei-home-journey__icon{display:flex!important;width:42px;height:42px;flex:0 0 42px;align-items:center;justify-content:center;border:1px solid rgba(126,230,216,.35);border-radius:12px;background:rgba(13,151,139,.18);color:#8ce7db!important}
.hei-home-journey__icon svg{width:21px;height:21px}
.hei-home-journey__heading>div>span{color:#8ce7db!important;font-size:12px!important;font-weight:900!important;letter-spacing:.11em!important}
.hei-home-journey__heading p{margin-top:6px!important;color:#dbe5f1!important}
.hei-home-journey>header>a{position:relative;z-index:1;display:inline-flex;gap:7px;align-items:center;border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.09);color:#fff}
.hei-home-journey>header>a svg{width:15px;height:15px}
.hei-home-journey__kpis{margin:18px 22px 0}
.hei-home-journey__list{margin:13px 22px 22px}
.hei-home-journey__kpis>span{background:#f9fbfd}
.hei-home-journey__list article{border-left-color:#6684aa}
.hei-home-journey__list article>a{background:#142d50}
.hei-home-journey__list article.status-andamento>a{background:#0d8177}
.hei-home-journey>header>a.hei-home-journey__all{
  border-color:#fff;
  background:#fff;
  color:#10233f;
  box-shadow:0 8px 18px rgba(4,20,45,.2);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.hei-home-journey>header>a.hei-home-journey__all:hover,
.hei-home-journey>header>a.hei-home-journey__all:focus-visible{
  border-color:#8ce7db;
  background:#e9fffb;
  color:#0b5360;
  box-shadow:0 10px 22px rgba(4,20,45,.28);
  transform:translateY(-1px);
}
.hei-home-journey__list article>a.hei-home-journey__action{
  border:1px solid #0b756e;
  background:linear-gradient(135deg,#0d9488,#08756f);
  box-shadow:0 7px 15px rgba(8,117,111,.2);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.hei-home-journey__list article.status-concluida>a.hei-home-journey__action{
  border-color:#147a72;
  background:linear-gradient(135deg,#118f85,#0d716b);
}
.hei-home-journey__list article>a.hei-home-journey__action:hover,
.hei-home-journey__list article>a.hei-home-journey__action:focus-visible{
  border-color:#075c58;
  background:linear-gradient(135deg,#087a72,#075c58);
  box-shadow:0 10px 20px rgba(8,92,88,.28);
  transform:translateY(-1px);
}
@media(max-width:520px){.hei-home-journey{padding:0}.hei-home-journey>header{padding:18px;flex-direction:column}.hei-home-journey__kpis{margin:15px 16px 0}.hei-home-journey__list{margin:11px 16px 16px}}

.hei-home-raci__open{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:36px;
  padding:0 12px;
  border:1px solid #9fd4cf;
  border-radius:10px;
  background:linear-gradient(135deg,#0d9488,#08756f);
  color:#fff;
  font-size:12px;
  font-weight:750;
  text-decoration:none;
  box-shadow:0 7px 15px rgba(8,117,111,.18);
  transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.hei-home-raci__open:hover,
.hei-home-raci__open:focus-visible{
  border-color:#075c58;
  background:#075c58;
  color:#fff;
  box-shadow:0 10px 20px rgba(8,92,88,.26);
  transform:translateY(-1px);
}
.hei-home-raci__open svg{width:15px;height:15px;}

@media (max-width:900px){
  .hei-home-raci__header{align-items:flex-start;flex-direction:column;}
  .hei-home-raci__summary{width:100%;}
  .hei-home-raci__summary > span{flex:1;}
  .hei-home-raci__item{grid-template-columns:minmax(0,1fr) auto;}
  .hei-home-raci__item-state{grid-column:1 / -1;grid-row:2;}
  .hei-home-raci__open{grid-column:2;grid-row:1;}
}

@media (max-width:560px){
  .hei-home-raci__header{padding:18px;}
  .hei-home-raci__identity{align-items:flex-start;}
  .hei-home-raci__summary{gap:5px;}
  .hei-home-raci__summary > span{min-width:0;padding:6px;}
  .hei-home-raci__item{gap:10px;padding:14px 16px;}
  .hei-home-raci__open span{display:none;}
  .hei-home-raci__open{width:36px;padding:0;}
}

.hei-home-dash{
  margin:60px 0 28px;
}

.hei-home-dash-head{
  margin-bottom:18px;
}

.hei-home-dash-head h3{
  margin:0 0 6px;
  font-size:28px;
  line-height:1.2;
  color:#0f172a;
}

.hei-home-dash-head p{
  margin:0;
  font-size:14px;
  color:#64748b;
}

.hei-home-dash-cards{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
  margin-top:6px;
  margin-bottom:16px;
}

.hei-home-kpi-card{
  background:#ffffff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:18px 20px;
}

.hei-home-kpi-card.is-warning{
  border-color:#fdba74;
  background:#fff7ed;
}

.hei-home-kpi-value{
  font-size:30px;
  font-weight:700;
  line-height:1;
  color:#0f172a;
  margin-bottom:8px;
}

.hei-home-kpi-card.is-warning .hei-home-kpi-value{
  color:#c2410c;
}

.hei-home-kpi-label{
  font-size:13px;
  color:#64748b;
}

.hei-home-dash-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:4px;
  margin-bottom:18px;
}

.hei-home-dash-card{
  background:#ffffff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:20px;
}

.hei-home-dash-title{
  margin-bottom:14px;
  font-size:16px;
  font-weight:700;
  color:#0f172a;
}

.hei-home-quick-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.hei-home-quick-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 14px;
  border:1px solid #dbe2ea;
  border-radius:10px;
  background:#f8fafc;
  color:#334155;
  text-decoration:none;
  font-weight:600;
  text-align:center;
}

.hei-home-quick-btn:hover{
  background:#f1f5f9;
}

.hei-home-alert-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:16px;
}

.hei-home-alert-item{
  display:flex;
  align-items:center;
  gap:10px;
}

.hei-home-alert-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  height:28px;
  padding:0 8px;
  border-radius:999px;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:13px;
  font-weight:700;
}

.hei-home-alert-text{
  font-size:14px;
  color:#334155;
}

.hei-home-dash-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.hei-home-dash-barcard{
  margin-bottom:6px;
}

.hei-home-status-bars{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.hei-home-status-row{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.hei-home-status-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:14px;
  color:#334155;
}

.hei-home-status-track{
  width:100%;
  height:10px;
  border-radius:999px;
  background:#eef2f7;
  overflow:hidden;
}

.hei-home-status-fill{
  height:100%;
  border-radius:999px;
}

.hei-home-status-fill.is-active{
  background:#2563eb;
}

.hei-home-status-fill.is-pending{
  background:#ea580c;
}

.hei-home-status-fill.is-inactive{
  background:#94a3b8;
}




/* Central de gestão contextual da home */
.hei-home-dash{margin-top:40px}
.hei-home-access,
.hei-home-attention{background:#fff;border:1px solid #dbe5ee;border-radius:18px;box-shadow:0 12px 28px rgba(15,35,63,.06)}
.hei-home-access{padding:24px;border-top:3px solid #0d9488}
.hei-home-access__head,.hei-home-attention__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.hei-home-access__identity{display:flex;align-items:flex-start;gap:13px;min-width:0}
.hei-home-access__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border:1px solid #a8ded8;border-radius:12px;background:#e8faf7;color:#07877d}
.hei-home-access__icon svg{width:21px;height:21px}
.hei-home-access__eyebrow,.hei-home-attention__eyebrow{display:block;margin:2px 0 5px;color:#07877d;font-size:10px;font-weight:900;letter-spacing:.12em}
.hei-home-access h2,.hei-home-attention h2{margin:0;color:#10233f;font-size:20px;line-height:1.2}
.hei-home-access p,.hei-home-attention p{margin:5px 0 0;color:#607894;font-size:13px;line-height:1.45}
.hei-home-access__context{flex:0 0 auto;padding:8px 11px;border:1px solid #dbe5ee;border-radius:999px;background:#f8fbfd;color:#47627e;font-size:12px;font-weight:700}
.hei-home-access__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}
.hei-home-access__card{display:flex;align-items:center;gap:12px;min-width:0;min-height:80px;padding:14px;border:1px solid #dbe5ee;border-radius:13px;background:#f9fbfd;color:#10233f;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.hei-home-access__grid a.hei-home-access__card,
.hei-home-access__grid a.hei-home-access__card:hover,
.hei-home-access__grid a.hei-home-access__card:focus-visible,
.hei-home-access__grid a.hei-home-access__card strong,
.hei-home-access__grid a.hei-home-access__card small{text-decoration:none!important}
.hei-home-access__card:hover,.hei-home-access__card:focus-visible{border-color:#7dcfc5;background:#f0fcfa;box-shadow:0 9px 18px rgba(8,117,111,.12);transform:translateY(-2px)}
.hei-home-access__card-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:#dff5f2;color:#07877d}
.hei-home-access__card-icon svg{width:17px;height:17px}
.hei-home-access__card-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 auto}
.hei-home-access__card-copy strong{overflow:hidden;color:#10233f;font-size:14px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}
.hei-home-access__card-copy small{overflow:hidden;color:#607894;font-size:11px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.hei-home-access__card-arrow{flex:0 0 auto;width:16px;height:16px;color:#07877d}
.hei-home-access__empty{margin-top:18px!important;padding:14px 16px;border:1px dashed #cbd8e4;border-radius:11px;background:#f8fbfd}
.hei-home-attention{margin-top:16px;padding:22px 24px}
.hei-home-attention.has-alert{border-left:3px solid #f59e0b}.hei-home-attention.is-clear{border-left:3px solid #10b981}
.hei-home-attention__status{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;padding:8px 11px;border-radius:999px;background:#fff7e6;color:#a15c00;font-size:11px;font-weight:800}
.hei-home-attention.is-clear .hei-home-attention__status{background:#eafaf3;color:#087b58}
.hei-home-attention__status svg{width:15px;height:15px}
.hei-home-attention .hei-home-alert-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0 0}
.hei-home-attention .hei-home-alert-item{display:flex;align-items:center;gap:10px;min-width:0;padding:12px;border:1px solid #f3dfb2;border-radius:12px;background:#fffaf0;color:#10233f;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.hei-home-attention .hei-home-alert-item:hover,.hei-home-attention .hei-home-alert-item:focus-visible{border-color:#f4b942;box-shadow:0 7px 14px rgba(161,92,0,.1);transform:translateY(-1px)}
.hei-home-attention .hei-home-alert-number{flex:0 0 auto;min-width:32px;height:32px;background:#fff0c7;color:#a15c00}
.hei-home-attention .hei-home-alert-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto;font-size:12px}
.hei-home-attention .hei-home-alert-text strong{color:#243b53;font-size:12px;line-height:1.3}
.hei-home-attention .hei-home-alert-text small{color:#71859c;font-size:10px;line-height:1.3}
.hei-home-attention .hei-home-alert-item>svg{flex:0 0 auto;width:15px;height:15px;color:#a15c00}
@media(max-width:900px){.hei-home-access__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hei-home-attention .hei-home-alert-list{grid-template-columns:1fr}}
@media(max-width:560px){.hei-home-access,.hei-home-attention{padding:18px}.hei-home-access__head,.hei-home-attention__head{flex-direction:column;gap:12px}.hei-home-access__context,.hei-home-attention__status{align-self:flex-start}.hei-home-access__grid{grid-template-columns:1fr;margin-top:16px}.hei-home-access__card{min-height:72px}}

/* =========================================================
   HEADER / MENU PORTAL V2
   ========================================================= */

.hei-portal-header-outer{
  width:100%;
  margin:0;
}

.hei-portal-header-wrap{
  max-width:1380px;
  margin:0 auto;
  padding:0;
}

.hei-portal-header-top{
  display:grid;
  grid-template-columns:1fr 1fr auto;
  align-items:end;
  gap:20px;
  min-height:72px;
  padding:40px 0 0;
}

.hei-portal-header-left{
  display:flex;
  align-items:flex-end;
  min-width:0;
}

.hei-portal-brand{
  display:flex;
  align-items:flex-end;
  text-decoration:none;
  color:inherit;
  min-width:0;
}

.hei-portal-logo-box{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-height:70px;
  max-width:340px;
  padding-bottom:8px; /* respiro do risco */
  padding-left: 15px;
}

.hei-portal-logo-box--image img{
  max-width:210px;     /* ~25% menor */
  max-height:52px;     /* controla logos quadrados */
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}

.hei-portal-logo-fallback-text{
  display:block;
  font-size:30px;
  line-height:1.05;
  font-weight:700;
  color:#111827;
  letter-spacing:-0.03em;
  word-break:break-word;
}

.hei-portal-header-center{
  min-height:1px;
  font-size:24px;
  color:#d2d7dd;
  letter-spacing:0.25em;
  word-break:break-word;
  padding-bottom:12px; /* respiro do risco */
  margin-left:-170px; /* respiro do risco */
}

/* ---------------------------------------------
   Caixa de ações do header
   - mesma cor do risco do header
   - colada na linha
   --------------------------------------------- */
.hei-portal-header-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:0;
  position:relative;
  padding:10px 12px;
  padding-bottom:10px;
  margin-bottom:0;
  background:var(--hei-brand-color, #163a63);
  border-top-left-radius:18px;
  border-top-right-radius:18px;
  box-shadow:0 10px 24px rgba(15,23,42,.10);
  color:var(--hei-brand-contrast, #ffffff);
}

/* ---------------------------------------------
   Botões e links do header
   - mesma base para <a> e <button>
   - corrige o item do meio com submenu
   --------------------------------------------- */
.hei-portal-imagebtn,
.hei-portal-dropdown > .hei-portal-imagebtn,
.hei-portal-dropdown > button.hei-portal-imagebtn{
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  margin:0;
  border:0;
  outline:none;
  box-shadow:none;
  background:transparent;
  background-image:none;
  text-decoration:none;
  cursor:pointer;
  line-height:0;
  color:inherit;
  border-radius:10px;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  flex:0 0 44px;
}

.hei-portal-imagebtn:hover,
.hei-portal-imagebtn:focus,
.hei-portal-imagebtn:active,
.hei-portal-dropdown > button.hei-portal-imagebtn:hover,
.hei-portal-dropdown > button.hei-portal-imagebtn:focus,
.hei-portal-dropdown > button.hei-portal-imagebtn:active,
.hei-portal-dropdown > button.hei-portal-imagebtn:focus-visible{
  background:rgba(255,255,255,.14) !important;
  box-shadow:none !important;
  outline:none !important;
  color:inherit !important;
}

.hei-portal-imagebtn svg{
  width:22px;
  height:22px;
  display:block;
  stroke:currentColor;
  fill:none;
  flex:0 0 22px;
}

.hei-portal-imagebtn:focus-visible{
  box-shadow:0 0 0 3px rgba(255,255,255,.16) !important;
}

.hei-portal-dropdown{
  position:relative;
  display:inline-flex;
  align-items:center;
  color:inherit;
}

.hei-portal-dropdown::after{
  content:"";
  position:absolute;
  left:-8px;
  right:-8px;
  top:100%;
  height:22px;
}

.hei-portal-dropdown-menu{
  position:absolute;
  top:calc(100% + 10px);
  right:-8px;
  width:286px;
  padding:10px;
  z-index:1000;
  visibility:hidden;
  opacity:0;
  pointer-events:none;
  overflow:hidden;
  border:1px solid #dbe5ec;
  border-radius:16px;
  background:rgba(255,255,255,.98);
  box-shadow:0 12px 30px rgba(15,39,66,.10);
  transform:translateY(-7px) scale(.985);
  transform-origin:top right;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
  backdrop-filter:blur(14px);
}

.hei-portal-dropdown-menu::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  left:0;
  height:3px;
  background:linear-gradient(90deg,#10aeb7,var(--hei-brand-color,#163a63));
}

.hei-portal-dropdown:hover .hei-portal-dropdown-menu,
.hei-portal-dropdown:focus-within .hei-portal-dropdown-menu,
.hei-portal-dropdown.is-open .hei-portal-dropdown-menu{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}

.hei-portal-dropdown-menu__head{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin:2px 2px 8px;
  padding:10px 10px 11px;
  border-bottom:1px solid #e8eef3;
}

.hei-portal-dropdown-menu__head span{
  color:#008c95;
  font-size:9px;
  font-weight:800;
  line-height:1.2;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.hei-portal-dropdown-menu__head strong{
  color:#102b46;
  font-size:14px;
  font-weight:740;
  line-height:1.25;
}

.hei-portal-dropdown-menu a{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 16px;
  align-items:center;
  gap:10px;
  min-height:54px;
  padding:7px 9px;
  border:1px solid transparent;
  border-radius:11px;
  color:#29445d;
  text-decoration:none;
  transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease;
}

.hei-portal-dropdown-menu__icon{
  display:grid;
  width:32px;
  height:32px;
  place-items:center;
  border-radius:9px;
  color:#068f98;
  background:#eaf8f7;
}

.hei-portal-dropdown-menu__icon svg{
  width:17px;
  height:17px;
  stroke-width:1.8;
}

.hei-portal-dropdown-menu__copy{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:2px;
}

.hei-portal-dropdown-menu__copy strong{
  overflow:hidden;
  color:#18344f;
  font-size:12px;
  font-weight:720;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.hei-portal-dropdown-menu__copy small{
  overflow:hidden;
  color:#718397;
  font-size:10px;
  font-weight:480;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.hei-portal-dropdown-menu__arrow{
  width:15px;
  height:15px;
  color:#91a2b2;
  transition:transform .14s ease,color .14s ease;
}

.hei-portal-dropdown-menu a:hover,
.hei-portal-dropdown-menu a:focus-visible{
  border-color:#dbe9ed;
  background:#f3f9f9;
  color:#102b46;
  outline:none;
  transform:translateX(2px);
}

.hei-portal-dropdown-menu a:hover .hei-portal-dropdown-menu__arrow,
.hei-portal-dropdown-menu a:focus-visible .hei-portal-dropdown-menu__arrow{
  color:#058d96;
  transform:translateX(2px);
}

.hei-portal-dropdown > .hei-portal-imagebtn{
  position:relative;
  z-index:1001;
}

.hei-portal-header-line{
  height:5px;
  width:100%;
  border-radius:0;
  margin-top:0;
  margin-bottom:0;
}


/* =========================================================
   MENU MODULAR HORIZONTAL - VISUAL DASHBOARD PREMIUM
   ========================================================= */

.hei-menu-modular-wrap{
  --hei-brand-color:#163a63;
  width:100%;
  margin:0 0 60px;
  padding:0;
  background:transparent;
  position:relative;
  z-index:30;
}

/* Barra principal */
.hei-categorias{
  display:flex;
  width:100%;
  margin:0;
  padding:0;
  gap:0;
  align-items:stretch;
  position:relative;
  overflow:hidden;
  border-radius:0;
  background:var(--hei-brand-color);
  box-shadow:
    0 10px 24px rgba(15,23,42,.08),
    0 2px 6px rgba(15,23,42,.05);
}

/* Categoria */
.hei-categoria-card{
  appearance:none;
  -webkit-appearance:none;
  flex:1 1 0;
  min-width:0;
  height:118px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  cursor:pointer;
  border:0;
  margin:0;
  padding:14px 12px;
  background:transparent;
  border-right:1px solid rgba(255,255,255,.10);
  color:#fff;
  position:relative;
  transition:
    background .18s ease,
    transform .12s ease,
    box-shadow .18s ease,
    opacity .18s ease;
}

.hei-categoria-card:last-child{
  border-right:none;
}

.hei-categoria-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:transparent;
  pointer-events:none;
}

.hei-categoria-card:hover{
  background:rgba(255,255,255,.08);
}

.hei-categoria-card:focus{
  outline:none;
  box-shadow:none;
}
.hei-categoria-card:active{
  background:transparent;
  box-shadow:none;
}
.hei-categoria-card:focus-visible{
  z-index:3;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.28);
}

.hei-categoria-card.is-active{
  background:rgba(0,0,0,.16);
  box-shadow:inset 0 -3px 0 rgba(255,255,255,.12);
}

.hei-categoria-card.is-active:hover{
  background:rgba(255,255,255,.08);
}

.hei-categoria-card.is-active::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-9px;
  width:18px;
  height:18px;
  background:#ffffff;
  transform:translateX(-50%) rotate(45deg);
  border-radius:3px;
  z-index:5;
  box-shadow:4px 4px 14px rgba(15,23,42,.08);
}

/* Ícone */
.hei-categoria-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  line-height:0;
  flex:0 0 36px;
  position:relative;
  z-index:2;
}

.hei-categoria-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  line-height:0;
  flex:0 0 36px;
  position:relative;
  z-index:2;
  color:#ffffff;
}

.hei-categoria-icon img,
.hei-categoria-icon svg{
  width:30px;
  height:30px;
  display:block;
}

.hei-categoria-icon img{
  object-fit:contain;
  filter:brightness(0) invert(1);
}

.hei-categoria-icon svg{
  color:#ffffff;
}

/* Texto */
.hei-categoria-label{
  display:block;
  max-width:100%;
  color:#fff;
  font-size:20px;
  font-weight:700;
  line-height:1.15;
  text-align:center;
  white-space:normal;
  word-break:break-word;
  letter-spacing:-0.01em;
  position:relative;
  z-index:2;
}

/* Área dos painéis em layer */
.hei-modulos-paineis{
  position:absolute;
  top:100%;
  left:0;
  width:100%;
  margin:0;
  padding:18px 0 0;
  background:transparent;
  pointer-events:none;
  z-index:40;
}

/* Painel individual */
.hei-modulos{
  display:none;
  position:absolute;
  top:0;
  left:0;
  flex-wrap:wrap;
  gap:10px;
  margin:0;
  padding:10px 16px;
  width:max-content;
  max-width:min(820px, 100%);

  background:#eef2f7;
  border:1px solid rgba(15,23,42,.06);
  border-radius:0;
  box-shadow:none;

  pointer-events:auto;
  animation:heiFadeModules .18s ease;
  backdrop-filter:none;
}

.hei-modulos.is-active{
  display:flex;
}

/* =========================================
   SUBMENU DE MÓDULOS
========================================= */



.hei-submenu{
  display:flex;
  align-items:center;
  gap:0;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}

.hei-submenu a{
  position:relative;
  font-size:13px;
  font-weight:600;
  color:#64748b;
  text-decoration:none;
  padding:4px 14px;
  border-bottom:2px solid transparent;
  background:transparent;
  border-radius:0;
  box-shadow:none;
  transition:color .15s ease, border-color .15s ease;
}

.hei-submenu a:hover{
  color:#0f172a;
}

.hei-submenu a.active{
  color:#0f172a;
  border-bottom:2px solid var(--hei-brand-color);
}

/* linha divisória */
.hei-submenu a + a::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:1px;
  height:16px;
  background:#dc2626; /* vermelho */
}


/* =========================================================
   ESCONDER HEADER DO TEMA
   ========================================================= */

body.page .site-header,
body.page header.site-header,
body.page .main-navigation,
body.page .ast-builder-menu,
body.page .ast-primary-header-bar,
body.page .ast-header-break-point,
body.page .entry-header,
body.single-post.category-comunicados .site-header,
body.single-post.category-comunicados header.site-header,
body.single-post.category-comunicados .main-navigation,
body.single-post.category-comunicados .ast-builder-menu,
body.single-post.category-comunicados .ast-primary-header-bar,
body.single-post.category-comunicados .ast-header-break-point,
body.single-post.category-comunicados .entry-header{
  display:none !important;
}

body.page .site-content,
body.page .ast-container,
body.page .entry-content,
body.page .ast-article-post,
body.page .site-content > .ast-container,
body.single-post.category-comunicados .site-content,
body.single-post.category-comunicados .ast-container,
body.single-post.category-comunicados .entry-content,
body.single-post.category-comunicados .ast-article-post,
body.single-post.category-comunicados .site-content > .ast-container{
  max-width:100% !important;
  width:100% !important;
}

body.single-post.category-comunicados .ast-container,
body.single-post.category-comunicados .site-content > .ast-container{
  display:block !important;
}

body.page .site-content > .ast-container,
body.single-post.category-comunicados .site-content > .ast-container{
  padding-left:0 !important;
  padding-right:0 !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

body.page .entry-content > .hei-portal-header-outer,
body.page .entry-content > .hei-wrap{
  width:100%;
}

body.page .entry-content,
body.single-post.category-comunicados .entry-content{
  margin-top:0 !important;
}

body.page .site-main,
body.single-post.category-comunicados .site-main{
  margin-top:0 !important;
  padding-top:0 !important;
}

body.page .ast-separate-container #primary,
body.page .ast-separate-container.ast-right-sidebar #primary,
body.page .ast-separate-container.ast-left-sidebar #primary,
body.single-post.category-comunicados .ast-separate-container #primary,
body.single-post.category-comunicados .ast-separate-container.ast-right-sidebar #primary,
body.single-post.category-comunicados .ast-separate-container.ast-left-sidebar #primary{
  margin:0 !important;
}

body.page .ast-plain-container.ast-no-sidebar #primary,
body.page .ast-page-builder-template .site-content > .ast-container,
body.single-post.category-comunicados .ast-plain-container.ast-no-sidebar #primary,
body.single-post.category-comunicados .ast-page-builder-template .site-content > .ast-container{
  max-width:100% !important;
  padding:0 !important;
}

body.page .entry-content > .hei-wrap.hei-mapeamento{
  margin-top:0 !important;
  padding-top:0 !important;
}

body.page .entry-content > .hei-wrap.hei-mapeamento .hei-bib-module-head{
  margin-top:0 !important;
  padding-top:0 !important;
}

body.page .entry-content > .hei-wrap.hei-mapeamento h2{
  margin-top:0 !important;
}
/* =========================================================
   FIX TOPO - PAGINAS DO PORTAL
   ========================================================= */

body.page #content.site-content,
body.page .site-content,
body.page .site-content > .ast-container,
body.page #primary,
body.page .site-main,
body.page article.page,
body.page .ast-article-single,
body.page .entry-content{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* Remove qualquer respiro extra antes do topo do portal */
body.page .entry-content > .hei-portal-header-outer:first-child,
body.page .entry-content > .hei-wrap:first-child{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* Garante que o primeiro bloco do portal encoste corretamente no topo útil */
body.page .hei-portal-header-outer{
  margin-top:0 !important;
}

/* =========================================================
   MODAL COMUNICADOS
   ========================================================= */

.hei-modal{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.36);
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  z-index:9999;
  width:100%;
  height:100%;
  margin:0;
}

.hei-modal.active{
  display:flex;
}

.hei-modal-content{
  position:relative;
  width:100%;
  max-width:760px;
  max-height:82vh;
  background:#fff;
  border-radius:18px;
  box-shadow:0 24px 60px rgba(15,23,42,.22);
  overflow:hidden;
}

.hei-modal-close{
  position:absolute;
  top:16px;
  right:18px;
  width:36px;
  height:36px;
  border:0;
  border-radius:999px;
  background:#f3f4f6;
  color:#111827;
  font-size:22px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:2;
}

.hei-modal-close:hover{
  background:#e5e7eb;
}

.hei-modal-shell{
  display:flex;
  flex-direction:column;
  max-height:82vh;
}

.hei-modal-header{
  padding:28px 72px 18px 32px;
  border-bottom:1px solid #eef2f7;
  background:#fff;
  flex:0 0 auto;
}

.hei-modal-date{
  font-size:12px;
  font-weight:700;
  color:#6b7280;
  letter-spacing:.02em;
  margin-bottom:10px;
}

.hei-modal-title{
  margin:0;
  font-size:24px;
  line-height:1.15;
  font-weight:800;
  letter-spacing:-0.02em;
  color:#111827;
}

.hei-modal-body{
  padding:24px 32px 30px;
  overflow:auto;
  flex:1 1 auto;
}

.hei-comunicado-modal-content{
  font-size:17px;
  line-height:1.8;
  color:#374151;
}

.hei-comunicado-modal-content p{
  margin:0 0 16px;
}

.hei-comunicado-modal-content h2,
.hei-comunicado-modal-content h3,
.hei-comunicado-modal-content h4{
  margin:24px 0 10px;
  color:#111827;
}

.hei-comunicado-modal-content ul,
.hei-comunicado-modal-content ol{
  margin:0 0 16px 20px;
}

.hei-comunicado-modal-content a{
  color:#374151;
  font-weight:600;
}


/* =========================================================
   RESPONSIVO
   ========================================================= */

@media (max-width:1100px){
  .hei-categoria-card{
    height:104px;
  }

  .hei-categoria-label{
    font-size:17px;
  }
}

@media (max-width:980px){
  .hei-portal-header-top{
    grid-template-columns:1fr auto;
    gap:14px;
    align-items:center;
  }

  .hei-portal-header-center{
    display:none;
  }

  .hei-home-dash-cards{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .hei-home-dash-grid{
    grid-template-columns:1fr;
  }

  .hei-home-quick-actions{
    grid-template-columns:1fr;
  }
}

@media (max-width:900px){
  .hei-grid-2{
    grid-template-columns:1fr;
  }

  .hei-form-grid{
    grid-template-columns:1fr;
  }

  .hei-form-grid--public{
    grid-template-columns:1fr;
  }

  .hei-field{
    grid-template-columns:1fr;
  }

  .hei-error{
    grid-column:1 / 2;
    margin-top:6px;
  }

  .hei-company-grid{
    grid-template-columns:1fr;
  }

  .hei-read-row{
    grid-template-columns:1fr;
    gap:4px;
  }
 
  .hei-comunicado-content{
    font-size:16px;
  }

  .hei-comunicado-nav{
    grid-template-columns:1fr;
    max-width:100%;
  }

  .hei-comunicado-nav__item--right{
    text-align:left;
    align-items:flex-start;
  }

  .hei-comunicado-cta{
    max-width:100%;
  }

  .hei-public-auth__shell--empresa{
    max-width:95%;
  }
}

@media (max-width:820px){
  .hei-categorias{
    flex-wrap:wrap;
  }

  .hei-categoria-card{
    flex:1 1 50%;
    height:92px;
    border-right:1px solid rgba(255,255,255,.10);
    border-bottom:1px solid rgba(255,255,255,.10);
  }

  .hei-categoria-card:nth-child(2n){
    border-right:none;
  }

  .hei-categoria-card.is-active::after{
    display:none;
  }

  .hei-modulos{
    max-width:min(92vw, 820px);
  }
}

@media (max-width:700px){
  .hei-wrap{
    margin-top:24px;
    padding:0 14px 60px;
  }

  .hei-portal-header-outer{
    margin:0;
  }

  .hei-portal-header-wrap{
    padding:0 14px;
  }

  .hei-portal-header-top{
    grid-template-columns:1fr;
    align-items:start;
    gap:14px;
    min-height:auto;
    padding-bottom:10px;
  }

  .hei-portal-header-left{
    justify-content:flex-start;
  }

  .hei-portal-header-right{
    justify-content:flex-end;
    width:max-content;
    margin-left:auto;
  }

  .hei-portal-logo-box--image img{
    max-width:220px;
    max-height:60px;
  }

  .hei-portal-logo-fallback-text{
    font-size:24px;
  }

  .hei-pagination .page-numbers{
    gap:6px;
  }

  .hei-pagination .page-numbers a,
  .hei-pagination .page-numbers span{
    padding:8px 10px;
    border-radius:10px;
  }

  .hei-modal{
    padding:14px;
  }

  .hei-modal-content{
    max-height:88vh;
    border-radius:14px;
  }

  .hei-modal-header{
    padding:22px 58px 16px 20px;
  }

  .hei-modal-title{
    font-size:21px;
  }

  .hei-modal-body{
    padding:18px 20px 22px;
  }

  .hei-comunicado-modal-content{
    font-size:16px;
  }
}

@media (max-width:640px){
  .hei-public-auth{
    padding:24px 14px 40px;
    align-items:flex-start;
  }

  .hei-public-auth__shell{
    max-width:95%;
    border-radius:18px;
  }

  .hei-public-auth__body{
    padding:26px 20px 24px;
  }

  .hei-home-dash-head h3{
    font-size:24px;
  }

  .hei-home-dash-cards{
    grid-template-columns:1fr;
  }
}

@media (max-width:600px){
  .hei-public-auth__shell{
    max-width:95%;
  }

  .hei-public-auth__body{
    padding:26px 20px 24px;
  }
}

@media (max-width:560px){
  .hei-categoria-card{
    height:82px;
    gap:8px;
    padding:10px 8px;
  }

  .hei-categoria-icon{
    width:30px;
    height:30px;
    flex-basis:30px;
  }

.hei-categoria-icon img,
.hei-categoria-icon svg{
  width:24px;
  height:24px;
}

  .hei-categoria-label{
    font-size:14px;
  }

  .hei-modulos{
    gap:8px;
    padding:12px;
  }

  .hei-modulo{
    min-height:34px;
    padding:0 13px;
    font-size:12px;
  }

  .hei-portal-header-right{
    padding:8px 10px;
  }
}

.hei-bib-badge--metric{
  background:#eef2f7;
  color:#334155;
  font-weight:600;
}




/* =========================================================
   BIBLIOTECA - VALIDAÇÃO DE APRENDIZADO
   ========================================================= */

/* o item do quiz precisa ocupar a linha inteira no grid pai */
.hei-form-grid > .hei-bib-field-quiz{
  grid-column:1 / -1 !important;
  width:100%;
  min-width:0;
}

/* container externo do quiz */
.hei-bib-field-quiz,
.hei-bib-video-quiz-wrap{
  width:100%;
  min-width:0;
}

/* box visual */
.hei-bib-quiz-box{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}

/* dentro do quiz, NÃO usar o grid padrão label + input do sistema */
.hei-bib-quiz-box .hei-field{
  display:block !important;
  grid-template-columns:none !important;
  gap:0 !important;
  width:100%;
  min-width:0;
  margin:0 0 14px;
}

/* labels normais */
.hei-bib-quiz-box .hei-field label{
  display:block;
  margin:0 0 6px;
  font-size:13px;
  font-weight:600;
  color:#4a4a4a;
  line-height:1.4;
}

/* labels dos checkboxes mantêm flex */
.hei-bib-quiz-box .hei-field > label[style*="display:flex"]{
  display:flex !important;
  align-items:flex-start;
  gap:8px;
  margin:0;
}

.hei-bib-quiz-box .hei-field > label[style*="display:flex"] span{
  line-height:1.4;
}

/* inputs do quiz */
.hei-bib-quiz-box input[type="text"],
.hei-bib-quiz-box input[type="url"],
.hei-bib-quiz-box select,
.hei-bib-quiz-box textarea{
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:42px;
  box-sizing:border-box;
}

/* checkboxes não podem herdar width 100% */
.hei-bib-quiz-box input[type="checkbox"]{
  width:auto !important;
  min-width:auto !important;
  height:auto;
  min-height:auto;
  margin-top:2px;
}

/* grid interno do quiz */
.hei-bib-quiz-box .hei-form-grid{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px 16px;
  width:100%;
  min-width:0;
}

/* campos de largura total dentro do quiz */
.hei-bib-quiz-box .hei-field--full{
  grid-column:1 / -1 !important;
}

/* títulos internos */
.hei-bib-quiz-box h4,
.hei-bib-quiz-box h5{
  color:#111827;
}

.hei-bib-quiz-box h5{
  margin:0 0 10px;
  font-size:14px;
  font-weight:700;
}

/* melhora visual dos separadores */
.hei-bib-quiz-box > div[style*="border-top"]{
  width:100%;
  min-width:0;
}

/* responsivo */
@media (max-width: 768px){
  .hei-bib-quiz-box .hei-form-grid{
    grid-template-columns:1fr;
  }

  .hei-bib-quiz-box .hei-field--full{
    grid-column:auto !important;
  }
}


/* =========================================================
   QUIZ - CORREÇÃO DO CONTAINER EXTERNO
   ========================================================= */

.hei-field.hei-bib-field-quiz{
  grid-template-columns:none !important;
  width:100% !important;
  min-width:0;
}

.hei-field.hei-bib-field-quiz > .hei-bib-quiz-box{
  width:100% !important;
  min-width:0;
  display:block;
  box-sizing:border-box;
}


.hei-bib-quiz-modal-inner{
  max-width:720px;
  background:#fff;
  border-radius:16px;
  padding:24px;
}

.hei-bib-quiz-shell{
  width:100%;
}

.hei-bib-quiz-question h4{
  margin:0 0 12px;
  font-size:16px;
  color:#111827;
}

.hei-bib-quiz-question label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:10px 0;
  cursor:pointer;
}

.hei-bib-quiz-question input[type="radio"]{
  margin-top:3px;
}


.hei-bib-status{
  margin-top:8px;
}

.hei-bib-status-ok{
  display:inline-block;
  background:#dcfce7;
  color:#166534;
  font-size:12px;
  font-weight:600;
  padding:4px 10px;
  border-radius:999px;
}

.hei-bib-status-pending{
  display:inline-block;
  background:#f1f5f9;
  color:#475569;
  font-size:12px;
  font-weight:600;
  padding:4px 10px;
  border-radius:999px;
}


.hei-bib-quiz-resultado{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #e5e7eb;
}

.hei-bib-quiz-resultado-titulo{
  margin:0 0 10px;
  font-size:18px;
  color:#111827;
}

.hei-bib-quiz-resultado-resumo{
  margin:0 0 14px;
  color:#374151;
  font-weight:600;
}

.hei-bib-quiz-feedback-item{
  padding:10px 12px;
  border-radius:10px;
  margin-bottom:10px;
  font-size:14px;
  font-weight:600;
}

.hei-bib-quiz-feedback-item.is-correct{
  background:#dcfce7;
  color:#166534;
}

.hei-bib-quiz-feedback-item.is-wrong{
  background:#fee2e2;
  color:#991b1b;
}



.hei-bib-card.is-concluido .hei-bib-status-pending{
  display:none !important;
}

.hei-bib-card.is-concluido .hei-bib-status-ok{
  display:inline-block !important;
}



/* =========================================================
   BIBLIOTECA - DASHBOARD KPI
   ========================================================= */

.hei-bib-dashboard{
  margin-top:10px;
}

.hei-bib-kpi-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}

.hei-bib-kpi-card{
  background:#ffffff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:22px 20px;
  box-shadow:0 4px 12px rgba(15,23,42,.04);
}

.hei-bib-kpi-value{
  font-size:34px;
  font-weight:800;
  line-height:1;
  color:#111827;
  margin-bottom:10px;
}

.hei-bib-kpi-label{
  font-size:15px;
  font-weight:700;
  color:#1f2937;
  margin-bottom:6px;
}

.hei-bib-kpi-sub{
  font-size:13px;
  color:#6b7280;
  line-height:1.4;
}

@media (max-width: 980px){
  .hei-bib-kpi-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px){
  .hei-bib-kpi-grid{
    grid-template-columns:1fr;
  }
}


.hei-mapeamento-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  margin-top:12px;
}

.hei-mapeamento-lista{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:16px;
}

.hei-mapeamento-lista-titulo{
  font-weight:700;
  margin-bottom:12px;
}

.hei-mapeamento-item{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}

.hei-mapeamento-nome{
  width:120px;
  font-size:13px;
  color:#374151;
}

.hei-mapeamento-barra{
  flex:1;
  height:8px;
  background:#f1f5f9;
  border-radius:999px;
  overflow:hidden;
}

.hei-mapeamento-barra-fill{
  height:100%;
  background:var(--hei-brand-color);
}

.hei-mapeamento-perc{
  width:50px;
  font-size:12px;
  text-align:right;
  color:#111827;
}


/* =========================================================
   HOME - DESTAQUES
   ========================================================= */

.hei-home-destaques-wrap{
  margin:30px 0 26px;
}

.hei-home-destaques-grid{
  display:grid;
  gap:20px;
  justify-content:center;
  align-items:stretch;
}

/* 1 banner */
.hei-home-destaques-grid--qtd-1{
  grid-template-columns:360px;
}

/* 2 banners */
.hei-home-destaques-grid--qtd-2{
  grid-template-columns:repeat(2, 360px);
}

/* 3 banners */
.hei-home-destaques-grid--qtd-3{
  grid-template-columns:repeat(3, 360px);
}

.hei-home-destaque-card{
  display:block;
  width:100%;
  max-width:360px;
  border-radius:20px;
  overflow:hidden;
  border:1px solid #e5e7eb;
  background:#fff;
  text-decoration:none;
  transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease;
  box-shadow:0 4px 14px rgba(15,23,42,.04);
}

.hei-home-destaque-card:hover{
  transform:translateY(-2px);
  border-color:#d7dee8;
  box-shadow:0 10px 28px rgba(15,23,42,.08);
}

.hei-home-destaque-card__img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:2 / 1;
  object-fit:cover;
}

@media (max-width: 1180px){
  .hei-home-destaques-grid--qtd-3{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  .hei-home-destaques-grid--qtd-2{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .hei-home-destaques-grid--qtd-1{
    grid-template-columns:minmax(0, 520px);
  }

  .hei-home-destaque-card{
    max-width:none;
  }
}

@media (max-width: 900px){
  .hei-home-destaques-grid--qtd-1,
  .hei-home-destaques-grid--qtd-2,
  .hei-home-destaques-grid--qtd-3{
    grid-template-columns:1fr;
  }
}


.hei-field-full{
  grid-column:1 / -1;
}

.hei-password-box{
  margin-top:28px;
  padding:22px;
  border:1px solid #e5e7eb;
  border-radius:14px;
  background:#fafafa;
}

.hei-password-box__head{
  margin-bottom:18px;
}

.hei-section-label{
  display:block;
  font-weight:700;
  font-size:18px;
  color:#111827;
  margin:0 0 6px;
}

.hei-password-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}

.hei-password-item{
  min-width:0;
}

.hei-password-item label{
  display:block;
  margin-bottom:8px;
  font-weight:600;
}

.hei-password-item .hei-input{
  width:100%;
}

@media (max-width: 900px){
  .hei-password-grid{
    grid-template-columns:1fr;
  }
}

    
/* =========================================================
   COMUNICADOS - MODAL
   ========================================================= */

.hei-modal{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.36);
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  z-index:9999;
}

.hei-modal.active{
  display:flex;
}

.hei-modal-content{
  width:100%;
  max-width:760px;
  max-height:82vh;
  background:#fff;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(15,23,42,.22);
}

.hei-modal-header{
  padding:28px 32px 18px;
  border-bottom:1px solid #eef2f7;
}

.hei-modal-title{
  font-size:22px;
  font-weight:800;
  margin:0;
}

.hei-modal-body{
  padding:24px 32px 30px;
  overflow:auto;
}

/* =========================================================
   CENTRAL DE COMUNICADOS - REPOSITÓRIO
   ========================================================= */

.hei-comunicados-page{
  padding-top:28px;
  padding-bottom:36px;
}

.hei-comunicados-shell{
  padding:0;
  overflow:visible;
}

.hei-comunicados-repo-head{
  padding:32px 0 10px;
}

.hei-comunicados-kicker{
  display:inline-block;
  margin-bottom:10px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#2A6FB2;
}

.hei-comunicados-title{
  margin:0 0 10px;
  font-size:24px;
  line-height:1.08;
  color:#1f2937;
}

.hei-comunicados-subtitle{
  max-width:760px;
  margin:0;
  font-size:16px;
  line-height:1.6;
  color:#5b6470;
}

.hei-comunicados-search{
  margin-top:24px;
  margin-bottom:28px;
  padding:20px 22px;
  border:1px solid #e5e7eb;
  border-radius:18px;
  background:#fff;
}

.hei-comunicados-search__label{
  margin-bottom:12px;
  font-size:13px;
  font-weight:700;
  color:#374151;
}

.hei-comunicados-search__row{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}

.hei-comunicados-search__row .hei-input{
  flex:1 1 320px;
}

.hei-comunicados-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 320px;
  gap:28px;
  align-items:start;
}

.hei-comunicados-main{
  min-width:0;
}

.hei-comunicados-list-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
  padding-bottom:12px;
  border-bottom:1px solid #e5e7eb;
}

.hei-comunicados-list-head h2{
  margin:0;
  font-size:22px;
  color:#111827;
}

.hei-comunicados-list-meta{
  font-size:13px;
  font-weight:600;
  color:#6b7280;
}

.hei-comunicados-list{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.hei-comunicado-row{
  background:#fff;
  border:1px solid #e8eef5;
  border-radius:18px;
  padding:22px;
  box-shadow:0 8px 24px rgba(16,24,40,.04);
}

.hei-comunicado-row__meta{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:12px;
}

.hei-comunicado-data{
  font-size:12px;
  font-weight:600;
  color:#8a94a3;
}

.hei-comunicado-tag{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:#eef6ff;
  color:#4c00d3;
  font-size:12px;
  font-weight:700;
}

.hei-comunicado-titulo{
  margin:0 0 12px;
  font-size:24px;
  line-height:1.2;
}

.hei-comunicado-titulo a{
  color:#1f2937;
  text-decoration:none;
}

.hei-comunicado-titulo a:hover{
  color:#4c00d3;
}

.hei-comunicado-excerpt{
  font-size:15px;
  line-height:1.7;
  color:#5b6470;
}

.hei-comunicado-row__footer{
  margin-top:16px;
}

.hei-comunicado-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:14px;
  font-weight:700;
  color:#2A6FB2;
  text-decoration:none;
}

.hei-comunicado-link:hover{
  text-decoration:underline;
}

.hei-comunicados-sidebar{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.hei-comunicados-sidecard{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:18px;
  box-shadow:0 8px 24px rgba(16,24,40,.04);
}

.hei-comunicados-sidecard h3{
  margin:0 0 12px;
  font-size:17px;
  color:#111827;
}

.hei-comunicados-side-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.hei-comunicados-side-link{
  display:block;
  padding:10px 0;
  text-decoration:none;
  border-bottom:1px solid #eef2f7;
}

.hei-comunicados-side-link:last-child{
  border-bottom:0;
}

.hei-comunicados-side-link__title{
  display:block;
  font-size:14px;
  font-weight:700;
  color:#1f2937;
  line-height:1.4;
}

.hei-comunicados-side-link__date{
  display:block;
  margin-top:4px;
  font-size:12px;
  color:#8a94a3;
}

.hei-comunicados-categorias{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.hei-comunicados-categoria-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:54px;
  padding:12px 14px;
  border:1px solid #d8e2ee;
  border-radius:14px;
  background:#fff;
  color:#456078;
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  transition:all .2s ease;
}

.hei-comunicados-categoria-card:hover{
  border-color:#2A6FB2;
  color:#2A6FB2;
  transform:translateY(-1px);
}

.hei-comunicados-categoria-card.is-active{
  background:#eef6ff;
  border-color:#2A6FB2;
  color:#2A6FB2;
}

.hei-comunicados-categoria-card small{
  font-size:12px;
  font-weight:700;
  color:#8a94a3;
}

@media (max-width:1100px){
  .hei-comunicados-layout{
    grid-template-columns:1fr;
  }

  .hei-comunicados-sidebar{
    order:2;
  }
}

@media (max-width:767px){
  .hei-comunicados-title{
    font-size:32px;
  }

  .hei-comunicados-search{
    padding:16px;
  }

  .hei-comunicado-row{
    padding:18px;
  }

  .hei-comunicado-titulo{
    font-size:20px;
  }
}

/* =========================================================
   SINGLE COMUNICADO (DENTRO DA CENTRAL)
   ========================================================= */

body.single-post.category-comunicados{
  background:#fff;
}

.hei-comunicado-single-wrap{
  padding:40px 46px 46px;
}

.hei-comunicado-header{
  margin-bottom:24px;
}

.hei-comunicado-meta{
  font-size:13px;
  font-weight:700;
  color:#6b7280;
  margin-bottom:12px;
}

.hei-comunicado-voltar{
  display:inline-block;
  margin-bottom:20px;
  font-size:14px;
  font-weight:600;
  color:#2A6FB2;
  text-decoration:none;
}

.hei-comunicado-voltar:hover{
  text-decoration:underline;
}

.hei-comunicado-title{
  font-size:32px;
  font-weight:600;
  line-height:1.1;
  margin:0;
}

.hei-comunicado-content{
  font-size:18px;
  line-height:1.6;
  color:#374151;
}

.hei-comunicado-content p{
  margin-bottom:20px;
}

.hei-comunicado-content img{
  max-width:100%;
  border-radius:16px;
  margin:28px 0;
}

.hei-comunicado-cta{
  margin-top:40px;
  padding-top:24px;
  border-top:1px solid #e5e7eb;
  text-align:center;
}

.hei-comunicado-nav{
  margin-top:34px;
  padding-top:22px;
  border-top:1px solid #e5e7eb;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.hei-comunicado-nav__item{
  text-decoration:none;
}

.hei-comunicado-nav__label{
  font-size:12px;
  font-weight:700;
  color:#6b7280;
}

.hei-comunicado-nav__title{
  font-size:16px;
  font-weight:700;
  color:#111827;
}

.hei-check-read{
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:center;
  font-size:14px;
  font-weight:600;
  color:#374151;
  cursor:pointer;
}

.hei-check-read-input{
  width:18px;
  height:18px;
  cursor:pointer;
}
.hei-comunicado-read-status{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}

.hei-comunicado-read-status.is-read{
  background:#ecfdf3;
  color:#067647;
}

.hei-comunicado-read-status.is-unread{
  background:#fff4ed;
  color:#b54708;
}


.hei-comunicado-cta--obrigatorio{
  margin-top:40px;
  padding:20px 22px;
  border:1px solid #f5d68a;
  background:#fffaf0;
  border-radius:16px;
  text-align:center;
}

.hei-comunicado-cta__alerta{
  margin-bottom:12px;
  font-size:13px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:#b54708;
}

.hei-check-read{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:14px;
  font-weight:600;
  color:#374151;
  cursor:pointer;
}

.hei-check-read-input{
  width:18px;
  height:18px;
  cursor:pointer;
}

.hei-check-read-input:disabled{
  cursor:not-allowed;
}
/* =========================================================
   RESPONSIVO - COMUNICADOS
   ========================================================= */

@media (max-width:900px){

  .hei-comunicados-grid{
    grid-template-columns:1fr;
  }

  .hei-comunicado-single-wrap{
    padding:28px 22px;
  }

  .hei-comunicado-content{
    font-size:16px;
  }

  .hei-comunicado-nav{
    grid-template-columns:1fr;
  }

}

/* =========================================================
   BIBLIOTECA - BASE VISUAL (RECUPERAÇÃO)
   ========================================================= */

.hei-bib-module-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:14px;
}

.hei-bib-module-head h2{
  margin:0;
  font-size:20px;
  font-weight:700;
}

.hei-bib-tabs{
  display:flex;
  gap:10px;
}

.hei-bib-tab{
  padding:6px 14px;
  border-radius:999px;
  border:1px solid #d1d5db;
  background:#fff;
  font-size:12px;
  font-weight:600;
  text-decoration:none;
  color:#374151;
}

.hei-bib-tab.is-active{
  background:#6b7280;
  color:#fff;
  border-color:#6b7280;
}

/* filtros */
.hei-bib-filtros{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin:12px 0;
}

.hei-bib-filtros input,
.hei-bib-filtros select{
  height:38px;
  border-radius:8px;
  border:1px solid #d1d5db;
  padding:0 10px;
}

/* grid */
.hei-bib-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
  margin-top:16px;
}

@media(max-width:900px){
  .hei-bib-grid{
    grid-template-columns:1fr;
  }
}

/* card */
.hei-bib-card{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}

/* thumb */
.hei-bib-thumb{
  height:140px;
  background:#f1f5f9;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* conteúdo */
.hei-bib-content{
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.hei-bib-title{
  font-weight:700;
  font-size:14px;
  color:#111827;
}

/* badges */
.hei-bib-badges{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}

.hei-bib-badge{
  font-size:11px;
  padding:4px 8px;
  border-radius:999px;
  background:#eef2f7;
  color:#334155;
}

/* status */
.hei-bib-status{
  font-size:12px;
  font-weight:600;
}

.hei-bib-status.concluido{
  color:#16a34a;
}

.hei-bib-status.pendente{
  color:#64748b;
}

/* botão */
.hei-bib-action{
  margin-top:auto;
}

.hei-bib-action a{
  display:block;
  text-align:center;
  padding:10px;
  border-radius:8px;
  background:#4b5563;
  color:#fff;
  font-weight:600;
  text-decoration:none;
}

.hei-bib-action a:hover{
  background:#374151;
}


/* =========================================================
   MAPEAMENTO - CORREÇÃO VISUAL
   ========================================================= */

.hei-mapeamento-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:14px;
}

.hei-mapeamento-tabs{
  display:flex;
  gap:10px;
}

.hei-mapeamento-tab{
  padding:6px 14px;
  border-radius:999px;
  border:1px solid #d1d5db;
  background:#fff;
  font-size:12px;
  font-weight:600;
  text-decoration:none;
  color:#374151;
}

.hei-mapeamento-tab.is-active{
  background:#6b7280;
  color:#fff;
  border-color:#6b7280;
}

.hei-mapeamento-card{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  padding:18px;
}

.hei-mapeamento-badge{
  display:inline-block;
  font-size:12px;
  padding:4px 10px;
  border-radius:999px;
  background:#dcfce7;
  color:#166534;
  font-weight:600;
}


/* =========================================================
   SOMOS - BIBLIOTECA
   CORREÇÃO VISUAL COMPATÍVEL COM biblioteca-render.php
   COLAR NO FINAL DO css-somos.txt
   ========================================================= */

/* ---------------------------------
   CONTAINER GERAL
--------------------------------- */
.hei-biblioteca .hei-bib-shell{
  min-width:0;
}

.hei-biblioteca .hei-bib-head{
  margin-bottom:18px;
}

/* ---------------------------------
   ABAS PRINCIPAIS
   Estrutura real:
   .hei-bib-tabs-wrap
   .hei-bib-tabs-left
   .hei-bib-tabs-right
   .hei-bib-tablink
--------------------------------- */
.hei-bib-tabs-wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:10px 0 22px;
  padding-bottom:14px;
  border-bottom:1px solid #e5e7eb;
  flex-wrap:wrap;
}

.hei-bib-tabs-left,
.hei-bib-tabs-right{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.hei-bib-tabs-right{
  margin-left:auto;
  padding:6px 10px;
  border:1px solid #d1d5db;
  border-radius:999px;
  background:#f8fafc;
}

.hei-bib-tablink{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 16px;
  border-radius:999px;
  border:1px solid #d1d5db;
  background:#ffffff;
  color:#4b5563;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  transition:all .15s ease;
}

.hei-bib-tablink:hover{
  background:#f3f4f6;
  border-color:#cbd5e1;
  color:#374151;
}

.hei-bib-tablink.is-active{
  background:#6b7280;
  border-color:#6b7280;
  color:#ffffff;
}

/* ---------------------------------
   ÁREA INTERNA DA ABA
--------------------------------- */
.hei-bib-tab-content{
  min-width:0;
}

/* ---------------------------------
   FILTROS
--------------------------------- */
.hei-bib-filters{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(180px,0.8fr) minmax(180px,0.8fr) auto;
  gap:14px;
  align-items:end;
  margin:0 0 18px;
}

.hei-bib-filter{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}

.hei-bib-filter label{
  margin:0;
  font-size:13px;
  font-weight:600;
  color:#4b5563;
}

.hei-bib-filter--search{
  min-width:0;
}

.hei-bib-filter .hei-input{
  width:100%;
  min-height:42px;
  border:1px solid #d1d5db;
  border-radius:10px;
  background:#fff;
}

.hei-bib-filter-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

/* ---------------------------------
   ALERTA DE CONTAGEM
--------------------------------- */
.hei-bib-resumo-topo{
  margin-bottom:14px;
}

/* ---------------------------------
   GRID DE CARDS
--------------------------------- */
.hei-bib-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:20px;
  margin-top:16px;
}

.hei-bib-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  background:#fff;
  border:1px solid #d9dee7;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 4px 14px rgba(15,23,42,.04);
  transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

.hei-bib-card:hover{
  transform:translateY(-2px);
  border-color:#cfd7e3;
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}

/* ---------------------------------
   MÍDIA / TOPO DO CARD
--------------------------------- */
.hei-bib-card-media{
  position:relative;
  height:180px;
  background:#f1f5f9;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}

.hei-bib-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.hei-bib-card-media.is-video{
  background:#e2e8f0;
}

.hei-bib-card-media.is-file{
  background:#f8fafc;
}

.hei-bib-video-placeholder,
.hei-bib-file-placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}

.hei-bib-icon-wrap{
  width:58px;
  height:58px;
  border-radius:16px;
  background:#e9eef5;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#475569;
}

.hei-bib-icon-wrap svg{
  width:30px;
  height:30px;
  display:block;
}

/* overlay play */
.hei-bib-play-overlay{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}

.hei-bib-play-overlay svg{
  width:64px;
  height:64px;
  color:#ffffff;
  filter:drop-shadow(0 8px 18px rgba(15,23,42,.30));
}

/* ---------------------------------
   CORPO DO CARD
--------------------------------- */
.hei-bib-card-body{
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:16px 16px 18px;
  min-width:0;
  flex:1;
}

.hei-bib-badges{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.hei-bib-badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  font-size:11px;
  font-weight:700;
  line-height:1;
}

.hei-bib-badge--categoria{
  background:#eef2ff;
  color:#4f46e5;
}

.hei-bib-badge--tipo{
  background:#eef2f7;
  color:#475569;
}

.hei-bib-badge--metric{
  background:#f8fafc;
  color:#334155;
}

.hei-bib-card-title{
  margin:0;
  font-size:16px;
  line-height:1.35;
  font-weight:700;
  color:#111827;
}

.hei-bib-card-desc{
  margin:0;
  font-size:14px;
  line-height:1.55;
  color:#4b5563;
}

/* ---------------------------------
   STATUS
--------------------------------- */
.hei-bib-status{
  margin-top:2px;
}

.hei-bib-status-ok,
.hei-bib-status-pending{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}

.hei-bib-status-ok{
  background:#dcfce7;
  color:#166534;
}

.hei-bib-status-pending{
  background:#f1f5f9;
  color:#475569;
}

/* ---------------------------------
   RODAPÉ DO CARD
--------------------------------- */
.hei-bib-card-footer{
  margin-top:auto;
  padding-top:4px;
}

.hei-bib-card-footer .hei-btn{
  width:100%;
  justify-content:center;
  min-height:42px;
  border-radius:10px;
  font-size:14px;
  font-weight:700;
}

/* ---------------------------------
   MODAL DE VÍDEO / QUIZ
--------------------------------- */
.hei-bib-video-modal{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.55);
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  z-index:9999;
}

.hei-bib-video-modal.is-active{
  display:flex;
}

.hei-bib-video-modal-inner{
  position:relative;
  width:100%;
  max-width:920px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 24px 60px rgba(15,23,42,.22);
  overflow:hidden;
}

.hei-bib-video-frame{
  position:relative;
  width:100%;
  padding-top:56.25%;
  background:#000;
}

.hei-bib-video-frame iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.hei-bib-video-close,
.hei-bib-quiz-close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:5;
  width:38px;
  height:38px;
  border:0;
  border-radius:999px;
  background:#f3f4f6;
  color:#111827;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}

.hei-bib-video-close:hover,
.hei-bib-quiz-close:hover{
  background:#e5e7eb;
}

/* quiz */
.hei-bib-quiz-modal-inner{
  max-width:760px;
  padding:26px;
}

.hei-bib-quiz-shell{
  width:100%;
}

.hei-bib-quiz-form{
  margin-top:10px;
}

.hei-bib-quiz-question h4{
  margin:0 0 12px;
  font-size:16px;
  color:#111827;
}

.hei-bib-quiz-question label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:10px 0;
  cursor:pointer;
  color:#374151;
}

.hei-bib-quiz-question input[type="radio"]{
  margin-top:3px;
}

.hei-bib-quiz-resultado{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid #e5e7eb;
}

.hei-bib-quiz-resultado-titulo{
  margin:0 0 10px;
  font-size:18px;
  color:#111827;
}

.hei-bib-quiz-resultado-resumo{
  margin:0 0 14px;
  color:#374151;
  font-weight:600;
}

.hei-bib-quiz-feedback-item{
  padding:10px 12px;
  border-radius:10px;
  margin-bottom:10px;
  font-size:14px;
  font-weight:600;
}

.hei-bib-quiz-feedback-item.is-correct{
  background:#dcfce7;
  color:#166534;
}

.hei-bib-quiz-feedback-item.is-wrong{
  background:#fee2e2;
  color:#991b1b;
}

/* ---------------------------------
   ADMIN DA BIBLIOTECA
--------------------------------- */
.hei-bib-admin-wrap{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:22px;
  margin-top:16px;
}

.hei-bib-admin-form-card,
.hei-bib-admin-list-card{
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:20px;
}

.hei-bib-admin-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

/* ---------------------------------
   RESPONSIVO
--------------------------------- */
@media (max-width: 1100px){
  .hei-bib-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px){
  .hei-bib-filters{
    grid-template-columns:1fr 1fr;
  }

  .hei-bib-filter-actions{
    grid-column:1 / -1;
  }
}

@media (max-width: 760px){
  .hei-bib-tabs-wrap{
    flex-direction:column;
    align-items:stretch;
  }

  .hei-bib-tabs-right{
    margin-left:0;
    justify-content:flex-start;
  }

  .hei-bib-filters{
    grid-template-columns:1fr;
  }

  .hei-bib-grid{
    grid-template-columns:1fr;
  }

  .hei-bib-video-modal{
    padding:14px;
  }

  .hei-bib-video-modal-inner{
    border-radius:14px;
  }

  .hei-bib-quiz-modal-inner{
    padding:18px;
  }
}


/* =========================================================
   COMPONENTE GLOBAL - ABAS (PADRÃO ÚNICO DO PORTAL)
   ========================================================= */

.hei-tabs{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:10px 0 22px;
  padding-bottom:14px;
  border-bottom:1px solid #e5e7eb;
  flex-wrap:wrap;
}

.hei-tabs-left,
.hei-tabs-right{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.hei-tabs-right{
  margin-left:auto;
  padding:6px 10px;
  border:1px solid #d1d5db;
  border-radius:999px;
  background:#f8fafc;
}

.hei-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 16px;
  border-radius:999px;
  border:1px solid #d1d5db;
  background:#ffffff;
  color:#4b5563;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
  line-height:1;
  white-space:nowrap;
  transition:all .15s ease;
}

.hei-tab:hover{
  background:#f3f4f6;
  border-color:#cbd5e1;
  color:#374151;
}

.hei-tab.is-active{
  background:#6b7280;
  border-color:#6b7280;
  color:#ffffff;
}


/* =========================================================
   AJUSTE LOCAL - ABAS DA GESTÃO DE USUÁRIOS
   Corrige apenas as abas da página /usuarios/
   sem afetar abas dos módulos
   ========================================================= */

body.page-template .hei-card .hei-tabs[role="tablist"]{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

body.page-template .hei-card .hei-tabs[role="tablist"] .hei-tab{
  flex:0 0 auto;
  width:auto;
  min-width:0;
}

/* =========================================================
   AJUSTE LOCAL - ABAS DA GESTÃO DE USUÁRIOS
   ========================================================= */

.hei-wrap > .hei-card > .hei-tabs[role="tablist"]{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  justify-content:flex-start;
}

.hei-wrap > .hei-card > .hei-tabs[role="tablist"] > .hei-tab{
  flex:0 0 auto;
  width:auto;
  min-width:0;
}


.hei-lgpd-trigger{
  display:inline-flex;
  align-items:center;
  gap:6px;

  padding:6px 10px;
  border-radius:999px;

  background:#ffeec1;
  border:1px solid #e5c367;

  font-size:12px;
  font-weight:500;
  color:#475569;

  cursor:pointer;
  transition:all .15s ease;
}

.hei-lgpd-trigger:hover{
  background:#ffe7a8;
  border-color:#e5c367;
  color:#0369a1;
}

.hei-lgpd-box{
  background:#ffe7a8;
  border:1px solid #fcbd36;
  border-left:6px solid #fcbd36;
  border-radius:12px;

  padding:14px 16px;
  margin:10px 0 22px;

  font-size:13px;
  color:#475569;
  line-height:1.55;
}

.hei-lgpd-box strong{
  display:block;
  margin-bottom:6px;
  color:#0f172a;
}


/* =========================================================
   MEU PERFIL - RESUMO PESSOAL E CONFIGURACOES
   ========================================================= */

.hei-profile-card{
  padding:0;
  overflow:hidden;
  border-radius:18px;
}

.hei-profile-card form{
  display:block;
}

.hei-profile-hero{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(360px, .8fr);
  align-items:stretch;
  gap:18px;
  padding:20px;
  border-bottom:1px solid #dce5ec;
  background:linear-gradient(135deg, #f5fafb 0%, #fbfdff 58%, #f5f9fc 100%);
}

.hei-profile-identity{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
  padding:4px 2px;
}

.hei-profile-avatar{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:68px;
  height:68px;
  flex:0 0 68px;
  border:1px solid #bce4e1;
  border-radius:20px;
  background:linear-gradient(145deg, #dff7f4, #eef9fb);
  color:#078f83;
  font-size:24px;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 8px 22px rgba(15, 143, 131, .08);
}

.hei-profile-identity__content{
  min-width:0;
}

.hei-profile-eyebrow{
  display:block;
  margin-bottom:4px;
  color:#078f83;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
}

.hei-profile-identity h2{
  margin:0;
  color:#0f172a;
  font-size:23px;
  line-height:1.2;
}

.hei-profile-identity p{
  margin:4px 0 0;
  color:#64748b;
  font-size:12px;
}

.hei-profile-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
}

.hei-profile-tags span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 8px;
  border:1px solid #dae5ec;
  border-radius:999px;
  background:#fff;
  color:#475569;
  font-size:10px;
  font-weight:700;
}

.hei-profile-tags svg{
  width:12px;
  height:12px;
  color:#078f83;
}

.hei-politicas-aceite-card{
  display:flex;
  align-items:flex-start;
  gap:11px;
  min-width:0;
  padding:14px;
  border:1px solid #cfe5dd;
  border-radius:14px;
  background:#fff;
}

.hei-politicas-aceite-card.is-pending{
  border-color:#eed59b;
  background:#fffdf6;
}

.hei-politicas-aceite-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:10px;
  background:#dcfce7;
  color:#15803d;
}

.hei-politicas-aceite-icon svg{
  width:18px;
  height:18px;
}

.hei-politicas-aceite-content{
  min-width:0;
}

.hei-politicas-aceite-content strong{
  display:block;
  margin-bottom:3px;
  color:#0f172a;
  font-size:13px;
}

.hei-politicas-aceite-content p{
  margin:0 0 8px;
  color:#64748b;
  font-size:10px;
  line-height:1.45;
}

.hei-politicas-aceite-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px 12px;
  font-size:10px;
  font-weight:700;
}

.hei-politicas-aceite-actions .hei-link,
.hei-politicas-aceite-actions label{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:0;
}

.hei-politicas-aceite-actions .hei-link svg{
  width:11px;
  height:11px;
}

.hei-politicas-aceite-actions label{
  color:#166534;
}

.hei-profile-card > form > .hei-alert{
  margin:14px 20px 0;
}

.hei-profile-data-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
  padding:18px 20px 0;
}

.hei-profile-data-card{
  min-width:0;
  padding:16px;
  border:1px solid #dde5eb;
  border-radius:14px;
  background:#fff;
}

.hei-profile-section-head,
.hei-profile-option-head{
  display:flex;
  align-items:flex-start;
  gap:10px;
}

.hei-profile-section-head{
  margin-bottom:14px;
  padding-bottom:12px;
  border-bottom:1px solid #edf1f4;
}

.hei-profile-section-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:10px;
  background:#e9f8f6;
  color:#078f83;
}

.hei-profile-section-icon--security{
  background:#eef3fb;
  color:#365e96;
}

.hei-profile-section-icon svg{
  width:17px;
  height:17px;
}

.hei-profile-section-head h3{
  margin:0;
  color:#172033;
  font-size:15px;
}

.hei-profile-section-head p{
  margin:3px 0 0;
  color:#748195;
  font-size:10px;
}

.hei-profile-fields{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:11px 12px;
}

.hei-profile-field{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:5px;
}

.hei-profile-field label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  color:#526174;
  font-size:10px;
  font-weight:700;
}

.hei-profile-field label span{
  color:#078f83;
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
}

.hei-profile-field .hei-input{
  min-height:38px;
  padding:8px 10px;
  border-radius:8px;
  font-size:11px;
}

.hei-profile-field .hei-input:disabled{
  border-color:#e5ebef;
  background:#f7f9fb;
  color:#667085;
  opacity:1;
}

.hei-profile-field--editable .hei-input{
  border-color:#b9dcd8;
  background:#fff;
}

.hei-profile-option-card{
  margin:14px 20px 0;
  padding:16px;
  border-color:#dde5eb;
  border-radius:14px;
  background:#fbfcfd;
}

.hei-profile-option-head{
  margin-bottom:14px;
}

.hei-profile-option-head .hei-section-label{
  margin:0 0 3px;
  font-size:14px;
}

.hei-profile-option-head .hei-muted{
  margin:0;
  font-size:10px;
}

.hei-profile-option-card .hei-password-grid{
  gap:12px;
}

.hei-profile-option-card .hei-password-item label{
  margin-bottom:6px;
  color:#526174;
  font-size:10px;
}

.hei-profile-option-card .hei-input{
  min-height:39px;
  padding:8px 10px;
  font-size:11px;
}

.hei-profile-check{
  display:flex !important;
  align-items:center;
  gap:7px;
  width:max-content;
  max-width:100%;
}

.hei-profile-actions{
  justify-content:flex-end;
  margin:18px 20px 22px;
}

.hei-profile-save{
  min-height:40px;
  padding:10px 16px;
  border-color:#0f766e;
  background:#0f766e;
  color:#fff;
  box-shadow:0 8px 18px rgba(15, 118, 110, .14);
}

.hei-profile-save:hover{
  border-color:#0b615b;
  background:#0b615b;
  color:#fff;
}

.hei-profile-save svg{
  width:15px;
  height:15px;
}

@media (max-width:1050px){
  .hei-profile-hero{
    grid-template-columns:1fr;
  }
}

@media (max-width:820px){
  .hei-profile-data-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:600px){
  .hei-profile-hero,
  .hei-profile-data-grid{
    padding-left:14px;
    padding-right:14px;
  }

  .hei-profile-identity{
    align-items:flex-start;
  }

  .hei-profile-avatar{
    width:52px;
    height:52px;
    flex-basis:52px;
    border-radius:15px;
    font-size:19px;
  }

  .hei-profile-identity h2{
    font-size:19px;
  }

  .hei-profile-fields,
  .hei-profile-option-card .hei-password-grid{
    grid-template-columns:1fr;
  }

  .hei-profile-option-card{
    margin-left:14px;
    margin-right:14px;
  }

  .hei-profile-actions{
    margin-left:14px;
    margin-right:14px;
  }

  .hei-profile-save{
    width:100%;
    justify-content:center;
  }
}


.hei-filter-box {
  margin: 18px 0;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #f9fafb;
}

.hei-filter-box .hei-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
}

.hei-filter-box label {
  font-size: 12px;
  font-weight: 600;
  color: #4b5563;
  line-height: 1;
  margin: 0;
}

.hei-filter-box .hei-input {
  width: 100%;
}

.hei-list-title {
  margin: 18px 0 12px;
}


.hei-table-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap;
}

.hei-table-actions .hei-inline {
  margin: 0 !important;
}

.hei-table-actions .hei-btn-sm,
.hei-table-actions button,
.hei-table-actions a {
  margin: 0 !important;
  white-space: nowrap;
}


.hei-import-loading {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #dbeafe;
  border-radius: 14px;
  background: #eff6ff;
}

.hei-import-loading__title {
  font-weight: 700;
  color: #1e3a8a;
  margin-bottom: 4px;
}

.hei-import-loading__text {
  color: #1f2937;
  font-size: 14px;
  margin-bottom: 12px;
}

.hei-import-progress {
  width: 100%;
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: #dbeafe;
}

.hei-import-progress__bar {
  width: 40%;
  height: 100%;
  border-radius: 999px;
  background: #2563eb;
  animation: hei-import-progress 1.2s infinite ease-in-out;
}

@keyframes hei-import-progress {
  0% {
    transform: translateX(-120%);
  }
  100% {
    transform: translateX(260%);
  }
}




/* =========================================================
   COMUNICADOS - LEITURA INDIVIDUAL
   ========================================================= */

.hei-comunicado-single-page {
  max-width: 1320px;
}

.hei-comunicado-footer {
  margin-top: 32px;
}

.hei-comunicado-single-shell {
  padding: 32px;
}



.hei-comunicado-single-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 36px;
  align-items: start;
}

.hei-comunicado-article {
  min-width: 0;
  max-width: 860px;
}

.hei-comunicado-date {
  font-size: 13px;
  color: #64748b;
  margin-bottom: 12px;
  font-weight: 600;
}

.hei-comunicado-title {
  margin: 0 0 24px;
  font-size: 36px;
  line-height: 1.18;
  color: #0f172a;
}

.hei-comunicado-content {
  font-size: 16px;
  line-height: 1.9;
  color: #111827;
}

.hei-comunicado-content p {
  margin: 0 0 20px;
}

.hei-comunicado-sidebar-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 18px;
}

.hei-comunicado-sidebar-card h3 {
  margin: 0 0 16px;
  font-size: 16px;
  color: #0f172a;
}

.hei-comunicado-recentes-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.hei-comunicado-recente-item {
  display: block;
  padding-bottom: 12px;
  border-bottom: 1px solid #e5e7eb;
  text-decoration: none;
}

.hei-comunicado-recente-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.hei-comunicado-recente-item strong {
  display: block;
  font-size: 14px;
  color: #0f172a;
  line-height: 1.35;
}

.hei-comunicado-recente-item span {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  color: #64748b;
}

@media (max-width: 900px) {
  .hei-comunicado-single-shell {
    padding: 22px;
  }

  .hei-comunicado-topbar {
    flex-direction: column;
  }

  .hei-comunicado-single-layout {
    grid-template-columns: 1fr;
  }

  .hei-comunicado-title {
    font-size: 26px;
  }
}

/* =========================================================
   COMUNICADOS - GESTÃO KPIS
   ========================================================= */

.hei-comunicados-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  margin: 22px 0 24px;
}

.hei-comunicados-kpis .hei-mini-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 18px 16px;
}

.hei-comunicados-kpis .hei-mini-card strong {
  display: block;
  font-size: 28px;
  line-height: 1;
  color: #0f172a;
  margin-bottom: 8px;
}

.hei-comunicados-kpis .hei-mini-card span {
  display: block;
  font-size: 13px;
  color: #64748b;
}

@media (max-width: 900px) {
  .hei-comunicados-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}



.hei-home-head-flex{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:13px;
}

.hei-home-news{
  margin-top:20px;
  padding:18px 20px;
  border:1px solid #dce7ee;
  border-radius:18px;
  background:linear-gradient(115deg,#f7fbfc 0%,#fff 66%);
  box-shadow:0 10px 26px rgba(15,39,66,.045);
}

.hei-home-news-heading{
  display:flex;
  align-items:center;
  gap:12px;
}

.hei-home-news-heading__icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:12px;
  color:#008f87;
  background:#e2f6f4;
}

.hei-home-news-heading__icon svg{
  width:19px;
  height:19px;
}

.hei-home-news-kicker{
  display:block;
  margin-bottom:2px;
  color:#008f87;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
}

.hei-home-news .hei-home-news-heading h3{
  margin:0;
  color:#10233c;
  font-size:17px;
  font-weight:850;
}

.hei-home-news-all{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border:1px solid #d5e2ea;
  border-radius:10px;
  color:#38506a;
  background:#fff;
  font-size:11px;
  font-weight:800;
  text-decoration:none;
  transition:border-color .15s ease,color .15s ease,transform .15s ease;
}

.hei-home-news-all:hover{
  transform:translateY(-1px);
  border-color:#9bcfc9;
  color:#007f77;
}

.hei-home-news-all svg{
  width:14px;
  height:14px;
}

.hei-home-news-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.hei-home-news-card{
  min-height:0;
  margin:0;
  padding:0;
  overflow:hidden;
  border:1px solid #e0e8ef;
  border-radius:13px;
  background:#fff;
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;
}

.hei-home-news-card:hover{
  transform:translateY(-1px);
  border-color:#b9dcd8;
  box-shadow:0 7px 18px rgba(15,39,66,.06);
}

.hei-home-news-card__link{
  display:flex;
  align-items:center;
  gap:13px;
  min-height:68px;
  padding:11px 13px;
  color:inherit;
  text-decoration:none;
}

.hei-home-news-card__link:hover{
  color:inherit;
}

.hei-home-news .hei-home-news-meta{
  display:grid;
  place-items:center;
  width:48px;
  min-height:40px;
  flex:0 0 48px;
  margin:0;
  padding:4px;
  border-radius:9px;
  color:#527087;
  background:#f1f6f8;
  font-size:10px;
  font-weight:800;
  line-height:1.15;
  text-align:center;
}

.hei-home-news-card__body{
  display:block;
  min-width:0;
  flex:1;
}

.hei-home-news .hei-home-news-title{
  display:block;
  overflow:hidden;
  margin:0 0 3px;
  color:#152a43;
  font-size:13px;
  font-weight:850;
  line-height:1.3;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.hei-home-news .hei-home-news-excerpt{
  display:block;
  overflow:hidden;
  margin:0;
  color:#708296;
  font-size:11px;
  line-height:1.35;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.hei-home-news-card__arrow{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  flex:0 0 30px;
  border-radius:9px;
  color:#008f87;
  background:#edf8f7;
}

.hei-home-news-card__arrow svg{
  width:14px;
  height:14px;
}

body:has(.hei-home-news) .hei-portal-footer-premium{
  margin-top:28px;
}

@media (max-width: 900px){

  .hei-home-news-grid{
    grid-template-columns:1fr;
  }

  .hei-home-head-flex{
    align-items:center;
  }

}

@media (max-width:600px){
  .hei-home-news{
    margin-top:20px;
    padding:15px;
  }

  .hei-home-news-card__link{
    min-height:62px;
    padding:9px 10px;
  }

  .hei-home-news .hei-home-news-excerpt{
    display:none;
  }

  .hei-home-news-all{
    padding:8px;
  }
}

/* =========================================================
   COMUNICADOS INTERNOS PREMIUM - LISTA E LEITURA
   Escopo separado do resumo compacto exibido na home.
   ========================================================= */

.hei-comunicados-lista,
.hei-comunicado-single-page{
  max-width:1320px;
  padding-top:28px;
  padding-bottom:44px;
}

.hei-comunicados-list-shell,
.hei-comunicado-single-shell{
  padding:0;
  overflow:hidden;
  border:1px solid #dbe6ee;
  border-radius:24px;
  background:#fff;
  box-shadow:0 18px 44px rgba(15,39,66,.065);
}

.hei-comunicados-list-hero,
.hei-comunicado-topbar{
  position:relative;
  display:flex;
  align-items:center;
  gap:18px;
  min-height:138px;
  padding:28px 32px;
  overflow:hidden;
  border:0;
  background:
    radial-gradient(circle at 88% 12%,rgba(15,184,176,.16),transparent 28%),
    linear-gradient(118deg,#f3faf9 0%,#f8fbfd 62%,#fff 100%);
}

.hei-comunicados-list-hero::after,
.hei-comunicado-topbar::after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-130px;
  width:250px;
  height:250px;
  border:1px solid rgba(0,143,135,.10);
  border-radius:50%;
  box-shadow:0 0 0 36px rgba(0,143,135,.025);
  pointer-events:none;
}

.hei-comunicados-list-hero__icon{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  flex:0 0 54px;
  border-radius:17px;
  color:#008f87;
  background:#dff5f2;
}

.hei-comunicados-list-hero__icon svg{
  width:25px;
  height:25px;
}

.hei-comunicado-kicker{
  position:relative;
  z-index:1;
  display:block;
  margin-bottom:6px;
  color:#008f87;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
}

.hei-comunicados-list-hero h2,
.hei-comunicado-topbar h2{
  position:relative;
  z-index:1;
  margin:0 0 5px;
  color:#102640;
  font-size:26px;
  font-weight:850;
  letter-spacing:-.02em;
}

.hei-comunicados-list-hero p,
.hei-comunicado-topbar p{
  position:relative;
  z-index:1;
  margin:0;
  color:#64788c;
  font-size:13px;
}

.hei-comunicados-list-hero__count{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  min-width:96px;
  margin-left:auto;
  padding:11px 14px;
  border:1px solid #cee5e2;
  border-radius:14px;
  color:#58706f;
  background:rgba(255,255,255,.78);
  font-size:10px;
  font-weight:700;
}

.hei-comunicados-list-hero__count strong{
  color:#087d76;
  font-size:20px;
  line-height:1.1;
}

.hei-comunicados-list-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  padding:24px 28px 28px;
  background:#f8fafc;
}

.hei-comunicados-list-card{
  display:flex;
  flex-direction:column;
  min-height:190px;
  padding:20px;
  border:1px solid #dfe7ee;
  border-radius:17px;
  background:#fff;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}

.hei-comunicados-list-card:hover{
  transform:translateY(-2px);
  border-color:#abd7d2;
  box-shadow:0 12px 26px rgba(15,39,66,.07);
}

.hei-comunicados-list-card__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:15px;
}

.hei-comunicados-list-card__date,
.hei-comunicados-list-card__type{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:#61778b;
  font-size:10px;
  font-weight:750;
}

.hei-comunicados-list-card__date svg{
  width:13px;
  height:13px;
  color:#00978e;
}

.hei-comunicados-list-card__type{
  padding:5px 8px;
  border-radius:999px;
  color:#087d76;
  background:#e9f7f5;
}

.hei-comunicados-list-card h3{
  margin:0 0 9px;
  color:#142941;
  font-size:17px;
  font-weight:850;
  line-height:1.3;
}

.hei-comunicados-list-card h3 a{
  color:inherit;
  text-decoration:none;
}

.hei-comunicados-list-card p{
  margin:0 0 18px;
  color:#687c8f;
  font-size:12px;
  line-height:1.55;
}

.hei-comunicados-list-card__link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  align-self:flex-start;
  margin-top:auto;
  color:#007f77;
  font-size:11px;
  font-weight:850;
  text-decoration:none;
}

.hei-comunicados-list-card__link svg{
  width:14px;
  height:14px;
}

.hei-comunicado-topbar{
  justify-content:space-between;
  min-height:120px;
}

.hei-comunicado-back{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:9px 12px;
  border:1px solid #d4e4e7;
  border-radius:11px;
  color:#405b70;
  background:#fff;
  font-size:11px;
  font-weight:800;
  text-decoration:none;
}

.hei-comunicado-back svg{
  width:14px;
  height:14px;
}

.hei-comunicado-single-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:28px;
  align-items:start;
  padding:28px 30px 34px;
  background:#f8fafc;
}

.hei-comunicado-article{
  max-width:none;
  padding:28px 30px;
  border:1px solid #dfe7ee;
  border-radius:18px;
  background:#fff;
}

.hei-comunicado-article__meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin-bottom:18px;
}

.hei-comunicado-date,
.hei-comunicado-article__label{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0;
  padding:6px 9px;
  border-radius:999px;
  color:#5a7185;
  background:#f0f5f7;
  font-size:10px;
  font-weight:750;
}

.hei-comunicado-date svg,
.hei-comunicado-article__label svg{
  width:13px;
  height:13px;
  color:#008f87;
}

.hei-comunicado-title{
  margin:0 0 23px;
  color:#10243d;
  font-size:clamp(28px,3vw,38px);
  font-weight:850;
  letter-spacing:-.03em;
  line-height:1.15;
}

.hei-comunicado-content{
  color:#2e4052;
  font-size:15px;
  line-height:1.8;
}

.hei-comunicado-footer{
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid #e4eaef;
}

.hei-comunicado-footer__link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#38536a;
  font-size:11px;
  font-weight:800;
  text-decoration:none;
}

.hei-comunicado-footer__link svg{
  width:14px;
  height:14px;
  color:#008f87;
}

.hei-comunicado-sidebar-card{
  position:sticky;
  top:24px;
  padding:20px;
  border:1px solid #dfe7ee;
  border-radius:18px;
  background:#fff;
  box-shadow:0 9px 22px rgba(15,39,66,.045);
}

.hei-comunicado-sidebar-card__icon{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  margin-bottom:12px;
  border-radius:11px;
  color:#008f87;
  background:#e6f6f4;
}

.hei-comunicado-sidebar-card__icon svg{
  width:18px;
  height:18px;
}

.hei-comunicado-sidebar-card h3{
  margin:0 0 4px;
  color:#172a42;
  font-size:15px;
  font-weight:850;
}

.hei-comunicado-sidebar-card > p{
  margin:0 0 14px;
  color:#718397;
  font-size:10px;
  line-height:1.45;
}

.hei-comunicado-recentes-list{
  gap:0;
}

.hei-comunicado-recente-item{
  display:flex;
  align-items:center;
  gap:8px;
  padding:11px 0;
  border-bottom:1px solid #e5ebf0;
}

.hei-comunicado-recente-item__body{
  min-width:0;
  flex:1;
}

.hei-comunicado-recente-item > svg{
  width:14px;
  height:14px;
  flex:0 0 14px;
  color:#8ba0b2;
}

.hei-comunicado-recente-item strong{
  overflow:hidden;
  color:#263c52;
  font-size:12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

@media (max-width:900px){
  .hei-comunicados-list-grid,
  .hei-comunicado-single-layout{
    grid-template-columns:1fr;
  }

  .hei-comunicado-sidebar-card{
    position:static;
  }
}

@media (max-width:600px){
  .hei-comunicados-lista,
  .hei-comunicado-single-page{
    padding:18px 14px 32px;
  }

  .hei-comunicados-list-hero,
  .hei-comunicado-topbar{
    align-items:flex-start;
    flex-direction:column;
    padding:22px 20px;
  }

  .hei-comunicados-list-hero__count{
    align-items:flex-start;
    margin:0;
  }

  .hei-comunicados-list-grid,
  .hei-comunicado-single-layout{
    padding:16px;
  }

  .hei-comunicado-article{
    padding:22px 19px;
  }
}


.hei-btn-danger2 {
  border-color: #ef4444;
  color: #b91c1c;
}

.hei-btn-danger2:hover {
  background: #fee2e2;
}

/* =========================================================
   GESTÃO DE USUÁRIOS - AJUSTE VISUAL CODEX 23/07/2026
   Escopo exclusivo da página /usuarios/ para estabilizar o
   cadastro manual, abas e listagens sem alterar outros módulos.
   ========================================================= */

.hei-usuarios-wrap{
  max-width:1220px;
  padding-top:28px;
}

.hei-usuarios-card{
  background:#fff;
  border:1px solid #dce6ef;
  border-radius:24px;
  padding:0 28px 28px;
  overflow:hidden;
  box-shadow:0 18px 45px rgba(15,23,42,.07);
}

.hei-usuarios-hero{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:138px;
  margin:0 -28px 22px;
  padding:30px 34px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 88% 18%,rgba(38,203,194,.20),transparent 24%),
    linear-gradient(120deg,#071a33 0%,#102f50 62%,#14536a 100%);
}

.hei-usuarios-hero::after{
  content:"";
  position:absolute;
  right:-72px;
  bottom:-124px;
  width:280px;
  height:280px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:50%;
  box-shadow:0 0 0 38px rgba(255,255,255,.025);
  pointer-events:none;
}

.hei-usuarios-hero__main,
.hei-usuarios-hero__security{
  position:relative;
  z-index:1;
}

.hei-usuarios-eyebrow{
  display:block;
  margin-bottom:6px;
  color:#16d8cd;
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
}

.hei-usuarios-hero h2{
  margin:0 0 6px;
  color:#fff;
  font-size:28px;
  font-weight:850;
  letter-spacing:-.02em;
}

.hei-usuarios-hero p{
  max-width:680px;
  margin:0;
  color:#c9d9e8;
  font-size:14px;
}

.hei-usuarios-hero__security{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:210px;
  padding:13px 15px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:15px;
  background:rgba(255,255,255,.075);
  backdrop-filter:blur(8px);
}

.hei-usuarios-hero__security-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:12px;
  color:#1ce0d5;
  background:rgba(22,216,205,.12);
}

.hei-usuarios-hero__security-icon svg{
  width:20px;
  height:20px;
}

.hei-usuarios-hero__security > span:last-child{
  display:flex;
  flex-direction:column;
  color:#9eb5c9;
  font-size:11px;
}

.hei-usuarios-hero__security strong{
  margin-top:2px;
  color:#fff;
  font-size:13px;
}

.hei-usuarios-card .hei-head{
  margin-bottom:18px;
  padding-bottom:14px;
  border-bottom:1px solid #e5e7eb;
}

.hei-usuarios-card .hei-head h2{
  font-size:26px;
  font-weight:800;
  color:#0f172a;
}

.hei-usuarios-card .hei-tabs[role="tablist"]{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin:18px 0 26px;
  padding:8px;
  border:1px solid #dbe3ef;
  border-radius:999px;
  background:#f8fafc;
  overflow:visible;
}

.hei-usuarios-card .hei-tabs[role="tablist"] .hei-tab{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  top:0;
  border:0;
  border-radius:999px;
  background:transparent;
  padding:10px 15px;
  color:#475569;
  font-weight:700;
}

.hei-usuarios-card .hei-tabs[role="tablist"] .hei-tab svg{
  width:16px;
  height:16px;
  flex:0 0 16px;
}

.hei-usuarios-card .hei-tabs[role="tablist"] .hei-tab::before,
.hei-usuarios-card .hei-tabs[role="tablist"] .hei-tab::after{
  display:none;
}

.hei-usuarios-card .hei-tabs[role="tablist"] .hei-tab:hover{
  background:#eaf0f7;
  color:#0f172a;
}

.hei-usuarios-card .hei-tabs[role="tablist"] .hei-tab.is-active{
  background:#071225;
  color:#fff;
  box-shadow:0 8px 18px rgba(15,23,42,.16);
}

.hei-usuarios-card .hei-tab-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:999px;
  background:#ef4444;
  color:#fff;
  font-size:10px;
}

.hei-usuarios-view-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  margin:6px 0 18px;
  padding:20px 22px;
  border:1px solid #cfe9e6;
  border-radius:18px;
  background:linear-gradient(105deg,#effaf9 0%,#f8fbfd 58%,#fff 100%);
}

.hei-usuarios-view-head__icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:15px;
  color:#008f85;
  background:#dff6f3;
}

.hei-usuarios-view-head__icon svg{
  width:23px;
  height:23px;
}

.hei-usuarios-view-head h3{
  margin:0 0 4px;
  color:#0f172a;
  font-size:20px;
  font-weight:850;
}

.hei-usuarios-view-head p{
  margin:0;
  color:#64748b;
  font-size:13px;
}

.hei-usuarios-view-head__badge{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 11px;
  border:1px solid #d9e5ee;
  border-radius:999px;
  color:#475569;
  background:#fff;
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}

.hei-usuarios-view-head__badge svg{
  width:15px;
  height:15px;
  color:#009b91;
}

.hei-usuarios-form{
  display:grid;
  gap:16px;
}

.hei-usuarios-form-section{
  padding:20px 22px 22px;
  border:1px solid #dce6ef;
  border-radius:18px;
  background:#f8fafc;
}

.hei-usuarios-card .hei-usuarios-form-section .hei-section-title{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 18px;
  padding:0 0 13px;
  border-bottom:1px solid #dce6ef;
  border-radius:0;
  color:#0f766e;
  background:transparent;
}

.hei-usuarios-form-section .hei-section-title svg{
  width:17px;
  height:17px;
}

.hei-usuarios-form-section--access{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);
  column-gap:28px;
  align-items:end;
  background:linear-gradient(110deg,#f7fafc,#f0f8f7);
}

.hei-usuarios-form-section--access .hei-section-title{
  grid-column:1/-1;
}

.hei-usuarios-form-section--access .hei-form-grid{
  grid-template-columns:1fr;
}

.hei-usuarios-access-note{
  display:flex;
  align-items:flex-start;
  gap:9px;
  padding:12px 14px;
  border:1px solid #cce7e4;
  border-radius:13px;
  color:#52706f;
  background:#fff;
  font-size:12px;
  line-height:1.45;
}

.hei-usuarios-access-note svg{
  width:16px;
  height:16px;
  flex:0 0 16px;
  margin-top:1px;
  color:#009b91;
}

.hei-usuarios-submit{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:0 20px;
  border-radius:13px;
  background:linear-gradient(120deg,#0a203c,#123d5c);
  box-shadow:0 9px 22px rgba(10,32,60,.16);
}

.hei-usuarios-submit svg{
  width:17px;
  height:17px;
}

.hei-usuarios-wrap .hei-filter-box{
  margin-top:8px;
  padding:20px;
  border:1px solid #dce6ef;
  border-radius:18px;
  background:#f8fafc;
}

.hei-usuarios-wrap .hei-list-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:20px 0 12px;
  padding:0 2px;
}

.hei-usuarios-wrap .hei-list-title h3{
  color:#0f172a;
  font-size:18px;
  font-weight:850;
}

.hei-usuarios-wrap .hei-table-wrap{
  border:1px solid #dce6ef;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 22px rgba(15,23,42,.04);
}

.hei-usuarios-wrap .hei-table{
  margin:0;
}

.hei-usuarios-wrap .hei-table thead th{
  color:#52667a;
  background:#f1f5f9;
  font-size:11px;
  font-weight:850;
  letter-spacing:.045em;
  text-transform:uppercase;
}

.hei-usuarios-wrap .hei-table tbody tr:hover{
  background:#f7fbfb;
}

.hei-usuarios-wrap .hei-table td,
.hei-usuarios-wrap .hei-table th{
  border-color:#e5ebf1;
}

.hei-usuarios-wrap .hei-btn-sm{
  border-radius:9px;
}

.hei-usuarios-card > .hei-hr + h3,
.hei-usuarios-card > h3{
  color:#0f172a;
  font-size:20px;
  font-weight:850;
}

.hei-usuarios-card > h3,
.hei-usuarios-card .hei-section-title{
  color:#0f172a;
}

.hei-usuarios-card > h3{
  margin:22px 0 18px;
  font-size:20px;
  font-weight:800;
}

.hei-usuarios-card .hei-section-title{
  margin:24px 0 14px;
  padding:10px 14px;
  border-radius:14px;
  background:#eef8f7;
  color:#00796f;
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.hei-usuarios-card .hei-form-grid{
  grid-template-columns:repeat(2,minmax(240px,1fr));
  gap:18px 22px;
}

.hei-usuarios-card .hei-field{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:7px;
}

.hei-usuarios-card .hei-field label{
  color:#334155;
  font-size:13px;
  font-weight:800;
}

.hei-usuarios-card .hei-input{
  min-height:44px;
  border-radius:12px;
  border-color:#d8e1ed;
  font-size:14px;
}

.hei-usuarios-card .hei-input:focus{
  border-color:#00a99d;
  box-shadow:0 0 0 3px rgba(0,169,157,.12);
}

.hei-usuarios-card .hei-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-top:22px;
}

.hei-usuarios-card .hei-table-wrap{
  width:100%;
  overflow-x:auto;
  border-radius:16px;
}

@media (max-width:900px){
  .hei-usuarios-card{
    padding:0 22px 22px;
    border-radius:20px;
  }

  .hei-usuarios-hero{
    margin:0 -22px 22px;
    padding:26px 24px;
  }

  .hei-usuarios-card .hei-form-grid{
    grid-template-columns:1fr;
  }

  .hei-usuarios-card .hei-tabs[role="tablist"]{
    border-radius:20px;
  }

  .hei-usuarios-form-section--access{
    grid-template-columns:1fr;
    row-gap:14px;
  }

  .hei-usuarios-wrap .hei-filter-box .hei-form-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:640px){
  .hei-usuarios-wrap{
    padding-left:14px;
    padding-right:14px;
  }

  .hei-usuarios-card{
    padding:0 16px 18px;
  }

  .hei-usuarios-hero{
    flex-direction:column;
    align-items:flex-start;
    margin:0 -16px 18px;
    padding:24px 20px;
  }

  .hei-usuarios-hero__security{
    width:100%;
  }

  .hei-usuarios-view-head{
    grid-template-columns:auto minmax(0,1fr);
    padding:17px;
  }

  .hei-usuarios-view-head__badge{
    grid-column:1/-1;
    justify-self:start;
  }

  .hei-usuarios-form-section{
    padding:17px;
  }

  .hei-usuarios-card .hei-tabs[role="tablist"] .hei-tab{
    width:100%;
    justify-content:center;
  }

  .hei-usuarios-wrap .hei-filter-box .hei-form-grid{
    grid-template-columns:1fr !important;
  }
}

/* =========================================================
   EXPERIENCIA PREMIUM PRE-LOGIN - LOGIN
   ALTERACAO CODEX 24/07/2026
   Camada visual isolada pelo modificador --premium para nao
   interferir nas telas internas nem nos demais shortcodes.
   ========================================================= */

/*
 * TELA REALMENTE INTEIRA - ALTERACAO CODEX 24/07/2026
 * A pagina inicial nao recebe necessariamente a classe body.page.
 * Quando o login premium estiver presente, removemos apenas nesse
 * contexto os limites de largura e espacamentos herdados do tema.
 */
html:has(body .hei-public-auth--premium),
body:has(.hei-public-auth--premium){
  width:100% !important;
  min-height:100% !important;
  margin:0 !important;
  overflow:hidden !important;
  background:
    linear-gradient(90deg, rgba(0,20,49,.20), rgba(0,16,43,.08)),
    url("images/fundo-login.jpg") center center / cover no-repeat fixed !important;
}

body:has(.hei-public-auth--premium) #page,
body:has(.hei-public-auth--premium) #content,
body:has(.hei-public-auth--premium) .site-content,
body:has(.hei-public-auth--premium) .site-content > .ast-container,
body:has(.hei-public-auth--premium) .ast-container,
body:has(.hei-public-auth--premium) #primary,
body:has(.hei-public-auth--premium) .site-main,
body:has(.hei-public-auth--premium) article,
body:has(.hei-public-auth--premium) .entry-content{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
}

/*
 * RODAPE FORA DA EXPERIENCIA DE ACESSO - ALTERACAO CODEX 24/07/2026
 * O copyright do tema permanece nas paginas internas, mas nao deve
 * interromper a composicao visual da tela publica premium.
 */
body:has(.hei-public-auth--premium) footer,
body:has(.hei-public-auth--premium) #colophon,
body:has(.hei-public-auth--premium) .site-footer,
body:has(.hei-public-auth--premium) .site-below-footer-wrap{
  display:none !important;
}

body:has(.hei-public-auth--premium) #page,
body:has(.hei-public-auth--premium) #content,
body:has(.hei-public-auth--premium) .site-content{
  min-height:100dvh !important;
}

.hei-public-auth--premium{
  position:fixed;
  top:0;
  bottom:0;
  left:50%;
  right:auto;
  transform:translateX(-50%);
  z-index:999999;
  width:100vw;
  height:100vh;
  height:100dvh;
  padding:clamp(18px, 3vw, 48px);
  overflow:hidden;
  box-sizing:border-box;
  align-items:center;
  background:transparent;
}

/*
 * COPYRIGHT INTEGRADO AO FUNDO - ALTERACAO CODEX 24/07/2026
 * Mantem a identificacao institucional sem recuperar a faixa branca
 * do rodape original do tema.
 */
.hei-public-auth--premium::after{
  content:"Copyright © 2026 WorkSpace MetaSaúde";
  position:absolute;
  left:0;
  right:0;
  bottom:12px;
  z-index:3;
  color:rgba(255,255,255,.62);
  font-size:11px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.01em;
  text-align:center;
  pointer-events:none;
}

.hei-public-auth--premium,
.hei-public-auth--premium *{
  box-sizing:border-box;
}

.hei-public-auth__shell--premium{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 370px;
  align-items:center;
  gap:clamp(70px, 7vw, 130px);
  width:min(100%, 1540px);
  max-width:1540px;
  min-height:min(780px, calc(100dvh - clamp(36px, 6vw, 96px)));
  margin:auto;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.hei-public-auth__shell--premium .hei-public-auth__top{
  align-self:stretch;
  min-height:0;
  padding:clamp(18px, 2.4vw, 38px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:clamp(20px, 3vh, 32px);
  background:transparent;
  transform:translateY(-82px);
}

.hei-public-auth__shell--premium .hei-public-auth__logo img{
  width:auto;
  max-width:215px;
  max-height:76px;
  object-fit:contain;
}

.hei-public-auth__story{
  width:100%;
  max-width:370px;
  transform:none;
  color:#fff;
}

.hei-public-auth__story h1{
  margin:0;
  max-width:370px;
  color:rgba(255,255,255,.78);
  font-size:clamp(20px, 1.45vw, 24px);
  font-weight:400;
  line-height:1.3;
  letter-spacing:.015em;
}

.hei-public-auth__story h1 span{
  color:inherit;
  font-weight:inherit;
}

.hei-public-auth__story-line{
  width:38px;
  height:2px;
  margin:21px 0 23px;
  background:#22d3ee;
}

.hei-public-auth__story > p{
  max-width:370px;
  margin:0;
  color:rgba(255,255,255,.78) !important;
  font-size:clamp(14px, 1.05vw, 17px);
  font-weight:350;
  line-height:1.65;
}

.hei-public-auth__story > p strong{
  color:#22d3ee;
  font-weight:500;
}

.hei-public-auth__shell--premium .hei-public-auth__body{
  width:100%;
  max-width:370px;
  margin-left:auto;
  padding:40px 42px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:24px;
  background:rgba(255,255,255,.97);
  box-shadow:
    0 30px 80px rgba(0,16,43,.32),
    0 0 65px rgba(34,211,238,.10);
  backdrop-filter:blur(18px);
}

.hei-public-auth__shell--premium .hei-auth-box{
  text-align:left;
}

.hei-auth-box__eyebrow{
  margin:0 0 4px !important;
  color:#029fc3 !important;
  font-size:14px !important;
  font-weight:600 !important;
}

.hei-public-auth__shell--premium .hei-auth-box h2{
  margin:0;
  color:#08264a;
  font-size:clamp(30px, 2.4vw, 39px);
  font-weight:520;
  line-height:1.08;
  letter-spacing:-.04em;
}

.hei-public-auth__shell--premium .hei-auth-box h2 span{
  display:block;
  color:#00a6c9;
}

.hei-auth-box__accent{
  width:44px;
  height:3px;
  margin:20px 0 27px;
  border-radius:999px;
  background:#00a6c9;
}

.hei-public-auth__shell--premium .hei-auth-box label{
  margin-bottom:9px;
  color:#0b2d52;
  font-size:13px;
  font-weight:600;
}

.hei-public-auth__shell--premium .hei-auth-box input[type="text"],
.hei-public-auth__shell--premium .hei-auth-box input[type="password"]{
  min-height:52px;
  padding:12px 14px;
  border-color:#d8e1eb;
  border-radius:10px;
  color:#0f2742;
  font-size:14px;
  box-shadow:0 3px 14px rgba(15,39,66,.03);
}

.hei-public-auth__shell--premium .hei-auth-box input:focus{
  border-color:#00a6c9;
  box-shadow:0 0 0 4px rgba(0,166,201,.10);
}

.hei-public-auth__shell--premium .login-remember{
  margin-top:6px;
}

.hei-public-auth__shell--premium .login-remember label{
  display:flex;
  align-items:center;
  gap:9px;
  color:#36516f;
  font-weight:450;
}

.hei-public-auth__shell--premium .login-remember input{
  accent-color:#00a6c9;
}

body .hei-public-auth__shell--premium .hei-auth-box button.hei-auth-submit{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:16px;
  min-height:52px !important;
  border:0 !important;
  border-radius:10px !important;
  background:linear-gradient(90deg, #0099be, #00b5d5) !important;
  font-size:16px !important;
  font-weight:520 !important;
  box-shadow:0 12px 28px rgba(0,166,201,.22) !important;
}

body .hei-public-auth__shell--premium .hei-auth-box button.hei-auth-submit:hover,
body .hei-public-auth__shell--premium .hei-auth-box button.hei-auth-submit:focus{
  background:linear-gradient(90deg, #008fb3, #00a7c6) !important;
  color:#fff !important;
  transform:translateY(-1px);
  box-shadow:0 15px 32px rgba(0,166,201,.27) !important;
}

.hei-public-auth__shell--premium .hei-auth-submit span{
  font-size:24px;
  font-weight:300;
  line-height:1;
}

.hei-public-auth__shell--premium .hei-auth-actions{
  position:relative;
  margin-top:24px;
  padding-top:23px;
  text-align:center;
}

.hei-public-auth__shell--premium .hei-auth-actions::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:#e2e8f0;
}

.hei-public-auth__shell--premium .hei-auth-actions .hei-btn{
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  color:#009fc3;
  font-size:13px;
  font-weight:550;
  box-shadow:none;
}

.hei-public-auth__shell--premium .hei-msg-erro,
.hei-public-auth__shell--premium .hei-msg-sucesso{
  margin-bottom:22px;
  border-radius:10px;
  font-size:13px;
}

@media (max-width:1280px) and (min-width:981px){
  .hei-public-auth__shell--premium{
    grid-template-columns:minmax(0, 1fr) 350px;
    gap:42px;
  }

  .hei-public-auth__shell--premium .hei-public-auth__top{
    transform:translateY(-82px);
  }

  .hei-public-auth__story h1{
    font-size:22px;
  }

  .hei-public-auth__shell--premium .hei-public-auth__body{
    max-width:350px;
    padding:34px 36px;
  }
}

@media (max-width:980px){
  .hei-public-auth--premium{
    padding:22px;
    background-position:58% center;
  }

  .hei-public-auth__shell--premium{
    display:block;
    min-height:auto;
  }

  .hei-public-auth__shell--premium .hei-public-auth__top{
    min-height:0;
    padding:0 8px 28px;
    gap:20px;
    align-items:center;
    transform:none;
  }

  .hei-public-auth__shell--premium .hei-public-auth__logo img{
    max-width:190px;
    max-height:66px;
  }

  .hei-public-auth__story{
    display:none;
  }

  .hei-public-auth__shell--premium .hei-public-auth__body{
    max-width:520px;
    margin:0 auto;
    padding:34px 28px;
  }
}

@media (max-width:520px){
  .hei-public-auth--premium{
    padding:15px;
  }

  .hei-public-auth__shell--premium .hei-public-auth__top{
    padding-bottom:16px;
  }

  .hei-public-auth__shell--premium .hei-public-auth__logo img{
    max-width:160px;
  }

  .hei-public-auth__shell--premium .hei-public-auth__body{
    padding:28px 22px;
    border-radius:18px;
  }

  .hei-public-auth--premium::after{
    bottom:8px;
    font-size:10px;
  }
}

/* Em notebooks com pouca altura, preserva acesso a todo o formulario. */
@media (max-height:760px) and (min-width:981px){
  html:has(body .hei-public-auth--premium),
  body:has(.hei-public-auth--premium){
    overflow:auto !important;
  }

  .hei-public-auth--premium{
    position:absolute;
    min-height:760px;
    height:auto;
    overflow:visible;
  }

  .hei-public-auth__shell--premium{
    min-height:700px;
  }

  .hei-public-auth__shell--premium .hei-public-auth__body{
    padding:32px 40px;
  }
}

/* =========================================================
   EXPERIENCIA PREMIUM - DEMAIS TELAS PUBLICAS
   ALTERACAO CODEX 24/07/2026
   Recuperacao, redefinicao, escolha de acesso, pre-cadastro
   e mensagens publicas usam a mesma linguagem visual do login.
   ========================================================= */

.hei-public-auth__top--legacy{
  display:none !important;
}

.hei-public-auth--registration .hei-public-auth__empresa-line{
  display:none !important;
}

.hei-public-auth--compact .hei-auth-box h3,
.hei-auth-box--public-error h3,
.hei-auth-box--registration h3{
  margin:0 0 10px;
  color:#08264a;
  font-size:clamp(24px, 2vw, 30px);
  font-weight:520;
  line-height:1.15;
  letter-spacing:-.025em;
}

.hei-public-auth--compact .hei-auth-box > p,
.hei-auth-box--public-error > p{
  color:#60758d;
  font-size:14px;
  line-height:1.6;
}

.hei-public-auth__shell--premium .hei-auth-box input[type="email"],
.hei-public-auth__shell--premium .hei-auth-box input[type="date"],
.hei-public-auth__shell--premium .hei-auth-box select{
  width:100%;
  min-height:52px;
  padding:12px 14px;
  border:1px solid #d8e1eb;
  border-radius:10px;
  background:#fff;
  color:#0f2742;
  font-size:14px;
  box-shadow:0 3px 14px rgba(15,39,66,.03);
}

.hei-public-auth__shell--premium .hei-auth-box input[type="email"]:focus,
.hei-public-auth__shell--premium .hei-auth-box input[type="date"]:focus,
.hei-public-auth__shell--premium .hei-auth-box select:focus{
  outline:none;
  border-color:#00a6c9;
  box-shadow:0 0 0 4px rgba(0,166,201,.10);
}

body .hei-public-auth__shell--premium .hei-auth-box input[type="submit"],
body .hei-public-auth__shell--premium .hei-auth-box button[type="submit"],
body .hei-public-auth__shell--premium .hei-auth-box .button.button-primary,
body .hei-public-auth__shell--premium .hei-auth-box .button-primary{
  width:100% !important;
  min-height:52px !important;
  padding:12px 18px !important;
  border:0 !important;
  border-radius:10px !important;
  background:linear-gradient(90deg, #0099be, #00b5d5) !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:520 !important;
  text-decoration:none;
  box-shadow:0 12px 28px rgba(0,166,201,.22) !important;
}

body .hei-public-auth__shell--premium .hei-auth-box input[type="submit"]:hover,
body .hei-public-auth__shell--premium .hei-auth-box button[type="submit"]:hover,
body .hei-public-auth__shell--premium .hei-auth-box .button.button-primary:hover,
body .hei-public-auth__shell--premium .hei-auth-box .button-primary:hover{
  background:linear-gradient(90deg, #008fb3, #00a7c6) !important;
  transform:translateY(-1px);
}

.hei-auth-box--choice .hei-auth-choice{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:22px;
}

.hei-auth-box--choice #hei-empresa-selector{
  margin-top:18px !important;
  padding-top:18px;
  border-top:1px solid #e2e8f0;
}

.hei-auth-box--choice #hei-empresa-selector select{
  margin-bottom:12px;
}

.hei-auth-box--public-error .hei-auth-actions{
  text-align:left;
}

.hei-auth-box--public-error .hei-auth-actions .hei-btn{
  display:inline-flex;
  width:auto;
  min-height:44px;
  padding:11px 18px;
  border:0;
  border-radius:10px;
  background:linear-gradient(90deg, #0099be, #00b5d5);
  color:#fff;
  text-decoration:none;
  box-shadow:0 10px 24px rgba(0,166,201,.18);
}

/*
 * PRE-CADASTRO EXTENSO - ALTERACAO CODEX 24/07/2026
 * O formulario continua em duas colunas no desktop e permite
 * rolagem da pagina sem comprimir campos ou esconder a confirmacao.
 */
html:has(body .hei-public-auth--registration),
body:has(.hei-public-auth--registration){
  overflow:auto !important;
}

.hei-public-auth--registration{
  position:absolute;
  min-height:100dvh;
  height:auto;
  padding-top:34px;
  padding-bottom:54px;
  overflow:visible;
  align-items:flex-start;
}

.hei-public-auth__shell--registration{
  grid-template-columns:minmax(280px, 1fr) minmax(620px, 760px);
  gap:clamp(38px, 5vw, 82px);
  min-height:calc(100dvh - 88px);
  align-items:center;
}

.hei-public-auth__shell--registration .hei-public-auth__body{
  max-width:760px;
  padding:32px 38px;
}

.hei-auth-box--registration{
  text-align:left;
}

.hei-auth-box--registration > p{
  margin-bottom:18px;
  color:#60758d;
}

.hei-auth-box--registration .hei-form-grid--public{
  gap:13px 20px;
}

.hei-auth-box--registration .hei-field--public label{
  color:#0b2d52;
  font-size:12px;
  font-weight:600;
}

.hei-auth-box--registration .hei-input{
  min-height:46px !important;
  padding:9px 11px !important;
}

@media (max-width:1180px){
  .hei-public-auth__shell--registration{
    grid-template-columns:minmax(220px, .65fr) minmax(560px, 1.35fr);
    gap:30px;
  }

  .hei-public-auth__shell--registration .hei-public-auth__body{
    max-width:680px;
  }
}

@media (max-width:980px){
  html:has(body .hei-public-auth--premium),
  body:has(.hei-public-auth--premium){
    overflow:auto !important;
  }

  .hei-public-auth--compact,
  .hei-public-auth--registration{
    position:absolute;
    min-height:100dvh;
    height:auto;
    overflow:visible;
  }

  .hei-public-auth__shell--registration{
    display:block;
    min-height:auto;
  }

  .hei-public-auth__shell--registration .hei-public-auth__body{
    max-width:720px;
    margin:0 auto;
  }
}

@media (max-width:680px){
  .hei-public-auth__shell--registration .hei-public-auth__body{
    padding:26px 22px;
  }

  .hei-auth-box--registration .hei-form-grid--public{
    grid-template-columns:1fr;
  }
}

/* =========================================================
   COMUNICADOS - REFINAMENTO VISUAL FINAL (CODEX 10/08/2026)
   Camada isolada para preservar estrutura, regras e consultas.
   ========================================================= */

.hei-comunicados-page{
  padding-top:22px;
  padding-bottom:44px;
}

.hei-comunicados-page .hei-comunicados-shell{
  border:0;
  background:transparent;
  box-shadow:none;
}

.hei-comunicados-page .hei-comunicados-repo-head{
  position:relative;
  padding:28px 30px;
  overflow:hidden;
  border:1px solid #dce8f3;
  border-radius:22px;
  background:
    radial-gradient(circle at 88% 18%, rgba(0,166,201,.14), transparent 34%),
    linear-gradient(135deg, #f8fbff 0%, #f2f8fc 100%);
}

.hei-comunicados-page .hei-comunicados-repo-head::before{
  content:"";
  position:absolute;
  top:24px;
  left:0;
  width:4px;
  height:54px;
  border-radius:0 999px 999px 0;
  background:linear-gradient(180deg, #0099be, #4c00d3);
}

.hei-comunicados-page .hei-comunicados-title{
  position:relative;
  margin-bottom:8px;
  font-size:30px;
  font-weight:620;
  letter-spacing:-.025em;
  color:#0b2d52;
}

.hei-comunicados-page .hei-comunicados-subtitle{
  position:relative;
  max-width:680px;
  font-size:15px;
  line-height:1.6;
  color:#60758d;
}

.hei-comunicados-page .hei-comunicados-search{
  margin:18px 0 24px;
  padding:16px 18px;
  border-color:#dce6ef;
  border-radius:16px;
  box-shadow:0 10px 28px rgba(15,39,66,.045);
}

.hei-comunicados-page .hei-comunicados-search__label{
  margin-bottom:8px;
  font-size:12px;
  font-weight:650;
  color:#40566e;
}

.hei-comunicados-page .hei-comunicados-search__row .hei-input{
  min-height:44px;
}

.hei-comunicados-page .hei-comunicados-layout{
  grid-template-columns:minmax(0, 1fr) 300px;
  gap:24px;
}

.hei-comunicados-page .hei-comunicados-list-head{
  align-items:center;
  margin-bottom:12px;
  padding:0 2px 12px;
  border-bottom-color:#dce6ef;
}

.hei-comunicados-page .hei-comunicados-list-head h3{
  margin:0;
  font-size:18px;
  font-weight:620;
  color:#0b2d52;
}

.hei-comunicados-page .hei-comunicados-list{
  gap:12px;
}

.hei-comunicados-page .hei-comunicado-row{
  padding:19px 20px;
  border-color:#dfe8f1;
  border-radius:16px;
  box-shadow:0 8px 22px rgba(15,39,66,.035);
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.hei-comunicados-page .hei-comunicado-row:hover{
  border-color:#bcd8e8;
  box-shadow:0 14px 30px rgba(15,39,66,.07);
  transform:translateY(-1px);
}

.hei-comunicados-page .hei-comunicado-row__meta{
  margin-bottom:9px;
}

.hei-comunicados-page .hei-comunicado-titulo{
  margin-bottom:8px;
  font-size:20px;
  font-weight:620;
  line-height:1.3;
}

.hei-comunicados-page .hei-comunicado-excerpt{
  font-size:14px;
  line-height:1.65;
  color:#607086;
}

.hei-comunicados-page .hei-comunicado-row__footer{
  margin-top:12px;
}

.hei-comunicados-page .hei-comunicados-sidebar{
  position:sticky;
  top:20px;
  gap:12px;
}

.hei-comunicados-page .hei-comunicados-sidecard{
  padding:16px;
  border-color:#dfe8f1;
  border-radius:16px;
  box-shadow:0 8px 22px rgba(15,39,66,.035);
}

.hei-comunicados-page .hei-comunicados-sidecard h3{
  font-size:15px;
  font-weight:650;
  color:#0b2d52;
}

.hei-comunicados-page .hei-comunicados-side-link{
  padding:9px 0;
}

.hei-comunicados-page .hei-comunicados-side-link__title{
  font-weight:600;
  color:#253d56;
}

.hei-comunicados-page .hei-comunicados-categoria-card{
  min-height:46px;
  padding:10px 12px;
  border-radius:12px;
  font-size:13px;
}

.hei-comunicados-page .hei-comunicado-single-wrap{
  padding:24px 26px 30px;
  border:1px solid #dfe8f1;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,39,66,.04);
}

.hei-comunicados-page .hei-comunicado-title{
  color:#0b2d52;
  font-size:30px;
  font-weight:620;
  line-height:1.22;
  letter-spacing:-.02em;
}

.hei-comunicados-page .hei-comunicado-content{
  font-size:16px;
  line-height:1.75;
  color:#334a62;
}

@media (max-width:1100px){
  .hei-comunicados-page .hei-comunicados-sidebar{
    position:static;
  }
}

@media (max-width:767px){
  .hei-comunicados-page{
    padding-top:14px;
    padding-bottom:30px;
  }

  .hei-comunicados-page .hei-comunicados-repo-head{
    padding:22px 20px 22px 24px;
    border-radius:18px;
  }

  .hei-comunicados-page .hei-comunicados-repo-head::before{
    top:20px;
    height:46px;
  }

  .hei-comunicados-page .hei-comunicados-title{
    font-size:26px;
  }

  .hei-comunicados-page .hei-comunicados-subtitle{
    font-size:14px;
  }

  .hei-comunicados-page .hei-comunicados-search{
    padding:14px;
  }

  .hei-comunicados-page .hei-comunicados-search__row{
    align-items:stretch;
  }

  .hei-comunicados-page .hei-comunicados-search__row .hei-input,
  .hei-comunicados-page .hei-comunicados-search__row .hei-btn{
    width:100%;
    flex:1 1 100%;
  }

  .hei-comunicados-page .hei-comunicados-list-head{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }

  .hei-comunicados-page .hei-comunicado-row{
    padding:17px;
  }

  .hei-comunicados-page .hei-comunicado-single-wrap{
    padding:20px 18px 24px;
  }

  .hei-comunicados-page .hei-comunicado-title{
    font-size:25px;
  }
}

/* =========================================================
   MENU CORPORATIVO NEUTRO - ALTERAÇÃO CODEX 11/08/2026
   =========================================================
   A cor da empresa permanece como assinatura discreta. O cabeçalho, o logo,
   os atalhos superiores e suas regras não são alterados por este bloco.
   ========================================================= */

.hei-menu-modular-wrap{
  margin-bottom:54px;
}

.hei-menu-modular-wrap .hei-categorias{
  display:flex;
  align-items:stretch;
  overflow:hidden;
  border:1px solid #dbe4ec;
  border-top:3px solid var(--hei-brand-color);
  border-radius:0 0 14px 14px;
  background:#f6f8fb;
  box-shadow:0 4px 12px rgba(15,39,66,.035);
}

.hei-menu-modular-wrap .hei-categoria-card{
  height:88px;
  gap:7px;
  padding:12px 14px;
  border:0;
  border-right:1px solid #e1e8ef;
  background:transparent;
  color:#42566d;
  transition:background .18s ease,color .18s ease,box-shadow .18s ease;
}

.hei-menu-modular-wrap .hei-categoria-card:last-child{
  border-right:0;
}

.hei-menu-modular-wrap .hei-categoria-card:hover{
  background:#fff;
  color:#163a63;
}

.hei-menu-modular-wrap .hei-categoria-card:focus-visible{
  z-index:2;
  outline:2px solid color-mix(in srgb,var(--hei-brand-color) 42%,#ffffff);
  outline-offset:-3px;
  box-shadow:none;
}

.hei-menu-modular-wrap .hei-categoria-card.is-active,
.hei-menu-modular-wrap .hei-categoria-card.is-active:hover{
  background:#fff;
  color:#102b49;
  box-shadow:inset 0 -3px var(--hei-brand-color);
}

.hei-menu-modular-wrap .hei-categoria-card.is-active::after{
  display:none;
}

.hei-menu-modular-wrap .hei-categoria-icon{
  width:30px;
  height:30px;
  flex:0 0 30px;
  color:#118b83;
}

.hei-menu-modular-wrap .hei-categoria-icon img,
.hei-menu-modular-wrap .hei-categoria-icon svg{
  width:25px;
  height:25px;
  color:currentColor;
}

.hei-menu-modular-wrap .hei-categoria-icon img{
  filter:none;
}

.hei-menu-modular-wrap .hei-categoria-label{
  color:inherit;
  font-size:16px;
  font-weight:720;
  line-height:1.2;
  letter-spacing:-.01em;
}

.hei-menu-modular-wrap .hei-modulos-paineis{
  padding-top:10px;
}

.hei-menu-modular-wrap .hei-modulos{
  gap:8px;
  padding:10px;
  max-width:min(860px,100%);
  border:1px solid #dbe4ec;
  border-radius:12px;
  background:#fff;
  box-shadow:0 5px 14px rgba(15,39,66,.05);
}

.hei-menu-modular-wrap .hei-modulo{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-width:190px;
  min-height:42px;
  padding:9px 12px;
  border:1px solid #dce5ed;
  border-radius:9px;
  background:#f8fafc;
  color:#2f465d;
  font-size:13px;
  font-weight:650;
  line-height:1.3;
  text-decoration:none;
  box-shadow:none;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}

.hei-menu-modular-wrap .hei-modulo > span{
  display:flex;
  align-items:center;
  gap:8px;
}

.hei-menu-modular-wrap .hei-modulo svg{
  width:16px;
  height:16px;
  flex:0 0 16px;
  color:#118b83;
}

.hei-menu-modular-wrap .hei-modulo > svg:last-child{
  width:15px;
  height:15px;
  color:#789;
}

.hei-menu-modular-wrap .hei-modulo:hover,
.hei-menu-modular-wrap .hei-modulo:focus-visible{
  border-color:#abc7d5;
  background:#fff;
  color:#102b49;
  text-decoration:none;
  transform:translateY(-1px);
}

@media (max-width:820px){
  .hei-menu-modular-wrap .hei-categorias{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .hei-menu-modular-wrap .hei-categoria-card{
    width:100%;
    height:82px;
    border-right:1px solid #e1e8ef;
    border-bottom:1px solid #e1e8ef;
  }

  .hei-menu-modular-wrap .hei-categoria-card:nth-child(2n){
    border-right:0;
  }

  .hei-menu-modular-wrap .hei-modulos{
    width:min(92vw,720px);
    max-width:min(92vw,720px);
  }
}

@media (max-width:560px){
  .hei-menu-modular-wrap{
    margin-bottom:44px;
  }

  .hei-menu-modular-wrap .hei-categoria-card{
    height:76px;
    padding:9px 7px;
  }

  .hei-menu-modular-wrap .hei-categoria-icon{
    width:26px;
    height:26px;
    flex-basis:26px;
  }

  .hei-menu-modular-wrap .hei-categoria-icon svg{
    width:22px;
    height:22px;
  }

  .hei-menu-modular-wrap .hei-categoria-label{
    font-size:13px;
  }

  .hei-menu-modular-wrap .hei-modulos{
    gap:7px;
    padding:8px;
  }

  .hei-menu-modular-wrap .hei-modulo{
    width:100%;
    min-width:0;
    min-height:39px;
    padding:8px 10px;
    font-size:12px;
  }
}

/* =========================================================
   RODAPE PREMIUM DO PORTAL
   Camada isolada para usuarios autenticados. O login publico
   e o cabecalho personalizado da empresa permanecem intactos.
   ========================================================= */

body.hei-has-premium-footer #colophon,
body.hei-has-premium-footer .site-footer{
  display:none !important;
}

.hei-portal-footer-premium{
  position:relative;
  isolation:isolate;
  width:100%;
  margin-top:clamp(56px,7vw,96px);
  overflow:hidden;
  color:#eaf4fa;
  background:
    radial-gradient(circle at 16% 0%,rgba(23,183,196,.15),transparent 34%),
    linear-gradient(118deg,#061a35 0%,#092744 58%,#0b324c 100%);
  box-shadow:0 -8px 28px rgba(15,39,66,.06);
}

.hei-portal-footer-premium::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  left:0;
  height:3px;
  z-index:2;
  background:var(--hei-footer-accent,#09aeb8);
}

.hei-portal-footer-premium::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-150px;
  width:330px;
  height:330px;
  z-index:-1;
  border:1px solid rgba(255,255,255,.06);
  border-radius:50%;
  box-shadow:
    0 0 0 54px rgba(255,255,255,.018),
    0 0 0 108px rgba(255,255,255,.012);
}

.hei-portal-footer-premium__inner{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto minmax(260px,1fr);
  align-items:center;
  gap:28px;
  width:min(100%,1400px);
  min-height:98px;
  margin:0 auto;
  padding:22px clamp(22px,4vw,54px);
  box-sizing:border-box;
}

.hei-portal-footer-premium__brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.hei-portal-footer-premium__mark{
  display:grid;
  flex:0 0 38px;
  width:38px;
  height:38px;
  place-items:center;
  border:1px solid rgba(42,216,222,.30);
  border-radius:12px;
  color:#27d4d9;
  background:rgba(39,212,217,.08);
}

.hei-portal-footer-premium__mark svg{
  width:24px;
  height:24px;
}

.hei-portal-footer-premium__mark img{
  display:block;
  width:25px;
  height:27px;
  object-fit:contain;
}

.hei-portal-footer-premium__identity{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:3px;
}

.hei-portal-footer-premium__identity strong{
  color:#fff;
  font-size:15px;
  font-weight:720;
  line-height:1.2;
  letter-spacing:-.01em;
}

.hei-portal-footer-premium__identity strong b{
  color:#2bd1d8;
  font-weight:760;
}

.hei-portal-footer-premium__identity small,
.hei-portal-footer-premium__legal small{
  color:rgba(230,242,249,.60);
  font-size:11px;
  font-weight:450;
  line-height:1.35;
}

.hei-portal-footer-premium__security{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:38px;
  padding:0 16px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  color:rgba(240,248,252,.84);
  background:rgba(255,255,255,.045);
  font-size:12px;
  font-weight:560;
  white-space:nowrap;
}

.hei-portal-footer-premium__security svg{
  width:17px;
  height:17px;
  color:#40d3ca;
}

.hei-portal-footer-premium__legal{
  display:flex;
  align-items:flex-end;
  justify-self:end;
  flex-direction:column;
  gap:3px;
  color:rgba(245,250,253,.88);
  font-size:12px;
  font-weight:560;
  line-height:1.35;
  text-align:right;
}

@media (max-width:820px){
  .hei-portal-footer-premium__inner{
    grid-template-columns:1fr auto;
    gap:18px 24px;
    padding-top:24px;
    padding-bottom:24px;
  }

  .hei-portal-footer-premium__security{
    grid-column:1 / -1;
    grid-row:2;
    justify-self:center;
  }
}

@media (max-width:560px){
  .hei-portal-footer-premium{
    margin-top:48px;
  }

  .hei-portal-footer-premium__inner{
    display:flex;
    min-height:0;
    flex-direction:column;
    gap:18px;
    padding:26px 20px 24px;
    text-align:center;
  }

  .hei-portal-footer-premium__brand{
    justify-content:center;
  }

  .hei-portal-footer-premium__security{
    width:100%;
    max-width:300px;
    box-sizing:border-box;
  }

  .hei-portal-footer-premium__legal{
    align-items:center;
    justify-self:auto;
    text-align:center;
  }
}
