/* Portal Arneiroz — padrão visual consolidado das páginas internas — 25/09/2026 */
:root{
  --portal-green:#198754;
  --portal-green-dark:#146c43;
  --portal-blue:#0d6efd;
  --portal-ink:#1f2937;
  --portal-muted:#64748b;
  --portal-border:#e2e8f0;
  --portal-soft:#f8fafc;
  --portal-radius:16px;
  --portal-shadow:0 8px 24px rgba(15,23,42,.07);
}

.content-body,
.portal-standard-page,
.transp-wrap,
.esic-page,
.esic-wrap,
.dis-wrap,
.licit-wrap{
  color:var(--portal-ink);
  padding-top:0!important;
}

.content-body > .container,
.content-body > .container-fluid,
.portal-standard-page > .container{
  max-width:1760px;
}

.content-body .page-titles,
.portal-standard-page .page-titles{
  margin:0!important;
  padding:0!important;
}

.content-body .page-titles .breadcrumb,
.content-body .breadcrumb,
.portal-standard-page .breadcrumb{
  margin:.55rem 0 .8rem!important;
  padding:0!important;
  background:transparent!important;
  font-size:.82rem!important;
  line-height:1.35;
}

.content-body .page-titles .breadcrumb-item,
.portal-standard-page .page-titles .breadcrumb-item{
  margin-left:0!important;
}

.content-body .container[style*="margin-top: -30px"],
.content-body .container[style*="margin-top:-30px"]{
  margin-top:0!important;
}

.content-body h1,
.portal-standard-page h1,
.esic-page h1,
.transp-wrap h1{
  font-size:clamp(1.35rem,2.2vw,1.72rem)!important;
  line-height:1.25!important;
  margin-top:0!important;
}

.content-body h2,
.portal-standard-page h2,
.esic-page h2,
.transp-wrap h2{
  font-size:clamp(1.2rem,1.8vw,1.48rem)!important;
  line-height:1.3!important;
}

.content-body h3,
.portal-standard-page h3,
.esic-page h3,
.transp-wrap h3{
  font-size:clamp(1.08rem,1.55vw,1.3rem)!important;
  line-height:1.35!important;
}

.content-body h4,
.portal-standard-page h4{
  font-size:1.05rem!important;
  line-height:1.4!important;
}

.content-body .card,
.portal-standard-page .card{
  border:1px solid var(--portal-border)!important;
  border-radius:var(--portal-radius)!important;
  box-shadow:var(--portal-shadow);
}

.content-body .about-item,
.portal-standard-page .about-item{
  border-radius:var(--portal-radius)!important;
}

.content-body .card.p-4,
.portal-standard-page .card.p-4{
  padding:clamp(1rem,2vw,1.4rem)!important;
}

