/* HEPHA Design System v1.0 — Sprint 1
   Camada visual sobre a baseline v7.0. Nenhuma regra de negócio é alterada. */
:root{
  --hepha-ink:#07131c;
  --hepha-ink-2:#0c1d28;
  --hepha-panel-dark:#102631;
  --hepha-orange:#f47a18;
  --hepha-orange-2:#ff982f;
  --hepha-green:#17845f;
  --hepha-surface:#ffffff;
  --hepha-canvas:#f2f5f6;
  --hepha-border:#dbe3e6;
  --hepha-text:#17232b;
  --hepha-muted:#6f8189;
  --hepha-radius:12px;
  --hepha-shadow:0 8px 24px rgba(8,22,31,.08);
}
body.norge-v43{background:var(--hepha-canvas);color:var(--hepha-text)}
.hepha-sidebar.sidebar{
  width:228px;padding:0;background:linear-gradient(180deg,#07131c 0%,#0a202b 100%);
  border-right:1px solid rgba(255,255,255,.08);gap:0;overflow:hidden;z-index:30
}
.hepha-brand{height:88px;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center}
.hepha-brand img{display:block;width:190px;max-width:100%;height:auto;object-fit:contain}
.hepha-nav-scroll{flex:1;overflow:auto;padding:14px 10px 8px}
.hepha-nav-group{margin-bottom:8px;border-radius:10px}
.hepha-module-trigger{width:100%;height:42px;border:0;background:transparent;color:#d7e1e5;display:flex;align-items:center;gap:10px;padding:0 11px;border-radius:9px;font-size:12px;font-weight:800;cursor:pointer}
.hepha-module-trigger:hover{background:rgba(255,255,255,.06);color:#fff}
.hepha-module-icon{width:20px;height:20px;display:grid;place-items:center;color:var(--hepha-orange)}
.hepha-module-icon svg,.hepha-header svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hepha-chevron{margin-left:auto;font-size:15px;transition:transform .2s}.hepha-nav-group:not(.is-open) .hepha-chevron{transform:rotate(-90deg)}
.hepha-submenu{display:grid;gap:3px;padding:4px 0 3px 30px}.hepha-nav-group:not(.is-open) .hepha-submenu{display:none}
.hepha-submenu .nav,.hepha-submenu>button{position:relative;width:100%;border:0;border-radius:8px;padding:9px 10px;background:transparent;color:#9fb0b8;text-align:left;font-size:11px;font-weight:700;cursor:pointer}
.hepha-submenu .nav:hover{background:rgba(255,255,255,.07);color:#fff}
.hepha-submenu .nav.active{background:linear-gradient(90deg,rgba(244,122,24,.22),rgba(244,122,24,.06));color:#fff;box-shadow:inset 3px 0 0 var(--hepha-orange)}
.hepha-planned-menu button:disabled{opacity:.48;cursor:not-allowed}
.hepha-chip-soon{margin-left:auto;font-size:7px;text-transform:uppercase;padding:3px 5px;border-radius:999px;background:rgba(244,122,24,.15);color:#ffad69}.hepha-chip-soon+.hepha-chevron{margin-left:0}
.hepha-sidebar-footer{padding:10px;border-top:1px solid rgba(255,255,255,.08)}
.hepha-sidebar .side-card{margin:0 0 8px;padding:11px 12px;border-radius:9px;background:rgba(255,255,255,.055);font-size:10px;color:#dce5e8}.hepha-sidebar .side-card span{font-size:9px;color:#89a0aa}
.hepha-sidebar .clear{width:100%;margin:0;border-radius:8px;padding:9px;background:rgba(244,122,24,.12);color:#ffad69;border:1px solid rgba(244,122,24,.2);font-size:10px}
.hepha-sidebar .clear:hover{background:var(--hepha-orange);color:#fff}
.hepha-version{display:flex;justify-content:space-between;margin-top:9px;padding:0 3px;font-size:8px;color:#6f8791}.hepha-version b{color:#9fb0b8}
.app{margin-left:228px;padding:18px 22px 30px}
.hepha-header.hero{min-height:76px;margin:-18px -22px 16px;padding:0 22px;background:linear-gradient(105deg,#07131c,#0c202b);border-radius:0;border-bottom:1px solid #243945;color:#fff;box-shadow:none;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(340px,1.2fr) minmax(260px,.8fr);gap:20px;align-items:center}
.hepha-page-context{min-width:0}.hepha-breadcrumb{display:flex;align-items:center;gap:6px;margin-bottom:3px;font-size:9px;color:#829aa5;text-transform:uppercase;letter-spacing:.08em}.hepha-breadcrumb span{color:#ff9d48}.hepha-breadcrumb i{font-style:normal}.hepha-breadcrumb strong{color:#aabac1}
.hepha-header h1{margin:0;font-size:17px;line-height:1.1;letter-spacing:.015em;color:#fff}.hepha-header p{margin:4px 0 0;font-size:9px;color:#8fa3ac;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hepha-header-search{height:38px;max-width:620px;width:100%;justify-self:center;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid #29434f;border-radius:9px;background:#0a1821;color:#7f969f}
.hepha-header-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#e7edef;font-size:11px}.hepha-header-search input::placeholder{color:#708791}.hepha-header-search kbd{padding:4px 6px;border:1px solid #2b414b;border-radius:5px;background:#10242e;color:#81959e;font-size:8px;font-family:inherit}
.hepha-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.hepha-icon-btn{position:relative;width:34px;height:34px;border:1px solid transparent;border-radius:9px;background:transparent;color:#c0cdd2;display:grid;place-items:center;cursor:pointer}.hepha-icon-btn:hover{background:#122934;border-color:#29434f;color:#fff}.hepha-notification-dot{position:absolute;right:6px;top:5px;width:6px;height:6px;border-radius:50%;background:var(--hepha-orange);box-shadow:0 0 0 2px #0b1c25}
.hepha-user{display:flex;align-items:center;gap:9px;padding-left:9px;border-left:1px solid #29404a;min-width:0}.hepha-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#192e38;border:1px solid #3c5561;color:#fff;font-size:10px;font-weight:900}.hepha-user>div:last-child{min-width:0}.hepha-user strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hepha-user span{display:block;margin-top:2px;font-size:8px;color:#7f969f}
.filters{border:1px solid var(--hepha-border);border-radius:var(--hepha-radius);background:#fff;box-shadow:var(--hepha-shadow)}
.filters label{font-size:9px;color:var(--hepha-muted)}.filters select{border:1px solid var(--hepha-border);border-radius:8px;background:#f8fafb;color:var(--hepha-text)}
.kpi,.panel{border:1px solid var(--hepha-border);border-radius:var(--hepha-radius);box-shadow:var(--hepha-shadow)}
.panel h3{color:#182831}.panel p{color:var(--hepha-muted)}
button,.admin-btn{transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}
button:active,.admin-btn:active{transform:translateY(1px)}
@media(max-width:1180px){
  .hepha-header.hero{grid-template-columns:minmax(230px,.9fr) minmax(270px,1.1fr) 220px;gap:12px}
  .hepha-user strong{max-width:105px}
}
@media(max-width:900px){
  .hepha-sidebar.sidebar{position:fixed;width:78px}.hepha-brand{padding:14px 8px}.hepha-brand img{width:62px;object-position:left}.hepha-module-trigger>span:not(.hepha-module-icon),.hepha-submenu,.hepha-sidebar-footer{display:none}.hepha-module-trigger{justify-content:center;padding:0}.app{margin-left:78px}.hepha-header.hero{grid-template-columns:1fr auto}.hepha-header-search{display:none}
}



/* =========================================================
   STEP 1.1 — HEADER OFICIAL HEPHA
   Escopo: somente shell superior do Analytics.
   ========================================================= */
.app{
  margin-left:228px;
  padding:0 22px 30px;
}

.hepha-brand{
  height:88px;
}

.hepha-header.hero{
  min-height:88px;
  height:88px;
  margin:0 -22px;
  padding:0 22px;
  background:
    linear-gradient(90deg,#05090c 0%,#07131c 44%,#091922 100%);
  border:0;
  border-bottom:1px solid rgba(255,255,255,.10);
  border-radius:0;
  box-shadow:none;
  color:#fff;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px;
  align-items:center;
}

.hepha-top-context{
  display:flex;
  align-items:center;
  min-width:0;
}

.hepha-breadcrumb{
  margin:0;
  gap:8px;
  font-size:10px;
  font-weight:800;
  color:#80949d;
  letter-spacing:.08em;
}

.hepha-breadcrumb span{
  color:#dce5e8;
}

.hepha-breadcrumb i{
  color:#526973;
}

.hepha-breadcrumb strong{
  color:var(--hepha-orange);
}

.hepha-header-actions{
  gap:10px;
}

.hepha-icon-btn{
  width:36px;
  height:36px;
  border-radius:8px;
}

.hepha-user{
  min-height:42px;
  padding-left:13px;
  gap:10px;
}

.hepha-avatar{
  width:36px;
  height:36px;
}

.hepha-user strong{
  font-size:10px;
}

.hepha-user span{
  font-size:8px;
}

/* A consulta global foi removida do Analytics.
   Buscas contextuais serão usadas apenas nos módulos operacionais. */
.hepha-header-search{
  display:none !important;
}

.hepha-page-intro{
  min-height:66px;
  margin:0 -22px 10px;
  padding:11px 22px 9px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfd 100%);
  border-bottom:1px solid var(--hepha-border);
  display:flex;
  align-items:center;
}

.hepha-page-intro h1{
  margin:0;
  color:#0b2d2a;
  font-size:21px;
  line-height:1.15;
  letter-spacing:-.015em;
}

.hepha-page-intro p{
  max-width:900px;
  margin:5px 0 0;
  color:#526771;
  font-size:10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.filters{
  margin-top:0;
}

@media(max-width:1180px){
  .hepha-header.hero{
    grid-template-columns:minmax(0,1fr) auto;
  }
}

@media(max-width:900px){
  .app{
    margin-left:78px;
    padding:0 14px 24px;
  }
  .hepha-header.hero{
    height:72px;
    min-height:72px;
    margin:0 -14px;
    padding:0 14px;
    grid-template-columns:minmax(0,1fr) auto;
  }
  .hepha-page-intro{
    margin:0 -14px 9px;
    padding:10px 14px 8px;
  }
  .hepha-page-intro h1{
    font-size:18px;
  }
  .hepha-user>div:last-child{
    display:none;
  }
}


/* =========================================================
   STEP 1.2 — HS-03 GLOBAL HEADER
   Componente isolado. Demais componentes permanecem congelados.
   ========================================================= */

html body.norge-v43 main.app > #hs03GlobalHeader.hepha-header.hero{
  box-sizing:border-box !important;
  position:relative !important;
  z-index:20 !important;

  width:auto !important;
  min-height:88px !important;
  height:88px !important;

  margin:0 -22px !important;
  padding:0 22px !important;

  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;

  background:#061018 !important;
  background-image:
    linear-gradient(90deg,#04090d 0%,#061018 52%,#091923 100%) !important;

  color:#f5f8f9 !important;
  border:0 !important;
  border-bottom:1px solid #223843 !important;
  border-radius:0 !important;
  box-shadow:0 4px 14px rgba(0,0,0,.18) !important;
}

html body.norge-v43 main.app > #hs03GlobalHeader::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 78% 0%,rgba(244,122,24,.055),transparent 30%);
}

#hs03GlobalHeader .hepha-top-context,
#hs03GlobalHeader .hepha-header-actions{
  position:relative;
  z-index:1;
}

#hs03GlobalHeader .hepha-top-context{
  min-width:0;
  display:flex;
  align-items:center;
  height:100%;
}

#hs03GlobalHeader .hepha-breadcrumb{
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  margin:0 !important;

  color:#8da1aa !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.075em !important;
  text-transform:uppercase !important;
}

#hs03GlobalHeader .hepha-breadcrumb span{
  color:#e5ecef !important;
}

#hs03GlobalHeader .hepha-breadcrumb i{
  color:#607680 !important;
  font-style:normal !important;
  font-size:14px !important;
}

#hs03GlobalHeader .hepha-breadcrumb strong{
  color:#ff841a !important;
  font-weight:900 !important;
}

#hs03GlobalHeader .hepha-header-actions{
  height:100%;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
}

#hs03GlobalHeader .hepha-icon-btn{
  width:38px !important;
  height:38px !important;
  display:grid !important;
  place-items:center !important;

  color:#c6d1d5 !important;
  background:transparent !important;
  border:1px solid transparent !important;
  border-radius:8px !important;
  box-shadow:none !important;
}

#hs03GlobalHeader .hepha-icon-btn:hover{
  color:#fff !important;
  background:#10242e !important;
  border-color:#2b424d !important;
}

#hs03GlobalHeader .hepha-notification-dot{
  right:7px !important;
  top:6px !important;
  width:7px !important;
  height:7px !important;
  background:#ff7a00 !important;
  box-shadow:0 0 0 2px #061018 !important;
}

#hs03GlobalHeader .hepha-user{
  min-width:164px !important;
  min-height:46px !important;
  margin-left:4px !important;
  padding:0 0 0 14px !important;

  display:flex !important;
  align-items:center !important;
  gap:10px !important;

  color:#fff !important;
  border-left:1px solid #304650 !important;
  background:transparent !important;
}

#hs03GlobalHeader .hepha-avatar{
  width:37px !important;
  height:37px !important;
  flex:0 0 37px !important;

  color:#fff !important;
  background:#172d38 !important;
  border:1px solid #49616c !important;
  border-radius:50% !important;

  font-size:10px !important;
  font-weight:900 !important;
}

#hs03GlobalHeader .hepha-user strong{
  display:block !important;
  max-width:126px !important;
  color:#fff !important;
  font-size:10px !important;
  font-weight:800 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

#hs03GlobalHeader .hepha-user span{
  display:block !important;
  margin-top:3px !important;
  color:#8499a2 !important;
  font-size:8px !important;
}

/* Consulta removida do Analytics. */
#hs03GlobalHeader .hepha-header-search,
body.norge-v43 .hepha-header-search{
  display:none !important;
}

/* Mantém o encaixe entre HS-02 e HS-03. */
.hepha-sidebar.sidebar .hepha-brand{
  min-height:88px !important;
  height:88px !important;
  background:#061018 !important;
  border-bottom:1px solid #223843 !important;
}

/* Responsividade exclusiva do componente HS-03. */
@media(max-width:900px){
  html body.norge-v43 main.app > #hs03GlobalHeader.hepha-header.hero{
    min-height:72px !important;
    height:72px !important;
    margin:0 -14px !important;
    padding:0 14px !important;
  }

  .hepha-sidebar.sidebar .hepha-brand{
    min-height:72px !important;
    height:72px !important;
  }

  #hs03GlobalHeader .hepha-user{
    min-width:auto !important;
    padding-left:10px !important;
  }

  #hs03GlobalHeader .hepha-user > div:last-child{
    display:none !important;
  }
}


/* =========================================================
   STEP 1.3 — HS-05 MODULE TOOLBAR
   HS-03 permanece congelado.
   ========================================================= */

#hs05ModuleToolbar.hs05-toolbar{
  box-sizing:border-box;
  margin:0 0 12px !important;
  padding:0 !important;
  display:block !important;
  overflow:hidden;

  background:linear-gradient(180deg,#f8fafb 0%,#f3f6f8 100%) !important;
  border:1px solid #d6e0e5 !important;
  border-radius:10px !important;
  box-shadow:0 5px 14px rgba(14,35,45,.055) !important;
}

#hs05ModuleToolbar .hs05-toolbar-head{
  min-height:42px;
  padding:7px 11px 6px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-bottom:1px solid #dfe7ea;
  background:rgba(255,255,255,.62);
}

#hs05ModuleToolbar .hs05-toolbar-title{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}

#hs05ModuleToolbar .hs05-title-icon{
  width:29px;
  height:29px;
  flex:0 0 29px;
  display:grid;
  place-items:center;
  color:#ff7a00;
  background:#fff4e8;
  border:1px solid #ffd8b5;
  border-radius:7px;
}

#hs05ModuleToolbar .hs05-title-icon svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#hs05ModuleToolbar .hs05-toolbar-title strong{
  display:block;
  color:#18313b;
  font-size:10px;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
}

#hs05ModuleToolbar .hs05-toolbar-title span{
  display:block;
  margin-top:2px;
  color:#7a8e97;
  font-size:8px;
}

