/* EVPL PRO.22 Premium Estável - acabamento visual + estabilidade */
:root{
  --evpl14-bg:#f4f6fb;
  --evpl14-card:#ffffff;
  --evpl14-ink:#172033;
  --evpl14-muted:#667085;
  --evpl14-red:#c5121c;
  --evpl14-red2:#ef4444;
  --evpl14-gold:#f6b51c;
  --evpl14-line:#dbe2ee;
  --evpl14-shadow:0 18px 50px rgba(15,23,42,.10);
}
html,body{background:var(--evpl14-bg)!important;color:var(--evpl14-ink)!important;}
body.evpl-pro .app-header{
  background:linear-gradient(135deg,#111827 0%,#172033 52%,#24324a 100%)!important;
  color:#fff!important;border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 18px 55px rgba(15,23,42,.20)!important;
}
body.evpl-pro .app-header .title h1{letter-spacing:-.04em!important;font-weight:950!important;}
body.evpl-pro .app-header small, body.evpl-pro .app-header .muted{color:#dbe5f2!important;}
body.evpl-pro .top-meta small{font-weight:800!important;}
body.evpl-pro .btns{gap:7px!important;align-items:center!important;}
body.evpl-pro button, body.evpl-pro .btn, body.evpl-pro .apply-btn{
  min-height:34px!important;height:34px!important;border-radius:11px!important;
  padding:0 12px!important;font-size:12px!important;font-weight:900!important;
  border:1px solid rgba(148,163,184,.22)!important;
  box-shadow:0 8px 18px rgba(15,23,42,.08)!important;
  transition:transform .12s ease, box-shadow .12s ease, filter .12s ease!important;
}
body.evpl-pro button:hover, body.evpl-pro .btn:hover, body.evpl-pro .apply-btn:hover{
  transform:translateY(-1px)!important;box-shadow:0 12px 26px rgba(15,23,42,.13)!important;
}
body.evpl-pro .apply-btn{
  background:linear-gradient(135deg,var(--evpl14-red),var(--evpl14-red2))!important;
  color:#fff!important;border-color:rgba(255,255,255,.16)!important;
}
body.evpl-pro .btn.ghost{
  background:rgba(255,255,255,.92)!important;color:#243147!important;border-color:#dbe2ee!important;
}
body.evpl-pro .tabs{
  background:linear-gradient(180deg,#fff,#f8fafc)!important;border-bottom:1px solid #dbe2ee!important;
  box-shadow:0 8px 26px rgba(15,23,42,.05)!important;padding:8px 10px!important;gap:7px!important;
}
body.evpl-pro .tab{
  min-height:34px!important;height:34px!important;border-radius:999px!important;padding:0 13px!important;
  background:#fff!important;color:#41516a!important;border:1px solid #dbe2ee!important;box-shadow:none!important;
}
body.evpl-pro .tab.active{
  background:linear-gradient(135deg,#172033,#293a56)!important;color:#fff!important;border-color:#172033!important;
  box-shadow:0 10px 24px rgba(23,32,51,.18)!important;
}
body.evpl-pro .filters{
  background:linear-gradient(180deg,#ffffff,#fbfcff)!important;border:1px solid #dbe2ee!important;
  border-left:0!important;border-right:0!important;box-shadow:0 12px 32px rgba(15,23,42,.06)!important;
}
body.evpl-pro .filter-group{gap:10px!important;padding:12px!important;align-items:end!important;}
body.evpl-pro .field{min-width:150px!important;}
body.evpl-pro .field.wide{min-width:min(320px,100%)!important;}
body.evpl-pro .field label{
  color:#344256!important;font-size:11px!important;font-weight:950!important;
  letter-spacing:.03em!important;text-transform:uppercase!important;margin-bottom:5px!important;
}
body.evpl-pro .field input,
body.evpl-pro .field select{
  min-height:35px!important;height:35px!important;border-radius:11px!important;
  background:#fff!important;color:#172033!important;border:1px solid #ccd6e4!important;
  font-size:12.5px!important;font-weight:760!important;padding:0 10px!important;
  box-shadow:0 7px 18px rgba(15,23,42,.045)!important;
}
body.evpl-pro .field input:focus,
body.evpl-pro .field select:focus{
  outline:none!important;border-color:#ef4444!important;box-shadow:0 0 0 4px rgba(239,68,68,.13),0 7px 18px rgba(15,23,42,.06)!important;
}
body.evpl-pro .field.evpl-bf-field label{color:#991b1b!important;}
body.evpl-pro .field.evpl-bf-field label::before{
  content:"";display:inline-block;width:7px;height:7px;border-radius:50%;
  background:linear-gradient(135deg,var(--evpl14-red),var(--evpl14-gold));
  margin-right:6px;box-shadow:0 0 0 4px rgba(246,181,28,.14);
}
body.evpl-pro .field.evpl-bf-field select{
  border-color:#f2c49a!important;background:linear-gradient(180deg,#fff,#fff9f3)!important;color:#7c2d12!important;
}
body.evpl-pro .kpi-bar{gap:10px!important;padding:10px 12px!important;}
body.evpl-pro .kpi, body.evpl-pro .kpi-card, body.evpl-pro .pro-card{
  background:#fff!important;border:1px solid #dbe2ee!important;border-radius:16px!important;
  box-shadow:0 12px 32px rgba(15,23,42,.06)!important;
}
body.evpl-pro .table-wrap, body.evpl-pro .cards-wrap{
  background:#fff!important;border:1px solid #dbe2ee!important;border-radius:16px!important;
  box-shadow:0 16px 44px rgba(15,23,42,.08)!important;margin:0 10px 12px!important;overflow:auto!important;
}
body.evpl-pro table{font-size:12px!important;border-collapse:separate!important;border-spacing:0!important;}
body.evpl-pro thead th{
  background:linear-gradient(180deg,#172033,#263850)!important;color:#fff!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;text-transform:uppercase!important;
  letter-spacing:.035em!important;font-size:10.8px!important;font-weight:950!important;
}
body.evpl-pro tbody td{border-color:#edf1f7!important;color:#243147!important;}
body.evpl-pro tbody tr:hover td{background:#fff7e8!important;}
/* multiselect blindado */
body.evpl-pro .ms332{position:relative!important;min-width:0!important;}
body.evpl-pro .ms332-head{
  min-height:35px!important;border-radius:11px!important;border:1px solid #ccd6e4!important;background:#fff!important;
  color:#172033!important;padding:5px 32px 5px 8px!important;box-shadow:0 7px 18px rgba(15,23,42,.045)!important;
  display:flex!important;align-items:center!important;gap:5px!important;overflow:hidden!important;cursor:pointer!important;
}
body.evpl-pro .ms332-head::after{content:"⌄";position:absolute;right:10px;top:50%;transform:translateY(-52%);color:#667085;font-weight:950;}
body.evpl-pro .ms332-chip{
  display:inline-flex!important;align-items:center!important;gap:5px!important;max-width:135px!important;height:23px!important;
  border-radius:999px!important;background:#eef4ff!important;color:#20324d!important;border:1px solid #d7e3f7!important;
  padding:0 7px!important;font-size:11px!important;font-weight:850!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
body.evpl-pro .ms332-chip .x{color:#c5121c!important;font-weight:950!important;}
body.evpl-pro .ms332-head .placeholder{color:#667085!important;font-size:12px!important;font-weight:760!important;}
body.evpl-pro .ms332-menu{
  z-index:9999!important;background:#fff!important;border:1px solid #dbe2ee!important;border-radius:14px!important;
  box-shadow:0 22px 70px rgba(15,23,42,.20)!important;padding:8px!important;max-height:min(360px,70vh)!important;overflow:auto!important;
}
body.evpl-pro .ms332-row{
  display:flex!important;align-items:center!important;gap:9px!important;min-height:31px!important;padding:6px 8px!important;
  border-radius:10px!important;color:#172033!important;background:transparent!important;font-size:12px!important;font-weight:760!important;
}
body.evpl-pro .ms332-row:hover{background:#f6f8fc!important;}
body.evpl-pro .ms332-row input[type="checkbox"]{
  width:15px!important;height:15px!important;min-height:15px!important;flex:0 0 15px!important;accent-color:#c5121c!important;box-shadow:none!important;
}
body.evpl-pro .ms332-row span{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
body.evpl-pro .ms332-actions{display:flex!important;gap:7px!important;position:sticky!important;bottom:0!important;background:#fff!important;padding-top:8px!important;}
body.evpl-pro .ms332-actions button{flex:1!important;height:30px!important;min-height:30px!important;font-size:11px!important;}
/* loading premium estável */
#loader.evpl-pro20-loader{
  background:radial-gradient(circle at 20% 10%,rgba(246,181,28,.18),transparent 34%),
             radial-gradient(circle at 80% 0%,rgba(239,68,68,.16),transparent 30%),
             linear-gradient(135deg,#0b1220,#172033 56%,#0f172a)!important;
  backdrop-filter:blur(10px)!important;
}
#loader.evpl-pro20-loader .loader-panel{
  width:min(760px,92vw)!important;background:linear-gradient(180deg,rgba(17,29,49,.96),rgba(11,18,32,.96))!important;
  color:#fff!important;border:1px solid rgba(148,163,184,.25)!important;border-radius:28px!important;
  box-shadow:0 32px 110px rgba(0,0,0,.42)!important;overflow:hidden!important;
}
#loader.evpl-pro20-loader .loader-title{color:#fff!important;font-weight:950!important;letter-spacing:-.04em!important;}
#loader.evpl-pro20-loader .loader-subtitle,#loader.evpl-pro20-loader .loader-note{color:#cbd5e1!important;}
#loader.evpl-pro20-loader .loader-bar{
  background:rgba(148,163,184,.20)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:999px!important;overflow:hidden!important;
}
#loader.evpl-pro20-loader .loader-bar-fill{
  background:linear-gradient(90deg,#c5121c,#ef4444,#f6b51c)!important;box-shadow:0 0 22px rgba(246,181,28,.34)!important;
}
#loader.evpl-pro20-loader .spinner{border-color:rgba(255,255,255,.18)!important;border-right-color:#f6b51c!important;border-bottom-color:#ef4444!important;}
.evpl-pro20-loading-extra{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;padding:0 22px 18px!important;
}
.evpl-pro20-step{
  border:1px solid rgba(148,163,184,.20)!important;border-radius:14px!important;background:rgba(15,23,42,.54)!important;
  padding:9px 10px!important;color:#cbd5e1!important;font-size:11px!important;font-weight:850!important;
}
.evpl-pro20-step b{display:block!important;color:#fff!important;font-size:12px!important;margin-bottom:5px!important;}
.evpl-pro20-step i{display:block!important;height:6px!important;border-radius:999px!important;background:rgba(148,163,184,.22)!important;overflow:hidden!important;}
.evpl-pro20-step i::before{content:"";display:block;height:100%;width:var(--p,15%);background:linear-gradient(90deg,#ef4444,#f6b51c);border-radius:inherit;transition:width .35s ease;}
#evplPro14Panel{
  position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:10020;
  width:min(620px,calc(100vw - 24px));display:none;background:#fff;color:#172033;
  border:1px solid #fecaca;border-radius:18px;box-shadow:0 20px 70px rgba(15,23,42,.28);padding:14px 16px;
}
#evplPro14Panel.show{display:block!important;}
#evplPro14Panel b{display:block;color:#991b1b;margin-bottom:4px;}
#evplPro14Panel p{margin:0 0 10px;color:#475569;}
#evplPro14Panel .actions{display:flex;gap:8px;flex-wrap:wrap;}
#evplPro14Panel button,#evplPro14Panel a{appearance:none;border:1px solid #dbe2ee;background:#fff;color:#172033;padding:9px 12px;border-radius:11px;font-weight:850;text-decoration:none;cursor:pointer;}
#evplPro14Panel .primary{background:#c5121c;color:#fff;border-color:#c5121c;}
@media(max-width:760px){
  body.evpl-pro .app-header{gap:10px!important;}
  body.evpl-pro .btns{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;}
  body.evpl-pro button, body.evpl-pro .btn, body.evpl-pro .apply-btn{width:100%!important;}
  body.evpl-pro .filter-group{grid-template-columns:1fr!important;}
  body.evpl-pro .field, body.evpl-pro .field.wide{min-width:100%!important;width:100%!important;}
  .evpl-pro20-loading-extra{grid-template-columns:1fr!important;padding:0 16px 16px!important;}
  #loader.evpl-pro20-loader .loader-panel{width:min(430px,94vw)!important;}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;}
}
