/* Navegación por módulo (rama demo-mesh, pedido de Eduardo 2026-10-06).
   - Pantalla del módulo (/modulo/<slug>): menú lateral contraído, sólo la flecha "← Módulos".
   - Dentro de una opción: arriba "← Módulos" y el nombre del módulo (enlace a su pantalla).
   - Tarjetas de opciones: más chicas que las de Módulos. */

.app-shell.sidebar-contraido { --sidebar-w: 64px; }
.footer-with-sidebar.footer-contraido { padding-inline-start: calc(64px + 1rem); }

.sidebar.sidebar-contraido {
  padding-left: .5rem;
  padding-right: .5rem;
  align-items: center;
}

.sidebar .nav-volver {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin-bottom: .5rem;
  font-weight: 700;
}
.sidebar .nav-volver::before { display: none; }
.sidebar .nav-volver-flecha { font-size: 1.15rem; line-height: 1; }
.sidebar.sidebar-contraido .nav-volver { justify-content: center; padding: 10px; width: 44px; }
.sidebar.sidebar-contraido .nav-volver-texto { display: none; }

.sidebar .group-title-link { display: block; text-decoration: none; }
.sidebar .group-title-link:hover { text-decoration: underline; }

.modulo-migas { font-size: .85rem; color: var(--muted); margin-bottom: .25rem; }
.modulo-migas a { color: inherit; text-decoration: none; }
.modulo-migas a:hover { text-decoration: underline; }

.module-card-grid.opciones-grid {
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 14px;
}
.opciones-grid .module-card {
  min-height: 0;
  padding: 16px 18px;
}
.opciones-grid .module-card h3 { font-size: 1rem; margin: 10px 0 0; }
.opciones-grid .module-card .module-icon { width: 34px; height: 34px; }
.opciones-grid .module-card .module-icon svg { width: 18px; height: 18px; }