#hs05ModuleToolbar .hs05-action-btn{
  min-height:31px;
  padding:0 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;

  color:#394e57;
  background:#fff;
  border:1px solid #ccd8dd;
  border-radius:7px;
  box-shadow:0 1px 2px rgba(0,0,0,.025);

  font-size:9px;
  font-weight:800;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}

#hs05ModuleToolbar .hs05-action-btn svg{
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#hs05ModuleToolbar .hs05-action-btn:hover{
  color:#e56600;
  background:#fff8f2;
  border-color:#f5b982;
  transform:translateY(-1px);
}

#hs05ModuleToolbar .hs05-filter-grid{
  padding:8px 10px 10px;
  display:grid;
  grid-template-columns:repeat(5,minmax(120px,1fr));
  gap:8px;
  align-items:end;
}

#hs05ModuleToolbar .hs05-filter{
  min-width:0;
  margin:0 !important;
  padding:0 !important;
  display:flex;
  flex-direction:column;
  gap:4px;
  color:#344b55;
  font-size:9px;
  font-weight:800;
}

#hs05ModuleToolbar .hs05-filter-label{
  min-height:17px;
  display:flex;
  align-items:center;
  gap:5px;
  color:#405862;
  white-space:nowrap;
}

#hs05ModuleToolbar .hs05-filter-label i{
  width:18px;
  height:18px;
  flex:0 0 18px;
  display:grid;
  place-items:center;
  color:#f47a18;
  background:#fff;
  border:1px solid #dce5e9;
  border-radius:5px;
  font-style:normal;
}

#hs05ModuleToolbar .hs05-filter-label svg{
  width:12px;
  height:12px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#hs05ModuleToolbar .hs05-filter select{
  width:100% !important;
  height:34px !important;
  min-height:34px !important;
  margin:0 !important;
  padding:0 29px 0 9px !important;

  color:#213840 !important;
  background-color:#fff !important;
  border:1px solid #cad6dc !important;
  border-radius:7px !important;
  box-shadow:0 1px 2px rgba(0,0,0,.018) !important;

  font-size:9px !important;
  font-weight:700 !important;
  outline:none !important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}

#hs05ModuleToolbar .hs05-filter:hover .hs05-filter-label i{
  color:#fff;
  background:#f47a18;
  border-color:#f47a18;
}

#hs05ModuleToolbar .hs05-filter:hover select{
  border-color:#9fb1b9 !important;
}

#hs05ModuleToolbar .hs05-filter select:focus{
  border-color:#f47a18 !important;
  box-shadow:0 0 0 3px rgba(244,122,24,.13) !important;
}

#hs05ModuleToolbar .hs05-filter.is-active .hs05-filter-label{
  color:#d96100;
}

#hs05ModuleToolbar .hs05-filter.is-active .hs05-filter-label i{
  color:#fff;
  background:#f47a18;
  border-color:#f47a18;
}

#hs05ModuleToolbar .hs05-filter.is-active select{
  background:#fffaf5 !important;
  border-color:#f2a35e !important;
}

@media(max-width:1250px){
  #hs05ModuleToolbar .hs05-filter-grid{
    grid-template-columns:repeat(3,minmax(135px,1fr));
  }
}

@media(max-width:760px){
  #hs05ModuleToolbar .hs05-toolbar-head{
    align-items:flex-start;
  }

  #hs05ModuleToolbar .hs05-action-btn span{
    display:none;
  }

  #hs05ModuleToolbar .hs05-filter-grid{
    grid-template-columns:repeat(2,minmax(120px,1fr));
  }
}


/* =========================================================
   STEP 1.4 — HS-05 FATURAMENTO COMPACTO
   ========================================================= */

#hs05ModuleToolbar.hs05-compact{
  margin:0 0 10px !important;
  padding:7px 9px !important;
  background:#f4f7f8 !important;
  border:1px solid #d8e1e5 !important;
  border-radius:8px !important;
  box-shadow:none !important;
}

#hs05ModuleToolbar .hs05-inline-grid{
  display:grid;
  grid-template-columns:92px 110px minmax(150px,1.2fr) minmax(135px,1fr) minmax(150px,1.15fr) auto;
  gap:7px;
  align-items:center;
}

#hs05ModuleToolbar .hs05-filter{
  min-width:0;
  height:42px;
  margin:0 !important;
  padding:4px 7px !important;
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:center;
  gap:6px;

  background:#fff;
  border:1px solid #d2dce1;
  border-radius:7px;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}

#hs05ModuleToolbar .hs05-filter-icon{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  color:#f47a18;
  background:#fff4e8;
  border:1px solid #ffd5ae;
  border-radius:6px;
}

#hs05ModuleToolbar .hs05-filter-icon svg{
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#hs05ModuleToolbar .hs05-filter-content{
  min-width:0;
  display:block;
}

#hs05ModuleToolbar .hs05-filter-label{
  display:block;
  margin-bottom:1px;
  color:#5d717a;
  font-size:7px;
  font-weight:900;
  line-height:1;
  text-transform:uppercase;
  letter-spacing:.05em;
}

#hs05ModuleToolbar .hs05-filter select{
  width:100% !important;
  height:20px !important;
  min-height:20px !important;
  margin:0 !important;
  padding:0 19px 0 0 !important;

  color:#19323b !important;
  background-color:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;

  font-size:9px !important;
  font-weight:800 !important;
  outline:none !important;
}

#hs05ModuleToolbar .hs05-filter:hover{
  border-color:#aebfc7;
  background:#fcfdfd;
}

#hs05ModuleToolbar .hs05-filter:focus-within{
  border-color:#f47a18;
  box-shadow:0 0 0 2px rgba(244,122,24,.11);
}

#hs05ModuleToolbar .hs05-filter.is-active{
  background:#fffaf5;
  border-color:#f3ad6e;
}

#hs05ModuleToolbar .hs05-filter.is-active .hs05-filter-icon{
  color:#fff;
  background:#f47a18;
  border-color:#f47a18;
}

#hs05ModuleToolbar .hs05-clear-inline{
  height:31px;
  padding:0 8px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;

  color:#6a7c84;
  background:transparent;
  border:1px solid transparent;
  border-radius:6px;

  font-size:8px;
  font-weight:800;
  cursor:pointer;
  transition:color .16s ease,background .16s ease,border-color .16s ease;
}

#hs05ModuleToolbar .hs05-clear-inline svg{
  width:13px;
  height:13px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#hs05ModuleToolbar .hs05-clear-inline:hover{
  color:#d85e00;
  background:#fff7ef;
  border-color:#f6c293;
}

/* Faturamento: somente Ano, Mês, Cliente, Família e Produto */
body[data-page="faturamento"] #hs05ModuleToolbar .prod-only-filter,
body[data-page="faturamento"] #hs05ModuleToolbar .refOnly{
  display:none !important;
}

@media(max-width:1250px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:90px 105px minmax(140px,1fr) minmax(130px,1fr) minmax(145px,1fr) auto;
  }
}

@media(max-width:980px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:repeat(3,minmax(120px,1fr));
  }

  #hs05ModuleToolbar .hs05-clear-inline{
    justify-self:start;
  }
}


/* =========================================================
   STEP 1.5 — HS-05 REFINAMENTO FINAL
   HS-03 permanece congelado.
   ========================================================= */

#hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    92px
    112px
    minmax(190px,220px)
    minmax(150px,180px)
    minmax(190px,220px)
    auto;
  justify-content:start;
}

#hs05ModuleToolbar .hs05-filter{
  height:40px;
  padding:3px 7px !important;
  grid-template-columns:26px minmax(0,1fr);
  align-items:center;
  gap:7px;
}

#hs05ModuleToolbar .hs05-filter-icon{
  width:26px;
  height:26px;
  align-self:center;
}

#hs05ModuleToolbar .hs05-filter-content{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:6px;
}

#hs05ModuleToolbar .hs05-filter-label{
  margin:0;
  align-self:center;
  font-size:7px;
  line-height:1;
  white-space:nowrap;
}

#hs05ModuleToolbar .hs05-filter select{
  height:24px !important;
  min-height:24px !important;
  padding:0 18px 0 2px !important;
  align-self:center;
  font-size:9px !important;
}

#hs05ModuleToolbar .hs05-inline-actions{
  min-width:max-content;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
}

#hs05ModuleToolbar .hs05-active-count{
  min-height:28px;
  padding:0 7px;
  display:flex;
  align-items:center;
  gap:5px;

  color:#6d7f87;
  background:#fff;
  border:1px solid #d7e0e4;
  border-radius:6px;

  font-size:8px;
  font-weight:800;
  white-space:nowrap;
}

#hs05ModuleToolbar .hs05-active-count i{
  width:7px;
  height:7px;
  display:block;
  border-radius:50%;
  background:#b7c4ca;
}

#hs05ModuleToolbar .hs05-active-count.has-active{
  color:#c85800;
  background:#fff8f1;
  border-color:#f1b57d;
}

#hs05ModuleToolbar .hs05-active-count.has-active i{
  background:#f47a18;
  box-shadow:0 0 0 3px rgba(244,122,24,.12);
}

#hs05ModuleToolbar .hs05-clear-inline{
  height:28px;
  padding:0 7px;
}

@media(max-width:1250px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      88px
      105px
      minmax(160px,1fr)
      minmax(140px,1fr)
      minmax(170px,1fr)
      auto;
  }
}

@media(max-width:980px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:repeat(2,minmax(150px,1fr));
  }

  #hs05ModuleToolbar .hs05-inline-actions{
    grid-column:1/-1;
    justify-self:end;
  }
}


/* =========================================================
   STEP 1.6 — HS-05 DIMENSÕES OFICIAIS
   HS-03 permanece congelado.
   ========================================================= */

#hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    110px
    110px
    350px
    180px
    minmax(650px,1fr)
    90px !important;
  gap:8px !important;
  align-items:center !important;
}

#hs05ModuleToolbar .hs05-inline-actions{
  width:90px !important;
  min-width:90px !important;
  justify-content:flex-end !important;
}

#hs05ModuleToolbar .hs05-clear-inline{
  width:90px !important;
  min-width:90px !important;
  justify-content:center !important;
}

/* O contador fica discreto e não altera a largura principal da barra. */
#hs05ModuleToolbar .hs05-active-count{
  position:absolute;
  right:108px;
  top:50%;
  transform:translateY(-50%);
}

#hs05ModuleToolbar .hs05-inline-grid{
  position:relative;
}

@media(max-width:1700px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      110px
      110px
      320px
      170px
      minmax(500px,1fr)
      90px !important;
  }
}

@media(max-width:1450px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      105px
      105px
      minmax(250px,1fr)
      160px
      minmax(380px,1.25fr)
      90px !important;
  }

  #hs05ModuleToolbar .hs05-active-count{
    position:static;
    transform:none;
  }

  #hs05ModuleToolbar .hs05-inline-actions{
    width:auto !important;
    min-width:max-content !important;
  }
}

@media(max-width:980px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:repeat(2,minmax(150px,1fr)) !important;
  }

  #hs05ModuleToolbar .hs05-inline-actions{
    grid-column:1/-1;
    justify-self:end;
  }
}


/* =========================================================
   STEP 1.7 — HS-05 DIMENSÕES + FILTROS EM CASCATA
   ========================================================= */

#hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    120px
    110px
    350px
    180px
    minmax(630px,1fr)
    90px !important;
}

/* Mantém segurança de diagramação em larguras menores. */
@media(max-width:1700px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      120px
      110px
      minmax(285px,350px)
      180px
      minmax(470px,1fr)
      90px !important;
  }
}

@media(max-width:1450px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      115px
      105px
      minmax(235px,1fr)
      165px
      minmax(360px,1.3fr)
      90px !important;
  }
}


/* =========================================================
   STEP 1.8 — HS-05 DINÂMICO PARA ANALYTICS
   Faturamento, Produção e Gestão de Perdas.
   ========================================================= */