.portal-page-head{
  background:linear-gradient(135deg,#f8fcfa,#f5f9ff);
  border:1px solid var(--portal-border);
  border-radius:var(--portal-radius);
  padding:1rem 1.1rem;
  margin-bottom:1rem;
}
.portal-page-head h1,.portal-page-head h2,.portal-page-head h3{margin-bottom:.2rem!important;font-weight:800}
.portal-page-head p{margin:0;color:var(--portal-muted);font-size:.88rem}
.portal-page-icon{color:var(--portal-green)}

.portal-filter{
  background:#f8fafc;
  border:1px solid var(--portal-border);
  border-radius:14px;
  padding:.9rem;
  margin-bottom:1rem;
}
.portal-filter label{font-size:.78rem;font-weight:800;color:#475569;margin-bottom:.3rem}
.portal-filter .form-control,.portal-filter .form-select{min-height:36px;border-color:#cbd5e1;font-size:.86rem}

.portal-table-wrap{border:1px solid var(--portal-border);border-radius:14px;overflow:hidden;background:#fff}
.portal-table{margin-bottom:0!important;font-size:.86rem}
.portal-table thead th{background:#166534!important;color:#fff!important;border:0!important;font-size:.74rem!important;text-transform:uppercase;letter-spacing:.02em;padding:.72rem .65rem!important;vertical-align:middle}
.portal-table tbody td{padding:.65rem!important;vertical-align:middle;border-color:#eef2f7!important;color:#334155}
.portal-table tbody tr:hover{background:#f8fafc}
.portal-table .portal-desc{white-space:normal;line-height:1.42;min-width:260px}
.portal-actions{display:flex;gap:.35rem;justify-content:center;flex-wrap:wrap}
.portal-actions .btn{font-size:.76rem;padding:.32rem .55rem;border-radius:8px}
.portal-total{font-size:.8rem;color:var(--portal-muted)}

.content-body .table-responsive,
.portal-standard-page .table-responsive{border-radius:12px}
.content-body .table th,
.portal-standard-page .table th{vertical-align:middle}
.content-body .table td,
.portal-standard-page .table td{vertical-align:middle}

.content-body .form-control,
.content-body .form-select,
.portal-standard-page .form-control,
.portal-standard-page .form-select{
  border-radius:9px;
}

.content-body .btn,
.portal-standard-page .btn{
  border-radius:9px;
}

.content-body .faixa-verde,
.portal-standard-page .faixa-verde{
  background:#166534!important;
  color:#fff!important;
}

.portal-empty{padding:2rem 1rem;text-align:center;color:var(--portal-muted)}
.portal-empty i{display:block;font-size:1.6rem;margin-bottom:.45rem;color:#94a3b8}

.portal-security-note{background:#f8fafc;border-left:4px solid var(--portal-green);padding:.8rem 1rem;border-radius:10px;color:#475569;font-size:.86rem}

@media(max-width:767.98px){
  .content-body > .container,
  .content-body > .container-fluid,
  .portal-standard-page > .container{padding-left:.8rem!important;padding-right:.8rem!important}
  .content-body .card.p-4,.portal-standard-page .card.p-4{padding:.9rem!important}
  .portal-page-head{text-align:left;padding:.9rem}
  .portal-filter{padding:.75rem}
  .portal-table{font-size:.8rem}
  .portal-table thead th{font-size:.68rem!important;padding:.6rem .5rem!important}
  .portal-table tbody td{padding:.55rem!important}
  .portal-actions .btn span{display:none}
}


/* Compatibilidade visual com páginas legadas preservadas */
.team-container,
.antialiased,
.table-container,
.timeline-page,
.esporte-page,
.esic-manifestacao-page,
.esic-cadastro-page,
.busca-global{
  color:var(--portal-ink);
}
.team-container > .container,
.antialiased > .container,
.table-container > .container,
.busca-global{
  max-width:1760px!important;
}
.team-container h1,.team-container h2,.team-container h3,
.antialiased h1,.antialiased h2,.antialiased h3,
.table-container h1,.table-container h2,.table-container h3,
.timeline-page h1,.timeline-page h2,.timeline-page h3,
.esporte-page h1,.esporte-page h2,.esporte-page h3,
.esic-manifestacao-page h1,.esic-manifestacao-page h2,.esic-manifestacao-page h3,
.esic-cadastro-page h1,.esic-cadastro-page h2,.esic-cadastro-page h3{
  line-height:1.3!important;
  margin-top:0!important;
}
.team-container h1,.antialiased h1,.table-container h1,.timeline-page h1,.esporte-page h1,.esic-manifestacao-page h1,.esic-cadastro-page h1{
  font-size:clamp(1.35rem,2.2vw,1.72rem)!important;
}
.team-container h2,.antialiased h2,.table-container h2,.timeline-page h2,.esporte-page h2,.esic-manifestacao-page h2,.esic-cadastro-page h2{
  font-size:clamp(1.2rem,1.8vw,1.48rem)!important;
}
.team-container h3,.antialiased h3,.table-container h3,.timeline-page h3,.esporte-page h3,.esic-manifestacao-page h3,.esic-cadastro-page h3{
  font-size:clamp(1.06rem,1.5vw,1.28rem)!important;
}
.content-body .row.links-navegacao,
.content-body > .container > .row.links-navegacao{
  margin-top:0!important;
  margin-bottom:.35rem!important;
  min-height:0!important;
}
.content-body .row.links-navegacao .breadcrumb{
  margin:.6rem 0 .75rem!important;
}
.content-body .card-header,
.portal-standard-page .card-header{
  padding:.85rem 1rem!important;
}
.content-body .card-title,
.portal-standard-page .card-title{
  margin:0!important;
  font-size:1.08rem!important;
  font-weight:800!important;
}
.content-body .alert h1,.portal-standard-page .alert h1,.team-container .alert h1{
  font-size:1.28rem!important;
  margin:0 0 .35rem!important;
}
.content-body p:last-child,.portal-standard-page p:last-child{margin-bottom:0}
.portal-page-note{font-size:.86rem;color:var(--portal-muted)}
.portal-gallery-cover{height:190px;object-fit:cover;width:100%;background:#eef2f7}
.portal-gallery-card{height:100%;overflow:hidden}
.portal-gallery-card .card-body{padding:.85rem 1rem}
.portal-gallery-grid img{width:100%;height:200px;object-fit:cover;border-radius:12px;transition:transform .2s ease}
.portal-gallery-grid a:hover img{transform:scale(1.02)}
@media(max-width:767.98px){
  .portal-gallery-cover{height:150px}
  .portal-gallery-grid img{height:150px}
}
