/* Paletas por cliente. Flatly conserva los valores originales de menu_bootstrap.css. */
:root[data-sigem-theme="cosmo"] {
    --sigem-background-138b75: #eaf3fc;
    --sigem-background-16a085: #eaf3fc;
    --sigem-background-18a98e: #eaf3fc;
    --sigem-background-18bc9c: #eaf3fc;
    --sigem-background-243746: #214b76;
    --sigem-background-288671: #eaf3fc;
    --sigem-background-2c3e50: #214b76;
    --sigem-background-2c4052: #214b76;
    --sigem-background-345269: #214b76;
    --sigem-background-526b7b: #214b76;
    --sigem-background-80505a: #80505a;
    --sigem-background-a45965: #a45965;
    --sigem-background-b64b4b: #b64b4b;
    --sigem-background-e0f3e9: #e0f3e9;
    --sigem-background-e1f2eb: #e1f2eb;
    --sigem-background-e1f4ed: #e1f4ed;
    --sigem-background-e3f2ed: #e3f2ed;
    --sigem-background-e8f6f1: #e8f6f1;
    --sigem-background-e8f8f3: #e8f8f3;
    --sigem-background-e8f8f5: #e8f8f5;
    --sigem-background-e9ecef: #f1f5fa;
    --sigem-background-eaf0f3: #f1f5fa;
    --sigem-background-eaf4f0: #f1f5fa;
    --sigem-background-eaf7f3: #eaf7f3;
    --sigem-background-ecf0f1: #f1f5fa;
    --sigem-background-edf1f4: #f1f5fa;
    --sigem-background-edf3f5: #f1f5fa;
    --sigem-background-edf4f1: #f1f5fa;
    --sigem-background-edf4f8: #edf4f8;
    --sigem-background-edf5f2: #f1f5fa;
    --sigem-background-edf6f1: #f1f5fa;
    --sigem-background-edf7f0: #edf7f0;
    --sigem-background-edf7f2: #edf7f2;
    --sigem-background-edf7f4: #edf7f4;
    --sigem-background-edf8f3: #edf8f3;
    --sigem-background-f0f4f6: #f1f5fa;
    --sigem-background-f0f6fa: #f0f6fa;
    --sigem-background-f0f7f4: #f1f5fa;
    --sigem-background-f0f8f4: #f0f8f4;
    --sigem-background-f1eeee: #f1f5fa;
    --sigem-background-f1f5f7: #f1f5fa;
    --sigem-background-f4e2e5: #f4e2e5;
    --sigem-background-f4f7f9: #f1f5fa;
    --sigem-background-f4f9f7: #f1f5fa;
    --sigem-background-f5e8c3: #f5e8c3;
    --sigem-background-f5f7f9: #f1f5fa;
    --sigem-background-f5f8fa: #f1f5fa;
    --sigem-background-f6f8fa: #f1f5fa;
    --sigem-background-f6faf8: #f1f5fa;
    --sigem-background-f7edef: #f7edef;
    --sigem-background-f7f9fb: #f1f5fa;
    --sigem-background-f8f9fa: #f1f5fa;
    --sigem-background-f8fafb: #f1f5fa;
    --sigem-background-f9fafb: #ffffff;
    --sigem-background-faeeeb: #faeeeb;
    --sigem-background-faf0f1: #faf0f1;
    --sigem-background-faf1f1: #faf1f1;
    --sigem-background-fbe9ec: #fbe9ec;
    --sigem-background-fdf1ef: #fdf1ef;
    --sigem-background-fff: #ffffff;
    --sigem-background-fff1cf: #fff1cf;
    --sigem-background-fff1df: #fff1df;
    --sigem-background-fff6dd: #fff6dd;
    --sigem-background-fff7de: #fff7de;
    --sigem-background-fff8e9: #fff8e9;
    --sigem-background-fff8f8: #fff8f8;
    --sigem-background-fffbf0: #fffbf0;
    --sigem-background-ffffff: #ffffff;
    --sigem-border-15987f: #2780e3;
    --sigem-border-16a085: #2780e3;
    --sigem-border-18a98e: #2780e3;
    --sigem-border-18bc9c: #2780e3;
    --sigem-border-288671: #2780e3;
    --sigem-border-289879: #2780e3;
    --sigem-border-2c3e50: #2c3e50;
    --sigem-border-3d5265: #3d5265;
    --sigem-border-405669: #405669;
    --sigem-border-51849e: #51849e;
    --sigem-border-8cd9c7: #8cd9c7;
    --sigem-border-a45965: #a45965;
    --sigem-border-b64b4b: #b64b4b;
    --sigem-border-b67464: #b67464;
    --sigem-border-b9ccc7: #b9ccc7;
    --sigem-border-ba9140: #ba9140;
    --sigem-border-c9e5d2: #c9e5d2;
    --sigem-border-cad5db: #cad5db;
    --sigem-border-cbdcd7: #cbdcd7;
    --sigem-border-cc929a: #cc929a;
    --sigem-border-cce3d8: #cce3d8;
    --sigem-border-ced4da: #ced4da;
    --sigem-border-cedfe9: #cedfe9;
    --sigem-border-cfdbe1: #cfdbe1;
    --sigem-border-d0e3dc: #d0e3dc;
    --sigem-border-d1d5db: #d1d5db;
    --sigem-border-d3dfe4: #d3dfe4;
    --sigem-border-d5a43a: #d5a43a;
    --sigem-border-d5ece6: #d5ece6;
    --sigem-border-dce4e8: #dce4e8;
    --sigem-border-dce5e9: #dce5e9;
    --sigem-border-dce9e4: #dce9e4;
    --sigem-border-dee2e6: #dee2e6;
    --sigem-border-e0e7eb: #e0e7eb;
    --sigem-border-e1e8ec: #e1e8ec;
    --sigem-border-e1e9ed: #e1e9ed;
    --sigem-border-e1eae7: #e1eae7;
    --sigem-border-e2cbd0: #e2cbd0;
    --sigem-border-e2d7d9: #e2d7d9;
    --sigem-border-e2e9ed: #e2e9ed;
    --sigem-border-e3e9ec: #e3e9ec;
    --sigem-border-e4ccd0: #e4ccd0;
    --sigem-border-e4e9ed: #e4e9ed;
    --sigem-border-e4ebef: #e4ebef;
    --sigem-border-e6ecef: #e6ecef;
    --sigem-border-e7cdd2: #e7cdd2;
    --sigem-border-e7edf0: #e7edf0;
    --sigem-border-e8edef: #e8edef;
    --sigem-border-e9eef1: #e9eef1;
    --sigem-border-eac3ca: #eac3ca;
    --sigem-border-ead7a3: #ead7a3;
    --sigem-border-ead7dc: #ead7dc;
    --sigem-border-eadbb6: #eadbb6;
    --sigem-border-edf1f4: #edf1f4;
    --sigem-border-eee0e3: #eee0e3;
    --sigem-border-f0d0a6: #f0d0a6;
    --sigem-border-f3d9d4: #f3d9d4;
    --sigem-text-111827: #111827;
    --sigem-text-18a98e: #2780e3;
    --sigem-text-18bc9c: #2780e3;
    --sigem-text-212529: #212529;
    --sigem-text-216b50: #2780e3;
    --sigem-text-246b48: #2780e3;
    --sigem-text-26705e: #2780e3;
    --sigem-text-285d52: #2780e3;
    --sigem-text-286f59: #2780e3;
    --sigem-text-287e6c: #2780e3;
    --sigem-text-2c3e50: #2c3e50;
    --sigem-text-2ecc71: #2780e3;
    --sigem-text-327365: #2780e3;
    --sigem-text-34495e: #34495e;
    --sigem-text-365e73: #365e73;
    --sigem-text-3a4a5a: #3a4a5a;
    --sigem-text-3b695f: #2780e3;
    --sigem-text-4b6578: #4b6578;
    --sigem-text-526675: #526675;
    --sigem-text-526b7b: #526b7b;
    --sigem-text-5b6b7b: #5b6b7b;
    --sigem-text-607080: #607080;
    --sigem-text-607583: #607583;
    --sigem-text-617d74: #617d74;
    --sigem-text-66501e: #66501e;
    --sigem-text-6b7f8e: #6b7f8e;
    --sigem-text-6e8391: #6e8391;
    --sigem-text-765919: #765919;
    --sigem-text-77ac9e: #2780e3;
    --sigem-text-788b98: #788b98;
    --sigem-text-7b8a8b: #7b8a8b;
    --sigem-text-7f98a7: #7f98a7;
    --sigem-text-80505a: #80505a;
    --sigem-text-80632b: #80632b;
    --sigem-text-85764f: #85764f;
    --sigem-text-8b691e: #8b691e;
    --sigem-text-8b733b: #8b733b;
    --sigem-text-8cd9c7: #8cd9c7;
    --sigem-text-8ce3cf: #8ce3cf;
    --sigem-text-8fa8bd: #8fa8bd;
    --sigem-text-92a0aa: #92a0aa;
    --sigem-text-95a5a6: #95a5a6;
    --sigem-text-9a8589: #9a8589;
    --sigem-text-9b766b: #9b766b;
    --sigem-text-a33442: #a33442;
    --sigem-text-a45965: #a45965;
    --sigem-text-a65b13: #a65b13;
    --sigem-text-a7b2ba: #a7b2ba;
    --sigem-text-ac8024: #ac8024;
    --sigem-text-ad6555: #ad6555;
    --sigem-text-b64b4b: #b64b4b;
    --sigem-text-b88624: #b88624;
    --sigem-text-b8c7d6: #b8c7d6;
    --sigem-text-b9d4cc: #b9d4cc;
    --sigem-text-c6d4de: #c6d4de;
    --sigem-text-c8d6e5: #c8d6e5;
    --sigem-text-d3eee7: #d3eee7;
    --sigem-text-f0dce0: #f0dce0;
    --sigem-text-fff: #fff;
    --sigem-text-fff0f2: #fff0f2;
    --sigem-text-ffffff: #ffffff;
}
:root[data-sigem-theme="superhero"] {
    --sigem-background-138b75: #377e6d;
    --sigem-background-16a085: #377e6d;
    --sigem-background-18a98e: #377e6d;
    --sigem-background-18bc9c: #377e6d;
    --sigem-background-243746: #26394b;
    --sigem-background-288671: #377e6d;
    --sigem-background-2c3e50: #26394b;
    --sigem-background-2c4052: #26394b;
    --sigem-background-345269: #26394b;
    --sigem-background-526b7b: #40586e;
    --sigem-background-80505a: #a94c5c;
    --sigem-background-a45965: #a94c5c;
    --sigem-background-b64b4b: #a94c5c;
    --sigem-background-e0f3e9: #294e4c;
    --sigem-background-e1f2eb: #294e4c;
    --sigem-background-e1f4ed: #294e4c;
    --sigem-background-e3f2ed: #294e4c;
    --sigem-background-e8f6f1: #294e4c;
    --sigem-background-e8f8f3: #294e4c;
    --sigem-background-e8f8f5: #294e4c;
    --sigem-background-e9ecef: #34495e;
    --sigem-background-eaf0f3: #34495e;
    --sigem-background-eaf4f0: #294e4c;
    --sigem-background-eaf7f3: #294e4c;
    --sigem-background-ecf0f1: #34495e;
    --sigem-background-edf1f4: #34495e;
    --sigem-background-edf3f5: #34495e;
    --sigem-background-edf4f1: #294e4c;
    --sigem-background-edf4f8: #34495e;
    --sigem-background-edf5f2: #294e4c;
    --sigem-background-edf6f1: #294e4c;
    --sigem-background-edf7f0: #294e4c;
    --sigem-background-edf7f2: #294e4c;
    --sigem-background-edf7f4: #294e4c;
    --sigem-background-edf8f3: #294e4c;
    --sigem-background-f0f4f6: #34495e;
    --sigem-background-f0f6fa: #34495e;
    --sigem-background-f0f7f4: #294e4c;
    --sigem-background-f0f8f4: #294e4c;
    --sigem-background-f1eeee: #34495e;
    --sigem-background-f1f5f7: #34495e;
    --sigem-background-f4e2e5: #503a45;
    --sigem-background-f4f7f9: #34495e;
    --sigem-background-f4f9f7: #294e4c;
    --sigem-background-f5e8c3: #514936;
    --sigem-background-f5f7f9: #34495e;
    --sigem-background-f5f8fa: #34495e;
    --sigem-background-f6f8fa: #34495e;
    --sigem-background-f6faf8: #294e4c;
    --sigem-background-f7edef: #503a45;
    --sigem-background-f7f9fb: #34495e;
    --sigem-background-f8f9fa: #34495e;
    --sigem-background-f8fafb: #34495e;
    --sigem-background-f9fafb: #34495e;
    --sigem-background-faeeeb: #503a45;
    --sigem-background-faf0f1: #503a45;
    --sigem-background-faf1f1: #503a45;
    --sigem-background-fbe9ec: #503a45;
    --sigem-background-fdf1ef: #503a45;
    --sigem-background-fff: #34495e;
    --sigem-background-fff1cf: #514936;
    --sigem-background-fff1df: #514936;
    --sigem-background-fff6dd: #514936;
    --sigem-background-fff7de: #514936;
    --sigem-background-fff8e9: #514936;
    --sigem-background-fff8f8: #503a45;
    --sigem-background-fffbf0: #514936;
    --sigem-background-ffffff: #34495e;
    --sigem-border-15987f: #53786c;
    --sigem-border-16a085: #53786c;
    --sigem-border-18a98e: #53786c;
    --sigem-border-18bc9c: #53786c;
    --sigem-border-288671: #53786c;
    --sigem-border-289879: #53786c;
    --sigem-border-2c3e50: #526779;
    --sigem-border-3d5265: #526779;
    --sigem-border-405669: #526779;
    --sigem-border-51849e: #526779;
    --sigem-border-8cd9c7: #53786c;
    --sigem-border-a45965: #80525a;
    --sigem-border-b64b4b: #80525a;
    --sigem-border-b67464: #80525a;
    --sigem-border-b9ccc7: #53786c;
    --sigem-border-ba9140: #827149;
    --sigem-border-c9e5d2: #53786c;
    --sigem-border-cad5db: #526779;
    --sigem-border-cbdcd7: #53786c;
    --sigem-border-cc929a: #80525a;
    --sigem-border-cce3d8: #53786c;
    --sigem-border-ced4da: #526779;
    --sigem-border-cedfe9: #526779;
    --sigem-border-cfdbe1: #526779;
    --sigem-border-d0e3dc: #53786c;
    --sigem-border-d1d5db: #526779;
    --sigem-border-d3dfe4: #526779;
    --sigem-border-d5a43a: #827149;
    --sigem-border-d5ece6: #53786c;
    --sigem-border-dce4e8: #526779;
    --sigem-border-dce5e9: #526779;
    --sigem-border-dce9e4: #53786c;
    --sigem-border-dee2e6: #526779;
    --sigem-border-e0e7eb: #526779;
    --sigem-border-e1e8ec: #526779;
    --sigem-border-e1e9ed: #526779;
    --sigem-border-e1eae7: #53786c;
    --sigem-border-e2cbd0: #80525a;
    --sigem-border-e2d7d9: #80525a;
    --sigem-border-e2e9ed: #526779;
    --sigem-border-e3e9ec: #526779;
    --sigem-border-e4ccd0: #80525a;
    --sigem-border-e4e9ed: #526779;
    --sigem-border-e4ebef: #526779;
    --sigem-border-e6ecef: #526779;
    --sigem-border-e7cdd2: #80525a;
    --sigem-border-e7edf0: #526779;
    --sigem-border-e8edef: #526779;
    --sigem-border-e9eef1: #526779;
    --sigem-border-eac3ca: #80525a;
    --sigem-border-ead7a3: #827149;
    --sigem-border-ead7dc: #80525a;
    --sigem-border-eadbb6: #827149;
    --sigem-border-edf1f4: #526779;
    --sigem-border-eee0e3: #80525a;
    --sigem-border-f0d0a6: #827149;
    --sigem-border-f3d9d4: #80525a;
    --sigem-text-111827: #ebebeb;
    --sigem-text-18a98e: #df691a;
    --sigem-text-18bc9c: #df691a;
    --sigem-text-212529: #ebebeb;
    --sigem-text-216b50: #df691a;
    --sigem-text-246b48: #df691a;
    --sigem-text-26705e: #df691a;
    --sigem-text-285d52: #df691a;
    --sigem-text-286f59: #df691a;
    --sigem-text-287e6c: #df691a;
    --sigem-text-2c3e50: #ebebeb;
    --sigem-text-2ecc71: #df691a;
    --sigem-text-327365: #df691a;
    --sigem-text-34495e: #ebebeb;
    --sigem-text-365e73: #ebebeb;
    --sigem-text-3a4a5a: #ebebeb;
    --sigem-text-3b695f: #df691a;
    --sigem-text-4b6578: #c0ccd6;
    --sigem-text-526675: #c0ccd6;
    --sigem-text-526b7b: #c0ccd6;
    --sigem-text-5b6b7b: #c0ccd6;
    --sigem-text-607080: #c0ccd6;
    --sigem-text-607583: #c0ccd6;
    --sigem-text-617d74: #c0ccd6;
    --sigem-text-66501e: #f5d18d;
    --sigem-text-6b7f8e: #c0ccd6;
    --sigem-text-6e8391: #c0ccd6;
    --sigem-text-765919: #f5d18d;
    --sigem-text-77ac9e: #df691a;
    --sigem-text-788b98: #c0ccd6;
    --sigem-text-7b8a8b: #c0ccd6;
    --sigem-text-7f98a7: #c0ccd6;
    --sigem-text-80505a: #f0acb6;
    --sigem-text-80632b: #f5d18d;
    --sigem-text-85764f: #f5d18d;
    --sigem-text-8b691e: #f5d18d;
    --sigem-text-8b733b: #f5d18d;
    --sigem-text-8cd9c7: #8dd6b9;
    --sigem-text-8ce3cf: #8dd6b9;
    --sigem-text-8fa8bd: #c0ccd6;
    --sigem-text-92a0aa: #c0ccd6;
    --sigem-text-95a5a6: #c0ccd6;
    --sigem-text-9a8589: #c0ccd6;
    --sigem-text-9b766b: #f0acb6;
    --sigem-text-a33442: #f0acb6;
    --sigem-text-a45965: #f0acb6;
    --sigem-text-a65b13: #f5d18d;
    --sigem-text-a7b2ba: #c0ccd6;
    --sigem-text-ac8024: #f5d18d;
    --sigem-text-ad6555: #f0acb6;
    --sigem-text-b64b4b: #f0acb6;
    --sigem-text-b88624: #f5d18d;
    --sigem-text-b8c7d6: #c0ccd6;
    --sigem-text-b9d4cc: #8dd6b9;
    --sigem-text-c6d4de: #c0ccd6;
    --sigem-text-c8d6e5: #c0ccd6;
    --sigem-text-d3eee7: #8dd6b9;
    --sigem-text-f0dce0: #f0acb6;
    --sigem-text-fff: #ffffff;
    --sigem-text-fff0f2: #f0acb6;
    --sigem-text-ffffff: #ffffff;
}