/* Base: todos os filtros contextuais começam ocultos e cada página
   libera somente o conjunto necessário. */
#hs05ModuleToolbar .cliente-filter,
#hs05ModuleToolbar .prod-only-filter,
#hs05ModuleToolbar .hs05-loss-only,
#hs05ModuleToolbar .hs05-production-loss{
  display:none !important;
}

/* FATURAMENTO
   Ano 120 | Mês 120 | Cliente 350 | Família 180 |
   Produto mín. 620 | Limpar 90 */
body[data-page="faturamento"] #hs05ModuleToolbar .cliente-filter{
  display:grid !important;
}

body[data-page="faturamento"] #hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    120px
    120px
    350px
    180px
    minmax(620px,1fr)
    90px !important;
}

/* PRODUÇÃO
   Ano | Mês | Família | Produto | Serviço | Operador | Limpar */
body[data-page="producao"] #hs05ModuleToolbar .prod-only-filter,
body[data-page="producao"] #hs05ModuleToolbar .hs05-production-loss{
  display:grid !important;
}

body[data-page="producao"] #hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    120px
    120px
    180px
    minmax(500px,1fr)
    230px
    210px
    90px !important;
}

/* GESTÃO DE PERDAS
   Ano | Mês | Família | Produto | Motivo | Operador | Limpar */
body[data-page="perdas"] #hs05ModuleToolbar .hs05-loss-only,
body[data-page="perdas"] #hs05ModuleToolbar .hs05-production-loss{
  display:grid !important;
}

body[data-page="perdas"] #hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    120px
    120px
    180px
    minmax(450px,1fr)
    300px
    210px
    90px !important;
}

/* PERFORMANCE mantém somente filtros analíticos comuns. */
body[data-page="performance"] #hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    120px
    120px
    180px
    minmax(620px,1fr)
    90px !important;
}

/* Nas páginas sem Cliente, o fluxo do grid fecha automaticamente,
   pois os elementos ocultos não ocupam coluna. */
body[data-page="producao"] #hs05ModuleToolbar .cliente-filter,
body[data-page="producao"] #hs05ModuleToolbar .hs05-loss-only,
body[data-page="perdas"] #hs05ModuleToolbar .cliente-filter,
body[data-page="perdas"] #hs05ModuleToolbar .prod-only-filter,
body[data-page="performance"] #hs05ModuleToolbar .cliente-filter,
body[data-page="performance"] #hs05ModuleToolbar .prod-only-filter,
body[data-page="performance"] #hs05ModuleToolbar .hs05-loss-only,
body[data-page="performance"] #hs05ModuleToolbar .hs05-production-loss{
  display:none !important;
}

/* Ajustes responsivos por módulo sem ultrapassar o HS-05. */
@media(max-width:1700px){
  body[data-page="faturamento"] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      120px 120px minmax(280px,350px) 180px minmax(450px,1fr) 90px !important;
  }

  body[data-page="producao"] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      115px 115px 170px minmax(380px,1fr) 205px 185px 90px !important;
  }

  body[data-page="perdas"] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      115px 115px 170px minmax(350px,1fr) 250px 185px 90px !important;
  }
}

@media(max-width:1450px){
  body[data-page="faturamento"] #hs05ModuleToolbar .hs05-inline-grid,
  body[data-page="producao"] #hs05ModuleToolbar .hs05-inline-grid,
  body[data-page="perdas"] #hs05ModuleToolbar .hs05-inline-grid,
  body[data-page="performance"] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:repeat(3,minmax(150px,1fr)) !important;
  }

  #hs05ModuleToolbar .hs05-inline-actions{
    width:auto !important;
    min-width:max-content !important;
  }

  #hs05ModuleToolbar .hs05-active-count{
    position:static !important;
    transform:none !important;
  }
}

@media(max-width:850px){
  body[data-page] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:repeat(2,minmax(145px,1fr)) !important;
  }

  #hs05ModuleToolbar .hs05-inline-actions{
    grid-column:1/-1;
    justify-self:end;
  }
}


/* =========================================================
   STEP 1.8.1 — HS-05 DIMENSÕES REVISADAS
   ========================================================= */

/* FATURAMENTO */
body[data-page="faturamento"] #hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    140px
    140px
    350px
    180px
    minmax(580px,1fr)
    90px !important;
}

/* Produção e Gestão de Perdas mantêm os campos específicos
   já definidos na Sprint 1.8. */

@media(max-width:1700px){
  body[data-page="faturamento"] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      140px
      140px
      minmax(285px,350px)
      180px
      minmax(430px,1fr)
      90px !important;
  }
}

@media(max-width:1450px){
  body[data-page="faturamento"] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      130px
      130px
      minmax(235px,1fr)
      165px
      minmax(340px,1.25fr)
      90px !important;
  }
}

@media(max-width:980px){
  body[data-page="faturamento"] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:repeat(2,minmax(150px,1fr)) !important;
  }
}


/* =========================================================
   SPRINT 2.0 — HS-05 COMPONENTE REUTILIZÁVEL
   A visibilidade e a grade passam a ser controladas por JS.
   ========================================================= */

#hs05ModuleToolbar [data-filter-name]{
  min-width:0;
}

/* Produção: Operador removido oficialmente */
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="operador"]{
  display:none !important;
}

/* Mantém o Faturamento congelado */
body[data-page="faturamento"] #hs05ModuleToolbar{
  --hs05-status: "congelado";
}

/* O contador não interfere na largura do grid principal */
#hs05ModuleToolbar .hs05-inline-actions{
  min-width:90px;
}

/* Responsividade comum do componente */
@media(max-width:1450px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:repeat(3,minmax(150px,1fr)) !important;
  }

  #hs05ModuleToolbar .hs05-inline-actions{
    grid-column:auto;
    min-width:max-content;
  }
}

@media(max-width:850px){
  #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:repeat(2,minmax(145px,1fr)) !important;
  }

  #hs05ModuleToolbar .hs05-inline-actions{
    grid-column:1/-1;
    justify-self:end;
  }
}


/* =========================================================
   SPRINT 2.1 — HS-05 PRODUÇÃO
   Ano e Mês idênticos ao Faturamento
   ========================================================= */

/* Mesma largura oficial */
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="ano"],
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="mes"]{
  width:140px !important;
  min-width:140px !important;
  max-width:140px !important;
}

/* Mesma caixa, altura, padding, borda e alinhamento */
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="ano"],
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="mes"],
body[data-page="faturamento"] #hs05ModuleToolbar [data-filter-name="ano"],
body[data-page="faturamento"] #hs05ModuleToolbar [data-filter-name="mes"]{
  height:40px !important;
  padding:3px 7px !important;
  grid-template-columns:26px minmax(0,1fr) !important;
  gap:7px !important;
  align-items:center !important;
  box-sizing:border-box !important;
}

/* Mesmo ícone */
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="ano"] .hs05-filter-icon,
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="mes"] .hs05-filter-icon,
body[data-page="faturamento"] #hs05ModuleToolbar [data-filter-name="ano"] .hs05-filter-icon,
body[data-page="faturamento"] #hs05ModuleToolbar [data-filter-name="mes"] .hs05-filter-icon{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  min-height:26px !important;
  align-self:center !important;
}

/* Mesmo label e select */
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="ano"] .hs05-filter-content,
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="mes"] .hs05-filter-content,
body[data-page="faturamento"] #hs05ModuleToolbar [data-filter-name="ano"] .hs05-filter-content,
body[data-page="faturamento"] #hs05ModuleToolbar [data-filter-name="mes"] .hs05-filter-content{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:6px !important;
}

body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="ano"] select,
body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="mes"] select,
body[data-page="faturamento"] #hs05ModuleToolbar [data-filter-name="ano"] select,
body[data-page="faturamento"] #hs05ModuleToolbar [data-filter-name="mes"] select{
  width:100% !important;
  height:24px !important;
  min-height:24px !important;
  padding:0 18px 0 2px !important;
  font-size:9px !important;
  font-weight:800 !important;
}

/* Grade oficial da Produção */
body[data-page="producao"] #hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    140px
    140px
    180px
    minmax(470px,1fr)
    270px
    90px !important;
}

/* Impede que media queries antigas diminuam Ano e Mês apenas na Produção */
@media(min-width:1451px){
  body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="ano"],
  body[data-page="producao"] #hs05ModuleToolbar [data-filter-name="mes"]{
    width:140px !important;
    min-width:140px !important;
    max-width:140px !important;
  }
}


/* =========================================================
   SPRINT 2.2 — HS-05 GESTÃO DE PERDAS E PERFORMANCE
   Ano e Mês idênticos ao Faturamento
   ========================================================= */

/* Dimensão oficial compartilhada */
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="ano"],
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="mes"],
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="ano"],
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="mes"]{
  width:140px !important;
  min-width:140px !important;
  max-width:140px !important;
}

/* Estrutura visual idêntica ao Faturamento */
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="ano"],
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="mes"],
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="ano"],
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="mes"]{
  height:40px !important;
  padding:3px 7px !important;
  grid-template-columns:26px minmax(0,1fr) !important;
  gap:7px !important;
  align-items:center !important;
  box-sizing:border-box !important;
}

/* Ícones com o mesmo tamanho e alinhamento */
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="ano"] .hs05-filter-icon,
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="mes"] .hs05-filter-icon,
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="ano"] .hs05-filter-icon,
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="mes"] .hs05-filter-icon{
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  min-height:26px !important;
  align-self:center !important;
}

/* Conteúdo interno igual ao Faturamento */
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="ano"] .hs05-filter-content,
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="mes"] .hs05-filter-content,
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="ano"] .hs05-filter-content,
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="mes"] .hs05-filter-content{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:6px !important;
}

/* Select com o mesmo eixo, altura e tipografia */
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="ano"] select,
body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="mes"] select,
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="ano"] select,
body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="mes"] select{
  width:100% !important;
  height:24px !important;
  min-height:24px !important;
  padding:0 18px 0 2px !important;
  font-size:9px !important;
  font-weight:800 !important;
}

/* Grades oficiais preservando os filtros específicos de cada aba */
body[data-page="perdas"] #hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    140px
    140px
    180px
    minmax(450px,1fr)
    300px
    90px !important;
}

body[data-page="performance"] #hs05ModuleToolbar .hs05-inline-grid{
  grid-template-columns:
    140px
    140px
    180px
    minmax(580px,1fr)
    90px !important;
}

/* Evita redução visual em desktop por regras antigas */
@media(min-width:1451px){
  body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="ano"],
  body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="mes"],
  body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="ano"],
  body[data-page="performance"] #hs05ModuleToolbar [data-filter-name="mes"]{
    width:140px !important;
    min-width:140px !important;
    max-width:140px !important;
  }
}


/* =========================================================
   SPRINT 2.3 — HS-03 + IDENTIDADE DA MARCA
   ========================================================= */

:root{
  --hepha-shell-bg:#07131c;
  --hepha-shell-border:#223843;
}

/* HS-02 e HS-03 usam a mesma cor sólida para eliminar a diferença
   visual entre a lateral e o cabeçalho. */
html body.norge-v43 .hepha-sidebar.sidebar{
  background:var(--hepha-shell-bg) !important;
  background-image:none !important;
}

html body.norge-v43 main.app > #hs03GlobalHeader.hepha-header.hero{
  background:var(--hepha-shell-bg) !important;
  background-image:none !important;
  border-bottom-color:var(--hepha-shell-border) !important;
}

/* Remove qualquer iluminação que alterava a cor do HS-03. */
html body.norge-v43 main.app > #hs03GlobalHeader::before{
  display:none !important;
}

.hepha-sidebar.sidebar .hepha-brand{
  box-sizing:border-box;
  min-height:88px !important;
  height:88px !important;
  padding:10px 14px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  overflow:hidden;

  background:var(--hepha-shell-bg) !important;
  background-image:none !important;
  border-bottom:1px solid var(--hepha-shell-border) !important;
}

/* Símbolo transparente, sem caixa/fundo de imagem. */
.hepha-brand-symbol{
  display:block !important;
  width:48px !important;
  height:60px !important;
  flex:0 0 48px;
  object-fit:contain !important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.28));
}

/* Wordmark em texto real para nitidez em qualquer resolução. */
.hepha-brand-wordmark{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  line-height:1;
}

.hepha-brand-wordmark strong{
  display:block;
  color:#f7f8f9;
  font-family:Arial,Helvetica,sans-serif;
  font-size:25px;
  line-height:.92;
  font-weight:800;
  letter-spacing:.035em;
  white-space:nowrap;
  text-shadow:0 1px 0 rgba(255,255,255,.08);
}

.hepha-brand-platform{
  width:100%;
  margin-top:6px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:5px;

  color:#ff7a18;
  font-family:Arial,Helvetica,sans-serif;
  font-size:8px;
  font-weight:800;
  letter-spacing:.38em;
  white-space:nowrap;
}

.hepha-brand-platform i{
  display:block;
  height:2px;
  background:#ff7a18;
  border-radius:999px;
}

.hepha-brand-wordmark small{
  display:block;
  margin-top:5px;
  color:#9badb5;
  font-family:Arial,Helvetica,sans-serif;
  font-size:5.7px;
  line-height:1;
  font-weight:600;
  letter-spacing:.055em;
  white-space:nowrap;
}

/* Evita que regras antigas do img completo interfiram. */
.hepha-brand > img.hepha-brand-symbol{
  max-width:none !important;
}

/* Estado recolhido: mantém somente o símbolo, sem cortar imagem. */
@media(max-width:900px){
  .hepha-sidebar.sidebar .hepha-brand{
    padding:8px 10px !important;
    justify-content:center !important;
  }

  .hepha-brand-symbol{
    width:50px !important;
    height:56px !important;
    flex-basis:50px !important;
  }

  .hepha-brand-wordmark{
    display:none !important;
  }
}


/* =========================================================
   SPRINT 2.4 — HS-03 + HS-04 UNIFICADOS
   ========================================================= */

#hs03GlobalHeader.hepha-header.hero{
  min-height:88px !important;
  height:88px !important;
  grid-template-columns:minmax(0,1fr) auto auto !important;
  gap:18px !important;
}

