/* ============================================================
   ORFEO — Modo oscuro opcional (1-11-2026)

   Se activa con <html data-orfeo-aspecto="oscuro"> (botón luna/sol de la cabecera; guardado en este navegador).
   Técnica: se invierte la luminosidad de toda la página y se gira el tono 180° para que los colores de marca
   (terracota, verdes, rojos) mantengan su matiz. Así cubre también DevExpress, las ventanas y los estilos
   escritos en cada pantalla, sin duplicar los 364 colores de app.css.

   · Las imágenes de contenido, PDFs y lienzos se «des-invierten» para verse normales (facturas, visores, fotos).
   · Los logos (carpeta logos/) se dejan invertidos: son para fondo claro y así se leen sobre el oscuro.
   · El velo que oscurece el fondo bajo una ventana se declara claro: al invertirse queda oscuro.
   · Al imprimir se anula, para que los informes salgan siempre en blanco.

   PARA QUITARLO: borrar su <link> en Components/App.razor y el botón luna/sol de MainLayout.razor
   (o git revert de los commits «Modo oscuro»).
   ============================================================ */

html[data-orfeo-aspecto="oscuro"] {
    filter: invert(.92) hue-rotate(180deg);
    background: #fff;                       /* se invierte a un casi negro suave, no a negro puro */
}

html[data-orfeo-aspecto="oscuro"] img:not([src*="logos/"]),
html[data-orfeo-aspecto="oscuro"] video,
html[data-orfeo-aspecto="oscuro"] iframe,
html[data-orfeo-aspecto="oscuro"] embed,
html[data-orfeo-aspecto="oscuro"] object,
html[data-orfeo-aspecto="oscuro"] canvas {
    filter: invert(1) hue-rotate(180deg);
}

html[data-orfeo-aspecto="oscuro"] .popup-host-backdrop {
    background: rgba(255, 255, 255, .5);
}

@media print {
    html[data-orfeo-aspecto="oscuro"],
    html[data-orfeo-aspecto="oscuro"] img,
    html[data-orfeo-aspecto="oscuro"] video,
    html[data-orfeo-aspecto="oscuro"] iframe,
    html[data-orfeo-aspecto="oscuro"] embed,
    html[data-orfeo-aspecto="oscuro"] object,
    html[data-orfeo-aspecto="oscuro"] canvas {
        filter: none !important;
    }
}