/* Superficies legacy que no dependen de los componentes modernizados. */
html[data-sigem-theme="superhero"] body,
html[data-sigem-theme="superhero"] #appContainer { background-color: #2b3e50; color: #ebebeb; }
html[data-sigem-theme="superhero"] #appContainer h1,
html[data-sigem-theme="superhero"] #appContainer h2,
html[data-sigem-theme="superhero"] #appContainer h3 { color: #ebebeb; }
html[data-sigem-theme="superhero"] #appContainer input:not([type=button]):not([type=submit]):not([type=checkbox]):not([type=radio]),
html[data-sigem-theme="superhero"] #appContainer select,
html[data-sigem-theme="superhero"] #appContainer textarea { background-color: #26394b; color: #ebebeb; border-color: #526779; }
html[data-sigem-theme="superhero"] #appContainer input:disabled,
html[data-sigem-theme="superhero"] #appContainer select:disabled { background-color: #3b4c5c; color: #aebbc6; }
html[data-sigem-theme="superhero"] #appContainer .card,
html[data-sigem-theme="superhero"] #appContainer .modal-content { background-color: #34495e; color: #ebebeb; }
html[data-sigem-theme="superhero"] #appContainer .bg-light { background-color: #34495e !important; }
html[data-sigem-theme="superhero"] #appContainer .text-dark { color: #ebebeb !important; }
html[data-sigem-theme="superhero"] #appContainer .text-muted { color: #bdcad6 !important; }
html[data-sigem-theme="superhero"] #appContainer td[style*="background-color: #FFFFFF"] { background-color: #34495e !important; }
html[data-sigem-theme="cosmo"] #appContainer { background-color: #f5f7fa; }
html[data-sigem-theme="superhero"] #footer { background: #26394b; color: #c0ccd6; border-color: #526779; }
/* Respaldo claro para calificaciones transparentes; cualquier color configurado
   por clase o inline tiene prioridad gracias a la especificidad cero. */