#hs03GlobalHeader .hs03-page-context{
  min-width:0;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#hs03GlobalHeader .hs03-page-copy{
  min-width:0;
  margin-top:7px;
}

#hs03GlobalHeader .hs03-page-copy h1{
  margin:0;
  color:#f7fafb;
  font-size:17px;
  line-height:1.05;
  font-weight:850;
  letter-spacing:-.01em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

#hs03GlobalHeader .hs03-page-copy p{
  margin:4px 0 0;
  color:#8fa1aa;
  font-size:8.5px;
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

#hs03GlobalHeader .hs03-sync{
  min-width:118px;
  height:42px;
  padding:0 12px;
  display:flex;
  align-items:center;
  gap:8px;
  color:#dce6ea;
  border-left:1px solid #2b414c;
  border-right:1px solid #2b414c;
}

#hs03GlobalHeader .hs03-sync-dot{
  width:8px;
  height:8px;
  flex:0 0 8px;
  border-radius:50%;
  background:#28c76f;
  box-shadow:0 0 0 3px rgba(40,199,111,.12);
}

#hs03GlobalHeader .hs03-sync strong{
  display:block;
  font-size:8.5px;
  font-weight:850;
  color:#eef4f6;
}

#hs03GlobalHeader .hs03-sync small{
  display:block;
  margin-top:3px;
  font-size:7px;
  color:#7f949d;
  white-space:nowrap;
}

.hepha-page-intro.hs04-retired{
  display:none !important;
}

/* HS-05 sobe imediatamente após HS-03 */
#hs05ModuleToolbar{
  margin-top:10px !important;
}

@media(max-width:1100px){
  #hs03GlobalHeader.hepha-header.hero{
    grid-template-columns:minmax(0,1fr) auto !important;
  }
  #hs03GlobalHeader .hs03-sync{
    display:none !important;
  }
}

@media(max-width:900px){
  #hs03GlobalHeader.hepha-header.hero{
    min-height:72px !important;
    height:72px !important;
  }
  #hs03GlobalHeader .hs03-page-copy h1{
    font-size:14px;
  }
  #hs03GlobalHeader .hs03-page-copy p{
    display:none;
  }
}


/* =========================================================
   SPRINT 2.4.1 — AJUSTES FINOS HS-03 / HS-05
   ========================================================= */

/* Mais respiro entre o Application Header e a toolbar */
#hs05ModuleToolbar{
  margin-top:18px !important;
}

/* Status de sincronização monocromático */
#hs03GlobalHeader .hs03-sync-dot{
  background:#f7f8f9 !important;
  box-shadow:0 0 0 3px rgba(247,248,249,.12) !important;
}

#hs03GlobalHeader .hs03-sync strong{
  color:#f7f8f9 !important;
}

#hs03GlobalHeader .hs03-sync small{
  color:#8fa1aa !important;
}


/* =========================================================
   SPRINT 2.4.2 — CORREÇÃO DO HS-03
   ========================================================= */

/* Mantém todos os subcomponentes dentro da barra. */
html body.norge-v43 main.app > #hs03GlobalHeader.hepha-header.hero{
  box-sizing:border-box !important;
  width:auto !important;
  min-width:0 !important;
  max-width:none !important;
  overflow:hidden !important;

  display:grid !important;
  grid-template-columns:minmax(0,1fr) 150px minmax(225px,auto) !important;
  align-items:center !important;
  gap:14px !important;
}

/* Contexto da página ocupa apenas o espaço disponível. */
#hs03GlobalHeader .hs03-page-context{
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
}

/* Bloco de sincronização permanece dentro da grade. */
#hs03GlobalHeader .hs03-sync{
  box-sizing:border-box !important;
  width:150px !important;
  min-width:150px !important;
  max-width:150px !important;
  overflow:hidden !important;
}

/* Ações e usuário ficam contidos e sem quebra. */
#hs03GlobalHeader .hepha-header-actions{
  box-sizing:border-box !important;
  min-width:225px !important;
  max-width:100% !important;
  height:100% !important;
  padding:0 !important;

  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  overflow:hidden !important;
}

#hs03GlobalHeader .hepha-icon-btn{
  flex:0 0 38px !important;
}

#hs03GlobalHeader .hepha-user{
  box-sizing:border-box !important;
  width:155px !important;
  min-width:155px !important;
  max-width:155px !important;
  flex:0 0 155px !important;
  overflow:hidden !important;
}

#hs03GlobalHeader .hepha-user > div:last-child{
  min-width:0 !important;
  overflow:hidden !important;
}

/* Texto herdado do HS-04: remove verde e aplica padrão branco/cinza. */
#hs03GlobalHeader .hs03-page-copy h1,
#hs03GlobalHeader #pageTitle,
#hs03GlobalHeader .hs03-page-copy h1 *,
#hs03GlobalHeader #pageTitle *{
  color:#f7f8f9 !important;
  -webkit-text-fill-color:#f7f8f9 !important;
}

#hs03GlobalHeader .hs03-page-copy p,
#hs03GlobalHeader #pageSub,
#hs03GlobalHeader .hs03-page-copy p *,
#hs03GlobalHeader #pageSub *{
  color:#9aabb3 !important;
  -webkit-text-fill-color:#9aabb3 !important;
}

/* Remove qualquer regra antiga de destaque verde no cabeçalho. */
#hs03GlobalHeader [style*="color: green"],
#hs03GlobalHeader [style*="color:#0"],
#hs03GlobalHeader .text-success,
#hs03GlobalHeader .success,
#hs03GlobalHeader .green{
  color:#f7f8f9 !important;
  -webkit-text-fill-color:#f7f8f9 !important;
}

/* Faixas intermediárias: reduz ações progressivamente, sem sair da barra. */
@media(max-width:1250px){
  html body.norge-v43 main.app > #hs03GlobalHeader.hepha-header.hero{
    grid-template-columns:minmax(0,1fr) 132px minmax(178px,auto) !important;
    gap:10px !important;
  }

  #hs03GlobalHeader .hs03-sync{
    width:132px !important;
    min-width:132px !important;
    max-width:132px !important;
    padding:0 9px !important;
  }

  #hs03GlobalHeader .hepha-user{
    width:110px !important;
    min-width:110px !important;
    max-width:110px !important;
    flex-basis:110px !important;
  }

  #hs03GlobalHeader .hepha-user strong{
    max-width:72px !important;
  }
}

@media(max-width:1050px){
  html body.norge-v43 main.app > #hs03GlobalHeader.hepha-header.hero{
    grid-template-columns:minmax(0,1fr) minmax(128px,auto) !important;
  }

  #hs03GlobalHeader .hs03-sync{
    display:none !important;
  }

  #hs03GlobalHeader .hepha-header-actions{
    min-width:128px !important;
  }
}

@media(max-width:900px){
  #hs03GlobalHeader .hepha-header-actions{
    min-width:90px !important;
  }

  #hs03GlobalHeader .hepha-user{
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
    flex-basis:38px !important;
    padding-left:0 !important;
    border-left:0 !important;
  }

  #hs03GlobalHeader .hepha-user > div:last-child{
    display:none !important;
  }
}


/* =========================================================
   SPRINT 2.5 — COMPONENTES CONGELADOS / SEM CADASTRO MESTRE
   ========================================================= */

/* HS-03 e HS-05, incluindo seus subcomponentes, estão congelados.
   Alterações futuras são permitidas somente para correção de bugs. */
#hs03GlobalHeader{
  --hepha-component-status: frozen;
}
#hs05ModuleToolbar{
  --hepha-component-status: frozen;
}

/* Garantia de que nenhum legado de Cadastro Mestre apareça. */
.loss-master-integration,
.master-data-page,
body.page-cadastro-mestre .master-data-page{
  display:none !important;
}

/* =========================================================
   SPRINT 2.5.1 — HS-05 GESTÃO DE PERDAS
   Remove Operador da interface e iguala a grade à Produção.
   Não altera dados, filtros internos ou cálculos.
   ========================================================= */

body[data-page="perdas"] #hs05ModuleToolbar [data-filter-name="operador"]{
  display:none !important;
}

@media(min-width:1451px){
  body[data-page="perdas"] #hs05ModuleToolbar .hs05-inline-grid{
    grid-template-columns:
      140px
      140px
      180px
      minmax(400px,1fr)
      240px
      200px !important;
  }

  body[data-page="perdas"] #hs05ModuleToolbar .hs05-inline-actions{
    width:200px !important;
    min-width:200px !important;
    display:flex !important;
    justify-content:flex-end !important;
  }

  body[data-page="perdas"] #hs05ModuleToolbar .hs05-active-count{
    position:static !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
  }
}

/* =========================================================
   SPRINT 2.5.5 — ADMINISTRAÇÃO COMPACTA
   ========================================================= */

body.page-admin #hs05ModuleToolbar,
body[data-page="admin"] #hs05ModuleToolbar,
body.page-admin .hepha-sidebar-footer .side-card,
body[data-page="admin"] .hepha-sidebar-footer .side-card,
body.page-admin #clearFilters,
body[data-page="admin"] #clearFilters{
  display:none !important;
}

body.page-admin #admin .admin-modern-hero,
body[data-page="admin"] #admin .admin-modern-hero{
  min-height:72px !important;
  padding:14px 20px !important;
  margin-bottom:12px !important;
  border-radius:16px !important;
}

body.page-admin #admin .admin-modern-hero h1,
body[data-page="admin"] #admin .admin-modern-hero h1{font-size:22px !important}

body.page-admin #admin .admin-modern-hero p,
body[data-page="admin"] #admin .admin-modern-hero p{
  margin-top:4px !important;
  font-size:11px !important;
}

body.page-admin #admin .admin-subnav,
body[data-page="admin"] #admin .admin-subnav{
  min-height:46px !important;
  margin-top:14px !important;
  margin-bottom:12px !important;
}

body.page-admin #admin .admin-status-grid,
body[data-page="admin"] #admin .admin-status-grid{
  gap:12px !important;
  margin-bottom:12px !important;
}

body.page-admin #admin .admin-status-card,
body[data-page="admin"] #admin .admin-status-card{
  min-height:70px !important;
  padding:10px 14px !important;
  gap:12px !important;
  border-radius:14px !important;
}

body.page-admin #admin .admin-status-icon,
body[data-page="admin"] #admin .admin-status-icon{
  width:40px !important;
  height:40px !important;
}

body.page-admin #admin .admin-status-icon .admin-svg,
body[data-page="admin"] #admin .admin-status-icon .admin-svg{
  width:21px !important;
  height:21px !important;
}

body.page-admin #admin .admin-status-card strong,
body[data-page="admin"] #admin .admin-status-card strong{font-size:18px !important}

body.page-admin #admin .admin-status-card span,
body[data-page="admin"] #admin .admin-status-card span{
  margin-top:3px !important;
  font-size:10px !important;
  line-height:1.2 !important;
}

body.page-admin #admin .admin-import-grid,
body[data-page="admin"] #admin .admin-import-grid{gap:14px !important}

body.page-admin #admin .admin-import-card,
body[data-page="admin"] #admin .admin-import-card{
  min-height:350px !important;
  padding:14px 16px !important;
  border-radius:16px !important;
}

body.page-admin #admin .admin-card-head,
body[data-page="admin"] #admin .admin-card-head{
  grid-template-columns:44px 1fr !important;
  gap:10px !important;
  min-height:48px !important;
}

body.page-admin #admin .admin-card-icon,
body[data-page="admin"] #admin .admin-card-icon{
  width:40px !important;
  height:40px !important;
}

body.page-admin #admin .admin-card-icon .admin-svg,
body[data-page="admin"] #admin .admin-card-icon .admin-svg{
  width:21px !important;
  height:21px !important;
}

body.page-admin #admin .admin-card-head h3,
body[data-page="admin"] #admin .admin-card-head h3{font-size:16px !important}

body.page-admin #admin .admin-card-head p,
body[data-page="admin"] #admin .admin-card-head p{
  margin-top:3px !important;
  font-size:10px !important;
  line-height:1.2 !important;
}

body.page-admin #admin .admin-separator,
body[data-page="admin"] #admin .admin-separator{margin:9px 0 10px !important}

body.page-admin #admin .admin-file-label,
body[data-page="admin"] #admin .admin-file-label{
  margin-bottom:6px !important;
  font-size:9px !important;
}

body.page-admin #admin .admin-file-box,
body[data-page="admin"] #admin .admin-file-box{
  min-height:54px !important;
  padding:8px 10px !important;
  gap:9px !important;
  margin-bottom:9px !important;
  border-radius:10px !important;
}

body.page-admin #admin .admin-file-ico .admin-svg,
body[data-page="admin"] #admin .admin-file-ico .admin-svg{
  width:20px !important;
  height:20px !important;
}

body.page-admin #admin .admin-file-box strong,
body[data-page="admin"] #admin .admin-file-box strong{font-size:11px !important}

body.page-admin #admin .admin-file-box span,
body[data-page="admin"] #admin .admin-file-box span{
  margin-top:2px !important;
  font-size:9px !important;
}

body.page-admin #admin .admin-upload-box,
body[data-page="admin"] #admin .admin-upload-box{
  min-height:46px !important;
  padding:8px 10px !important;
  margin-bottom:9px !important;
  border-radius:10px !important;
}

body.page-admin #admin .admin-upload-box input[type="file"],
body[data-page="admin"] #admin .admin-upload-box input[type="file"]{font-size:10px !important}

body.page-admin #admin .admin-modern-btn,
body[data-page="admin"] #admin .admin-modern-btn{
  min-height:42px !important;
  margin-top:0 !important;
  border-radius:10px !important;
  font-size:11px !important;
}

body.page-admin #admin .admin-file-note,
body[data-page="admin"] #admin .admin-file-note{
  margin-top:7px !important;
  font-size:9px !important;
}

body.page-admin #admin .import-result,
body[data-page="admin"] #admin .import-result{
  min-height:30px !important;
  margin-top:6px !important;
  font-size:10px !important;
  line-height:1.25 !important;
}

