/* EVPL hotfix 02.06.2026.03
   Corrige sobreposição dos filtros, reduz espaços vazios e melhora uso da tela no Cloudflare Pages. */
:root{
  --evpl-gap: clamp(6px, .6vw, 10px);
  --evpl-pad-x: clamp(8px, 1vw, 14px);
}
html,body{height:100%;}
body{background:#fff9f1;}
.aplicar-container:empty{display:none!important;}
.app-header{
  display:grid!important;
  grid-template-columns:minmax(230px,1fr) minmax(420px,auto)!important;
  align-items:center!important;
  gap:10px!important;
  min-height:0!important;
  padding:6px var(--evpl-pad-x)!important;
  margin:0!important;
  border-radius:0 0 14px 14px!important;
}
.app-header .left{min-width:0!important;}
.app-header .logo{width:42px!important;height:42px!important;object-fit:contain!important;}
.title h1{font-size:clamp(16px,1.25vw,22px)!important;margin:0!important;line-height:1.05!important;}
.title small{font-size:11px!important;}
.top-meta{width:auto!important;min-width:0!important;padding-left:10px!important;}
.top-meta small{font-size:11px!important;line-height:1.2!important;margin-bottom:3px!important;}
.top-meta .btns{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(112px,1fr))!important;
  gap:7px!important;
  width:min(560px,48vw)!important;
}
.top-meta .btns button{margin:0!important;min-height:36px!important;padding:7px 10px!important;font-size:12px!important;border-radius:11px!important;}
.top-meta .btns .apply-btn{font-size:15px!important;min-height:40px!important;}
.tabs{
  margin:0!important;
  padding:6px var(--evpl-pad-x)!important;
  gap:7px!important;
  min-height:0!important;
}
.tab{padding:7px 12px!important;min-height:34px!important;font-size:12px!important;}
.filters{
  display:block!important;
  position:sticky!important;
  margin:0 0 6px 0!important;
  padding:8px var(--evpl-pad-x)!important;
  border-radius:0 0 14px 14px!important;
  box-shadow:0 5px 16px rgba(15,23,42,.08)!important;
  max-height:34vh!important;
  overflow:auto!important;
}
.filter-group{display:none!important;}
.filter-group.active{
  display:grid!important;
  grid-template-columns:minmax(250px,1.7fr) repeat(auto-fit,minmax(145px,1fr))!important;
  gap:var(--evpl-gap)!important;
  align-items:end!important;
}
.field{min-width:0!important;padding:0!important;background:transparent!important;border-radius:0!important;gap:3px!important;}
.field.wide{grid-column:auto/span 2!important;}
.field label{font-size:10px!important;line-height:1.1!important;margin-left:2px!important;}
input[type=search],select{
  min-height:36px!important;
  height:36px!important;
  padding:6px 10px!important;
  border-radius:10px!important;
  font-size:13px!important;
}
.filter-chips{grid-column:1/-1!important;min-height:0!important;margin-top:2px!important;gap:5px!important;}
.filter-chip,.filter-chip-empty{padding:4px 8px!important;font-size:11px!important;}
main{padding:6px var(--evpl-pad-x) calc(46px + env(safe-area-inset-bottom,0px))!important;}
.kpi-bar{margin:0 0 6px!important;gap:7px!important;}
.kpi-item{padding:6px 9px!important;border-radius:10px!important;}
.kpi-label{font-size:10px!important;}
.kpi-value{font-size:14px!important;}
.empty{margin:6px var(--evpl-pad-x)!important;padding:8px 10px!important;}
.table-wrap,.cards-wrap{
  height:calc(100dvh - var(--header-h,0px) - var(--tabs-h,0px) - var(--filters-h,0px) - 72px)!important;
  min-height:320px!important;
  border-radius:12px!important;
}
thead th{padding:5px 7px!important;font-size:11px!important;}
tbody td,tfoot td{padding:4px 6px!important;font-size:12px!important;}
body.evpl-clearing .loader, body.evpl-clearing .skeleton{display:none!important;}
@media (min-width:1500px){
  .filter-group.active{grid-template-columns:minmax(300px,1.9fr) repeat(auto-fit,minmax(150px,1fr))!important;}
  .table-wrap,.cards-wrap{height:calc(100dvh - var(--header-h,0px) - var(--tabs-h,0px) - var(--filters-h,0px) - 62px)!important;}
}
@media (max-width:1100px){
  .app-header{grid-template-columns:1fr!important;align-items:stretch!important;}
  .top-meta{padding-left:0!important;border-left:0!important;}
  .top-meta .btns{width:100%!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .field.wide{grid-column:1/-1!important;}
}
@media (max-width:680px){
  .top-meta .btns{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .top-meta .btns .apply-btn{grid-column:1/-1!important;}
  .filter-group.active{grid-template-columns:1fr 1fr!important;}
  .field,.field.wide{grid-column:1/-1!important;}
  .filters{max-height:42vh!important;}
}
