/* =============================================================================
 * UNSCH — estilos del sitio público (resoluciones, directorio, inicio, dependencias)
 * Guardar en: public/css/unsch.css
 * Cargar en las plantillas públicas DESPUÉS de adminlte.min.css:
 *   <link rel="stylesheet" href="/css/unsch.css?v=1">
 * (sube el número de ?v= cada vez que cambies este archivo, para que el navegador lo recargue)
 *
 * Criterio: fondo blanco y gris claro de AdminLTE; el guinda institucional solo como
 * acento (barra superior, botones, enlaces, línea superior de los paneles).
 * ============================================================================= */

:root {
  --u-guinda: #600100;
  --u-guinda-oscuro: #4a0100;
  --u-guinda-texto: #7d1a17;      /* guinda para texto y enlaces sobre fondo blanco */
  --u-guinda-suave: #f6eded;      /* fondos de selección muy claros */
  --u-texto: #2b2b2b;
  --u-texto-2: #555;
  --u-gris: #6c757d;
  --u-borde: #e3e3e3;
  --u-borde-2: #cfcfcf;
  --u-foco: rgba(96, 1, 0, .14);
}

/* ---------------------------------------------------------------------------
 * 1. Bootstrap / AdminLTE con colores institucionales
 * ------------------------------------------------------------------------- */
.content-wrapper a:not(.btn):not(.page-link):not(.nav-link):not(.dropdown-item):not(.stretched-link) { color: var(--u-guinda-texto); }
.content-wrapper a:not(.btn):not(.page-link):not(.nav-link):not(.dropdown-item):not(.stretched-link):hover { color: var(--u-guinda-oscuro); }