body.page-admin #admin .admin-important-box,
body[data-page="admin"] #admin .admin-important-box{
  min-height:52px !important;
  margin-top:12px !important;
  padding:9px 14px !important;
  gap:10px !important;
  font-size:10px !important;
}

/* SPRINT 2.5.8 — cabeçalho sem status, notificações e ajuda. */
#hs03GlobalHeader.hepha-header.hero{
  grid-template-columns:minmax(0,1fr) auto !important;
}

#hs03GlobalHeader .hepha-header-actions{
  justify-self:end !important;
}

/* SPRINT 2.5.9 — Administração com as cores do logo e usuário à direita. */
#hs03GlobalHeader .hepha-header-actions{
  width:auto !important;
  min-width:0 !important;
  margin-left:auto !important;
  justify-self:end !important;
  justify-content:flex-end !important;
}

#hs03GlobalHeader .hepha-user{
  margin-left:auto !important;
  margin-right:0 !important;
}

body.page-admin,
body[data-page="admin"]{
  --hepha-admin-navy:#07131c;
  --hepha-admin-navy-soft:#102832;
  --hepha-admin-orange:#ff7a18;
  --hepha-admin-orange-soft:#fff3e8;
}

body.page-admin .sidebar,
body[data-page="admin"] .sidebar{
  background:#07131c !important;
}

body.page-admin #admin .admin-subnav,
body[data-page="admin"] #admin .admin-subnav{
  background:#fff !important;
  border-color:#d8e0e6 !important;
}

body.page-admin #admin .admin-subtab,
body[data-page="admin"] #admin .admin-subtab{
  color:#102832 !important;
}

body.page-admin #admin .admin-subtab:not(.active):hover,
body[data-page="admin"] #admin .admin-subtab:not(.active):hover{
  background:#fff7f0 !important;
}

body.page-admin #admin .admin-subtab.active,
body[data-page="admin"] #admin .admin-subtab.active{
  color:#fff !important;
  background:linear-gradient(135deg,#102832 0%,#07131c 100%) !important;
  box-shadow:inset 0 -3px 0 #ff7a18,0 6px 14px rgba(7,19,28,.16) !important;
}

body.page-admin #admin .admin-subtab .subtab-ico,
body[data-page="admin"] #admin .admin-subtab .subtab-ico{
  color:#ff7a18 !important;
  background:#fff3e8 !important;
}

body.page-admin #admin .admin-subtab.active .subtab-ico,
body[data-page="admin"] #admin .admin-subtab.active .subtab-ico{
  color:#07131c !important;
  background:#ff7a18 !important;
}

body.page-admin #admin .admin-status-card,
body.page-admin #admin .admin-import-card,
body.page-admin #admin .admin-config-card,
body[data-page="admin"] #admin .admin-status-card,
body[data-page="admin"] #admin .admin-import-card,
body[data-page="admin"] #admin .admin-config-card{
  border-color:#d8e0e6 !important;
}

body.page-admin #admin .admin-status-icon,
body.page-admin #admin .admin-card-icon,
body[data-page="admin"] #admin .admin-status-icon,
body[data-page="admin"] #admin .admin-card-icon{
  color:#ff7a18 !important;
  background:#fff3e8 !important;
}

body.page-admin #admin .admin-status-value,
body.page-admin #admin .admin-import-card h3,
body.page-admin #admin .admin-config-card h3,
body.page-admin #admin .conv-v331-header h3,
body[data-page="admin"] #admin .admin-status-value,
body[data-page="admin"] #admin .admin-import-card h3,
body[data-page="admin"] #admin .admin-config-card h3,
body[data-page="admin"] #admin .conv-v331-header h3{
  color:#07131c !important;
}

body.page-admin #admin .admin-file-box,
body[data-page="admin"] #admin .admin-file-box{
  background:linear-gradient(135deg,#fffaf5 0%,#fff3e8 100%) !important;
  border-color:#ffd2ad !important;
}

body.page-admin #admin .admin-file-box svg,
body.page-admin #admin .admin-file-icon,
body[data-page="admin"] #admin .admin-file-box svg,
body[data-page="admin"] #admin .admin-file-icon{
  color:#ff7a18 !important;
}

body.page-admin #admin .admin-modern-btn,
body.page-admin #admin .conv-v331-main-btn,
body[data-page="admin"] #admin .admin-modern-btn,
body[data-page="admin"] #admin .conv-v331-main-btn{
  color:#fff !important;
  background:linear-gradient(135deg,#102832 0%,#07131c 100%) !important;
  border-color:#ff7a18 !important;
  box-shadow:0 5px 12px rgba(7,19,28,.16) !important;
}

body.page-admin #admin .admin-important-box,
body[data-page="admin"] #admin .admin-important-box{
  color:#102832 !important;
  background:#fff7f0 !important;
  border-color:#ffd2ad !important;
}

/* SPRINT 2.5.10 — proporções compactas da Administração. */
body.page-admin #admin .admin-subnav,
body[data-page="admin"] #admin .admin-subnav{
  min-height:40px !important;
  padding:6px 8px !important;
  margin-top:10px !important;
  margin-bottom:10px !important;
  border-radius:12px !important;
}

body.page-admin #admin .admin-subtab,
body[data-page="admin"] #admin .admin-subtab{
  min-height:36px !important;
  padding:7px 14px !important;
  font-size:11px !important;
  border-radius:9px !important;
}

body.page-admin #admin .admin-subtab .subtab-ico,
body[data-page="admin"] #admin .admin-subtab .subtab-ico{
  width:26px !important;
  height:26px !important;
}

body.page-admin #admin .admin-status-grid,
body[data-page="admin"] #admin .admin-status-grid{
  gap:9px !important;
  margin-bottom:9px !important;
}

body.page-admin #admin .admin-status-card,
body[data-page="admin"] #admin .admin-status-card{
  min-height:56px !important;
  padding:7px 11px !important;
  gap:9px !important;
  border-radius:11px !important;
}

body.page-admin #admin .admin-status-icon,
body[data-page="admin"] #admin .admin-status-icon{
  width:34px !important;
  height:34px !important;
}

body.page-admin #admin .admin-status-card strong,
body[data-page="admin"] #admin .admin-status-card strong{
  font-size:15px !important;
}

body.page-admin #admin .admin-import-grid,
body[data-page="admin"] #admin .admin-import-grid{
  gap:10px !important;
}

body.page-admin #admin .admin-import-card,
body[data-page="admin"] #admin .admin-import-card{
  min-height:0 !important;
  padding:11px 13px !important;
  border-radius:12px !important;
}

body.page-admin #admin .admin-card-head,
body[data-page="admin"] #admin .admin-card-head{
  grid-template-columns:36px 1fr !important;
  min-height:38px !important;
  gap:8px !important;
}

body.page-admin #admin .admin-card-icon,
body[data-page="admin"] #admin .admin-card-icon{
  width:34px !important;
  height:34px !important;
}

body.page-admin #admin .admin-card-head h3,
body[data-page="admin"] #admin .admin-card-head h3{
  font-size:14px !important;
}

body.page-admin #admin .admin-separator,
body[data-page="admin"] #admin .admin-separator{
  margin:6px 0 7px !important;
}

body.page-admin #admin .admin-file-box,
body[data-page="admin"] #admin .admin-file-box{
  min-height:42px !important;
  padding:6px 8px !important;
  margin-bottom:6px !important;
}

body.page-admin #admin .admin-upload-box,
body[data-page="admin"] #admin .admin-upload-box{
  min-height:38px !important;
  padding:6px 8px !important;
  margin-bottom:6px !important;
}

body.page-admin #admin .admin-modern-btn,
body[data-page="admin"] #admin .admin-modern-btn{
  width:auto !important;
  min-width:150px !important;
  min-height:34px !important;
  padding:7px 13px !important;
  font-size:10px !important;
  border-radius:8px !important;
  align-self:flex-start !important;
}

body.page-admin #admin .admin-modern-btn .admin-svg,
body[data-page="admin"] #admin .admin-modern-btn .admin-svg{
  width:15px !important;
  height:15px !important;
}

body.page-admin #admin .import-result,
body[data-page="admin"] #admin .import-result{
  min-height:22px !important;
  margin-top:4px !important;
  padding:3px 0 !important;
}

body.page-admin #admin .admin-important-box,
body[data-page="admin"] #admin .admin-important-box{
  min-height:40px !important;
  margin-top:8px !important;
  padding:7px 11px !important;
}

body.page-admin #admin .admin-validation,
body[data-page="admin"] #admin .admin-validation{
  min-height:0 !important;
  padding:10px 13px !important;
  margin-top:9px !important;
  border-radius:12px !important;
}

body.page-admin #admin .admin-validation h3,
body[data-page="admin"] #admin .admin-validation h3{
  margin:0 0 2px !important;
  font-size:14px !important;
}

body.page-admin #admin .admin-validation > p,
body[data-page="admin"] #admin .admin-validation > p{
  margin:0 0 7px !important;
  font-size:10px !important;
}

body.page-admin #admin .validation-grid,
body[data-page="admin"] #admin .validation-grid{
  gap:6px !important;
  margin:0 !important;
}

body.page-admin #admin .validation-grid > div,
body[data-page="admin"] #admin .validation-grid > div{
  min-height:30px !important;
  padding:6px 8px !important;
  font-size:10px !important;
  border-radius:7px !important;
}

body.page-admin #admin .history-title,
body[data-page="admin"] #admin .history-title{
  margin:8px 0 4px !important;
  font-size:11px !important;
}

body.page-admin #admin .import-history,
body[data-page="admin"] #admin .import-history{
  min-height:34px !important;
  max-height:84px !important;
  padding:6px 8px !important;
  overflow-y:auto !important;
  font-size:9px !important;
  border-radius:7px !important;
}

body.page-admin #admin .import-history .hist-row,
body[data-page="admin"] #admin .import-history .hist-row{
  padding:5px 3px !important;
  font-size:9px !important;
}

@media (max-width:760px){
  body.page-admin #admin .admin-modern-btn,
  body[data-page="admin"] #admin .admin-modern-btn{
    width:100% !important;
  }
}

/* SPRINT 2.5.12 — relatório de Refugo sem referência de família. */
body.page-admin #admin .admin-report-btn,
body[data-page="admin"] #admin .admin-report-btn{
  margin:5px 0 0 6px !important;
  padding:5px 9px !important;
  border:1px solid #ff7a18 !important;
  border-radius:7px !important;
  color:#fff !important;
  background:#07131c !important;
  font-size:9px !important;
  font-weight:700 !important;
  cursor:pointer !important;
}

body.page-admin #admin .admin-report-btn:hover,
body[data-page="admin"] #admin .admin-report-btn:hover{
  background:#102832 !important;
}

/* SPRINT 2.5.13 — Gestão de Perdas | meta configurável por família. */
body.show-ref #refugo .ref-target-panel{
  min-height:0 !important;
  padding:16px 18px !important;
}

body.show-ref #refugo .ref-target-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:18px !important;
  margin-bottom:12px !important;
}

body.show-ref #refugo .ref-target-head h3{
  color:#07131c !important;
}

body.show-ref #refugo .ref-target-head p{
  margin-bottom:0 !important;
}

body.show-ref #refugo .ref-meta-entry{
  flex:0 0 auto !important;
  display:grid !important;
  grid-template-columns:auto auto !important;
  align-items:center !important;
  gap:7px !important;
  padding:5px 7px 5px 10px !important;
  border:1px solid #dbe3e8 !important;
  border-radius:9px !important;
  background:#f8fafb !important;
  color:#667783 !important;
  font-size:10px !important;
  font-weight:700 !important;
}

body.show-ref #refugo .ref-meta-value{
  display:flex !important;
  align-items:center !important;
  gap:2px !important;
  color:#07131c !important;
}

body.show-ref #refugo #refMetaInput{
  width:45px !important;
  height:25px !important;
  padding:2px 4px !important;
  border:1px solid #cbd6dc !important;
  border-radius:6px !important;
  outline:none !important;
  background:#fff !important;
  color:#07131c !important;
  font-size:11px !important;
  font-weight:800 !important;
  text-align:right !important;
}

body.show-ref #refugo #refMetaInput:focus{
  border-color:#ff7a18 !important;
  box-shadow:0 0 0 2px rgba(255,122,24,.12) !important;
}

body.show-ref #refugo .ref-target-summary{
  display:grid !important;
  grid-template-columns:1.05fr .9fr 1.2fr 1fr !important;
  gap:8px !important;
  padding:9px 11px !important;
  margin-bottom:11px !important;
  border:1px solid #dfe7eb !important;
  border-left:4px solid #17845b !important;
  border-radius:10px !important;
  background:#fbfcfd !important;
}

body.show-ref #refugo .ref-target-summary.warning{border-left-color:#e7a21a !important}
body.show-ref #refugo .ref-target-summary.danger{border-left-color:#d64a4a !important}

body.show-ref #refugo .ref-target-summary > div{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:2px !important;
}

body.show-ref #refugo .ref-target-summary span{
  color:#71818b !important;
  font-size:9px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.035em !important;
}

body.show-ref #refugo .ref-target-summary strong{
  color:#07131c !important;
  font-size:19px !important;
  line-height:1.05 !important;
}

body.show-ref #refugo .ref-target-summary b{
  overflow:hidden !important;
  color:#102832 !important;
  font-size:11px !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

body.show-ref #refugo .ref-family-target-list{
  display:grid !important;
  gap:5px !important;
  max-height:255px !important;
  overflow-y:auto !important;
  padding-right:4px !important;
}

body.show-ref #refugo .ref-family-target-row{
  display:grid !important;
  grid-template-columns:minmax(135px,1.1fr) minmax(150px,2fr) 62px !important;
  align-items:center !important;
  gap:11px !important;
  min-height:32px !important;
  padding:4px 7px !important;
  border-radius:8px !important;
}

body.show-ref #refugo .ref-family-target-row:nth-child(odd){background:#f8fafb !important}

body.show-ref #refugo .ref-family-target-label{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
}

body.show-ref #refugo .ref-family-target-label span{
  overflow:hidden !important;
  color:#1d303a !important;
  font-size:10px !important;
  font-weight:800 !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

body.show-ref #refugo .ref-family-target-label small{
  color:#81909a !important;
  font-size:8px !important;
}

