/* NOVERIA ANPR Control Center v1.0.6 — UI Polish
   Capa final de normalización visual. Se carga después del resto de estilos. */
:root{
  --noveria-font:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --noveria-blue:#2f76a8;
  --noveria-blue-2:#3d86b9;
  --noveria-blue-soft:#e8f2f9;
  --noveria-border:#d8e2eb;
  --noveria-text:#1f3342;
  --noveria-muted:#607386;
  --noveria-control-h:40px;
  --noveria-radius:9px;
}
html,body,#app,.v5-app,.v5-login-page,
button,input,select,textarea,table,dialog{
  font-family:var(--noveria-font)!important;
}
body{font-weight:400;letter-spacing:0}

/* Navegación: misma fuente y peso que los menús corporativos. */
.v5-hnav-item,.v5-hnav-dropdown-toggle,
.v5-brand-dropdown button,.v5-hnav-dropdown-menu .v5-hnav-item,
.v5-hnav-actions,.v5-user-status,.v5-hnav-brand{
  font-family:var(--noveria-font)!important;
  font-style:normal!important;
  letter-spacing:0!important;
}
.v5-hnav-item,.v5-hnav-dropdown-toggle{font-weight:500!important;font-size:13px!important}
.v5-hnav-dropdown-menu .v5-hnav-item,.v5-brand-dropdown button{font-weight:400!important;font-size:13px!important}
.v5-hnav-item.active,.v5-hnav-dropdown.has-active>.v5-hnav-dropdown-toggle,
.v5-hnav-dropdown-menu .v5-hnav-item.active{font-weight:500!important}
.v5-hnav-brand .v5-brand-text strong{font-family:var(--noveria-font)!important;font-weight:600!important}
.v5-hnav-actions .v5-user-name{font-weight:500!important}
.v5-hnav-icon{font-weight:400!important}

/* Jerarquía tipográfica general. */
h1,h2,h3,h4,h5,h6,.v5-card-title,.v5-panel-title,.v5-section-title,
.v5-toolbar h1,.sys-toolbar h1{font-family:var(--noveria-font)!important;color:var(--noveria-text)}
h1,.v5-toolbar h1,.sys-toolbar h1{font-weight:600!important}
h2,h3,h4,.v5-card-title,.v5-panel-title,.v5-section-title{font-weight:600!important}
p,small,label,span,td,th{font-family:var(--noveria-font)}

/* Controles: una altura, bordes y foco comunes. */
input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  font-family:var(--noveria-font)!important;
  font-weight:400!important;
  color:var(--noveria-text)!important;
  border-color:var(--noveria-border)!important;
  border-radius:var(--noveria-radius)!important;
  background:#fff!important;
  box-shadow:none!important;
}
input:not([type="checkbox"]):not([type="radio"]),select{min-height:var(--noveria-control-h)}
textarea{padding:10px 12px!important}
input:focus,select:focus,textarea:focus{
  outline:none!important;
  border-color:#7db0d1!important;
  box-shadow:0 0 0 3px rgba(47,118,168,.12)!important;
}