:where(html[data-sigem-theme="superhero"] .persona-calificacion-badge) { background-color: #f5f8fa; }

:root[data-sigem-theme="materia"] {
    --sigem-background-138b75: #e3f2fd;
    --sigem-background-16a085: #e3f2fd;
    --sigem-background-18a98e: #e3f2fd;
    --sigem-background-18bc9c: #e3f2fd;
    --sigem-background-243746: #234b73;
    --sigem-background-288671: #e3f2fd;
    --sigem-background-2c3e50: #234b73;
    --sigem-background-2c4052: #234b73;
    --sigem-background-345269: #234b73;
    --sigem-background-526b7b: #234b73;
    --sigem-background-80505a: #80505a;
    --sigem-background-a45965: #a45965;
    --sigem-background-b64b4b: #b64b4b;
    --sigem-background-e0f3e9: #e3f2fd;
    --sigem-background-e1f2eb: #e3f2fd;
    --sigem-background-e1f4ed: #e3f2fd;
    --sigem-background-e3f2ed: #e3f2fd;
    --sigem-background-e8f6f1: #e3f2fd;
    --sigem-background-e8f8f3: #e3f2fd;
    --sigem-background-e8f8f5: #e3f2fd;
    --sigem-background-e9ecef: #f3f6f8;
    --sigem-background-eaf0f3: #f3f6f8;
    --sigem-background-eaf4f0: #e3f2fd;
    --sigem-background-eaf7f3: #e3f2fd;
    --sigem-background-ecf0f1: #f3f6f8;
    --sigem-background-edf1f4: #f3f6f8;
    --sigem-background-edf3f5: #f3f6f8;
    --sigem-background-edf4f1: #e3f2fd;
    --sigem-background-edf4f8: #f3f6f8;
    --sigem-background-edf5f2: #e3f2fd;
    --sigem-background-edf6f1: #e3f2fd;
    --sigem-background-edf7f0: #e3f2fd;
    --sigem-background-edf7f2: #e3f2fd;
    --sigem-background-edf7f4: #e3f2fd;
    --sigem-background-edf8f3: #e3f2fd;
    --sigem-background-f0f4f6: #f3f6f8;
    --sigem-background-f0f6fa: #f3f6f8;
    --sigem-background-f0f7f4: #e3f2fd;
    --sigem-background-f0f8f4: #e3f2fd;
    --sigem-background-f1eeee: #f3f6f8;
    --sigem-background-f1f5f7: #f3f6f8;
    --sigem-background-f4e2e5: #f4e2e5;
    --sigem-background-f4f7f9: #f3f6f8;
    --sigem-background-f4f9f7: #e3f2fd;
    --sigem-background-f5e8c3: #f5e8c3;
    --sigem-background-f5f7f9: #f3f6f8;
    --sigem-background-f5f8fa: #f3f6f8;
    --sigem-background-f6f8fa: #f3f6f8;
    --sigem-background-f6faf8: #e3f2fd;
    --sigem-background-f7edef: #f7edef;
    --sigem-background-f7f9fb: #f3f6f8;
    --sigem-background-f8f9fa: #f3f6f8;
    --sigem-background-f8fafb: #f3f6f8;
    --sigem-background-f9fafb: #ffffff;
    --sigem-background-faeeeb: #faeeeb;
    --sigem-background-faf0f1: #faf0f1;
    --sigem-background-faf1f1: #faf1f1;
    --sigem-background-fbe9ec: #fbe9ec;
    --sigem-background-fdf1ef: #fdf1ef;
    --sigem-background-fff: #ffffff;
    --sigem-background-fff1cf: #fff1cf;
    --sigem-background-fff1df: #fff1df;
    --sigem-background-fff6dd: #fff6dd;
    --sigem-background-fff7de: #fff7de;
    --sigem-background-fff8e9: #fff8e9;
    --sigem-background-fff8f8: #fff8f8;
    --sigem-background-fffbf0: #fffbf0;
    --sigem-background-ffffff: #ffffff;
    --sigem-border-15987f: #90caf9;
    --sigem-border-16a085: #90caf9;
    --sigem-border-18a98e: #90caf9;
    --sigem-border-18bc9c: #90caf9;
    --sigem-border-288671: #90caf9;
    --sigem-border-289879: #90caf9;
    --sigem-border-2c3e50: #d4dfe6;
    --sigem-border-3d5265: #d4dfe6;
    --sigem-border-405669: #d4dfe6;
    --sigem-border-51849e: #d4dfe6;
    --sigem-border-8cd9c7: #90caf9;
    --sigem-border-a45965: #a45965;
    --sigem-border-b64b4b: #b64b4b;
    --sigem-border-b67464: #b67464;
    --sigem-border-b9ccc7: #90caf9;
    --sigem-border-ba9140: #ba9140;
    --sigem-border-c9e5d2: #90caf9;
    --sigem-border-cad5db: #d4dfe6;
    --sigem-border-cbdcd7: #90caf9;
    --sigem-border-cc929a: #cc929a;
    --sigem-border-cce3d8: #90caf9;
    --sigem-border-ced4da: #d4dfe6;
    --sigem-border-cedfe9: #d4dfe6;
    --sigem-border-cfdbe1: #d4dfe6;
    --sigem-border-d0e3dc: #90caf9;
    --sigem-border-d1d5db: #d4dfe6;
    --sigem-border-d3dfe4: #d4dfe6;
    --sigem-border-d5a43a: #d5a43a;
    --sigem-border-d5ece6: #90caf9;
    --sigem-border-dce4e8: #d4dfe6;
    --sigem-border-dce5e9: #d4dfe6;
    --sigem-border-dce9e4: #90caf9;
    --sigem-border-dee2e6: #d4dfe6;
    --sigem-border-e0e7eb: #d4dfe6;
    --sigem-border-e1e8ec: #d4dfe6;
    --sigem-border-e1e9ed: #d4dfe6;
    --sigem-border-e1eae7: #90caf9;
    --sigem-border-e2cbd0: #e2cbd0;
    --sigem-border-e2d7d9: #e2d7d9;
    --sigem-border-e2e9ed: #d4dfe6;
    --sigem-border-e3e9ec: #d4dfe6;
    --sigem-border-e4ccd0: #e4ccd0;
    --sigem-border-e4e9ed: #d4dfe6;
    --sigem-border-e4ebef: #d4dfe6;
    --sigem-border-e6ecef: #d4dfe6;
    --sigem-border-e7cdd2: #e7cdd2;
    --sigem-border-e7edf0: #d4dfe6;
    --sigem-border-e8edef: #d4dfe6;
    --sigem-border-e9eef1: #d4dfe6;
    --sigem-border-eac3ca: #eac3ca;
    --sigem-border-ead7a3: #ead7a3;
    --sigem-border-ead7dc: #ead7dc;
    --sigem-border-eadbb6: #eadbb6;
    --sigem-border-edf1f4: #d4dfe6;
    --sigem-border-eee0e3: #eee0e3;
    --sigem-border-f0d0a6: #f0d0a6;
    --sigem-border-f3d9d4: #f3d9d4;
    --sigem-text-111827: #111827;
    --sigem-text-18a98e: #1976d2;
    --sigem-text-18bc9c: #1976d2;
    --sigem-text-212529: #212529;
    --sigem-text-216b50: #1976d2;
    --sigem-text-246b48: #1976d2;
    --sigem-text-26705e: #1976d2;
    --sigem-text-285d52: #1976d2;
    --sigem-text-286f59: #1976d2;
    --sigem-text-287e6c: #1976d2;
    --sigem-text-2c3e50: #2c3e50;
    --sigem-text-2ecc71: #1976d2;
    --sigem-text-327365: #1976d2;
    --sigem-text-34495e: #34495e;
    --sigem-text-365e73: #365e73;
    --sigem-text-3a4a5a: #3a4a5a;
    --sigem-text-3b695f: #1976d2;
    --sigem-text-4b6578: #4b6578;
    --sigem-text-526675: #526675;
    --sigem-text-526b7b: #526b7b;
    --sigem-text-5b6b7b: #5b6b7b;
    --sigem-text-607080: #607080;
    --sigem-text-607583: #607583;
    --sigem-text-617d74: #617d74;
    --sigem-text-66501e: #66501e;
    --sigem-text-6b7f8e: #6b7f8e;
    --sigem-text-6e8391: #6e8391;
    --sigem-text-765919: #765919;
    --sigem-text-77ac9e: #1976d2;
    --sigem-text-788b98: #788b98;
    --sigem-text-7b8a8b: #7b8a8b;
    --sigem-text-7f98a7: #7f98a7;
    --sigem-text-80505a: #80505a;
    --sigem-text-80632b: #80632b;
    --sigem-text-85764f: #85764f;
    --sigem-text-8b691e: #8b691e;
    --sigem-text-8b733b: #8b733b;
    --sigem-text-8cd9c7: #1976d2;
    --sigem-text-8ce3cf: #1976d2;
    --sigem-text-8fa8bd: #8fa8bd;
    --sigem-text-92a0aa: #92a0aa;
    --sigem-text-95a5a6: #95a5a6;
    --sigem-text-9a8589: #9a8589;
    --sigem-text-9b766b: #9b766b;
    --sigem-text-a33442: #a33442;
    --sigem-text-a45965: #a45965;
    --sigem-text-a65b13: #a65b13;
    --sigem-text-a7b2ba: #a7b2ba;
    --sigem-text-ac8024: #ac8024;
    --sigem-text-ad6555: #ad6555;
    --sigem-text-b64b4b: #b64b4b;
    --sigem-text-b88624: #b88624;
    --sigem-text-b8c7d6: #b8c7d6;
    --sigem-text-b9d4cc: #1976d2;
    --sigem-text-c6d4de: #c6d4de;
    --sigem-text-c8d6e5: #c8d6e5;
    --sigem-text-d3eee7: #1976d2;
    --sigem-text-f0dce0: #f0dce0;
    --sigem-text-fff: #ffffff;
    --sigem-text-fff0f2: #fff0f2;
    --sigem-text-ffffff: #ffffff;
}

:root[data-sigem-theme="minty"] {
    --sigem-background-138b75: #e5f4ee;
    --sigem-background-16a085: #e5f4ee;
    --sigem-background-18a98e: #e5f4ee;
    --sigem-background-18bc9c: #e5f4ee;
    --sigem-background-243746: #355b55;
    --sigem-background-288671: #e5f4ee;
    --sigem-background-2c3e50: #355b55;
    --sigem-background-2c4052: #355b55;
    --sigem-background-345269: #355b55;
    --sigem-background-526b7b: #355b55;
    --sigem-background-80505a: #80505a;
    --sigem-background-a45965: #a45965;
    --sigem-background-b64b4b: #b64b4b;
    --sigem-background-e0f3e9: #e5f4ee;
    --sigem-background-e1f2eb: #e5f4ee;
    --sigem-background-e1f4ed: #e5f4ee;
    --sigem-background-e3f2ed: #e5f4ee;
    --sigem-background-e8f6f1: #e5f4ee;
    --sigem-background-e8f8f3: #e5f4ee;
    --sigem-background-e8f8f5: #e5f4ee;
    --sigem-background-e9ecef: #f2f8f5;
    --sigem-background-eaf0f3: #f2f8f5;
    --sigem-background-eaf4f0: #e5f4ee;
    --sigem-background-eaf7f3: #e5f4ee;
    --sigem-background-ecf0f1: #f2f8f5;
    --sigem-background-edf1f4: #f2f8f5;
    --sigem-background-edf3f5: #f2f8f5;
    --sigem-background-edf4f1: #e5f4ee;
    --sigem-background-edf4f8: #f2f8f5;
    --sigem-background-edf5f2: #e5f4ee;
    --sigem-background-edf6f1: #e5f4ee;
    --sigem-background-edf7f0: #e5f4ee;
    --sigem-background-edf7f2: #e5f4ee;
    --sigem-background-edf7f4: #e5f4ee;
    --sigem-background-edf8f3: #e5f4ee;
    --sigem-background-f0f4f6: #f2f8f5;
    --sigem-background-f0f6fa: #f2f8f5;
    --sigem-background-f0f7f4: #e5f4ee;
    --sigem-background-f0f8f4: #e5f4ee;
    --sigem-background-f1eeee: #f2f8f5;
    --sigem-background-f1f5f7: #f2f8f5;
    --sigem-background-f4e2e5: #f4e2e5;
    --sigem-background-f4f7f9: #f2f8f5;
    --sigem-background-f4f9f7: #e5f4ee;
    --sigem-background-f5e8c3: #f5e8c3;
    --sigem-background-f5f7f9: #f2f8f5;
    --sigem-background-f5f8fa: #f2f8f5;
    --sigem-background-f6f8fa: #f2f8f5;
    --sigem-background-f6faf8: #e5f4ee;
    --sigem-background-f7edef: #f7edef;
    --sigem-background-f7f9fb: #f2f8f5;
    --sigem-background-f8f9fa: #f2f8f5;
    --sigem-background-f8fafb: #f2f8f5;
    --sigem-background-f9fafb: #ffffff;
    --sigem-background-faeeeb: #faeeeb;
    --sigem-background-faf0f1: #faf0f1;
    --sigem-background-faf1f1: #faf1f1;
    --sigem-background-fbe9ec: #fbe9ec;
    --sigem-background-fdf1ef: #fdf1ef;
    --sigem-background-fff: #ffffff;
    --sigem-background-fff1cf: #fff1cf;
    --sigem-background-fff1df: #fff1df;
    --sigem-background-fff6dd: #fff6dd;
    --sigem-background-fff7de: #fff7de;
    --sigem-background-fff8e9: #fff8e9;
    --sigem-background-fff8f8: #fff8f8;
    --sigem-background-fffbf0: #fffbf0;
    --sigem-background-ffffff: #ffffff;
    --sigem-border-15987f: #91cbb9;
    --sigem-border-16a085: #91cbb9;
    --sigem-border-18a98e: #91cbb9;
    --sigem-border-18bc9c: #91cbb9;
    --sigem-border-288671: #91cbb9;
    --sigem-border-289879: #91cbb9;
    --sigem-border-2c3e50: #d0e5dd;
    --sigem-border-3d5265: #d0e5dd;
    --sigem-border-405669: #d0e5dd;
    --sigem-border-51849e: #d0e5dd;
    --sigem-border-8cd9c7: #91cbb9;
    --sigem-border-a45965: #a45965;
    --sigem-border-b64b4b: #b64b4b;
    --sigem-border-b67464: #b67464;
    --sigem-border-b9ccc7: #91cbb9;
    --sigem-border-ba9140: #ba9140;
    --sigem-border-c9e5d2: #91cbb9;
    --sigem-border-cad5db: #d0e5dd;
    --sigem-border-cbdcd7: #91cbb9;
    --sigem-border-cc929a: #cc929a;
    --sigem-border-cce3d8: #91cbb9;
    --sigem-border-ced4da: #d0e5dd;
    --sigem-border-cedfe9: #d0e5dd;
    --sigem-border-cfdbe1: #d0e5dd;
    --sigem-border-d0e3dc: #91cbb9;
    --sigem-border-d1d5db: #d0e5dd;
    --sigem-border-d3dfe4: #d0e5dd;
    --sigem-border-d5a43a: #d5a43a;
    --sigem-border-d5ece6: #91cbb9;
    --sigem-border-dce4e8: #d0e5dd;
    --sigem-border-dce5e9: #d0e5dd;
    --sigem-border-dce9e4: #91cbb9;
    --sigem-border-dee2e6: #d0e5dd;
    --sigem-border-e0e7eb: #d0e5dd;
    --sigem-border-e1e8ec: #d0e5dd;
    --sigem-border-e1e9ed: #d0e5dd;
    --sigem-border-e1eae7: #91cbb9;
    --sigem-border-e2cbd0: #e2cbd0;
    --sigem-border-e2d7d9: #e2d7d9;
    --sigem-border-e2e9ed: #d0e5dd;
    --sigem-border-e3e9ec: #d0e5dd;
    --sigem-border-e4ccd0: #e4ccd0;
    --sigem-border-e4e9ed: #d0e5dd;
    --sigem-border-e4ebef: #d0e5dd;
    --sigem-border-e6ecef: #d0e5dd;
    --sigem-border-e7cdd2: #e7cdd2;
    --sigem-border-e7edf0: #d0e5dd;
    --sigem-border-e8edef: #d0e5dd;
    --sigem-border-e9eef1: #d0e5dd;
    --sigem-border-eac3ca: #eac3ca;
    --sigem-border-ead7a3: #ead7a3;
    --sigem-border-ead7dc: #ead7dc;
    --sigem-border-eadbb6: #eadbb6;
    --sigem-border-edf1f4: #d0e5dd;
    --sigem-border-eee0e3: #eee0e3;
    --sigem-border-f0d0a6: #f0d0a6;
    --sigem-border-f3d9d4: #f3d9d4;
    --sigem-text-111827: #365e58;
    --sigem-text-18a98e: #3d7564;
    --sigem-text-18bc9c: #3d7564;
    --sigem-text-212529: #365e58;
    --sigem-text-216b50: #3d7564;
    --sigem-text-246b48: #3d7564;
    --sigem-text-26705e: #3d7564;
    --sigem-text-285d52: #3d7564;
    --sigem-text-286f59: #3d7564;
    --sigem-text-287e6c: #3d7564;
    --sigem-text-2c3e50: #365e58;
    --sigem-text-2ecc71: #3d7564;
    --sigem-text-327365: #3d7564;
    --sigem-text-34495e: #365e58;
    --sigem-text-365e73: #365e58;
    --sigem-text-3a4a5a: #365e58;
    --sigem-text-3b695f: #3d7564;
    --sigem-text-4b6578: #365e58;
    --sigem-text-526675: #365e58;
    --sigem-text-526b7b: #365e58;
    --sigem-text-5b6b7b: #365e58;
    --sigem-text-607080: #607080;
    --sigem-text-607583: #607583;
    --sigem-text-617d74: #617d74;
    --sigem-text-66501e: #66501e;
    --sigem-text-6b7f8e: #6b7f8e;
    --sigem-text-6e8391: #6e8391;
    --sigem-text-765919: #765919;
    --sigem-text-77ac9e: #3d7564;
    --sigem-text-788b98: #788b98;
    --sigem-text-7b8a8b: #7b8a8b;
    --sigem-text-7f98a7: #7f98a7;
    --sigem-text-80505a: #80505a;
    --sigem-text-80632b: #80632b;
    --sigem-text-85764f: #85764f;
    --sigem-text-8b691e: #8b691e;
    --sigem-text-8b733b: #8b733b;
    --sigem-text-8cd9c7: #3d7564;
    --sigem-text-8ce3cf: #3d7564;
    --sigem-text-8fa8bd: #8fa8bd;
    --sigem-text-92a0aa: #92a0aa;
    --sigem-text-95a5a6: #95a5a6;
    --sigem-text-9a8589: #9a8589;
    --sigem-text-9b766b: #9b766b;
    --sigem-text-a33442: #a33442;
    --sigem-text-a45965: #a45965;
    --sigem-text-a65b13: #a65b13;
    --sigem-text-a7b2ba: #a7b2ba;
    --sigem-text-ac8024: #ac8024;
    --sigem-text-ad6555: #ad6555;
    --sigem-text-b64b4b: #b64b4b;
    --sigem-text-b88624: #b88624;
    --sigem-text-b8c7d6: #b8c7d6;
    --sigem-text-b9d4cc: #3d7564;
    --sigem-text-c6d4de: #c6d4de;
    --sigem-text-c8d6e5: #c8d6e5;
    --sigem-text-d3eee7: #3d7564;
    --sigem-text-f0dce0: #f0dce0;
    --sigem-text-fff: #ffffff;
    --sigem-text-fff0f2: #fff0f2;
    --sigem-text-ffffff: #ffffff;
}

html[data-sigem-theme="materia"] #appContainer { background-color: #f4f6f8; }
html[data-sigem-theme="materia"] #appContainer .recibo-seccion,
html[data-sigem-theme="materia"] #appContainer .caja-cuotas-card,
html[data-sigem-theme="materia"] #appContainer .card { border-radius: 3px; box-shadow: 0 2px 5px rgba(0,0,0,.12); }
html[data-sigem-theme="minty"] #appContainer { background-color: #f4faf7; }
html[data-sigem-theme="minty"] #appContainer .recibo-seccion,
html[data-sigem-theme="minty"] #appContainer .recibo-resumen,
html[data-sigem-theme="minty"] #appContainer .caja-cuotas-card,
html[data-sigem-theme="minty"] #appContainer .card { border-radius: 12px; }
html[data-sigem-theme="minty"] #appContainer .gui-boton { border-radius: 6px; }

html[data-sigem-theme="materia"] #sigemHeader {
    --sigem-text-18a98e: #90caf9;
    --sigem-text-18bc9c: #90caf9;
    --sigem-text-216b50: #90caf9;
    --sigem-text-246b48: #90caf9;
    --sigem-text-26705e: #90caf9;
    --sigem-text-285d52: #90caf9;
    --sigem-text-286f59: #90caf9;
    --sigem-text-287e6c: #90caf9;
    --sigem-text-2ecc71: #90caf9;
    --sigem-text-327365: #90caf9;
    --sigem-text-3b695f: #90caf9;
    --sigem-text-77ac9e: #90caf9;
    --sigem-text-8cd9c7: #90caf9;
    --sigem-text-8ce3cf: #90caf9;
    --sigem-text-b9d4cc: #90caf9;
    --sigem-text-d3eee7: #90caf9;
}

