/* Barra superior en pantallas angostas (core/base.html): debajo de 900px los links pasan a una
   hoja que abre el botón «Menú» (core/js/nav_movil.js). Colores de theme.css. */
.nav-solo-movil { display: none; }
@media (max-width: 899.98px) {
    .nav-escritorio { display: none !important; }
    .nav-solo-movil { display: inline-flex; }
}
.nav-hoja { position: fixed; top: 3.5rem; left: 0; right: 0; bottom: 0; z-index: 41; overflow-y: auto;
    background: rgb(var(--c-card)); border-top: 1px solid rgb(var(--c-stroke)); }
.nav-hoja[hidden] { display: none; }
@media (min-width: 900px) { .nav-hoja { display: none !important; } }
.nav-hoja-cuerpo { display: flex; flex-direction: column; gap: 2px; padding: 0.75rem 1rem 1.5rem; max-width: 32rem; margin: 0 auto; }
.nav-hoja-item { display: flex; align-items: center; gap: 0.625rem; width: 100%; padding: 0.75rem 0.75rem;
    border-radius: 0.625rem; font-size: 0.9375rem; font-weight: 500; color: rgb(var(--c-txt-2)); text-align: left;
    background: none; border: 0; cursor: pointer; list-style: none; }
.nav-hoja-item:hover, .nav-hoja-item.active { background: rgb(var(--c-muted-bg)); color: rgb(var(--c-txt)); }
.nav-hoja-grupo > summary::-webkit-details-marker { display: none; }
.nav-hoja-grupo[open] > summary svg:last-child { transform: rotate(180deg); }
.nav-hoja-sub { padding-left: 1.75rem; }
.nav-hoja-sub .nav-hoja-item { padding: 0.5rem 0.75rem; font-size: 0.875rem; }
.nav-hoja-sep { height: 1px; margin: 0.5rem 0; background: rgb(var(--c-stroke)); }
.nav-hoja-usuario { display: flex; align-items: center; gap: 0.625rem; padding: 0.5rem 0.75rem; font-size: 0.8125rem;
    color: rgb(var(--c-txt-muted)); overflow-wrap: anywhere; }
body.nav-abierta { overflow: hidden; }
