/* Capa exclusivamente visual: no altera posiciones, visibilidad ni eventos. */
html[data-tema="oscuro"] {
    color-scheme: dark;
    --oe-fondo: #0b0c0d;
    --oe-fondo-2: #101112;
    --oe-superficie: #121416;
    --oe-superficie-2: #191b1d;
    --oe-superficie-3: #222527;
    --oe-borde: #313b3d;
    --oe-borde-suave: #273033;
    --oe-texto: #f2f5f3;
    --oe-texto-2: #c5ccca;
    --oe-muted: #9ca6a2;
    --oe-verde: #7edfaa;
    --oe-verde-2: #4fa67a;
    --oe-verde-fondo: #153126;
    --oe-dorado: #e1b765;
    --oe-dorado-2: #9c7335;
    --oe-dorado-fondo: #292318;
    --oe-rojo: #ff9d9d;
    --tinta: var(--oe-texto);
    --muted: var(--oe-muted);
    --verde: #1b2522;
    --verde-claro: #183126;
    --crema: var(--oe-fondo);
    --borde: var(--oe-borde);
    --superficie: var(--oe-superficie);
    --superficie-suave: var(--oe-superficie-2);
    --sombra: 0 14px 38px rgba(0,0,0,.32);
    --sombra-suave: 0 8px 24px rgba(0,0,0,.24);
    --sombra-elevada: 0 18px 48px rgba(0,0,0,.42);
}

html[data-tema="oscuro"] body {
    background: radial-gradient(circle at 50% -120px, #15201d 0, #0b1011 280px, #0b0c0d 620px) fixed;
    color: var(--oe-texto);
}

html[data-tema="oscuro"] .encabezado {
    border-bottom: 1px solid var(--oe-borde-suave);
    background: rgba(10,15,16,.96);
    color: var(--oe-texto);
}
html[data-tema="oscuro"] .marca,
html[data-tema="oscuro"] .encabezado a { color: var(--oe-texto); }
html[data-tema="oscuro"] .marca-acento,
html[data-tema="oscuro"] .marca-icono { color: var(--oe-verde); }
html[data-tema="oscuro"] .encabezado .enlace-comercio,
html[data-tema="oscuro"] .boton-notificaciones,
html[data-tema="oscuro"] .enlace-acceso {
    border-color: #3a4547;
    background: #171e20;
    color: var(--oe-texto);
}

html[data-tema="oscuro"] .portada-categorias,
html[data-tema="oscuro"] .acceso-usuarios,
html[data-tema="oscuro"] .registro-local,
html[data-tema="oscuro"] .zona-exploracion,
html[data-tema="oscuro"] .exploracion {
    background: transparent !important;
    color: var(--oe-texto);
}

html[data-tema="oscuro"] .capsula-categoria,
html[data-tema="oscuro"] .tarjeta,
html[data-tema="oscuro"] .tarjeta-local-redisenada,
html[data-tema="oscuro"] #resultados .tarjeta-local-redisenada.ux-maqueta-exacta,
html[data-tema="oscuro"] .panel-notificaciones,
html[data-tema="oscuro"] .acceso-contenido,
html[data-tema="oscuro"] .editor-local,
html[data-tema="oscuro"] .config-local-seccion,
html[data-tema="oscuro"] .plan-comercio,
html[data-tema="oscuro"] .metrica-local,
html[data-tema="oscuro"] .detalle-local-panel,
html[data-tema="oscuro"] .detalle-local-portada,
html[data-tema="oscuro"] .detalle-local-seccion,
html[data-tema="oscuro"] .detalle-menu-independiente > .detalle-menu,
html[data-tema="oscuro"] .multi-ofertas-secundarias,
html[data-tema="oscuro"] .multi-oferta-publica {
    border-color: var(--oe-borde) !important;
    background: var(--oe-superficie) !important;
    color: var(--oe-texto) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,.24) !important;
}

html[data-tema="oscuro"] #resultados .ux-maqueta-exacta .tarjeta-local-cabecera h2,
html[data-tema="oscuro"] .detalle-local-titulo,
html[data-tema="oscuro"] .acceso-contenido h2,
html[data-tema="oscuro"] .editor-local-cabecera h4,
html[data-tema="oscuro"] .config-local-resumen-textos strong,
html[data-tema="oscuro"] #solicitudesComercio h3,
html[data-tema="oscuro"] #metricasComercio h3,
html[data-tema="oscuro"] #localesComercio > h3,
html[data-tema="oscuro"] #pagosComercio h3,
html[data-tema="oscuro"] .detalle-local-seccion > h3,
html[data-tema="oscuro"] .detalle-local-seccion h4 {
    color: var(--oe-texto) !important;
}

html[data-tema="oscuro"] p,
html[data-tema="oscuro"] small,
html[data-tema="oscuro"] .tarjeta-local-tipo,
html[data-tema="oscuro"] #resultados .ux-maqueta-categorias,
html[data-tema="oscuro"] .detalle-local-portada > p {
    color: var(--oe-muted) !important;
}

