/* STRONG LMB 360 V18.2.96 — Legacy Garbage Removal & Clean Runtime
   Autoridad visual final. No elimina funcionalidades: limpia residuos visuales, aísla capas huérfanas
   y establece una presentación consistente para producción. */
:root{
  --strong-build-current: "v18.2.96";
  --strong-clean-runtime: 1;
}

html[data-strong-clean-runtime="v18.2.96"],
body[data-app-build="v18.2.96"]{
  min-height:100%;
}

/* Limpieza de residuos de desarrollo/debug sin tocar módulos funcionales */
[data-debug], [data-dev-only], [data-test-only],
.strong-debug, .debug-panel, .dev-panel, .test-panel,
.runtime-debug, .diagnostic-floating-debug,
.legacy-floating-badge, .build-floating-badge,
.empty-shell-placeholder:not([data-strong-required]),
.ghost-layer, .orphan-overlay, .phantom-overlay,
.strong-garbage, .visual-garbage, .floating-garbage{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* Evita capas invisibles encima del menú, títulos o contenido principal */
[aria-hidden="true"].modal-backdrop:empty,
.overlay:empty, .backdrop:empty, .scrim:empty,
[class*="overlay"]:empty:not(.login-overlay):not(.modal-overlay),
[class*="backdrop"]:empty:not(.modal-backdrop){
  display:none!important;
  pointer-events:none!important;
}

/* Bloqueo de estabilidad para títulos: previene textos flotando encima */
main h1, main h2, main h3,
.module-title, .screen-title, .page-title,
.strong-module-title, .strong-screen-title{
  position:relative!important;
  z-index:5!important;
  clear:both!important;
  isolation:isolate!important;
}

/* El contenido activo siempre queda por encima de residuos decorativos */
main, #app, #root, .app-shell, .main-shell,
.strong-app, .module-container, .screen-container,
.strong-content, .content-area{
  position:relative;
  z-index:1;
  isolation:isolate;
}

/* Limpieza de botones o capas sin contenido que generan espacios raros */
button:empty:not([aria-label]):not(.icon-button),
.btn:empty:not([aria-label]):not(.icon-button),
.card:empty:not([data-strong-required]),
.panel:empty:not([data-strong-required]),
.widget:empty:not([data-strong-required]){
  display:none!important;
}

/* Normalización final del login oficial */
body.login-active .strong-login,
body.login-active .login-panel,
body.login-active .login-card{
  box-sizing:border-box!important;
}

body.login-active img[src*="strong-lmb-360-option1-intro-crop"]{
  display:none!important;
}

/* Notificaciones institucionales por encima de módulos, pero debajo de diálogos críticos */
#strong-toast-root, .strong-toast-root{
  position:fixed!important;
  right:18px!important;
  bottom:18px!important;
  z-index:2147483000!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  pointer-events:none!important;
}
.strong-toast{
  pointer-events:auto!important;
  max-width:min(420px,calc(100vw - 36px));
  border-radius:14px;
  padding:12px 14px;
  background:rgba(12,22,28,.96);
  color:#fff;
  box-shadow:0 12px 32px rgba(0,0,0,.32);
  border:1px solid rgba(218,184,96,.35);
  font:500 14px/1.35 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}

@media (max-width: 760px){
  #strong-toast-root, .strong-toast-root{
    left:12px!important;
    right:12px!important;
    bottom:12px!important;
  }
  .strong-toast{max-width:100%;}
}