/* Botones: tres familias visuales consistentes. */
.v5-btn,button.v5-btn,.btn,.button{
  min-height:38px;
  border-radius:var(--noveria-radius)!important;
  font-family:var(--noveria-font)!important;
  font-weight:500!important;
  letter-spacing:0!important;
}
.v5-btn-primary,.btn-primary{background:var(--noveria-blue)!important;border-color:var(--noveria-blue)!important;color:#fff!important}
.v5-btn-primary:hover,.btn-primary:hover{background:#286993!important;border-color:#286993!important}
.v5-btn-danger,.btn-danger,.danger{font-weight:500!important}

/* Tablas: cabecera y filas homogéneas. */
table{font-size:13px;color:var(--noveria-text)}
thead th{
  font-weight:600!important;
  letter-spacing:0!important;
  text-transform:none!important;
  color:#3f5668!important;
  background:#f4f7fa!important;
  border-color:#e1e8ee!important;
}
tbody td{font-weight:400!important;border-color:#e7edf2!important}
tbody tr{height:44px}
tbody tr:hover{background:#f7fafc}

/* Tarjetas, paneles y modales. */
.v5-card,.v5-panel,.sys-card,.v5-modal-card,.noveria-about-card,.v5-password-login-card,.v5-login-dialog{
  border-color:var(--noveria-border)!important;
  box-shadow:0 4px 16px rgba(34,64,84,.07)!important;
}
.v5-card-head strong,.v5-panel-head strong,.sys-card strong{font-weight:600!important}
dialog{font-family:var(--noveria-font)!important}
.noveria-about-card h2,.v5-password-login-card h1,.v5-login-dialog h2{font-weight:600!important}
.noveria-about-data strong{font-weight:500!important}

/* Indicadores y KPI: peso fuerte solo en cifras importantes. */
.v5-kpi strong,.v5-stat strong,.sys-kpi strong,.viz-stat-value{font-weight:600!important}
.v5-kpi span,.v5-stat span,.sys-kpi span,.sys-kpi small{font-weight:400!important}

/* Buscadores, barras y acciones. */
.v5-actions,.v5-toolbar-actions,.sys-toolbar-actions{gap:8px}
.v5-search input,.v5-filter input,.v5-filter select{font-weight:400!important}

/* Estados semánticos. */
.v5-badge,.badge,.sys-status{font-weight:500!important;letter-spacing:0!important}

/* Login y splash con la misma familia. */
.v5-login-card,.v5-login-card *{font-family:var(--noveria-font)!important}
.v5-login-card h1{font-weight:600!important}
.v5-form label,.v5-login-dialog label{font-weight:500!important}
.v5-login-action{font-family:var(--noveria-font)!important;font-weight:500!important}
#noveriaSplash,#noveriaSplash *{font-family:var(--noveria-font)!important}
#noveriaSplash strong{font-weight:600!important}

/* Ajuste responsivo sin alterar la lógica del menú. */
@media(max-width:1780px){
  .v5-hnav-item,.v5-hnav-dropdown-toggle{font-size:12px!important}
}

/* v1.0.7 — Menú vertical compacto y autoocultable */
:root{
  --noveria-sidebar-collapsed:64px;
  --noveria-sidebar-expanded:238px;
}
.v5-app-vertical{
  min-height:100vh;
  display:grid;
  grid-template-columns:var(--noveria-sidebar-collapsed) minmax(0,1fr)!important;
  transition:grid-template-columns .22s ease;
}
.v5-app-vertical.sidebar-pinned{
  grid-template-columns:var(--noveria-sidebar-expanded) minmax(0,1fr)!important;
}
.v5-app-vertical .v5-sidebar{
  position:fixed!important;
  inset:0 auto 0 0;
  z-index:60;
  width:var(--noveria-sidebar-collapsed);
  height:100vh;
  box-sizing:border-box;
  padding:12px 8px 14px!important;
  background:#fff!important;
  border-right:1px solid var(--noveria-border)!important;
  box-shadow:4px 0 18px rgba(32,61,82,.08)!important;
  overflow:hidden!important;
  transition:width .22s ease,box-shadow .22s ease;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:hover,
.v5-app-vertical .v5-sidebar:focus-within,
.v5-app-vertical.sidebar-pinned .v5-sidebar{
  width:var(--noveria-sidebar-expanded);
  box-shadow:12px 0 30px rgba(32,61,82,.16)!important;
}
.v5-app-vertical .v5-main{grid-column:2;min-width:0}
.v5-sidebar-head{display:flex;align-items:center;gap:6px;min-height:54px;margin-bottom:12px}
.v5-app-vertical .v5-brand{
  flex:1;min-width:0;padding:0 4px!important;gap:10px;overflow:hidden;border:0;background:transparent;text-align:left;cursor:pointer
}
.v5-app-vertical .noveria-shell-brand img{width:42px;height:42px;min-width:42px;border-radius:11px}
.v5-app-vertical .v5-brand-text{display:grid;min-width:150px;white-space:nowrap;opacity:0;transform:translateX(-4px);transition:opacity .14s ease,transform .18s ease}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:hover .v5-brand-text,
.v5-app-vertical .v5-sidebar:focus-within .v5-brand-text,
.v5-app-vertical.sidebar-pinned .v5-brand-text{opacity:1;transform:none}
.v5-sidebar-pin{
  width:34px;height:34px;min-width:34px;border:0;border-radius:9px;background:#f2f6f9;color:#607386;cursor:pointer;opacity:0;pointer-events:none;transition:.15s ease
}
.v5-sidebar-pin:hover,.v5-sidebar-pin.active{background:var(--noveria-blue-soft);color:var(--noveria-blue)}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:hover .v5-sidebar-pin,
.v5-app-vertical .v5-sidebar:focus-within .v5-sidebar-pin,
.v5-app-vertical.sidebar-pinned .v5-sidebar-pin{opacity:1;pointer-events:auto}
.v5-app-vertical .v5-nav{display:grid;align-content:start;gap:14px;overflow-y:auto;overflow-x:hidden;padding-right:2px}
.v5-app-vertical .v5-nav-group{display:grid;gap:5px;min-width:0}
.v5-app-vertical .v5-nav-title{
  display:block;font-size:10px;font-weight:600;letter-spacing:.09em;color:#8ca0b1;padding:0 10px;white-space:nowrap;opacity:0;transition:opacity .15s ease
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:hover .v5-nav-title,
.v5-app-vertical .v5-sidebar:focus-within .v5-nav-title,
.v5-app-vertical.sidebar-pinned .v5-nav-title{opacity:1}
.v5-app-vertical .v5-nav-group-toggle{height:28px;padding:0 8px;color:#7b8e9f}
.v5-app-vertical .v5-nav-chevron{transition:transform .18s ease}
.v5-app-vertical .v5-nav-group-body{display:grid;gap:4px}
.v5-app-vertical .v5-nav-group-collapsible:not(.expanded) .v5-nav-group-body{display:none}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-group-collapsible .v5-nav-group-body{display:grid}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-group-toggle{display:none}
.v5-app-vertical .v5-nav-item{
  width:100%;min-height:43px;padding:0 10px!important;border:0;border-radius:11px;background:transparent;color:#425a6d;display:flex;align-items:center;gap:11px;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;font-size:13px!important;font-weight:500!important
}
.v5-app-vertical .v5-nav-item:hover{background:#f0f5f8;color:#1f5f8d}
.v5-app-vertical .v5-nav-item.active{background:var(--noveria-blue-soft)!important;color:var(--noveria-blue)!important;box-shadow:inset 3px 0 0 var(--noveria-blue)}
.v5-app-vertical .v5-nav-icon{width:28px;min-width:28px;text-align:center;font-size:20px;line-height:1}
.v5-app-vertical .v5-nav-label{opacity:0;transform:translateX(-3px);transition:opacity .14s ease,transform .18s ease}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:hover .v5-nav-label,
.v5-app-vertical .v5-sidebar:focus-within .v5-nav-label,
.v5-app-vertical.sidebar-pinned .v5-nav-label{opacity:1;transform:none}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item{justify-content:center;padding:0!important}
.v5-app-vertical .v5-sidebar-footer{margin-top:auto;padding:12px 8px 0!important;border-top:1px solid var(--noveria-border);display:grid;gap:2px;white-space:nowrap;opacity:0;transition:opacity .15s ease}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:hover .v5-sidebar-footer,
.v5-app-vertical .v5-sidebar:focus-within .v5-sidebar-footer,
.v5-app-vertical.sidebar-pinned .v5-sidebar-footer{opacity:1}
.v5-app-vertical .v5-sidebar-footer strong{font-size:11px;font-weight:500;color:#607386}
.v5-app-vertical .v5-sidebar-footer span{font-size:10px;color:#8ca0b1}
.v5-app-vertical .v5-topbar{height:64px;padding:0 22px!important}
.v5-app-vertical .v5-content{padding:18px 22px 28px!important}
.v5-app-vertical .v5-topbar-meta{gap:8px;min-width:0}
.v5-app-vertical .v5-chip{white-space:nowrap}
@media(max-width:1000px){
  .v5-app-vertical{grid-template-columns:56px minmax(0,1fr)!important}
  .v5-app-vertical.sidebar-pinned{grid-template-columns:220px minmax(0,1fr)!important}
  .v5-app-vertical .v5-sidebar{width:56px}
  .v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:hover,.v5-app-vertical .v5-sidebar:focus-within,.v5-app-vertical.sidebar-pinned .v5-sidebar{width:220px}
  .v5-app-vertical .v5-topbar-meta .v5-chip:first-child{display:none}
}
@media(max-width:720px){
  .v5-app-vertical,.v5-app-vertical.sidebar-pinned{display:block!important}
  .v5-app-vertical .v5-sidebar{width:56px!important}
  .v5-app-vertical .v5-main{margin-left:56px}
  .v5-app-vertical .v5-sidebar:hover,.v5-app-vertical .v5-sidebar:focus-within{width:220px!important}
  .v5-app-vertical .v5-topbar{padding:0 12px!important}
  .v5-app-vertical .v5-topbar-meta .v5-user-chip,.v5-app-vertical .v5-topbar-meta #v5About{display:none}
  .v5-app-vertical .v5-content{padding:12px!important}
}

/* v1.0.8 — Resaltado profesional del menú vertical */
.v5-app-vertical .v5-nav-item{
  position:relative;
  border:1px solid transparent!important;
  border-radius:10px!important;
  transition:background-color .16s ease,color .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.v5-app-vertical .v5-nav-item::before{
  content:"";
  position:absolute;
  left:0;
  top:9px;
  bottom:9px;
  width:3px;
  border-radius:0 4px 4px 0;
  background:transparent;
  transition:background-color .16s ease,top .16s ease,bottom .16s ease;
}
.v5-app-vertical .v5-nav-item:hover{
  background:#f4f8fb!important;
  border-color:#e4edf4!important;
  color:#285f86!important;
  transform:translateX(1px);
}
.v5-app-vertical .v5-nav-item.active{
  background:linear-gradient(90deg,#edf6fc 0%,#f7fbfe 100%)!important;
  color:#155f91!important;
  border-color:#d7e8f3!important;
  box-shadow:0 4px 12px rgba(35,102,145,.08)!important;
  font-weight:600!important;
}
.v5-app-vertical .v5-nav-item.active::before{
  background:#2383b8;
  top:7px;
  bottom:7px;
}
.v5-app-vertical .v5-nav-icon{
  display:grid;
  place-items:center;
  width:30px;
  min-width:30px;
  height:30px;
  border-radius:8px;
  transition:background-color .16s ease,color .16s ease,transform .16s ease;
}
.v5-app-vertical .v5-nav-item:hover .v5-nav-icon{
  background:#e9f3f9;
  transform:scale(1.03);
}
.v5-app-vertical .v5-nav-item.active .v5-nav-icon{
  background:#dceef9;
  color:#126b9f;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item{
  width:46px;
  min-height:46px;
  margin-inline:auto;
  border-radius:12px!important;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item::before{
  left:2px;
  top:12px;
  bottom:12px;
  width:3px;
  border-radius:4px;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item.active{
  background:#edf6fc!important;
  border-color:#d7e8f3!important;
  box-shadow:0 3px 10px rgba(35,102,145,.09)!important;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item.active .v5-nav-icon{
  background:transparent;
}


/* v1.0.9 — Isotipo NOVERIA visible y menú corporativo en barra contraída */
.v5-app-vertical .v5-sidebar-head{
  position:relative;
  align-items:center;
}
.v5-app-vertical .noveria-shell-brand{
  min-height:48px;
}
.v5-app-vertical .noveria-shell-brand img{
  background:#fff;
  border:1px solid #dce8f0;
  box-shadow:0 4px 12px rgba(31,93,132,.10);
  transition:width .2s ease,height .2s ease,transform .2s ease,box-shadow .2s ease;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .noveria-shell-brand{
  justify-content:center;
  padding:0!important;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .noveria-shell-brand img{
  width:44px;
  height:44px;
  min-width:44px;
  border-radius:12px;
}
.v5-app-vertical .noveria-shell-brand:hover img{
  transform:translateY(-1px);
  box-shadow:0 6px 16px rgba(31,93,132,.16);
}
.v5-app-vertical .v5-sidebar.brand-menu-open{
  width:var(--noveria-sidebar-expanded);
  box-shadow:12px 0 30px rgba(32,61,82,.16)!important;
}
.v5-app-vertical .v5-sidebar.brand-menu-open .v5-brand-text,
.v5-app-vertical .v5-sidebar.brand-menu-open .v5-sidebar-pin{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.v5-sidebar-brand-menu{
  position:absolute;
  left:8px;
  right:8px;
  top:58px;
  z-index:90;
  padding:7px;
  background:#fff;
  border:1px solid #dbe7ef;
  border-radius:12px;
  box-shadow:0 18px 40px rgba(25,62,86,.18);
}
.v5-sidebar-brand-menu[hidden]{display:none!important}
.v5-sidebar-brand-menu button{
  width:100%;
  min-height:38px;
  padding:0 11px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:#334f62;
  text-align:left;
  font:400 13px var(--noveria-font);
}
.v5-sidebar-brand-menu button:hover{
  background:#edf5fa;
  color:#155f91;
}
.v5-sidebar-brand-separator{
  height:1px;
  margin:6px 4px;
  background:#e2eaf0;
}
@media(max-width:1000px){
  .v5-app-vertical .v5-sidebar.brand-menu-open{width:220px}
}

/* v1.0.10 — Corrección de visibilidad del isotipo en menú contraído */
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .v5-sidebar-head{
  display:block;
  min-height:54px;
  margin-bottom:12px;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .v5-sidebar-pin{
  display:none!important;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .noveria-shell-brand{
  width:100%;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .noveria-shell-brand img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  object-fit:contain;
  flex:0 0 42px;
}
.v5-app-vertical:not(.sidebar-pinned) .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .noveria-shell-brand .v5-brand-text{
  display:none!important;
}


/* v1.0.11 — Menú vertical fijo con Administración desplegable */
.v5-app-vertical.sidebar-fixed{
  display:grid!important;
  grid-template-columns:220px minmax(0,1fr)!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar{
  position:sticky!important;
  top:0!important;
  width:220px!important;
  height:100vh!important;
  overflow:hidden!important;
  box-shadow:4px 0 18px rgba(32,61,82,.08)!important;
  transition:none!important;
}
.v5-app-vertical.sidebar-fixed .v5-main{grid-column:2!important;margin-left:0!important}
.v5-app-vertical.sidebar-fixed .v5-brand-text,
.v5-app-vertical.sidebar-fixed .v5-nav-title,
.v5-app-vertical.sidebar-fixed .v5-nav-label,
.v5-app-vertical.sidebar-fixed .v5-sidebar-footer{
  display:grid!important;
  opacity:1!important;
  transform:none!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-title{display:block!important}
.v5-app-vertical.sidebar-fixed .v5-nav-item{
  width:100%!important;
  min-height:43px!important;
  margin:0!important;
  padding:0 10px!important;
  justify-content:flex-start!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar-pin{display:none!important}
.v5-app-vertical.sidebar-fixed .v5-nav-group-toggle{display:flex!important}
.v5-app-vertical.sidebar-fixed .v5-nav-group-collapsible:not(.expanded) .v5-nav-group-body{display:none!important}
.v5-app-vertical.sidebar-fixed .v5-nav-group-collapsible.expanded .v5-nav-group-body{display:grid!important}
.v5-app-vertical.sidebar-fixed .noveria-shell-brand{justify-content:flex-start!important;padding:0 4px!important}
.v5-app-vertical.sidebar-fixed .noveria-shell-brand img{width:42px!important;height:42px!important;min-width:42px!important}
.v5-app-vertical.sidebar-fixed .v5-sidebar-head{display:flex!important;min-height:54px!important}
.v5-app-vertical.sidebar-fixed .v5-sidebar-brand-menu{left:8px;right:8px}
@media(max-width:720px){
  .v5-app-vertical.sidebar-fixed{grid-template-columns:220px minmax(0,1fr)!important}
  .v5-app-vertical.sidebar-fixed .v5-sidebar{display:flex!important;width:220px!important}
  .v5-app-vertical.sidebar-fixed .v5-main{margin-left:0!important}
}

/* v1.0.13 — Limpieza definitiva del menú vertical fijo */
.v5-app-vertical.sidebar-fixed{
  --noveria-sidebar-collapsed:220px!important;
  --noveria-sidebar-expanded:220px!important;
  grid-template-columns:220px minmax(0,1fr)!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar,
.v5-app-vertical.sidebar-fixed .v5-sidebar:hover,
.v5-app-vertical.sidebar-fixed .v5-sidebar:focus-within,
.v5-app-vertical.sidebar-fixed .v5-sidebar.brand-menu-open{
  width:220px!important;
  min-width:220px!important;
  max-width:220px!important;
  transform:none!important;
  transition:none!important;
  box-shadow:4px 0 18px rgba(32,61,82,.08)!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar-head{
  display:flex!important;
  align-items:center!important;
  min-height:64px!important;
  margin-bottom:10px!important;
}
.v5-app-vertical.sidebar-fixed .noveria-shell-brand,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .noveria-shell-brand{
  width:100%!important;
  height:auto!important;
  min-height:54px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding:4px 6px!important;
  overflow:visible!important;
  transform:none!important;
}
.v5-app-vertical.sidebar-fixed .noveria-shell-brand img,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .noveria-shell-brand img{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  flex:0 0 42px!important;
  transform:none!important;
  transition:none!important;
}
.v5-app-vertical.sidebar-fixed .noveria-shell-brand .v5-brand-text,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within):not(.brand-menu-open) .noveria-shell-brand .v5-brand-text{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  transition:none!important;
  min-width:0!important;
}
.v5-app-vertical.sidebar-fixed .v5-brand-text strong{display:block!important}
.v5-app-vertical.sidebar-fixed .v5-brand-text span,
.v5-app-vertical.sidebar-fixed .v5-brand-text small{display:block!important}
.v5-app-vertical.sidebar-fixed .v5-nav-title,
.v5-app-vertical.sidebar-fixed .v5-nav-label,
.v5-app-vertical.sidebar-fixed .v5-sidebar-footer{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  transition:none!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar-footer{display:grid!important}
.v5-app-vertical.sidebar-fixed .v5-nav-item,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item{
  width:100%!important;
  min-height:43px!important;
  margin:0!important;
  padding:0 10px!important;
  justify-content:flex-start!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item:hover{transform:none!important}
.v5-app-vertical.sidebar-fixed .v5-sidebar-pin{display:none!important}
.v5-app-vertical.sidebar-fixed .v5-main{grid-column:2!important;margin-left:0!important;min-width:0!important}
@media(max-width:1100px){
  .v5-app-vertical.sidebar-fixed,
  .v5-app-vertical.sidebar-fixed .v5-sidebar,
  .v5-app-vertical.sidebar-fixed .v5-sidebar:hover,
  .v5-app-vertical.sidebar-fixed .v5-sidebar:focus-within{
    grid-template-columns:220px minmax(0,1fr)!important;
    width:auto;
  }
  .v5-app-vertical.sidebar-fixed .v5-sidebar,
  .v5-app-vertical.sidebar-fixed .v5-sidebar:hover,
  .v5-app-vertical.sidebar-fixed .v5-sidebar:focus-within{width:220px!important;min-width:220px!important;max-width:220px!important}
}

/* v1.3.1 — Menú vertical azul corporativo */
.v5-app-vertical.sidebar-fixed .v5-sidebar,
.v5-app-vertical.sidebar-fixed .v5-sidebar:hover,
.v5-app-vertical.sidebar-fixed .v5-sidebar:focus-within,
.v5-app-vertical.sidebar-fixed .v5-sidebar.brand-menu-open{
  background:linear-gradient(180deg,var(--noveria-blue-2) 0%,var(--noveria-blue) 58%,#286b99 100%)!important;
  border-right:1px solid rgba(18,67,101,.38)!important;
  box-shadow:5px 0 20px rgba(25,76,111,.18)!important;
  color:#fff!important;
}
.v5-app-vertical.sidebar-fixed .noveria-shell-brand{
  border-radius:12px!important;
  color:#fff!important;
}
.v5-app-vertical.sidebar-fixed .noveria-shell-brand:hover{
  background:rgba(255,255,255,.08)!important;
}
.v5-app-vertical.sidebar-fixed .v5-brand-text strong,
.v5-app-vertical.sidebar-fixed .v5-brand-text span,
.v5-app-vertical.sidebar-fixed .v5-brand-text small{
  color:#fff!important;
}
.v5-app-vertical.sidebar-fixed .v5-brand-text span,
.v5-app-vertical.sidebar-fixed .v5-brand-text small{opacity:.78}
.v5-app-vertical.sidebar-fixed .v5-nav-title,
.v5-app-vertical.sidebar-fixed .v5-nav-group-toggle{
  color:rgba(255,255,255,.68)!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item{
  color:rgba(255,255,255,.9)!important;
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item:hover{
  color:#fff!important;
  background:rgba(255,255,255,.11)!important;
  border-color:rgba(255,255,255,.08)!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item.active{
  color:#fff!important;
  background:rgba(255,255,255,.19)!important;
  border-color:rgba(255,255,255,.16)!important;
  box-shadow:inset 3px 0 0 #fff,0 4px 12px rgba(20,66,98,.14)!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item::before{background:#fff!important}
.v5-app-vertical.sidebar-fixed .v5-nav-icon{
  color:inherit!important;
  font-size:21px!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar-footer{
  border-top-color:rgba(255,255,255,.18)!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar-footer strong,
.v5-app-vertical.sidebar-fixed .v5-sidebar-footer span{
  color:rgba(255,255,255,.78)!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar-brand-menu{
  background:#fff!important;
  border-color:rgba(24,72,106,.18)!important;
  box-shadow:0 16px 36px rgba(16,55,82,.24)!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar-brand-menu button{color:var(--noveria-text)!important}
.v5-app-vertical.sidebar-fixed .v5-sidebar-brand-menu button:hover{
  background:var(--noveria-blue-soft)!important;
  color:var(--noveria-blue)!important;
}
.v5-app-vertical.sidebar-fixed .v5-sidebar-brand-separator{background:var(--noveria-border)!important}

/* v1.3.2 — Resaltados rectos y profesionales */
.v5-app-vertical.sidebar-fixed .v5-nav-item,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item{
  border-radius:2px!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item:hover,
.v5-app-vertical.sidebar-fixed .v5-nav-item.active{
  border-radius:2px!important;
  box-shadow:inset 4px 0 0 rgba(255,255,255,.95)!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item.active{
  background:rgba(255,255,255,.16)!important;
  border-top-color:rgba(255,255,255,.08)!important;
  border-right-color:rgba(255,255,255,.08)!important;
  border-bottom-color:rgba(255,255,255,.08)!important;
}

/* v1.3.3 — Navegación plana sin línea lateral */
.v5-app-vertical.sidebar-fixed .v5-nav-item,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item{
  border-radius:6px!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item::before{display:none!important;content:none!important;}
.v5-app-vertical.sidebar-fixed .v5-nav-item:hover{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:none!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item.active{
  background:rgba(255,255,255,.18)!important;
  border-color:rgba(255,255,255,.18)!important;
  color:#fff!important;
  box-shadow:0 1px 2px rgba(14,45,68,.16)!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item.active .v5-nav-icon{
  color:#fff!important;
}

/* v1.3.4 — Estado activo estable con y sin foco */
.v5-app-vertical.sidebar-fixed .v5-nav-item,
.v5-app-vertical.sidebar-fixed .v5-nav-item:link,
.v5-app-vertical.sidebar-fixed .v5-nav-item:visited,
.v5-app-vertical.sidebar-fixed .v5-nav-item:focus,
.v5-app-vertical.sidebar-fixed .v5-nav-item:focus-visible,
.v5-app-vertical.sidebar-fixed .v5-nav-item:active{
  color:rgba(255,255,255,.90)!important;
  text-decoration:none!important;
  outline:none!important;
  -webkit-tap-highlight-color:transparent;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item:hover{
  color:#fff!important;
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.08)!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item.active,
.v5-app-vertical.sidebar-fixed .v5-nav-item.active:hover,
.v5-app-vertical.sidebar-fixed .v5-nav-item.active:focus,
.v5-app-vertical.sidebar-fixed .v5-nav-item.active:focus-visible,
.v5-app-vertical.sidebar-fixed .v5-nav-item.active:active,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item.active,
.v5-app-vertical.sidebar-fixed .v5-sidebar:focus-within .v5-nav-item.active,
.v5-app-vertical.sidebar-fixed .v5-sidebar:hover .v5-nav-item.active{
  color:#fff!important;
  background:rgba(255,255,255,.18)!important;
  border-color:rgba(255,255,255,.18)!important;
  box-shadow:0 1px 2px rgba(14,45,68,.16)!important;
  opacity:1!important;
  filter:none!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item.active .v5-nav-icon,
.v5-app-vertical.sidebar-fixed .v5-nav-item.active:focus .v5-nav-icon,
.v5-app-vertical.sidebar-fixed .v5-nav-item.active:focus-visible .v5-nav-icon,
.v5-app-vertical.sidebar-fixed .v5-sidebar:not(:hover):not(:focus-within) .v5-nav-item.active .v5-nav-icon{
  color:#fff!important;
  opacity:1!important;
  filter:none!important;
}
.v5-app-vertical.sidebar-fixed .v5-nav-item.active .v5-nav-text,
.v5-app-vertical.sidebar-fixed .v5-nav-item.active span{
  color:#fff!important;
  opacity:1!important;
}