html[data-tema="oscuro"] input,
html[data-tema="oscuro"] select,
html[data-tema="oscuro"] textarea {
    border-color: #3b4648 !important;
    background: #0f1516 !important;
    color: var(--oe-texto) !important;
    box-shadow: none !important;
}
html[data-tema="oscuro"] input::placeholder,
html[data-tema="oscuro"] textarea::placeholder { color: #7f8a86 !important; }

html[data-tema="oscuro"] .filtros-exploracion,
html[data-tema="oscuro"] .filtros-notificaciones,
html[data-tema="oscuro"] .ux-menu-panel,
html[data-tema="oscuro"] .ux-menu-preview,
html[data-tema="oscuro"] .estado-vacio-riguroso,
html[data-tema="oscuro"] .estado-vacio-cuenta-v2,
html[data-tema="oscuro"] .mi-local-cambios-guia {
    border-color: var(--oe-borde) !important;
    background: var(--oe-superficie-2) !important;
    color: var(--oe-texto-2) !important;
}

html[data-tema="oscuro"] .tarjeta-local-chips span,
html[data-tema="oscuro"] .detalle-resumen-item,
html[data-tema="oscuro"] .notificacion-oferta-datos span,
html[data-tema="oscuro"] .multi-oferta-meta span,
html[data-tema="oscuro"] .detalle-oferta-meta span,
html[data-tema="oscuro"] .ux-menu-item {
    border-color: #364143 !important;
    background: #182022 !important;
    color: var(--oe-texto-2) !important;
}

html[data-tema="oscuro"] .tarjeta-local-chips .chip-distancia,
html[data-tema="oscuro"] .baes-disponible,
html[data-tema="oscuro"] .badge-util,
html[data-tema="oscuro"] .detalle-pildora {
    border-color: #2d684d !important;
    background: #142d22 !important;
    color: var(--oe-verde) !important;
}

/* La oferta estudiantil conserva el dorado, como en la maqueta aprobada,
   pero sin convertir toda la pantalla en verde. */
html[data-tema="oscuro"] .detalle-oferta-destacada {
    border-color: #74572a !important;
    background: linear-gradient(145deg, #2a2418 0%, #1b1b18 48%, #121718 100%) !important;
    box-shadow: 0 12px 32px rgba(0,0,0,.32) !important;
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] .detalle-oferta-destacada h3,
html[data-tema="oscuro"] .detalle-oferta-destacada h4,
html[data-tema="oscuro"] .detalle-oferta-destacada strong { color: var(--oe-texto) !important; }
html[data-tema="oscuro"] .detalle-oferta-destacada .detalle-oferta-kicker,
html[data-tema="oscuro"] .detalle-oferta-destacada [class*="beneficio"] {
    color: var(--oe-dorado) !important;
}
html[data-tema="oscuro"] .detalle-oferta-destacada .precio-estudiante,
html[data-tema="oscuro"] .detalle-oferta-destacada [class*="estudiante"] strong,
html[data-tema="oscuro"] .detalle-oferta-destacada [class*="precio"] strong:last-child {
    color: var(--oe-verde) !important;
}

html[data-tema="oscuro"] .detalle-accion,
html[data-tema="oscuro"] .acciones-tarjeta-principales button,
html[data-tema="oscuro"] .tarjeta-local-redisenada button:not(.boton-favorito-local),
html[data-tema="oscuro"] .acciones-filtros-notificaciones button,
html[data-tema="oscuro"] .ux-menu-accion-principal,
html[data-tema="oscuro"] .ux-menu-accion-secundaria,
html[data-tema="oscuro"] .estado-reintento-contextual,
html[data-tema="oscuro"] .boton-configurar-local {
    border: 1px solid #465154 !important;
    background: #1b2325 !important;
    color: var(--oe-texto) !important;
    box-shadow: none !important;
}
html[data-tema="oscuro"] .detalle-accion.primaria,
html[data-tema="oscuro"] .acciones-tarjeta-principales button:first-child {
    border-color: #4f6f61 !important;
    background: #20292b !important;
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] .detalle-accion svg,
html[data-tema="oscuro"] .acciones-tarjeta-principales svg { color: var(--oe-verde) !important; }

html[data-tema="oscuro"] #resultados .ux-maqueta-exacta .boton-favorito-local,
html[data-tema="oscuro"] .boton-favorito-local {
    border-color: #465154 !important;
    background: #121416 !important;
    color: var(--oe-texto-2) !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.28) !important;
}
html[data-tema="oscuro"] #resultados .ux-maqueta-exacta .boton-favorito-local[aria-pressed="true"]::before,
html[data-tema="oscuro"] .boton-favorito-local[aria-pressed="true"] { color: var(--oe-verde) !important; }

html[data-tema="oscuro"] .detalle-local-overlay { background: rgba(2,5,6,.78) !important; }
html[data-tema="oscuro"] .cerrar-detalle-local,
html[data-tema="oscuro"] .cerrar-acceso,
html[data-tema="oscuro"] .cabecera-notificaciones button {
    border-color: #3d4749 !important;
    background: #192123 !important;
    color: var(--oe-texto) !important;
}

html[data-tema="oscuro"] .detalle-menu-independiente > .detalle-menu > summary,
html[data-tema="oscuro"] .menu-seccion-plegable > summary,
html[data-tema="oscuro"] .multi-ofertas-secundarias > summary,
html[data-tema="oscuro"] .config-local-resumen {
    color: var(--oe-texto) !important;
    border-color: var(--oe-borde) !important;
    background: #12191a !important;
}

html[data-tema="oscuro"] .notificacion-oferta,
html[data-tema="oscuro"] .notificacion-destacada {
    border-color: var(--oe-borde) !important;
    background: #141b1c !important;
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] .etiqueta-notificacion-destacada {
    background: #4a391d !important;
    color: #f0cd83 !important;
}

html[data-tema="oscuro"] .cuenta-menu-grupo,
html[data-tema="oscuro"] .cuenta-menu-fila {
    border-color: var(--oe-borde) !important;
    background: #12191a !important;
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] .cuenta-menu-fila + .cuenta-menu-fila { border-top-color: #293234 !important; }
html[data-tema="oscuro"] .cuenta-menu-icono {
    background: #1d2827 !important;
    color: var(--oe-verde) !important;
}
html[data-tema="oscuro"] .cuenta-menu-icono svg { stroke: currentColor !important; }
html[data-tema="oscuro"] .cuenta-menu-estado { color: var(--oe-muted) !important; }

html[data-tema="oscuro"] .control-exploracion-movil,
html[data-tema="oscuro"] .barra-movil-principal {
    border-color: #344043 !important;
    background: rgba(13,18,19,.96) !important;
    box-shadow: 0 12px 34px rgba(0,0,0,.42) !important;
}
html[data-tema="oscuro"] .barra-movil-principal button,
html[data-tema="oscuro"] #verListaMovil,
html[data-tema="oscuro"] #verMapaMovil {
    background: transparent !important;
    color: var(--oe-muted) !important;
}
html[data-tema="oscuro"] .barra-movil-principal button[aria-current="page"],
html[data-tema="oscuro"] #verListaMovil[aria-pressed="true"],
html[data-tema="oscuro"] #verMapaMovil[aria-pressed="true"] {
    background: #20282a !important;
    color: var(--oe-texto) !important;
    box-shadow: inset 0 0 0 1px #3a4648 !important;
}
html[data-tema="oscuro"] .barra-movil-principal button[aria-current="page"] .nav-movil-icono,
html[data-tema="oscuro"] .barra-movil-principal button[aria-current="page"] svg {
    color: var(--oe-verde) !important;
    stroke: var(--oe-verde) !important;
}

html[data-tema="oscuro"] .leaflet-control-zoom a,
html[data-tema="oscuro"] .leaflet-control-attribution,
html[data-tema="oscuro"] #centrarMiUbicacionMapa,
html[data-tema="oscuro"] .ayuda-mapa-boton {
    border-color: #465154 !important;
    background: #161e20 !important;
    color: var(--oe-texto) !important;
}