html[data-sigem-theme="minty"] #sigemHeader {
    --sigem-text-18a98e: #b5dfd1;
    --sigem-text-18bc9c: #b5dfd1;
    --sigem-text-216b50: #b5dfd1;
    --sigem-text-246b48: #b5dfd1;
    --sigem-text-26705e: #b5dfd1;
    --sigem-text-285d52: #b5dfd1;
    --sigem-text-286f59: #b5dfd1;
    --sigem-text-287e6c: #b5dfd1;
    --sigem-text-2ecc71: #b5dfd1;
    --sigem-text-327365: #b5dfd1;
    --sigem-text-3b695f: #b5dfd1;
    --sigem-text-77ac9e: #b5dfd1;
    --sigem-text-8cd9c7: #b5dfd1;
    --sigem-text-8ce3cf: #b5dfd1;
    --sigem-text-b9d4cc: #b5dfd1;
    --sigem-text-d3eee7: #b5dfd1;
}

/* Paleta del componente compartido de acceso. */
:root[data-sigem-theme="flatly"] {
    --sigem-login-background: #243746;
    --sigem-login-background-end: #345269;
    --sigem-login-surface: #fff;
    --sigem-login-text: #1f2937;
    --sigem-login-muted: #6b7280;
    --sigem-login-input: #f9fafb;
    --sigem-login-border: #d1d5db;
    --sigem-login-accent: #18bc9c;
}
:root[data-sigem-theme="cosmo"] {
    --sigem-login-background: #214b76;
    --sigem-login-background-end: #2780e3;
    --sigem-login-surface: #fff;
    --sigem-login-text: #23384d;
    --sigem-login-muted: #526779;
    --sigem-login-input: #f1f5fa;
    --sigem-login-border: #b7c9dc;
    --sigem-login-accent: #2780e3;
}
:root[data-sigem-theme="superhero"] {
    --sigem-login-background: #1f2d3a;
    --sigem-login-background-end: #34495e;
    --sigem-login-surface: #2b3e50;
    --sigem-login-text: #ebebeb;
    --sigem-login-muted: #c5d1db;
    --sigem-login-input: #34495e;
    --sigem-login-border: #72889b;
    --sigem-login-accent: #df691a;
}
:root[data-sigem-theme="materia"] {
    --sigem-login-background: #174a75;
    --sigem-login-background-end: #2196f3;
    --sigem-login-surface: #fff;
    --sigem-login-text: #263238;
    --sigem-login-muted: #546e7a;
    --sigem-login-input: #f5f7f9;
    --sigem-login-border: #bac9d3;
    --sigem-login-accent: #2196f3;
}
:root[data-sigem-theme="minty"] {
    --sigem-login-background: #365c55;
    --sigem-login-background-end: #78c2ad;
    --sigem-login-surface: #fff;
    --sigem-login-text: #294b43;
    --sigem-login-muted: #526c65;
    --sigem-login-input: #f3f9f6;
    --sigem-login-border: #b4cec4;
    --sigem-login-accent: #407d6d;
}

/* Version en la cabecera: acento claro con contraste sobre fondo oscuro. */
:root[data-sigem-theme="flatly"] { --sigem-header-badge-text: #b5f3e6; }
:root[data-sigem-theme="cosmo"] { --sigem-header-badge-text: #d4e8ff; }
:root[data-sigem-theme="superhero"] { --sigem-header-badge-text: #ffe1c8; }
:root[data-sigem-theme="materia"] { --sigem-header-badge-text: #d1e9ff; }
:root[data-sigem-theme="minty"] { --sigem-header-badge-text: #d9f5e8; }
