/* Informes (issue #15).
 * Hoja del módulo: cada módulo tiene la suya (issue #27). */

.mdo-informes {
    display: grid;
    grid-template-columns: 15rem minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

@media (max-width: 64rem) {
    .mdo-informes { grid-template-columns: minmax(0, 1fr); }
}

.mdo-informes-lista {
    padding: 0.75rem;
}

.mdo-informes-lista ul {
    list-style: none;
    margin: 0 0 0.5rem;
    padding: 0;
}

.mdo-informes-grupo {
    margin: 0.5rem 0.5rem 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--mdo-texto-2);
}

.mdo-informes-lista button {
    position: relative;
    display: block;
    width: 100%;
    padding: 0.4rem 0.6rem;
    border-radius: 8px;
    text-align: start;
    font-size: 0.875rem;
}

.mdo-informes-lista button:hover { background-color: rgba(3, 161, 226, 0.08); }

.mdo-informes-lista button.is-on {
    background-color: rgba(3, 161, 226, 0.14);
    font-weight: 600;
}

/* El gesto anaglifo del menú también marca el informe activo. */
.mdo-informes-lista button.is-on::before {
    content: '';
    position: absolute;
    inset-inline-start: 0;
    top: 0.4rem;
    bottom: 0.4rem;
    width: 3px;
    border-radius: 2px;
    background: var(--mdo-cian);
    box-shadow: 3px 0 0 var(--mdo-rojo);
}

.mdo-informes-cuerpo {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
}

.mdo-informes-cabecera {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 1rem;
}

.mdo-informes-titulo {
    font-family: var(--mdo-display);
    font-weight: 400;
    font-size: 1.5rem;
}

.mdo-informes-periodo { font-weight: 500; }

.mdo-informes-acciones {
    display: flex;
    gap: 0.5rem;
    align-items: flex-start;
}

.mdo-informes-filtros {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: flex-end;
}

.mdo-informes-filtros label {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.mdo-informes-tabla tfoot td {
    font-weight: 600;
    border-top: 2px solid var(--mdo-linea);
}

.mdo-informes-pie { padding: 0.75rem 1.25rem; }

/* Impresión / «Guardar como PDF» del navegador: solo el informe. */
@media print {
    .fi-sidebar,
    .fi-topbar,
    .fi-header,
    .mdo-informes-lista,
    .mdo-no-imprimir { display: none !important; }

    .fi-main-ctn, .fi-main { padding: 0 !important; margin: 0 !important; max-width: none !important; }

    .mdo-informes { display: block; }

    .mdo-informes .mdo-panel { box-shadow: none !important; border: 0 !important; }

    .mdo-informes-tabla { font-size: 9pt; }

    .mdo-informes-tabla thead { display: table-header-group; }

    .mdo-informes-tabla tr { break-inside: avoid; }
}