html[data-tema="oscuro"] .estado-conexion-global {
    border-color: #735a2f !important;
    background: #282116 !important;
    color: #e7cb94 !important;
}
html[data-tema="oscuro"] .estado-feedback-riguroso[data-tono="ok"] {
    border-color: #285a43 !important;
    background: #12281e !important;
    color: #9de8ba !important;
}
html[data-tema="oscuro"] .estado-feedback-riguroso[data-tono="aviso"] {
    border-color: #71582c !important;
    background: #282116 !important;
    color: #e5c98d !important;
}
html[data-tema="oscuro"] .estado-feedback-riguroso[data-tono="error"] {
    border-color: #71423f !important;
    background: #291817 !important;
    color: #ffb0aa !important;
}

/* Preferencias integradas: controles nativos en el flujo normal de Mi cuenta. */
.cuenta-apariencia {
    min-width: 0;
    margin: 22px 0;
    padding: 16px;
    border: 1px solid var(--borde);
    border-radius: 18px;
    background: var(--superficie-suave);
    color: var(--tinta);
}
.cuenta-apariencia legend { padding: 0 6px; font-weight: 800; font-size: 17px; }
.cuenta-apariencia p { margin: 0 0 14px; font-size: 14px; }
.cuenta-apariencia small { display: block; margin-top: 12px; font-size: 12px; line-height: 1.5; }
.cuenta-apariencia-opciones { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.cuenta-apariencia-opciones label {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: center;
    gap: 6px; min-height: 64px; padding: 10px 6px; border: 1px solid var(--borde);
    border-radius: 12px; background: var(--superficie); font-size: 13px; cursor: pointer;
}
.cuenta-apariencia-opciones input[type="radio"] {
    width: 16px; height: 16px; min-height: 0; padding: 0; margin: 0; accent-color: #3d895f;
}
.cuenta-apariencia-opciones label:has(input:checked) { border-color: #559370; box-shadow: inset 0 0 0 1px #559370; }
.cuenta-apariencia-opciones label:focus-within { outline: 2px solid #b58847; outline-offset: 3px; }

/* Superficies grafito y botones oscuros. Solo propiedades de pintura. */
html[data-tema="claro"] { color-scheme: light; }
html[data-tema="oscuro"] body,
html[data-tema="oscuro"] body.en-portada-categorias { background: #0b0c0d; }
html[data-tema="oscuro"] :is(h1,h2,h3,h4,label,legend),
html[data-tema="oscuro"] .capsula-categoria-texto strong { color: var(--oe-texto); }
html[data-tema="oscuro"] :is(.capsula-categoria-texto > span,.portada-categorias-subtitulo,.portada-categorias-nota) { color: var(--oe-muted); }
html[data-tema="oscuro"] :is(.hero,.mapa-seccion,.seccion-resultados,.sugerir-local-seccion,.registro-local,.pie-pagina) {
    background: var(--oe-fondo) !important; border-color: var(--oe-borde); color: var(--oe-texto);
}
html[data-tema="oscuro"] :is(.busqueda,.resumen-resultados-exploracion,.ayuda-mapa,.detalle-local-barra,.detalle-local-acciones,.detalle-productos-principales,.acceso-orientacion,.cuenta-apariencia) {
    background: var(--oe-superficie) !important; border-color: var(--oe-borde) !important; color: var(--oe-texto);
}
html[data-tema="oscuro"] :is(button,.boton,.volver-categorias,.boton-google,.boton-microsoft) {
    background-color: var(--oe-superficie-2); background-image: none; border-color: #40464a; color: var(--oe-texto);
}
html[data-tema="oscuro"] :is(.capsula-categoria-icono,.cuenta-avatar) { background: #232728; color: var(--oe-verde); }
html[data-tema="oscuro"] :is(.seccion-comida-etiqueta,.portada-categorias-eyebrow,.detalle-local-barra-marca) { color: var(--oe-verde); }
html[data-tema="oscuro"] .cuenta-apariencia-opciones label { background: var(--oe-superficie-2); color: var(--oe-texto); }
html[data-tema="oscuro"] .cuenta-apariencia-opciones input { accent-color: #91cea3; }

/* La ficha del local usa fondo carbón con acento dorado.
   El texto ya NO puede conservar el color oscuro de la antigua tarjeta beige. */
html[data-tema="oscuro"] .detalle-oferta-destacada {
    background: linear-gradient(145deg, #292318 0%, #1b1b18 52%, #121718 100%) !important;
    border-color: #8e703f !important; color: #f2f1e9 !important;
}
html[data-tema="oscuro"] .detalle-oferta-destacada :is(h3,h4,strong,p,small,span) {
    color: #f2f1e9 !important;
}
html[data-tema="oscuro"] .detalle-oferta-destacada .detalle-oferta-cabecera > strong,
html[data-tema="oscuro"] .detalle-oferta-destacada .detalle-oferta-kicker {
    color: #eed2a0 !important;
}
html[data-tema="oscuro"] .detalle-oferta-destacada .precio-estudiante,
html[data-tema="oscuro"] .detalle-oferta-destacada .detalle-precio-grande,
html[data-tema="oscuro"] .detalle-oferta-destacada [class*="precio"] strong:last-child {
    color: #baf0ce !important;
}

/* Compatibilidad con estilos de fichas que se cargan después del tema. */
html[data-tema="oscuro"] body :is(#explorar,#registroLocal) {
    background: var(--oe-superficie) !important; border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal {
    background: var(--oe-fondo) !important; color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #detalleLocal #contenidoDetalleLocal :is(.detalle-local-titulo,h3,h4) {
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal :is(.detalle-condiciones-oferta,.detalle-uso-contenido,.detalle-producto-destacado,.detalle-producto-imagen,.detalle-menu-texto,.detalle-informacion-local,.detalle-informacion-contenido,.detalle-info-lista,.detalle-info-fila,.detalle-transparencia,.ux-detalle-ayuda) {
    background: var(--oe-superficie) !important; border-color: var(--oe-borde) !important; color: var(--oe-texto-2) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal :is(summary,.detalle-producto-texto,.detalle-producto-titulo,.detalle-info-fila strong) {
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-local-categorias span {
    background: var(--oe-superficie-2) !important; color: var(--oe-texto-2) !important; border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-destacada :is(.detalle-precio-etiqueta,.detalle-precio-valor,.detalle-precio-columna) {
    background: transparent !important; color: #f0e8d8 !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-destacada .detalle-precio-columna-estudiante :is(.detalle-precio-etiqueta,.detalle-precio-valor) {
    color: #baf0ce !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-destacada .detalle-oferta-meta > span {
    background: #34352d !important; color: #f5eddf !important; border-color: #6c6857 !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-destacada .detalle-oferta-meta > .detalle-ahorro {
    background: #204b32 !important; color: #f4f5ed !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-beneficio-estudiante-acceso {
    background: #25322d !important; border-color: #486757 !important; color: #f0f2ed !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-beneficio-estudiante-ayuda {
    color: #e3ece5 !important;
    -webkit-text-fill-color: #e3ece5 !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-beneficio-estudiante-cta {
    background: #182721 !important; border-color: #658b75 !important; color: #f2f5f3 !important;
    -webkit-text-fill-color: #f2f5f3 !important;
}
html[data-tema="oscuro"] body #resultados .ux-maqueta-exacta :is(.tarjeta-producto-resumen,.multi-ofertas-resumen) {
    background: var(--oe-superficie-2) !important; color: var(--oe-texto) !important; border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body #resultados .ux-maqueta-exacta :is(.tarjeta-producto-resumen strong,.tarjeta-producto-resumen p,.tarjeta-producto-resumen span) { color: var(--oe-texto-2) !important; }
html[data-tema="oscuro"] body #resultados .ux-maqueta-exacta :is(.accion-ver-local,.accion-ruta) {
    background: #1b1e20 !important; border: 1px solid #52645a !important; color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #resultados .ux-maqueta-exacta .tarjeta-oferta-principal {
    background: linear-gradient(120deg, #e6ba7d, #efd1a1 44%, #b98a4e) !important; border-color: #c89f65 !important; color: #25271e !important;
}
html[data-tema="oscuro"] body #resultados .ux-maqueta-exacta .tarjeta-oferta-principal :is(p,small,span,strong) { color: #25271e !important; }
html[data-tema="oscuro"] body #resultados .ux-maqueta-exacta .estado-horario {
    background: #242729 !important; color: #c4ceca !important; border-color: #3d4541 !important;
}
html[data-tema="oscuro"] body #resultados .ux-maqueta-exacta .estado-horario.abierto { color: #9ed5ad !important; }

/* Texto secundario y controles auxiliares conservan contraste en oscuro. */
html[data-tema="oscuro"] body :is(.etiqueta-filtro,.acceso-orientacion strong,.multi-ofertas-resumen strong,#cantidadResultadosExploracion),
html[data-tema="oscuro"] body #filtrosAvanzados summary strong,
html[data-tema="oscuro"] body #contenidoDetalleLocal .ux-detalle-ayuda strong,
html[data-tema="oscuro"] body #registroLocal :is(strong,summary,.registro-invitacion-beneficios span) { color: var(--oe-texto-2) !important; }
html[data-tema="oscuro"] body :is(.guia-guardar-seguir,.guia-guardar-seguir-contenido,.privacidad-ubicacion,.privacidad-ubicacion p,.entrada-precio,#filtrosAvanzados .campo-checkbox,#filtrosAvanzados .checkbox-control,#resumenMapa,.nota-mapa) {
    background: var(--oe-superficie-2) !important; border-color: var(--oe-borde) !important; color: var(--oe-texto-2) !important;
}
html[data-tema="oscuro"] body .guia-guardar-seguir summary { color: var(--oe-texto-2) !important; }
html[data-tema="oscuro"] body #filtrosAvanzados label:has(input[type="checkbox"]) { background: var(--oe-superficie-2) !important; color: var(--oe-texto-2) !important; border-color: var(--oe-borde) !important; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-promocion-etiqueta { color: var(--oe-muted) !important; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-local-indicadores > .estado-horario.cerrado { background: #302321 !important; color: #e4b3a7 !important; border-color: #5c403a !important; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-local-indicadores > .estado-horario.abierto { background: #1b2a22 !important; color: #a8d8b7 !important; border-color: #3c5a45 !important; }
html[data-tema="oscuro"] body #resultados .ux-maqueta-exacta .tarjeta-oferta-principal .tarjeta-precio-estudiante { color: #123d27 !important; }
html[data-tema="oscuro"] body #accesoUsuarios :is(.mostrar-clave,.control-clave,.mostrar-clave-texto) { background: var(--oe-superficie-2) !important; color: var(--oe-texto) !important; }

/* Controles móviles: misma paleta sin alterar su disposición ni eventos. */
html[data-tema="oscuro"] body #herramientasBusquedaMovil,
html[data-tema="oscuro"] body #controlExploracionMovil {
    background: var(--oe-superficie) !important;
    border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body #herramientasBusquedaMovil #abrirFiltrosMovil,
html[data-tema="oscuro"] body #ordenBusquedaMovil .campo-filtro,
html[data-tema="oscuro"] body.ux-fase-1 #uxAccesosRapidos button {
    background: var(--oe-superficie-2) !important;
    color: var(--oe-texto) !important;
    border-color: #39423e !important;
}
html[data-tema="oscuro"] body #ordenBusquedaMovil .campo-filtro > span {
    color: var(--oe-texto-2) !important;
}
html[data-tema="oscuro"] body #ordenBusquedaMovil select {
    background-color: var(--oe-superficie-2) !important;
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #controlExploracionMovil .selector-vista-movil {
    background: #181c1c !important;
}
html[data-tema="oscuro"] body #controlExploracionMovil .selector-vista-movil button {
    background: transparent !important;
    color: #b7c1bd !important;
    box-shadow: none !important;
}
html[data-tema="oscuro"] body #controlExploracionMovil .selector-vista-movil button[aria-pressed="true"] {
    background: #283330 !important;
    color: #f2f5f3 !important;
    box-shadow: inset 0 0 0 1px #536b60 !important;
}
html[data-tema="oscuro"] body #controlExploracionMovil .selector-vista-movil .contador-vista-movil,
html[data-tema="oscuro"] body #contadorFiltrosFlotante {
    background: #294b3b !important;
    color: #b5edcc !important;
}
html[data-tema="oscuro"] body.ux-fase-1 #uxAccesosRapidos button[aria-pressed="true"],
html[data-tema="oscuro"] body.ux-fase-1 #uxAccesosRapidos button.ux-activo {
    background: #243c30 !important;
    color: #c4f0d4 !important;
    border-color: #6ba984 !important;
}

/* Jerarquía tipográfica de la referencia: títulos claros y lectura relajada. */
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-local-cabecera h2,
html[data-tema="oscuro"] body #detalleLocal #contenidoDetalleLocal .detalle-local-titulo {
    font-size: clamp(28px, 7vw, 36px) !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
    letter-spacing: -.025em !important;
    text-transform: none !important;
    overflow-wrap: anywhere;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-local-tipo,
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-local-subtitulo {
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    letter-spacing: .005em !important;
    color: #b4bcb8 !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta :is(.tarjeta-beneficio-kicker,.tarjeta-promocion-etiqueta),
html[data-tema="oscuro"] body #contenidoDetalleLocal :is(.detalle-oferta-kicker,.detalle-precio-etiqueta) {
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    letter-spacing: .025em !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta :is(.tarjeta-beneficio-titulo,.tarjeta-beneficio-descripcion,.tarjeta-promocion-texto),
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-destacada h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: -.015em !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-precio-estudiante,
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-precio-valor {
    font-size: 30px !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    letter-spacing: -.025em !important;
    font-variant-numeric: tabular-nums;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta :is(.tarjeta-ahorro,.badge-baes,.tarjeta-vigencia,.estado-horario),
html[data-tema="oscuro"] body #contenidoDetalleLocal :is(.detalle-oferta-meta > span,.detalle-local-direccion,.detalle-info-fila) {
    font-size: 13px !important;
    font-weight: 450 !important;
    line-height: 1.5 !important;
    letter-spacing: 0 !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal :is(.detalle-producto-titulo,.detalle-productos-principales h3,.detalle-informacion-local summary) {
    font-size: 18px !important;
    font-weight: 650 !important;
    line-height: 1.35 !important;
    letter-spacing: -.01em !important;
}
/* CAPA 2: tipografía OSCURA de acciones reales. !important y especificidad
   (1,4,2) ganan el peso 650 frente a 850 de Glow (1,2,2). Cabecera móvil con
   foto gana font-size/line-height; esta regla sigue ganando font-weight.
   No confundir la fuente de la tipografía con la fuente del fondo. */
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta :is(.accion-ver-local,.accion-ruta),
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-local-acciones :is(button,a) {
    font-size: 16px !important;
    font-weight: 650 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .ux-maqueta-categorias {
    font-size: 15px !important; font-weight: 400 !important;
    line-height: 1.55 !important; letter-spacing: .005em !important;
    color: #b4bcb8 !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .ux-revision-oferta {
    font-size: 12px !important; font-weight: 450 !important; line-height: 1.5 !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-texto {
    font-size: 18px !important; font-weight: 700 !important;
    line-height: 1.35 !important; letter-spacing: -.015em !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-local-direccion {
    color: #b4bcb8 !important;
}

/* Cápsulas de beneficio: acabado aprobado, compacto y de peso regular. */
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-oferta-principal :is(.tarjeta-ahorro,.baes-chip),
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-destacada .detalle-oferta-meta > span {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    box-sizing: border-box;
    padding: 6px 10px !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    background: #484237 !important;
    color: #f7f4ed !important;
    box-shadow: none !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-oferta-principal .tarjeta-ahorro,
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-destacada .detalle-oferta-meta > .detalle-ahorro {
    background: #204b32 !important;
    color: #f4f6ed !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-ahorro::before,
html[data-tema="oscuro"] body #contenidoDetalleLocal .detalle-oferta-meta > .detalle-ahorro::before {
    content: "";
    width: 13px;
    height: 13px;
    flex: 0 0 13px;
    background: #9ce1b6;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3h8l10 10-8 8L3 11Z' fill='black'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.7' fill='white'/%3E%3C/svg%3E") center / contain no-repeat;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-oferta-principal .baes-chip {
    font-weight: 400 !important;
    margin-top: 6px;
}

/* Oferta horizontal compacta: conserva todos los datos y adapta el texto. */
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-oferta-principal {
    padding: 12px !important;
    border-radius: 14px !important;
    min-height: 0 !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-beneficio-encabezado {
    display: flex !important; align-items: center !important;
    gap: 7px !important; margin: 0 0 7px !important; padding: 0 !important;
    border: 0 !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-beneficio-encabezado > div {
    border: 0 !important; padding: 0 !important; min-width: 0;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-beneficio-icono {
    width: 22px !important; height: 22px !important; min-width: 22px !important;
    padding: 0 !important; font-size: 19px !important; background: transparent !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-beneficio-kicker {
    font-size: 10px !important; line-height: 1.3 !important;
    letter-spacing: .02em !important; font-weight: 500 !important;
}
/* El encabezado ya comunica el beneficio; se omite su frase redundante. */
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-beneficio-encabezado:has(.tarjeta-beneficio-kicker) .tarjeta-beneficio-titulo { display: none !important; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-beneficio-descripcion {
    font-size: 15px !important; line-height: 1.3 !important;
    margin: 0 0 10px !important; font-weight: 700 !important;
    display: block !important; -webkit-line-clamp: unset !important;
    overflow: visible !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-oferta-pie {
    display: grid !important; grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
    gap: 8px 7px !important; align-items: start !important;
    margin: 0 !important; padding: 0 !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-precios-oferta { display: contents !important; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta :is(.tarjeta-precio-normal,.tarjeta-precio-estudiante) {
    grid-row: 1; margin: 0 !important; padding: 0 !important;
    font-size: 25px !important; font-weight: 750 !important; line-height: 1.2 !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-precio-normal { grid-column: 1; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-precio-estudiante { grid-column: 2; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta :is(.tarjeta-precio-normal,.tarjeta-precio-estudiante)::before {
    font-size: 9px !important; line-height: 1.5 !important; font-weight: 500 !important;
    letter-spacing: 0 !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-oferta-principal :is(.tarjeta-ahorro,.baes-chip) {
    grid-row: 2; min-width: 0; width: fit-content !important;
    margin: 0 !important; padding: 5px 7px !important;
    font-size: 11px !important; white-space: normal !important;
}
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .tarjeta-ahorro { grid-column: 1; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .baes-chip { grid-column: 2; }
html[data-tema="oscuro"] body #resultados .tarjeta-local-redisenada.ux-maqueta-exacta .ux-revision-oferta {
    margin: 8px 0 0 !important; padding: 6px 0 0 !important;
    font-size: 10px !important; line-height: 1.3 !important;
}

/* Instrucciones de uso: contraste claro sobre grafito. */
html[data-tema="oscuro"] body #detalleLocal #contenidoDetalleLocal .detalle-uso-unificado .detalle-condicion > span {
    color: #9ee0b8 !important;
    opacity: 1 !important;
}
html[data-tema="oscuro"] body #detalleLocal #contenidoDetalleLocal .detalle-uso-unificado .detalle-condicion > strong {
    color: #edf3ef !important;
    opacity: 1 !important;
}
html[data-tema="oscuro"] body #detalleLocal #contenidoDetalleLocal .detalle-uso-unificado .detalle-condiciones-nota {
    color: #c2cec7 !important;
    opacity: 1 !important;
}
html[data-tema="oscuro"] body #detalleLocal #contenidoDetalleLocal .detalle-uso-unificado[open] > summary {
    border-bottom-color: #3b4941 !important;
}

/* Búsqueda y hoja móvil de filtros: superficies y textos del tema oscuro. */
html[data-tema="oscuro"] body #autocompleteBusqueda,
html[data-tema="oscuro"] body #filtrosExploracion .filtros-cabecera,
html[data-tema="oscuro"] body #filtrosExploracion .acciones-hoja-filtros-movil,
html[data-tema="oscuro"] body.ux-fase-2 #filtrosExploracion .ux-intenciones {
    background: #121618 !important;
    border-color: #39433e !important;
    color: #edf3ef !important;
}
html[data-tema="oscuro"] body #autocompleteBusqueda .autocomplete-busqueda-opcion,
html[data-tema="oscuro"] body.ux-fase-2 #filtrosExploracion .ux-intencion-boton,
html[data-tema="oscuro"] body #filtrosExploracion .acciones-hoja-filtros-movil button {
    background: #202627 !important;
    border-color: #43524a !important;
    color: #edf3ef !important;
    box-shadow: none !important;
}
html[data-tema="oscuro"] body #autocompleteBusqueda :is(.autocomplete-busqueda-texto,strong),
html[data-tema="oscuro"] body #filtrosExploracion :is(.filtros-cabecera h3,.ux-intenciones-cabecera h2,.ux-intencion-boton span,.texto-mas-filtros) {
    color: #edf3ef !important;
}
html[data-tema="oscuro"] body #autocompleteBusqueda :is(.autocomplete-busqueda-titulo,.autocomplete-busqueda-texto small),
html[data-tema="oscuro"] body #filtrosExploracion :is(.filtros-cabecera p,.ux-intenciones-cabecera p,.ux-intencion-estado,.ayuda-deslizar-categorias,.privacidad-ubicacion summary) {
    color: #b8c9bf !important;
}
html[data-tema="oscuro"] body #autocompleteBusqueda :is(.autocomplete-busqueda-opcion:hover,.autocomplete-busqueda-opcion.activo,.autocomplete-busqueda-opcion[aria-selected="true"]),
html[data-tema="oscuro"] body.ux-fase-2 #filtrosExploracion .ux-intencion-boton:active,
html[data-tema="oscuro"] body #filtrosExploracion #verResultadosFiltrosMovil {
    background: #294637 !important;
    color: #edf8f1 !important;
    border-color: #69947c !important;
}
html[data-tema="oscuro"] body #filtrosExploracion .bloque-categorias::after {
    background: linear-gradient(90deg, transparent, #191b1d 78%) !important;
}
html[data-tema="oscuro"] body #filtrosExploracion :is(.ayuda-deslizar-categorias .flecha,.icono-mas-filtros) {
    color: #9ee0b8 !important;
}

/* Recomendaciones y páginas independientes comparten la apariencia guardada. */
html[data-tema="oscuro"] {
    --soporte-texto: #edf3ef;
    --soporte-suave: #b8c9bf;
    --soporte-borde: #39433e;
    --soporte-fondo: #0b0c0d;
    --soporte-crema: #24231e;
    --soporte-verde: #9ee0b8;
    --soporte-verde-oscuro: #294637;
}
html[data-tema="oscuro"] body.pagina-legal { background: #0b0c0d !important; }
html[data-tema="oscuro"] body :is(.sugerir-local-formulario,.legal-documento,.legal-indice,.legal-marco,.soporte-card,.soporte-cabecera,.soporte-chat-mensajes,.soporte-nota,.soporte-reanudar) {
    background: #121618 !important; color: #edf3ef !important; border-color: #39433e !important;
}
html[data-tema="oscuro"] body :is(.legal-cabecera h1,.legal-documento h2,.legal-documento h3,.legal-indice strong,.sugerir-local-formulario label,.soporte-pagina label,.soporte-pagina h1,.soporte-pagina h2) { color: #edf3ef !important; }
html[data-tema="oscuro"] body :is(.legal-documento p,.legal-documento li,.legal-fecha,.sugerir-local-pie small,#estadoSugerenciaLocal,.soporte-ayuda,.soporte-chat-ayuda,.soporte-nota) { color: #c2cec7 !important; }
html[data-tema="oscuro"] body :is(.legal-indice a,.legal-enlaces-finales a,.sugerir-local-formulario input,.sugerir-local-formulario textarea,.soporte-pagina input,.soporte-pagina textarea,.soporte-pagina select,.soporte-mensaje.admin,.soporte-chat-estado,.soporte-reanudar-icono) {
    background: #202627 !important; color: #edf3ef !important; border-color: #43524a !important;
}
html[data-tema="oscuro"] body :is(.sugerir-local-formulario,.soporte-pagina) ::placeholder { color: #a9bab0 !important; opacity: 1; }
html[data-tema="oscuro"] body :is(.legal-documento a,.soporte-pagina a,.soporte-cabecera span,.soporte-estado) { color: #9ee0b8 !important; }
html[data-tema="oscuro"] body :is(.aviso-borrador-legal,.legal-datos-pendientes) { background: #2a251c !important; border-color: #75603c !important; color: #ecd3a5 !important; }
html[data-tema="oscuro"] body :is(.aviso-borrador-legal,.legal-datos-pendientes) :is(p,strong) { color: #ecd3a5 !important; }
html[data-tema="oscuro"] body .legal-documento section + section { border-color: #39433e !important; }
html[data-tema="oscuro"] body .soporte-pagina :is(button,.soporte-mensaje.usuario) { background: #294637 !important; color: #edf8f1 !important; border-color: #69947c !important; }
html[data-tema="oscuro"] body .soporte-estado.exito { background: #203e2d !important; color: #b6ecc9 !important; }
html[data-tema="oscuro"] body .soporte-estado.error { background: #422823 !important; color: #f3c1b6 !important; }

/* Invitación a publicar: tema oscuro también dentro del contenedor. */
html[data-tema="oscuro"] body #registroLocal .registro-invitacion {
 background: #121618 !important; color: #edf3ef !important; border-color: #39433e !important;
}
html[data-tema="oscuro"] body #registroLocal :is(.registro-invitacion-claves span,.registro-como-funciona,.registro-como-funciona summary,.registro-pasos > div,#estadoRegistroCuenta) {
 background: #202627 !important; color: #d6e2db !important; border-color: #43524a !important;
}
html[data-tema="oscuro"] body #registroLocal :is(#tituloRegistro,.registro-pasos strong,.registro-como-funciona summary) { color: #edf3ef !important; }
html[data-tema="oscuro"] body #registroLocal :is(.registro-invitacion-resumen,.registro-pasos small,#estadoRegistroCuenta) { color: #c2cec7 !important; }
html[data-tema="oscuro"] body #registroLocal :is(.registro-invitacion > .sobretitulo,.registro-pasos > div > span) { color: #9ee0b8 !important; }
html[data-tema="oscuro"] body #registroLocal #mostrarRegistro { background: #294637 !important; color: #edf8f1 !important; border-color: #69947c !important; }

/* Mi cuenta: contraste de la vista aprobada, sin cambios de navegación. */
html[data-tema="oscuro"] body #accesoUsuarios #cuentaMenuRapido .cuenta-menu-texto strong {
 color: #edf3ef !important; opacity: 1 !important;
}
html[data-tema="oscuro"] body #accesoUsuarios #cuentaMenuRapido .cuenta-menu-texto small {
 color: #becbc4 !important; opacity: 1 !important;
}
html[data-tema="oscuro"] body #accesoUsuarios #cuentaMenuRapido :is(.cuenta-menu-titulo,.cuenta-menu-flecha) {
 color: #c2cec7 !important; opacity: 1 !important;
}
html[data-tema="oscuro"] body #accesoUsuarios #cuentaMenuRapido .cuenta-menu-estado {
 color: #b5dfc5 !important; opacity: 1 !important;
}
html[data-tema="oscuro"] body #accesoUsuarios #cuentaMenuRapido .cuenta-menu-estado[data-tono="alerta"] { color: #efd09a !important; }
html[data-tema="oscuro"] body #accesoUsuarios #cuentaMenuRapido .cuenta-menu-icono { color: #91dfb4 !important; }
html[data-tema="oscuro"] body #accesoUsuarios #salirAcceso,
html[data-tema="oscuro"] body #accesoUsuarios #salirAcceso :is(span,svg) { color: #edaaa0 !important; }


/* Solicitud de local: capa visual oscura para los cuatro pasos. */
html[data-tema="oscuro"] body #contenidoRegistro {
    background: var(--oe-fondo) !important;
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(
    .registro-modo-cabecera,.registro-paso-acciones,.registro-asistente-cabecera,
    .selector-categorias,.editor-horarios,.bloque-menu-registro,
    .bloque-ubicacion-registro,.oferta-registro-opcional,
    .oferta-estudiantes-formulario,.registro-cuenta-vinculada,
    .registro-resumen-bloque,.registro-despues-envio,.aviso-legal-registro,
    .vista-previa-foto-menu,.tipo-oferta-selector,.ux-menu-editor
) {
    background: var(--oe-superficie) !important;
    border-color: var(--oe-borde) !important;
    color: var(--oe-texto) !important;
    box-shadow: none !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(
    .opciones-categorias label,.tipo-oferta-opciones label,.menu-opcion-registro,
    .menu-registro-que-va-aqui,.oferta-registro-intro,.registro-plan-gratis,
    .registro-estado-borrador,.solicitud-enviada-acciones,
    .ux-menu-fila,.ux-menu-producto,.ux-menu-lote,.ux-menu-seccion
) {
    background: var(--oe-superficie-2) !important;
    border-color: var(--oe-borde) !important;
    color: var(--oe-texto-2) !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(h3,h4,label,legend,strong,.dia-horario-control) {
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(
    p,small,.registro-asistente-nombres,.registro-modo-contexto span,
    .menu-registro-explicacion-intro,.menu-registro-explicacion-cierre,
    .ux-menu-editor-intro,.fila-horario > span
) { color: var(--oe-texto-2) !important; }
html[data-tema="oscuro"] body #contenidoRegistro :is(
    .campo-obligatorio,.registro-bloque-icono,.menu-opcion-titulo > span,
    .oferta-registro-opcional-accion,.registro-plan-gratis > span,
    .registro-despues-envio > div > span,.solicitud-enviada-icono
) {
    background: var(--oe-verde-fondo) !important;
    color: #a7e5bf !important;
    border-color: #416c55 !important;
    box-shadow: none !important;
}
html[data-tema="oscuro"] body #contenidoRegistro .oferta-registro-opcional-accion::after {
    color: #a7e5bf !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select) {
    background: var(--oe-fondo-2) !important;
    color: var(--oe-texto) !important;
    border-color: #485451 !important;
    color-scheme: dark;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(input,textarea)::placeholder {
    color: #aab7b0 !important;
    opacity: 1;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(input[type="checkbox"],input[type="radio"]) {
    accent-color: var(--oe-verde);
    color-scheme: dark;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(input,textarea,select):disabled {
    background: var(--oe-superficie-3) !important;
    color: #aab7b0 !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(button,.boton-subir-foto-menu) {
    background: var(--oe-superficie-2) !important;
    color: var(--oe-texto) !important;
    border-color: #52645b !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(
    .opciones-categorias label,.tipo-oferta-opciones label
):has(input:checked),
html[data-tema="oscuro"] body #contenidoRegistro :is(.registro-paso-indicador.activo,.ux-menu-modo.activo) {
    background: var(--oe-verde-fondo) !important;
    border-color: var(--oe-verde-2) !important;
    color: #c0f0d2 !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(a,.registro-modo-contexto small) { color: #9ee0b8 !important; }
html[data-tema="oscuro"] body #contenidoRegistro :is(button,input,textarea,select,a):focus-visible {
    outline: 2px solid var(--oe-verde) !important;
    outline-offset: 3px;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(
    .registro-paso-titulo,.registro-paso-acciones,.fila-horario,.oferta-registro-opcional summary
) { border-color: var(--oe-borde) !important; }
html[data-tema="oscuro"] body #contenidoRegistro :is(.separador-opciones-menu > span,.registro-asistente-cabecera > i) {
    background: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body #contenidoRegistro .separador-opciones-menu > strong {
    background: var(--oe-superficie-2) !important;
    color: #9ee0b8 !important;
}
html[data-tema="oscuro"] body #contenidoRegistro .registro-error-inline {
    background: #35201f !important;
    color: #ffc3b9 !important;
    border-color: #ad6e64 !important;
}
html[data-tema="oscuro"] body #contenidoRegistro .registro-campo-con-error :is(input,textarea,select) {
    border-color: #e89b8f !important;
}

/* Paneles del menú y fotos que se incorporan al cargar el editor. */
html[data-tema="oscuro"] body #contenidoRegistro :is(
    .ux-producto-imagen-editor,.ux-producto-foto-panel,.ux-producto-foto-boton,
    .ux-precio-wrap,.ux-menu-opciones-panel,.ofertas-multiples-panel,
    .ofertas-multiples-item,.ux-menu-item,.ux-menu-panel,
    .bloque-ubicacion-cabecera > span,#imagenPreviaFotoMenu
) {
    background: var(--oe-superficie-2) !important;
    color: var(--oe-texto-2) !important;
    border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body #contenidoRegistro :is(.ux-precio-wrap,.ux-menu-opciones-panel,.ux-producto-imagen-editor,.ofertas-multiples-panel) span {
    color: var(--oe-texto-2) !important;
}

/* Etiquetas y textos del editor de menú: contraste en modo oscuro. */
html[data-tema="oscuro"] body #contenidoRegistro .ux-menu-editor :is(
    .ux-menu-campo > span,.ux-menu-campo > label,.ux-menu-opciones-titulo,
    .ux-menu-titulo-seccion,.ux-menu-item-info strong,.ux-menu-preview > strong,
    .ux-menu-bulk-fila > span
) { color: #edf3ef !important; }
html[data-tema="oscuro"] body #contenidoRegistro .ux-menu-editor .ux-menu-campo > span,
html[data-tema="oscuro"] body #contenidoRegistro .ux-menu-editor .ux-menu-campo > label {
    font-size: 14px !important;
    font-weight: 650 !important;
    line-height: 1.45;
}
html[data-tema="oscuro"] body #contenidoRegistro .ux-menu-editor :is(
    .ux-menu-ayuda,.ux-menu-opciones-ayuda,.ux-menu-item-opciones,
    .ux-menu-preview-opciones,.ux-menu-preview-fila span:first-child
) { color: #c5d1ca !important; }
html[data-tema="oscuro"] body #contenidoRegistro .ux-menu-editor :is(
    .ux-precio-wrap > span,.ux-menu-item-info > span,.ux-menu-preview-fila span:last-child
) { color: #a7e5bf !important; }
html[data-tema="oscuro"] body #contenidoRegistro .ux-menu-editor .ux-menu-eliminar { color: #ffc3b9 !important; }

/* Alertas: superficies y jerarquía legible, sin alterar navegación ni eventos. */
html[data-tema="oscuro"] body #panelNotificaciones :is(.cabecera-notificaciones,.preferencias-alertas,.alertas-actualizacion-sistema,.alertas-dispositivo-configuracion,.diagnostico-notificaciones,.estado-alertas,.notificacion-cuenta) {
    background: var(--oe-superficie) !important;
    color: var(--oe-texto) !important;
    border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body #panelNotificaciones :is(h2,h3,.notificacion-oferta-texto,.notificacion-cuenta-contenido strong,.alertas-actualizacion-contenido strong,.preferencias-alertas summary,label) {
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #panelNotificaciones :is(p,small,.cabecera-notificaciones-ayuda,.estado-alertas-contenido) {
    color: var(--oe-texto-2) !important;
}
html[data-tema="oscuro"] body #panelNotificaciones .notificacion-oferta .notificacion-oferta-texto {
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #panelNotificaciones .notificacion-oferta h3,
html[data-tema="oscuro"] body #panelNotificaciones .notificacion-oferta h3::before,
html[data-tema="oscuro"] body #panelNotificaciones .notificacion-oferta-texto::before,
html[data-tema="oscuro"] body #panelNotificaciones .cabecera-notificaciones > div > p {
    color: #a7e5bf !important;
}
html[data-tema="oscuro"] body #panelNotificaciones .notificacion-oferta-datos .notificacion-precio {
    background: #342a1b !important;
    color: #f0d399 !important;
}
html[data-tema="oscuro"] body #panelNotificaciones :is(.notificaciones-seccion-icono,.notificacion-cuenta-icono,.alertas-actualizacion-icono) {
    background: #20382c !important;
    color: #a7e5bf !important;
}
html[data-tema="oscuro"] body #panelNotificaciones :is(.notificaciones-grupo-ofertas,.notificaciones-cuenta,.alertas-dispositivo-resumen) {
    border-color: var(--oe-borde) !important;
}

/* Ofertas adicionales desplegables: misma paleta oscura de la ficha. */
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-ofertas-secundarias {
    --oferta-fondo: #191d1e;
    --oferta-borde: #3b4943;
    --oferta-acento: #a7e5bf;
    --oferta-acento-suave: #20382c;
    --oferta-precio: #a7e5bf;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-oferta-presentada {
    --oferta-fondo: #191d1e;
    --oferta-borde: #3b4943;
    --oferta-acento: #a7e5bf;
    --oferta-acento-suave: #20382c;
    --oferta-precio: #a7e5bf;
    background: var(--oferta-fondo) !important;
    border-color: var(--oferta-borde) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-oferta-presentada:is(.tipo-estudiantes,.tipo-mixta) {
    --oferta-acento: #f0d399;
    --oferta-acento-suave: #342a1b;
    --oferta-borde: #675639;
    --oferta-precio: #f0d399;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-ofertas-secundarias-contenido {
    background: var(--oe-superficie) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-ofertas-secundarias :is(.multi-ofertas-secundarias-textos strong,.multi-oferta-presentada-descripcion) {
    color: var(--oe-texto) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-ofertas-secundarias :is(.multi-ofertas-secundarias-textos small,.multi-oferta-presentada-precio small) {
    color: var(--oe-texto-2) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-ofertas-secundarias :is(.multi-oferta-presentada-kicker,.multi-oferta-presentada-tipo) {
    color: var(--oferta-acento) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-ofertas-secundarias > summary::after {
    color: #a7e5bf !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-ofertas-secundarias > summary {
    border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-ofertas-secundarias-icono {
    background: #20382c !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-oferta-presentada-precio {
    background: #101516 !important;
    border-color: #3b4943 !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-oferta-presentada-precio strong {
    color: var(--oferta-precio) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-oferta-presentada-chip {
    background: #252e2b !important;
    color: #dce8e0 !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-oferta-presentada-chip.junaeb-si {
    background: #203c2b !important; color: #a7e5bf !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .multi-oferta-presentada-chip.junaeb-no {
    background: #332a25 !important; color: #e6c6b5 !important;
}

/* Ayudas de guardar y avisar: superficies oscuras también al desplegarse. */
html[data-tema="oscuro"] body .guia-guardar-seguir,
html[data-tema="oscuro"] body .guia-guardar-seguir > summary,
html[data-tema="oscuro"] body #contenidoDetalleLocal .ux-alerta-secundaria {
    background: var(--oe-superficie) !important;
    color: var(--oe-texto) !important;
    border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body .guia-guardar-seguir-contenido {
    background: var(--oe-superficie-2) !important;
    color: var(--oe-texto-2) !important;
    border-color: var(--oe-borde) !important;
}
html[data-tema="oscuro"] body .guia-guardar-seguir-contenido strong,
html[data-tema="oscuro"] body #contenidoDetalleLocal .ux-alerta-secundaria-texto strong {
    color: #a7e5bf !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .ux-alerta-secundaria-texto small {
    color: var(--oe-texto-2) !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .ux-alerta-secundaria .detalle-seguir {
    background: var(--oe-superficie-2) !important;
    color: var(--oe-texto) !important;
    border-color: #52645b !important;
}
html[data-tema="oscuro"] body #contenidoDetalleLocal .ux-alerta-secundaria .detalle-seguir[aria-pressed="true"] {
    background: var(--oe-verde-fondo) !important;
    color: #a7e5bf !important;
    border-color: #527f65 !important;
}
