/* Los estilos de cada pantalla se cargan y retiran con su ruta. */
app-root, app-navbar, app-sidebar, .app-page { display: contents; }
body .navbar { min-height: 60px; }

/* Reveal the page only when its complete theme is ready. */
.page-styles-loading { visibility:hidden; }
body:has(.page-styles-loading)::after {
  content:'Cargando…';position:fixed;inset:0;z-index:2000;
  display:grid;place-items:center;background:#f0f5f8;color:#155a77;
  font:600 .9rem system-ui,sans-serif;letter-spacing:.03em;
}

/* Reactive field groups render their controls through a display-contents host. */
.row > app-clinical-fields > div {
  flex-shrink: 0;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  margin-top: var(--bs-gutter-y);
}