.btn-primary { background-color: var(--u-guinda); border-color: var(--u-guinda); }
.btn-primary:hover, .btn-primary:focus, .btn-primary:not(:disabled):not(.disabled):active {
  background-color: var(--u-guinda-oscuro); border-color: var(--u-guinda-oscuro);
}
.btn-primary:focus, .btn-primary:not(:disabled):not(.disabled):active:focus { box-shadow: 0 0 0 .2rem var(--u-foco); }
.btn-primary:disabled, .btn-primary.disabled { background-color: #9c5c5b; border-color: #9c5c5b; }
.btn-outline-primary { color: var(--u-guinda); border-color: var(--u-guinda); }
.btn-outline-primary:hover { background-color: var(--u-guinda); border-color: var(--u-guinda); color: #fff; }
.text-primary { color: var(--u-guinda) !important; }

.form-control:focus { border-color: #b0605d; box-shadow: 0 0 0 .2rem var(--u-foco); }

.page-link { color: var(--u-guinda); }
.page-item.active .page-link { background-color: var(--u-guinda); border-color: var(--u-guinda); }
.page-link:focus { box-shadow: 0 0 0 .2rem var(--u-foco); }

.card-primary.card-outline { border-top: 3px solid var(--u-guinda); }

/* Pestañas (directorio) */
.card-primary.card-outline-tabs > .card-header a.active,
.card-primary.card-outline-tabs > .card-header a.active:hover { border-top-color: var(--u-guinda); }
.card-outline-tabs .nav-tabs .nav-link { color: var(--u-texto-2); }
.card-outline-tabs .nav-tabs .nav-link:hover { color: var(--u-guinda-texto); }
.card-outline-tabs .nav-tabs .nav-link.active { color: var(--u-guinda-texto); font-weight: 600; }

/* Tablas (bootstrap-table) */
.content-wrapper .table thead th { background-color: #f8f9fa; color: var(--u-texto); font-weight: 600; border-bottom-width: 1px; }
.content-wrapper .table td { vertical-align: middle; }
.content-wrapper .table mark, .content-wrapper .table .mark { padding: 0 .1em; background-color: #fff3a3; }
.content-wrapper .bootstrap-table .fixed-table-toolbar .search input { min-width: 240px; }

/* ---------------------------------------------------------------------------
 * 2. Barra superior (partial navbar)
 * ------------------------------------------------------------------------- */
.nav-unsch { background-color: var(--u-guinda); border-bottom: 0; box-shadow: 0 1px 4px rgba(0, 0, 0, .25); }
.nav-unsch .navbar-nav .nav-link { color: #f8f9f9; font-weight: 600; border-radius: .25rem; transition: background-color .15s ease; }
.nav-unsch .navbar-nav .nav-link:hover,
.nav-unsch .navbar-nav .nav-link:focus { color: #fff; background-color: rgba(255, 255, 255, .12); }
.nav-unsch .navbar-nav .nav-link:focus-visible { outline: 2px solid #fff; outline-offset: -2px; }
.nav-unsch .navbar-nav .nav-link.active { color: #fff; box-shadow: inset 0 -2px 0 rgba(255, 255, 255, .85); }
.nav-unsch .marca { display: flex; align-items: center; gap: .5rem; color: #fff; font-weight: 700; }
.nav-unsch .marca:hover { color: #fff; text-decoration: none; background: none; }
.nav-unsch .marca img { height: 30px; width: auto; }
.nav-unsch .navbar-search-block { background-color: var(--u-guinda); }
.nav-unsch .navbar-search-block .form-control-navbar,
.nav-unsch .navbar-search-block .form-control-navbar:focus { background-color: #fff; color: #222; border: 0; }
.nav-unsch .navbar-search-block .input-group-append > .btn-navbar,
.nav-unsch .navbar-search-block .form-control-navbar + .input-group-append > .btn-navbar { background-color: #fff; color: var(--u-guinda); border: 0; }
.nav-unsch .navbar-search-block .input-group-append > .btn-navbar:hover { background-color: #f1e6e6; }
.nav-unsch input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; appearance: none; }
.nav-unsch .dropdown-menu .dropdown-item.active { background-color: var(--u-guinda); }
.nav-unsch .btn-ingresar { border: 1px solid rgba(255, 255, 255, .55); padding: .3rem .75rem; margin-top: .2rem; }
.nav-unsch .btn-ingresar:hover { background-color: #fff; color: var(--u-guinda); }

/* ---------------------------------------------------------------------------
 * 3. Encabezado de página (.hero-res) — en todas las vistas públicas
 * ------------------------------------------------------------------------- */
.hero-res {
  background: #fff; border: 1px solid var(--u-borde); border-top: 3px solid var(--u-guinda); border-radius: .25rem;
  margin: 1rem 0; padding: 1.6rem 1.75rem 1.25rem;
}
.hero-res .hero-inst { margin: 0 0 .2rem; font-size: .9rem; color: var(--u-gris); }
.hero-res h1 { margin: 0 0 .5rem; font-size: 1.65rem; font-weight: 600; color: var(--u-texto); line-height: 1.25; }
.hero-res h1.text-center { font-size: 1.45rem; letter-spacing: .01em; }
.hero-res .hero-desc { margin: 0 0 1.1rem; color: var(--u-texto-2); }
.hero-res .hero-desc:last-child { margin-bottom: 0; }
.hero-res .hero-buscar { max-width: 720px; }
.hero-res h1.text-center ~ .hero-buscar { margin-left: auto; margin-right: auto; }
.hero-res .hero-buscar .form-control { border-color: var(--u-borde-2); }
.hero-res .hero-buscar .form-control:focus { border-color: #8c3b38; box-shadow: 0 0 0 .2rem var(--u-foco); }
.hero-res .hero-btn { background: var(--u-guinda); border-color: var(--u-guinda); color: #fff; padding-left: 1.4rem; padding-right: 1.4rem; }
.hero-res .hero-btn:hover, .hero-res .hero-btn:focus { background: var(--u-guinda-oscuro); border-color: var(--u-guinda-oscuro); color: #fff; }
.hero-res .hero-ayuda { display: block; margin-top: .4rem; font-size: .82rem; color: var(--u-gris); }
.hero-res .hero-pie {
  display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem 2rem;
  margin-top: 1.1rem; padding-top: .8rem; border-top: 1px solid #eee; font-size: .88rem; color: var(--u-gris);
}
.hero-res .hero-accesos a.activo { font-weight: 600; text-decoration: underline; }
.hero-res .hero-accesos .sep { margin: 0 .35rem; color: #c4c4c4; }
.hero-res .hero-datos strong { color: #444; font-weight: 600; }
.hero-res .hero-legal { font-size: .88rem; color: var(--u-gris); margin: 0 0 1.1rem; }

/* Encabezado con foto: agrega la clase "hero-foto" a .hero-res.
   "hero-foto--pano" usa la foto panorámica de la entrada (directorio, dependencias). */
.hero-res.hero-foto {
  --capa: linear-gradient(rgba(20, 20, 20, .72), rgba(20, 20, 20, .72));
  position: relative; border: 0; color: #fff; padding: 2rem 1.75rem 1.6rem;
  background-color: #3a3a3a; background-size: cover; background-position: center 12%;
  background-image: var(--capa), url("/img/portada-unsch-800.jpg");
  background-image: var(--capa), image-set(url("/img/portada-unsch-800.webp") type("image/webp"), url("/img/portada-unsch-800.jpg") type("image/jpeg"));
}
@media (min-width: 768px) {
  .hero-res.hero-foto {
    background-image: var(--capa), url("/img/portada-unsch-1400.jpg");
    background-image: var(--capa), image-set(url("/img/portada-unsch-1400.webp") type("image/webp"), url("/img/portada-unsch-1400.jpg") type("image/jpeg"));
  }
}
.hero-res.hero-foto.hero-foto--pano {
  background-position: center 22%;
  background-image: var(--capa), url("/img/portada-unsch-pano-1000.jpg");
  background-image: var(--capa), image-set(url("/img/portada-unsch-pano-1000.webp") type("image/webp"), url("/img/portada-unsch-pano-1000.jpg") type("image/jpeg"));
}
.hero-res.hero-foto h1 { color: #fff; text-shadow: 0 1px 2px rgba(0, 0, 0, .35); }
.hero-res.hero-foto .hero-inst,
.hero-res.hero-foto .hero-desc,
.hero-res.hero-foto .hero-legal,
.hero-res.hero-foto .hero-ayuda { color: rgba(255, 255, 255, .88); }
.content-wrapper .hero-res.hero-foto a:not(.btn) { color: #fff !important; text-decoration: underline; text-underline-offset: 2px; }
.hero-res.hero-foto .hero-buscar .form-control { border: 0; }
.hero-res.hero-foto h1.text-center ~ .hero-desc { text-align: center; }
.hero-res.hero-foto h1.text-center ~ .hero-buscar .hero-ayuda { text-align: center; }
@media (max-width: 575.98px) {
  .hero-res.hero-foto { padding: 1.4rem 1rem 1.2rem; }
  .hero-res.hero-foto .hero-desc { font-size: .84rem; }
}

@media (max-width: 575.98px) {
  .hero-res { padding: 1.1rem 1rem 1rem; }
  .hero-res h1 { font-size: 1.3rem; }
  .hero-res h1.text-center { font-size: 1.15rem; }
  .hero-res .hero-btn { padding-left: .9rem; padding-right: .9rem; }
}

/* ---------------------------------------------------------------------------
 * 4. Resoluciones: filtros, resultados y visor de PDF
 * ------------------------------------------------------------------------- */
.filtros-res .form-group { margin-bottom: .5rem; }
.filtros-res label { font-size: .8rem; font-weight: 600; margin-bottom: .2rem; color: var(--u-texto-2); }
#f-chips .chip {
  display: inline-flex; align-items: center; gap: .35rem; margin: 0 .35rem .35rem 0;
  padding: .2rem .6rem; border-radius: .25rem; border: 1px solid var(--u-borde);
  background: #f8f9fa; color: var(--u-texto-2); font-size: .8rem;
}
#f-chips .chip:hover { border-color: var(--u-guinda-texto); color: var(--u-guinda-texto); }
#tabla-datos a { color: var(--u-guinda-texto); font-weight: 600; }
#tabla-datos td.col-asunto { min-width: 260px; }

.visor-cuerpo { position: relative; height: 75vh; background: #f4f4f4; }
.visor-cuerpo iframe { width: 100%; height: 100%; border: 0; display: block; }
.visor-estado {
  position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center;
  justify-content: center; color: #666; text-align: center; padding: 1rem;
}
#visor-sub { display: block; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#visor .modal-header > div { min-width: 0; }
@media (max-width: 767.98px) {
  .visor-cuerpo { height: 65vh; }
  #visor-pos { order: -1; width: 100%; text-align: center; margin-bottom: .5rem; }
  #visor .modal-footer { flex-wrap: wrap; }
}

/* ---------------------------------------------------------------------------
 * 5. Directorio de correos
 * ------------------------------------------------------------------------- */
.dir-tabs { flex-wrap: nowrap; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; }
.dir-tabs .nav-link { white-space: nowrap; }
.dir-tabs .nav-link .fas { opacity: .7; }
.dir-tabs .nav-link.active .fas { opacity: 1; }
.tabla-directorio .correo { white-space: nowrap; }
.copiar-correo { color: var(--u-gris); border: 0; background: none; padding: 0 .25rem; margin-left: .25rem; line-height: 1; }
.copiar-correo:hover, .copiar-correo:focus { color: var(--u-guinda-texto); }
.copiar-correo.copiado { color: #2e7d32; }

/* ---------------------------------------------------------------------------
 * 6. Inicio (presentación): portada con foto y tarjetas
 * ------------------------------------------------------------------------- */
.portada {
  position: relative; overflow: hidden; border-radius: .25rem; margin: 1rem 0 1.75rem;
  min-height: 380px; display: flex; align-items: center; background: #3a3a3a;
}
.portada-foto { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 12%; }
.portada::after {               /* capa oscura neutra para que el texto se lea sobre la foto */
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(20, 20, 20, .80) 0%, rgba(20, 20, 20, .66) 55%, rgba(20, 20, 20, .38) 100%);
}
.portada-contenido { position: relative; z-index: 1; max-width: 760px; padding: 2.5rem 2.25rem; color: #fff; }
.portada h1 { font-size: 1.9rem; font-weight: 700; line-height: 1.25; margin: 0 0 .75rem; text-shadow: 0 1px 2px rgba(0, 0, 0, .35); }
.portada-legal { font-size: .9rem; color: rgba(255, 255, 255, .88); margin: 0 0 1.4rem; }
.portada-legal a, .portada-total a { color: #fff !important; text-decoration: underline; text-underline-offset: 2px; }
.portada-buscar .form-control { border: 0; }
.portada-buscar .btn { padding-left: 1.4rem; padding-right: 1.4rem; }
.portada-total { margin: .75rem 0 0; font-size: .92rem; color: rgba(255, 255, 255, .9); }

.seccion-titulo { font-size: 1.2rem; font-weight: 600; color: var(--u-texto); margin: 0 0 1rem; }
.seccion-titulo small { font-size: .85rem; font-weight: 400; }

.tarjeta-u { border: 1px solid var(--u-borde); box-shadow: none; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.tarjeta-u:hover, .tarjeta-u:focus-within { border-color: #b98a88; box-shadow: 0 4px 14px rgba(0, 0, 0, .08); transform: translateY(-2px); }
.tarjeta-u .card-body { display: flex; align-items: center; gap: 1rem; padding: 1.1rem 1.15rem; }
.tarjeta-icono {
  display: inline-flex; align-items: center; justify-content: center; flex: none;
  width: 3.75rem; height: 3.75rem; border-radius: .6rem;
  background: var(--u-guinda-suave); color: var(--u-guinda); font-size: 1.75rem;
}
.tarjeta-u:hover .tarjeta-icono { background: var(--u-guinda); color: #fff; }
.tarjeta-icono { transition: background-color .15s ease, color .15s ease; }
.tarjeta-titulo { font-size: .98rem; font-weight: 600; line-height: 1.3; margin: 0 0 .3rem; }
.content-wrapper .tarjeta-titulo a { color: var(--u-texto); }
.content-wrapper .tarjeta-u:hover .tarjeta-titulo a { color: var(--u-guinda-texto); }
.tarjeta-titulo a:focus { outline: none; }
.tarjeta-u:focus-within { outline: 2px solid var(--u-guinda); outline-offset: 2px; }
.tarjeta-cantidad { font-size: 1.15rem; font-weight: 700; color: var(--u-texto); font-variant-numeric: tabular-nums; }
.tarjeta-cantidad span:not(.num) { font-size: .8rem; font-weight: 400; color: var(--u-gris); }
.min-w-0 { min-width: 0; }

@media (max-width: 767.98px) {
  .portada { min-height: 0; }
  .portada::after { background: rgba(20, 20, 20, .74); }
  .portada-contenido { padding: 1.5rem 1.1rem; }
  .portada h1 { font-size: 1.3rem; }
  .portada-legal { font-size: .82rem; }
  .portada-buscar .btn { padding-left: .9rem; padding-right: .9rem; }
}
@media (max-width: 575.98px) {
  .tarjeta-u .card-body { padding: .85rem; gap: .75rem; }
  .tarjeta-icono { width: 3rem; height: 3rem; font-size: 1.35rem; }
  .tarjeta-titulo { font-size: .9rem; }
}
/* Portada: textos de apoyo */
.portada-ante { margin: 0 0 .6rem; font-size: .78rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: rgba(255, 255, 255, .78); }
.portada-ejemplos { margin: .6rem 0 0; font-size: .85rem; color: rgba(255, 255, 255, .8); }
.content-wrapper .portada-ejemplos a { color: #fff !important; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .5); text-underline-offset: 2px; }
.portada-buscar .form-control:focus { box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .45); }

/* Movimientos de la portada: la foto se acerca lentamente y el contenido aparece suave */
@keyframes portada-acercar { from { transform: scale(1.08); } to { transform: scale(1); } }
@keyframes subir-suave { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.portada-foto { animation: portada-acercar 16s ease-out both; will-change: transform; }
.portada-contenido > * { animation: subir-suave .7s ease-out both; }
.portada-contenido > *:nth-child(2) { animation-delay: .08s; }
.portada-contenido > *:nth-child(3) { animation-delay: .16s; }
.portada-contenido > *:nth-child(4) { animation-delay: .24s; }

/* Franja de cifras, montada sobre el borde inferior de la portada */
.cifras {
  position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, 1fr);
  margin: -3.25rem 1.5rem 2rem; background: #fff; border: 1px solid var(--u-borde); border-radius: .4rem;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .08); animation: subir-suave .7s .3s ease-out both;
}
.cifra { display: flex; align-items: center; gap: .9rem; padding: 1.1rem 1.4rem; }
.cifra + .cifra { border-left: 1px solid var(--u-borde); }
.cifra-icono {
  flex: none; display: inline-flex; align-items: center; justify-content: center;
  width: 3rem; height: 3rem; border-radius: 50%; background: var(--u-guinda-suave); color: var(--u-guinda); font-size: 1.25rem;
}
.cifra strong { display: block; font-size: 1.6rem; line-height: 1.1; color: var(--u-texto); font-variant-numeric: tabular-nums; }
.cifra div > span { font-size: .85rem; color: var(--u-gris); }
.portada + .cifras { margin-top: -3.25rem; }
.portada:has(+ .cifras) { padding-bottom: 2.5rem; margin-bottom: 0; }

/* Últimas resoluciones */
.tarjeta-ultima .card-body { display: block; }
.ultima-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .25rem .75rem; margin-bottom: .4rem; font-size: .8rem; color: var(--u-gris); }
.ultima-tipo { font-weight: 600; color: var(--u-guinda-texto); }
.ultima-asunto { font-size: .88rem; color: var(--u-texto-2); line-height: 1.5; }
.tarjeta-ultima { border-left: 3px solid var(--u-guinda); }
.ver-todas { font-weight: 600; }

/* Aparición al hacer scroll (la activa unsch-publico.js; sin JavaScript todo se ve normal) */
.js-animado .aparecer { opacity: 0; transform: translateY(18px); transition: opacity .55s ease-out, transform .55s ease-out; }
.js-animado .aparecer.visible { opacity: 1; transform: none; }

/* Botón volver arriba */
.volver-arriba {
  position: fixed; right: 1.25rem; bottom: 1.25rem; z-index: 1030; width: 2.75rem; height: 2.75rem; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center; background: var(--u-guinda); color: #fff !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .2); opacity: 0; visibility: hidden; transform: translateY(10px);
  transition: opacity .25s ease, transform .25s ease, visibility .25s;
}
.volver-arriba.visible { opacity: 1; visibility: visible; transform: none; }
.volver-arriba:hover { background: var(--u-guinda-oscuro); text-decoration: none; }

@media (max-width: 767.98px) {
  .cifras { grid-template-columns: 1fr; margin: -2.5rem .75rem 1.5rem; }
  .cifra { padding: .8rem 1rem; }
  .cifra + .cifra { border-left: 0; border-top: 1px solid var(--u-borde); }
  .cifra strong { font-size: 1.3rem; }
  .cifra-icono { width: 2.5rem; height: 2.5rem; font-size: 1.05rem; }
}

/* Quien pidió "reducir movimiento" en su equipo no ve animaciones */
@media (prefers-reduced-motion: reduce) {
  .tarjeta-u, .tarjeta-icono, .volver-arriba { transition: none; }
  .tarjeta-u:hover { transform: none; }
  .portada-foto, .portada-contenido > *, .cifras { animation: none; }
  .js-animado .aparecer { opacity: 1; transform: none; transition: none; }
}

/* ---------------------------------------------------------------------------
 * 7. Documentos por dependencia: menú lateral
 * ------------------------------------------------------------------------- */
.sidebar-unsch .brand-link { border-bottom: 1px solid var(--u-borde); }
.sidebar-unsch .brand-link .brand-image { max-height: 34px; width: auto; opacity: 1; box-shadow: none; }
.sidebar-unsch .nav-sidebar .nav-link { color: var(--u-texto-2); }
.sidebar-unsch .nav-sidebar .nav-link p { display: inline-flex; align-items: center; justify-content: space-between; width: calc(100% - 2rem); }
.sidebar-unsch .nav-sidebar .nav-icon { color: var(--u-gris); }
/* (selectores largos a propósito: AdminLTE pinta el activo de azul con uno muy específico) */
.main-sidebar.sidebar-unsch .nav-sidebar > .nav-item > .nav-link.active,
.main-sidebar.sidebar-unsch .nav-sidebar > .nav-item.menu-open > .nav-link,
.main-sidebar.sidebar-unsch .nav-treeview > .nav-item > .nav-link.active,
.main-sidebar.sidebar-unsch .nav-treeview > .nav-item > .nav-link.active:hover {
  background-color: var(--u-guinda-suave); color: var(--u-guinda-texto); box-shadow: none;
}
.main-sidebar.sidebar-unsch .nav-sidebar > .nav-item > .nav-link.active { box-shadow: inset 3px 0 0 var(--u-guinda); }
.main-sidebar.sidebar-unsch .nav-sidebar .nav-link.active .nav-icon { color: var(--u-guinda-texto); }
/* Con menú lateral, el nombre ya está arriba del menú: no se repite en la barra */
body.sidebar-mini .nav-unsch .marca,
body:has(.main-sidebar) .nav-unsch .marca { display: none; }
.sidebar-unsch .badge-u { background: #eee; color: #555; font-weight: 600; margin-left: .5rem; }
.sidebar-unsch .nav-sidebar .nav-link.active .badge-u { background: var(--u-guinda); color: #fff; }
.sidebar-unsch .nav-treeview .nav-link { padding-left: 2.2rem; }

/* ---------------------------------------------------------------------------
 * 8. Páginas con menú lateral (documentos por dependencia)
 * Lo correcto es que la plantilla 'document' tenga <body class="hold-transition sidebar-mini layout-fixed">.
 * Si por error tiene "layout-top-nav", AdminLTE no deja espacio al menú y lo tapa todo:
 * estas reglas lo reservan igual cuando la página tiene el menú lateral.
 * ------------------------------------------------------------------------- */
@media (min-width: 768px) {
  body.layout-top-nav:has(.main-sidebar.sidebar-unsch):not(.sidebar-collapse) .content-wrapper,
  body.layout-top-nav:has(.main-sidebar.sidebar-unsch):not(.sidebar-collapse) .main-header,
  body.layout-top-nav:has(.main-sidebar.sidebar-unsch):not(.sidebar-collapse) .main-footer { margin-left: 250px; }
}
/* Botón de la barra que abre/cierra el menú lateral: solo aparece si la página lo tiene */
.nav-unsch .btn-menu-lateral { display: none; }
body:has(.main-sidebar) .nav-unsch .btn-menu-lateral { display: block; }