body.show-ref #refugo .ref-family-target-track{
  position:relative !important;
  height:9px !important;
  overflow:visible !important;
  border-radius:999px !important;
  background:#e9eef1 !important;
}

body.show-ref #refugo .ref-family-target-track i{
  display:block !important;
  height:100% !important;
  min-width:2px !important;
  border-radius:999px !important;
  background:#17845b !important;
}

body.show-ref #refugo .ref-family-target-track i.warning{background:#e7a21a !important}
body.show-ref #refugo .ref-family-target-track i.danger{background:#d64a4a !important}

body.show-ref #refugo .ref-family-target-track em{
  position:absolute !important;
  top:-4px !important;
  width:2px !important;
  height:17px !important;
  border-radius:2px !important;
  background:#ff7a18 !important;
  transform:translateX(-1px) !important;
  box-shadow:0 0 0 2px rgba(255,255,255,.8) !important;
}

body.show-ref #refugo .ref-family-target-rate{
  padding:4px 6px !important;
  border-radius:7px !important;
  color:#146c4d !important;
  background:#eaf6f0 !important;
  font-size:10px !important;
  font-weight:900 !important;
  text-align:center !important;
}

body.show-ref #refugo .ref-family-target-rate.warning{
  color:#875d08 !important;
  background:#fff5d9 !important;
}

body.show-ref #refugo .ref-family-target-rate.danger{
  color:#a52f2f !important;
  background:#fdecec !important;
}

@media (max-width:760px){
  body.show-ref #refugo .ref-target-head{align-items:stretch !important;flex-direction:column !important}
  body.show-ref #refugo .ref-meta-entry{align-self:flex-end !important}
  body.show-ref #refugo .ref-target-summary{grid-template-columns:1fr 1fr !important}
  body.show-ref #refugo .ref-family-target-row{grid-template-columns:minmax(105px,1fr) minmax(100px,1.4fr) 55px !important;gap:7px !important}
}

/* SPRINT 2.5.14 — Pareto de defeitos com dois indicadores percentuais. */
body.show-ref #refugo .ref-defect-panel{
  min-height:0 !important;
  padding:16px !important;
}

body.show-ref #refugo .ref-defect-head,
body.show-ref #refugo .ref-defect-row{
  display:grid !important;
  grid-template-columns:minmax(125px,1.25fr) minmax(105px,1fr) 64px !important;
  align-items:center !important;
  gap:9px !important;
}

body.show-ref #refugo .ref-defect-head{
  padding:0 7px 6px !important;
  border-bottom:1px solid #e3e9ed !important;
  color:#7a8992 !important;
  font-size:8px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.035em !important;
}

body.show-ref #refugo .ref-defect-head span:nth-child(n+2){text-align:right !important}

body.show-ref #refugo .ref-defect-row{
  min-height:39px !important;
  padding:5px 7px !important;
  border-bottom:1px solid #edf1f3 !important;
}

body.show-ref #refugo .ref-defect-row:last-child{border-bottom:0 !important}

body.show-ref #refugo .ref-defect-name{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:21px minmax(0,1fr) !important;
  align-items:center !important;
  gap:7px !important;
}

body.show-ref #refugo .ref-defect-name > b{
  width:21px !important;
  height:21px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:6px !important;
  color:#ff7a18 !important;
  background:#fff3e8 !important;
  font-size:9px !important;
}

body.show-ref #refugo .ref-defect-name > span{
  min-width:0 !important;
  overflow:hidden !important;
  color:#1c303a !important;
  font-size:10px !important;
  font-weight:800 !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

body.show-ref #refugo .ref-defect-name small{
  display:block !important;
  overflow:hidden !important;
  margin-top:2px !important;
  color:#81909a !important;
  font-size:8px !important;
  font-weight:600 !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

body.show-ref #refugo .ref-defect-share{
  display:grid !important;
  grid-template-columns:minmax(44px,1fr) 43px !important;
  align-items:center !important;
  gap:6px !important;
}

body.show-ref #refugo .ref-defect-share > div{
  height:7px !important;
  overflow:hidden !important;
  border-radius:999px !important;
  background:#e9eef1 !important;
}

body.show-ref #refugo .ref-defect-share i{
  display:block !important;
  height:100% !important;
  min-width:2px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#ff9a4d,#ff7a18) !important;
}

body.show-ref #refugo .ref-defect-share strong{
  color:#334a56 !important;
  font-size:9px !important;
  text-align:right !important;
}

body.show-ref #refugo .ref-defect-impact{
  padding:4px 5px !important;
  border-radius:7px !important;
  color:#a52f2f !important;
  background:#fdecec !important;
  font-size:9px !important;
  font-weight:900 !important;
  text-align:center !important;
}

@media (max-width:760px){
  body.show-ref #refugo .ref-defect-head,
  body.show-ref #refugo .ref-defect-row{
    grid-template-columns:minmax(105px,1.2fr) minmax(85px,1fr) 57px !important;
    gap:6px !important;
  }
  body.show-ref #refugo .ref-defect-share{grid-template-columns:minmax(28px,1fr) 40px !important}
}

/* SPRINT 2.5.16 — maior legibilidade das famílias no card de meta. */
body.show-ref #refugo .ref-family-target-row{
  min-height:39px !important;
  padding-top:5px !important;
  padding-bottom:5px !important;
}

body.show-ref #refugo .ref-family-target-label span{
  color:#102832 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  letter-spacing:.005em !important;
}

body.show-ref #refugo .ref-family-target-label small{
  margin-top:3px !important;
  color:#536a76 !important;
  font-size:9px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

/* SPRINT 2.5.17 — maior legibilidade no Pareto de defeitos. */
body.show-ref #refugo .ref-defect-row{
  min-height:44px !important;
  padding-top:6px !important;
  padding-bottom:6px !important;
}

body.show-ref #refugo .ref-defect-name > span{
  color:#102832 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  letter-spacing:.005em !important;
}

body.show-ref #refugo .ref-defect-name small{
  margin-top:3px !important;
  color:#536a76 !important;
  font-size:9px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

body.show-ref #refugo .ref-defect-share strong,
body.show-ref #refugo .ref-defect-impact{
  font-size:10px !important;
}

/* SPRINT 2.5.18 — histórico de seis meses da meta por família. */
body.show-ref #refugo .ref-target-history-panel{
  min-height:0 !important;
  padding:16px 18px !important;
}

body.show-ref #refugo .ref-history-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
  margin-bottom:11px !important;
}

body.show-ref #refugo .ref-history-head h3{
  color:#07131c !important;
}

body.show-ref #refugo .ref-history-head p{
  margin-bottom:0 !important;
}

body.show-ref #refugo .ref-history-legend{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  flex:0 0 auto !important;
}

body.show-ref #refugo .ref-history-legend span{
  padding:4px 7px !important;
  border-radius:6px !important;
  font-size:8px !important;
  font-weight:800 !important;
}

body.show-ref #refugo .ref-history-legend .ok{color:#146c4d !important;background:#eaf6f0 !important}
body.show-ref #refugo .ref-history-legend .warning{color:#875d08 !important;background:#fff5d9 !important}
body.show-ref #refugo .ref-history-legend .danger{color:#a52f2f !important;background:#fdecec !important}

body.show-ref #refugo .ref-target-history{
  overflow-x:auto !important;
  padding-bottom:3px !important;
}

body.show-ref #refugo .ref-history-table{
  min-width:660px !important;
  display:grid !important;
  gap:4px !important;
}

body.show-ref #refugo .ref-history-header,
body.show-ref #refugo .ref-history-row{
  display:grid !important;
  grid-template-columns:minmax(155px,1.3fr) repeat(6,minmax(62px,.72fr)) !important;
  align-items:center !important;
  gap:5px !important;
}

body.show-ref #refugo .ref-history-header{
  padding:0 6px 5px !important;
  border-bottom:1px solid #dfe7eb !important;
  color:#778891 !important;
  font-size:8px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
}

body.show-ref #refugo .ref-history-header b{
  text-align:center !important;
}

body.show-ref #refugo .ref-history-row{
  min-height:41px !important;
  padding:4px 6px !important;
  border-radius:8px !important;
}

body.show-ref #refugo .ref-history-row:nth-child(odd){background:#f8fafb !important}

body.show-ref #refugo .ref-history-family{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
}

body.show-ref #refugo .ref-history-family strong{
  overflow:hidden !important;
  color:#102832 !important;
  font-size:11px !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

body.show-ref #refugo .ref-history-family small{
  overflow:hidden !important;
  margin-top:3px !important;
  color:#536a76 !important;
  font-size:8px !important;
  font-weight:700 !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

body.show-ref #refugo .ref-history-cell{
  min-height:27px !important;
  display:grid !important;
  place-items:center !important;
  padding:4px !important;
  border:1px solid transparent !important;
  border-radius:7px !important;
  font-size:9px !important;
  font-weight:900 !important;
}

body.show-ref #refugo .ref-history-cell.ok{color:#146c4d !important;background:#eaf6f0 !important;border-color:#d4eee2 !important}
body.show-ref #refugo .ref-history-cell.warning{color:#875d08 !important;background:#fff5d9 !important;border-color:#f6e7b7 !important}
body.show-ref #refugo .ref-history-cell.danger{color:#a52f2f !important;background:#fdecec !important;border-color:#f4d5d5 !important}
body.show-ref #refugo .ref-history-cell.empty-cell{color:#9aa7ae !important;background:#f2f5f6 !important;border-color:#e8edef !important}

@media (max-width:760px){
  body.show-ref #refugo .ref-history-head{flex-direction:column !important}
  body.show-ref #refugo .ref-history-legend{align-self:flex-end !important}
}

/* SPRINT 2.5.19 — legibilidade do histórico da meta por família. */
body.show-ref #refugo .ref-history-row{
  min-height:48px !important;
  padding-top:6px !important;
  padding-bottom:6px !important;
}

body.show-ref #refugo .ref-history-family strong{
  color:#102832 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  letter-spacing:.005em !important;
}

body.show-ref #refugo .ref-history-family small{
  margin-top:4px !important;
  color:#536a76 !important;
  font-size:9px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}

body.show-ref #refugo .ref-history-cell{
  min-height:30px !important;
  font-size:10px !important;
  text-shadow:0 0 0 currentColor !important;
}

body.show-ref #refugo .ref-history-header{
  font-size:9px !important;
}

/* SPRINT 2.5.20 — gráfico de área da evolução mensal do refugo. */
body.show-ref #refugo .ref-evolution-panel{
  min-height:0 !important;
  padding:16px !important;
}

body.show-ref #refugo .ref-area-chart{
  position:relative !important;
  min-height:225px !important;
}

body.show-ref #refugo .ref-area-summary{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  margin:-3px 0 2px !important;
}

body.show-ref #refugo .ref-area-summary span{
  padding:4px 7px !important;
  border:1px solid #e0e7eb !important;
  border-radius:7px !important;
  color:#6f808a !important;
  background:#fafcfd !important;
  font-size:8px !important;
  font-weight:700 !important;
}

body.show-ref #refugo .ref-area-summary b{
  margin-right:3px !important;
  color:#102832 !important;
  font-size:10px !important;
}

body.show-ref #refugo .ref-area-chart svg{
  display:block !important;
  width:100% !important;
  height:220px !important;
  overflow:visible !important;
}

body.show-ref #refugo .ref-area-grid{
  stroke:#e8edef !important;
  stroke-width:1 !important;
  stroke-dasharray:3 5 !important;
}

body.show-ref #refugo .ref-area-ylabel{
  fill:#83929a !important;
  font-size:8px !important;
  font-weight:700 !important;
  text-anchor:end !important;
}

body.show-ref #refugo .ref-area-month{
  fill:#536a76 !important;
  font-size:9px !important;
  font-weight:800 !important;
  text-anchor:middle !important;
}

body.show-ref #refugo .ref-area-fill{
  fill:url(#refAreaGradientV820) !important;
}

body.show-ref #refugo .ref-area-line{
  fill:none !important;
  stroke:url(#refLineGradientV820) !important;
  stroke-width:4 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  filter:drop-shadow(0 3px 3px rgba(255,122,24,.16)) !important;
}

body.show-ref #refugo .ref-area-meta{
  stroke:#ff7a18 !important;
  stroke-width:2 !important;
  stroke-dasharray:6 5 !important;
}

body.show-ref #refugo .ref-area-meta-label{
  fill:#c95d0b !important;
  font-size:8px !important;
  font-weight:900 !important;
  text-anchor:end !important;
}

body.show-ref #refugo .ref-area-point circle{
  stroke:#fff !important;
  stroke-width:3 !important;
  fill:#17845b !important;
  filter:drop-shadow(0 2px 2px rgba(7,19,28,.16)) !important;
}

body.show-ref #refugo .ref-area-point.warning circle{fill:#e7a21a !important}
body.show-ref #refugo .ref-area-point.danger circle{fill:#d64a4a !important}

body.show-ref #refugo .ref-area-point text{
  fill:#263c47 !important;
  font-size:9px !important;
  font-weight:900 !important;
  text-anchor:middle !important;
  paint-order:stroke !important;
  stroke:#fff !important;
  stroke-width:3px !important;
}

@media (max-width:760px){
  body.show-ref #refugo .ref-area-summary{justify-content:flex-start !important;flex-wrap:wrap !important}
  body.show-ref #refugo .ref-area-chart{overflow-x:auto !important}
  body.show-ref #refugo .ref-area-chart svg{min-width:590px !important}
}

/* SPRINT 2.5.21 — Status da Meta e Evolução em divisão 50/50. */
body.show-ref #refugo .ref-top-row{
  grid-column:1 / -1 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  align-items:stretch !important;
  gap:16px !important;
}

body.show-ref #refugo .ref-top-row > .panel{
  grid-column:auto !important;
  width:auto !important;
  height:100% !important;
  margin:0 !important;
}

body.show-ref #refugo .ref-top-row .ref-target-panel,
body.show-ref #refugo .ref-top-row .ref-evolution-panel{
  min-width:0 !important;
}

@media (max-width:1050px){
  body.show-ref #refugo .ref-top-row{
    grid-template-columns:1fr !important;
  }
}

/* SPRINT 2.6.0 — Administração | Parâmetros Financeiros. */
body.page-admin #admin .fin-param-shell,
body[data-page="admin"] #admin .fin-param-shell{
  display:grid !important;
  gap:10px !important;
}

body.page-admin #admin .fin-param-header,
body[data-page="admin"] #admin .fin-param-header{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  padding:12px 14px !important;
  border:1px solid #dbe3e8 !important;
  border-radius:12px !important;
  background:#fff !important;
}

body.page-admin #admin .fin-header-actions,
body[data-page="admin"] #admin .fin-header-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}

body.page-admin #admin .fin-param-header h3,
body[data-page="admin"] #admin .fin-param-header h3{
  margin:0 !important;
  color:#07131c !important;
  font-size:17px !important;
}

body.page-admin #admin .fin-param-header p,
body[data-page="admin"] #admin .fin-param-header p{
  margin:3px 0 0 !important;
  color:#687984 !important;
  font-size:10px !important;
}

body.page-admin #admin .fin-kpi-grid,
body[data-page="admin"] #admin .fin-kpi-grid{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:8px !important;
}

body.page-admin #admin .fin-kpi-grid > div,
body[data-page="admin"] #admin .fin-kpi-grid > div{
  min-height:54px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:8px 11px !important;
  border:1px solid #dfe6ea !important;
  border-radius:10px !important;
  background:#fff !important;
}

body.page-admin #admin .fin-kpi-grid span,
body[data-page="admin"] #admin .fin-kpi-grid span{
  color:#667985 !important;
  font-size:9px !important;
  font-weight:700 !important;
}

body.page-admin #admin .fin-kpi-grid strong,
body[data-page="admin"] #admin .fin-kpi-grid strong{
  color:#ff7a18 !important;
  font-size:18px !important;
}

body.page-admin #admin .fin-inner-tabs,
body[data-page="admin"] #admin .fin-inner-tabs{
  display:flex !important;
  gap:8px !important;
  padding:7px !important;
  border:1px solid #dbe3e8 !important;
  border-radius:12px !important;
  background:#f4f7f8 !important;
}

body.page-admin #admin .fin-inner-tabs button,
body[data-page="admin"] #admin .fin-inner-tabs button{
  flex:1 !important;
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  padding:8px 12px !important;
  border:1px solid #cfd9df !important;
  border-radius:9px !important;
  color:#314954 !important;
  background:#fff !important;
  box-shadow:0 2px 5px rgba(7,19,28,.07) !important;
  font-size:10px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease !important;
}

body.page-admin #admin .fin-inner-tabs button:hover,
body[data-page="admin"] #admin .fin-inner-tabs button:hover{
  border-color:#ff7a18 !important;
  box-shadow:0 4px 10px rgba(7,19,28,.11) !important;
  transform:translateY(-1px) !important;
}

body.page-admin #admin .fin-tab-icon,
body[data-page="admin"] #admin .fin-tab-icon{
  width:24px !important;
  height:24px !important;
  display:inline-flex !important;
  flex:0 0 24px !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:7px !important;
  color:#c85d0d !important;
  background:#fff1e7 !important;
  font-size:12px !important;
  font-weight:900 !important;
}

body.page-admin #admin .fin-inner-tabs button.active,
body[data-page="admin"] #admin .fin-inner-tabs button.active{
  color:#fff !important;
  background:#07131c !important;
  border-color:#07131c !important;
  box-shadow:inset 0 -3px 0 #ff7a18,0 4px 10px rgba(7,19,28,.16) !important;
}

body.page-admin #admin .fin-inner-tabs button.active .fin-tab-icon,
body[data-page="admin"] #admin .fin-inner-tabs button.active .fin-tab-icon{
  color:#07131c !important;
  background:#ff8a32 !important;
}

body.page-admin #admin .fin-inner-panel,
body[data-page="admin"] #admin .fin-inner-panel{
  display:none !important;
}

body.page-admin #admin .fin-inner-panel.active,
body[data-page="admin"] #admin .fin-inner-panel.active{
  display:grid !important;
  gap:10px !important;
}

body.page-admin #admin .fin-two-column,
body[data-page="admin"] #admin .fin-two-column{
  display:grid !important;
  grid-template-columns:minmax(300px,.85fr) minmax(0,1.55fr) !important;
  gap:10px !important;
  align-items:start !important;
}

body.page-admin #admin .fin-form-card,
body.page-admin #admin .fin-report-card,
body[data-page="admin"] #admin .fin-form-card,
body[data-page="admin"] #admin .fin-report-card{
  min-width:0 !important;
  padding:12px !important;
  border:1px solid #dbe3e8 !important;
  border-radius:11px !important;
  background:#fff !important;
}

body.page-admin #admin .fin-history-card,
body[data-page="admin"] #admin .fin-history-card{
  padding-top:10px !important;
}

body.page-admin #admin .fin-card-title,
body[data-page="admin"] #admin .fin-card-title{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:10px !important;
  margin-bottom:9px !important;
}

body.page-admin #admin .fin-card-title h4,
body[data-page="admin"] #admin .fin-card-title h4{
  margin:0 !important;
  color:#102832 !important;
  font-size:13px !important;
}

body.page-admin #admin .fin-card-title p,
body[data-page="admin"] #admin .fin-card-title p{
  margin:2px 0 0 !important;
  color:#71818b !important;
  font-size:9px !important;
}

body.page-admin #admin .fin-form-grid,
body[data-page="admin"] #admin .fin-form-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:8px !important;
}

body.page-admin #admin .fin-field,
body[data-page="admin"] #admin .fin-field{
  min-width:0 !important;
  display:grid !important;
  gap:4px !important;
  color:#526976 !important;
  font-size:9px !important;
  font-weight:800 !important;
}

body.page-admin #admin .fin-field-wide,
body[data-page="admin"] #admin .fin-field-wide{
  grid-column:1 / -1 !important;
  margin-bottom:8px !important;
}

body.page-admin #admin .fin-field input,
body.page-admin #admin .fin-field select,
body.page-admin #admin .fin-search input,
body[data-page="admin"] #admin .fin-field input,
body[data-page="admin"] #admin .fin-field select,
body[data-page="admin"] #admin .fin-search input{
  width:100% !important;
  min-height:34px !important;
  box-sizing:border-box !important;
  padding:6px 8px !important;
  border:1px solid #cfd9df !important;
  border-radius:7px !important;
  outline:none !important;
  color:#152a35 !important;
  background:#fff !important;
  font-size:10px !important;
}

body.page-admin #admin .fin-field input:focus,
body.page-admin #admin .fin-field select:focus,
body.page-admin #admin .fin-search input:focus,
body[data-page="admin"] #admin .fin-field input:focus,
body[data-page="admin"] #admin .fin-field select:focus,
body[data-page="admin"] #admin .fin-search input:focus{
  border-color:#ff7a18 !important;
  box-shadow:0 0 0 2px rgba(255,122,24,.12) !important;
}

body.page-admin #admin .fin-field input[readonly],
body[data-page="admin"] #admin .fin-field input[readonly]{background:#f3f6f7 !important;color:#60727c !important}

body.page-admin #admin .fin-field small,
body[data-page="admin"] #admin .fin-field small{
  color:#8a979e !important;
  font-size:8px !important;
  font-weight:600 !important;
}

body.page-admin #admin .fin-percent-input,
body[data-page="admin"] #admin .fin-percent-input{
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
}

body.page-admin #admin .fin-percent-input b,
body[data-page="admin"] #admin .fin-percent-input b{color:#ff7a18 !important;font-size:12px !important}

body.page-admin #admin .fin-month-input,
body.page-admin #admin .fin-money-input,
body[data-page="admin"] #admin .fin-month-input,
body[data-page="admin"] #admin .fin-money-input{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
}

body.page-admin #admin .fin-money-input b,
body[data-page="admin"] #admin .fin-money-input b{
  color:#e9670f !important;
  font-size:11px !important;
  white-space:nowrap !important;
}

body.page-admin #admin .fin-inline-btn,
body[data-page="admin"] #admin .fin-inline-btn{
  min-height:34px !important;
  padding:6px 9px !important;
  border:1px solid #ff7a18 !important;
  border-radius:7px !important;
  color:#a84706 !important;
  background:#fff7f1 !important;
  font-size:9px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}

body.page-admin #admin .fin-competence-picker,
body[data-page="admin"] #admin .fin-competence-picker{
  padding:8px !important;
  border:1px solid #e1e7ea !important;
  border-radius:8px !important;
  background:#f8fafb !important;
}

body.page-admin #admin .fin-month-chips,
body[data-page="admin"] #admin .fin-month-chips{
  min-height:31px !important;
  display:flex !important;
  align-items:center !important;
  gap:5px !important;
  flex-wrap:wrap !important;
}

body.page-admin #admin .fin-month-chip,
body[data-page="admin"] #admin .fin-month-chip{
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  padding:5px 7px !important;
  border:1px solid #ffd0ae !important;
  border-radius:999px !important;
  color:#8e3c05 !important;
  background:#fff4ec !important;
  font-size:9px !important;
  font-weight:800 !important;
}

body.page-admin #admin .fin-month-chip button,
body[data-page="admin"] #admin .fin-month-chip button{
  padding:0 !important;
  border:0 !important;
  color:#a84706 !important;
  background:transparent !important;
  font:inherit !important;
  cursor:pointer !important;
}

body.page-admin #admin .fin-month-empty,
body[data-page="admin"] #admin .fin-month-empty{color:#87959d !important;font-size:9px !important;font-weight:600 !important}

body.page-admin #admin .fin-bulk-month-btn,
body[data-page="admin"] #admin .fin-bulk-month-btn{
  width:max-content !important;
  min-height:30px !important;
  margin-top:4px !important;
  padding:5px 9px !important;
}

body.page-admin #admin .fin-primary-btn,
body.page-admin #admin .fin-secondary-btn,
body[data-page="admin"] #admin .fin-primary-btn,
body[data-page="admin"] #admin .fin-secondary-btn{
  min-height:36px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  padding:7px 13px !important;
  border:1px solid #ff7a18 !important;
  border-radius:8px !important;
  font-size:10px !important;
  font-weight:800 !important;
  cursor:pointer !important;
  box-shadow:0 3px 8px rgba(7,19,28,.12) !important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease !important;
}

body.page-admin #admin .fin-primary-btn,
body[data-page="admin"] #admin .fin-primary-btn{
  width:100% !important;
  margin-top:7px !important;
  color:#fff !important;
  background:#e9670f !important;
}

body.page-admin #admin .fin-secondary-btn,
body[data-page="admin"] #admin .fin-secondary-btn{
  color:#102832 !important;
  background:#fff !important;
}

body.page-admin #admin .fin-primary-btn:hover,
body[data-page="admin"] #admin .fin-primary-btn:hover{
  background:#c95308 !important;
  box-shadow:0 5px 12px rgba(233,103,15,.28) !important;
  transform:translateY(-1px) !important;
}

body.page-admin #admin .fin-secondary-btn:hover,
body[data-page="admin"] #admin .fin-secondary-btn:hover{
  background:#fff5ed !important;
  box-shadow:0 5px 12px rgba(7,19,28,.16) !important;
  transform:translateY(-1px) !important;
}

body.page-admin #admin .fin-link-btn,
body[data-page="admin"] #admin .fin-link-btn{
  min-height:30px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  padding:5px 9px !important;
  border:1px solid #ff7a18 !important;
  border-radius:7px !important;
  color:#a84706 !important;
  background:#fff7f1 !important;
  font-size:9px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}

body.page-admin #admin .fin-link-btn:hover,
body[data-page="admin"] #admin .fin-link-btn:hover{color:#fff !important;background:#d85d0a !important}

body.page-admin #admin button:focus-visible,
body[data-page="admin"] #admin button:focus-visible{
  outline:3px solid rgba(255,122,24,.28) !important;
  outline-offset:2px !important;
}

body.page-admin #admin .fin-form-message,
body[data-page="admin"] #admin .fin-form-message{
  min-height:16px !important;
  margin-top:6px !important;
  font-size:9px !important;
  font-weight:700 !important;
}

body.page-admin #admin .fin-form-message.error,
body[data-page="admin"] #admin .fin-form-message.error{color:#b33232 !important}
body.page-admin #admin .fin-form-message.success,
body[data-page="admin"] #admin .fin-form-message.success{color:#14704e !important}

body.page-admin #admin .fin-search,
body[data-page="admin"] #admin .fin-search{
  display:grid !important;
  grid-template-columns:auto minmax(160px,1fr) !important;
  align-items:center !important;
  gap:7px !important;
  margin-bottom:7px !important;
  color:#60737e !important;
  font-size:9px !important;
  font-weight:800 !important;
}

body.page-admin #admin .fin-search input,
body[data-page="admin"] #admin .fin-search input{min-height:30px !important}

body.page-admin #admin .fin-table-wrap,
body[data-page="admin"] #admin .fin-table-wrap{
  max-width:100% !important;
  overflow:auto !important;
}

body.page-admin #admin .fin-table,
body[data-page="admin"] #admin .fin-table{
  min-width:720px !important;
  display:grid !important;
  gap:2px !important;
}

body.page-admin #admin .fin-table-head,
body.page-admin #admin .fin-table-row,
body[data-page="admin"] #admin .fin-table-head,
body[data-page="admin"] #admin .fin-table-row{
  display:grid !important;
  align-items:center !important;
  gap:7px !important;
}

body.page-admin #admin .fin-product-table .fin-table-head,
body.page-admin #admin .fin-product-table .fin-table-row,
body[data-page="admin"] #admin .fin-product-table .fin-table-head,
body[data-page="admin"] #admin .fin-product-table .fin-table-row{
  grid-template-columns:minmax(180px,1.7fr) minmax(135px,1.1fr) 70px minmax(120px,1fr) 88px !important;
}

body.page-admin #admin .fin-history-table .fin-table-head,
body.page-admin #admin .fin-history-table .fin-table-row,
body[data-page="admin"] #admin .fin-history-table .fin-table-head,
body[data-page="admin"] #admin .fin-history-table .fin-table-row,
body.page-admin #admin .fin-cpv-table .fin-table-head,
body.page-admin #admin .fin-cpv-table .fin-table-row,
body[data-page="admin"] #admin .fin-cpv-table .fin-table-head,
body[data-page="admin"] #admin .fin-cpv-table .fin-table-row{
  grid-template-columns:minmax(150px,1.5fr) minmax(125px,1.1fr) minmax(155px,1.3fr) minmax(105px,.9fr) 126px !important;
}

body.page-admin #admin .fin-family-cost-table .fin-table-head,
body.page-admin #admin .fin-family-cost-table .fin-table-row,
body[data-page="admin"] #admin .fin-family-cost-table .fin-table-head,
body[data-page="admin"] #admin .fin-family-cost-table .fin-table-row{
  grid-template-columns:minmax(150px,1.45fr) 92px 105px minmax(140px,1.2fr) 126px !important;
}

body.page-admin #admin .fin-pending-table .fin-table-head,
body.page-admin #admin .fin-pending-table .fin-table-row,
body[data-page="admin"] #admin .fin-pending-table .fin-table-head,
body[data-page="admin"] #admin .fin-pending-table .fin-table-row{
  grid-template-columns:80px minmax(185px,1.5fr) minmax(125px,1fr) 70px minmax(180px,1.3fr) !important;
}

body.page-admin #admin .fin-table-head,
body[data-page="admin"] #admin .fin-table-head{
  padding:5px 7px !important;
  border-bottom:1px solid #dce4e8 !important;
  color:#73848e !important;
  font-size:8px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
}

body.page-admin #admin .fin-table-row,
body[data-page="admin"] #admin .fin-table-row{
  min-height:38px !important;
  padding:5px 7px !important;
  border-bottom:1px solid #edf1f3 !important;
  color:#344b57 !important;
  font-size:9px !important;
}

body.page-admin #admin .fin-table-row strong,
body[data-page="admin"] #admin .fin-table-row strong{color:#102832 !important;font-size:10px !important}

body.page-admin #admin .fin-table-row small,
body[data-page="admin"] #admin .fin-table-row small{
  display:block !important;
  overflow:hidden !important;
  margin-top:2px !important;
  color:#74858e !important;
  font-size:8px !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

body.page-admin #admin .fin-number,
body[data-page="admin"] #admin .fin-number{text-align:right !important;font-weight:800 !important}

body.page-admin #admin .fin-status,
body[data-page="admin"] #admin .fin-status{
  display:inline-block !important;
  padding:4px 6px !important;
  border-radius:6px !important;
  color:#a52f2f !important;
  background:#fdecec !important;
  font-size:8px !important;
  font-weight:900 !important;
}

body.page-admin #admin .fin-status.ok,
body[data-page="admin"] #admin .fin-status.ok{color:#146c4d !important;background:#eaf6f0 !important}
body.page-admin #admin .fin-status.warning,
body[data-page="admin"] #admin .fin-status.warning{color:#875d08 !important;background:#fff5d9 !important}
body.page-admin #admin .fin-status.closed,
body[data-page="admin"] #admin .fin-status.closed{color:#536a76 !important;background:#edf2f4 !important}

body.page-admin #admin .fin-row-btn,
body.page-admin #admin .fin-row-actions button,
body[data-page="admin"] #admin .fin-row-btn,
body[data-page="admin"] #admin .fin-row-actions button{
  min-height:27px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  padding:4px 7px !important;
  border:1px solid #ff9a52 !important;
  border-radius:6px !important;
  color:#9f4100 !important;
  background:#fff6ef !important;
  font-size:8px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}

body.page-admin #admin .fin-row-btn:hover,
body.page-admin #admin .fin-row-actions button:hover,
body[data-page="admin"] #admin .fin-row-btn:hover,
body[data-page="admin"] #admin .fin-row-actions button:hover{
  color:#fff !important;
  background:#d85d0a !important;
  border-color:#d85d0a !important;
}

body.page-admin #admin .fin-row-actions .fin-delete-btn,
body[data-page="admin"] #admin .fin-row-actions .fin-delete-btn{
  color:#a52f2f !important;
  border-color:#efc0c0 !important;
  background:#fff5f5 !important;
}

body.page-admin #admin .fin-row-actions .fin-delete-btn:hover,
body[data-page="admin"] #admin .fin-row-actions .fin-delete-btn:hover{
  color:#fff !important;
  border-color:#b83a3a !important;
  background:#b83a3a !important;
}

body.page-admin #admin .fin-row-actions,
body[data-page="admin"] #admin .fin-row-actions{display:flex !important;gap:4px !important}

body.page-admin #admin .fin-cpv-rate,
body[data-page="admin"] #admin .fin-cpv-rate{color:#ff7a18 !important;font-size:13px !important;font-weight:900 !important}

body.page-admin #admin .fin-pending-summary,
body[data-page="admin"] #admin .fin-pending-summary{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:7px !important;
  margin-bottom:8px !important;
}

body.page-admin #admin .fin-pending-summary > div,
body[data-page="admin"] #admin .fin-pending-summary > div{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  padding:7px 9px !important;
  border:1px solid #e0e7eb !important;
  border-radius:8px !important;
  background:#f8fafb !important;
  color:#657883 !important;
  font-size:9px !important;
  font-weight:700 !important;
}

body.page-admin #admin .fin-pending-summary strong,
body[data-page="admin"] #admin .fin-pending-summary strong{color:#ff7a18 !important;font-size:14px !important}

body.page-admin #admin .fin-empty,
body[data-page="admin"] #admin .fin-empty{
  padding:18px !important;
  border:1px dashed #ccd8de !important;
  border-radius:9px !important;
  color:#71828c !important;
  background:#f8fafb !important;
  font-size:9px !important;
  text-align:center !important;
}

body.page-admin #admin .fin-empty-ok,
body[data-page="admin"] #admin .fin-empty-ok{color:#146c4d !important;background:#eef8f3 !important;border-color:#cce8db !important}

@media (max-width:980px){
  body.page-admin #admin .fin-two-column,
  body[data-page="admin"] #admin .fin-two-column{grid-template-columns:1fr !important}
}

@media (max-width:700px){
  body.page-admin #admin .fin-kpi-grid,
  body[data-page="admin"] #admin .fin-kpi-grid{grid-template-columns:1fr 1fr !important}
  body.page-admin #admin .fin-inner-tabs,
  body[data-page="admin"] #admin .fin-inner-tabs{flex-direction:column !important}
  body.page-admin #admin .fin-form-grid,
  body[data-page="admin"] #admin .fin-form-grid{grid-template-columns:1fr !important}
  body.page-admin #admin .fin-pending-summary,
  body[data-page="admin"] #admin .fin-pending-summary{grid-template-columns:1fr !important}
}

/* SPRINT 2.7.0 — Gestão de Perdas em Quantidade ou Valor CPV. */
body.show-ref #refugo .loss-view-toolbar{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  margin-bottom:10px !important;
  padding:9px 12px !important;
  border:1px solid #dbe3e8 !important;
  border-left:4px solid #ff7a18 !important;
  border-radius:11px !important;
  background:#fff !important;
  box-shadow:0 3px 10px rgba(7,19,28,.06) !important;
}

body.show-ref #refugo .loss-view-toolbar > div:first-child{
  min-width:0 !important;
  display:grid !important;
  gap:2px !important;
}

body.show-ref #refugo .loss-view-toolbar strong{
  color:#102832 !important;
  font-size:11px !important;
  font-weight:900 !important;
}

body.show-ref #refugo .loss-value-coverage{
  color:#6d7f89 !important;
  font-size:9px !important;
  font-weight:700 !important;
}

body.show-ref #refugo .loss-value-coverage.ok{color:#14704e !important}
body.show-ref #refugo .loss-value-coverage.warning{color:#9a6705 !important}
body.show-ref #refugo .loss-value-coverage.danger{color:#b33232 !important}

body.show-ref #refugo .loss-view-toggle{
  flex:0 0 auto !important;
  display:flex !important;
  gap:5px !important;
  padding:4px !important;
  border:1px solid #d5dfe4 !important;
  border-radius:9px !important;
  background:#f3f6f7 !important;
}

body.show-ref #refugo .loss-view-toggle button{
  min-width:112px !important;
  min-height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  padding:6px 11px !important;
  border:1px solid transparent !important;
  border-radius:7px !important;
  color:#506570 !important;
  background:transparent !important;
  font-size:9px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease !important;
}

body.show-ref #refugo .loss-view-toggle button span{
  min-width:21px !important;
  height:21px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:6px !important;
  color:#c85d0d !important;
  background:#fff0e5 !important;
  font-size:9px !important;
}

body.show-ref #refugo .loss-view-toggle button:hover{
  color:#102832 !important;
  background:#fff !important;
}

body.show-ref #refugo .loss-view-toggle button.active{
  color:#fff !important;
  border-color:#07131c !important;
  background:#07131c !important;
  box-shadow:inset 0 -2px 0 #ff7a18,0 2px 6px rgba(7,19,28,.16) !important;
}

body.show-ref #refugo .loss-view-toggle button.active span{
  color:#07131c !important;
  background:#ff8a32 !important;
}

body.show-ref #refugo .loss-view-toggle button:focus-visible{
  outline:3px solid rgba(255,122,24,.25) !important;
  outline-offset:2px !important;
}

body[data-loss-view="value"].show-ref #refugo .panel{
  border-color:#d6e0e5 !important;
}

@media (max-width:700px){
  body.show-ref #refugo .loss-view-toolbar{align-items:stretch !important;flex-direction:column !important}
  body.show-ref #refugo .loss-view-toggle{width:100% !important;box-sizing:border-box !important}
  body.show-ref #refugo .loss-view-toggle button{min-width:0 !important;flex:1 !important}
}

/* =========================================================
   HS-05 — dependência Ano/Mês e Produto pesquisável
   ========================================================= */
#hs05ModuleToolbar,
#hs05ModuleToolbar .hs05-inline-grid,
#hs05ModuleToolbar .hs05-filter{overflow:visible !important}

#hs05ModuleToolbar [data-filter-name="mes"]:has(select:disabled){
  opacity:.62 !important;
  background:#eef2f4 !important;
  cursor:not-allowed !important;
}

#hs05ModuleToolbar [data-filter-name="mes"] select:disabled{
  color:#72848d !important;
  cursor:not-allowed !important;
}

#hs05ModuleToolbar [data-filter-name="produto"]{position:relative !important}
#hs05ModuleToolbar [data-filter-name="produto"]:has(.is-open){z-index:120 !important}

#hs05ModuleToolbar .hs05-product-combobox{
  position:relative !important;
  min-width:0 !important;
  width:100% !important;
  height:24px !important;
  display:flex !important;
  align-items:center !important;
}

#hs05ModuleToolbar .hs05-product-native{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  border:0 !important;
}

#hs05ModuleToolbar .hs05-product-search{
  width:100% !important;
  height:24px !important;
  min-height:24px !important;
  padding:0 35px 0 2px !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  color:#19323b !important;
  background:transparent !important;
  box-shadow:none !important;
  font-family:inherit !important;
  font-size:9px !important;
  font-weight:800 !important;
  text-overflow:ellipsis !important;
}

#hs05ModuleToolbar .hs05-product-search::placeholder{color:#19323b !important;opacity:1 !important}
#hs05ModuleToolbar .hs05-product-search:focus-visible{outline:2px solid rgba(244,122,24,.36) !important;outline-offset:2px !important;border-radius:4px !important}

#hs05ModuleToolbar .hs05-product-clear{
  position:absolute !important;
  right:1px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:20px !important;
  height:20px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:5px !important;
  color:#758891 !important;
  background:#edf2f4 !important;
  font-size:14px !important;
  line-height:20px !important;
  font-weight:800 !important;
  cursor:pointer !important;
}

#hs05ModuleToolbar .hs05-product-clear:hover{color:#fff !important;background:#f47a18 !important}
#hs05ModuleToolbar .hs05-product-clear:focus-visible{outline:2px solid #f47a18 !important;outline-offset:2px !important}

#hs05ModuleToolbar .hs05-product-listbox{
  position:absolute !important;
  z-index:500 !important;
  top:calc(100% + 9px) !important;
  right:0 !important;
  width:max(100%,430px) !important;
  max-height:285px !important;
  overflow-y:auto !important;
  padding:5px !important;
  border:1px solid #cad7dd !important;
  border-radius:9px !important;
  background:#fff !important;
  box-shadow:0 16px 36px rgba(7,30,40,.19) !important;
}

#hs05ModuleToolbar .hs05-product-listbox[hidden]{display:none !important}

#hs05ModuleToolbar .hs05-product-option{
  min-height:34px !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  padding:6px 8px !important;
  border-radius:6px !important;
  color:#18323c !important;
  cursor:pointer !important;
}

#hs05ModuleToolbar .hs05-product-option + .hs05-product-option{border-top:1px solid #edf1f3 !important}
#hs05ModuleToolbar .hs05-product-option:hover,
#hs05ModuleToolbar .hs05-product-option.is-active{background:#fff2e8 !important;box-shadow:inset 3px 0 #f47a18 !important}
#hs05ModuleToolbar .hs05-product-option[aria-selected="true"]{color:#bd560b !important;background:#fff8f2 !important}
#hs05ModuleToolbar .hs05-product-option strong{min-width:0 !important;overflow:hidden !important;font-size:9.5px !important;font-weight:800 !important;line-height:1.25 !important;text-overflow:ellipsis !important;white-space:nowrap !important}
#hs05ModuleToolbar .hs05-product-option small{padding:3px 5px !important;border-radius:4px !important;color:#526a75 !important;background:#edf2f4 !important;font-size:8px !important;font-weight:800 !important;white-space:nowrap !important}
#hs05ModuleToolbar .hs05-product-empty{display:block !important;padding:14px 9px !important;color:#758891 !important;font-size:9px !important;font-weight:700 !important;text-align:center !important}

@media(max-width:700px){
  #hs05ModuleToolbar .hs05-product-listbox{position:fixed !important;left:12px !important;right:12px !important;top:auto !important;width:auto !important;max-height:45vh !important}
}
