/* Owner components retain their layout and use the shared theme palette. */
.cab__acciones { display: flex; align-items: center; gap: 12px; min-width: 0; }
.pagina-propietario .tema-switch { border-color: var(--b); }
.pagina-propietario .tema-switch:focus-visible { outline-color: var(--v); }
[data-tema="oscuro"] .pagina-propietario {
  --v: var(--verde);
  --vo: var(--verde-osc);
  --p: var(--fondo);
  --b: var(--borde);
  --t: var(--tinta);
  --g: var(--gris);
  --aviso: #454324;
  --peligro: #ffc3ba;
  background: var(--fondo);
  color: var(--tinta);
}
[data-tema="oscuro"] .pagina-propietario .cabecera-principal { background: var(--fondo); border-bottom: 1px solid var(--borde); }
[data-tema="oscuro"] .pagina-propietario .cab__contexto { border-color: var(--borde); }
[data-tema="oscuro"] .pagina-propietario .cab__contexto span { color: var(--gris); }
[data-tema="oscuro"] .pagina-propietario :is(.tabs,.alojamiento-card,.reserva-card,.movimiento-card,.cuenta-card,.editor-cabecera,.editor-indice,.editor-panel,.editor-panel__cabecera,.editor-panel__navegacion,.editor-acciones-sticky,.editor-selector-movil,.menu-perfil,.menu-perfil::before,.modal-perfil,.modal-perfil header,.modal-perfil footer,.modal-reporte,.modal-reporte header,.modal-reporte footer,.historial-tabla,.historial-tabla tr) { background: var(--superficie); color: var(--tinta); border-color: var(--borde); }
[data-tema="oscuro"] .pagina-propietario .formulario { background: transparent; }
[data-tema="oscuro"] .pagina-propietario .cuenta-editor { background: var(--superficie); }
[data-tema="oscuro"] .pagina-propietario .panel-bienvenida { background: var(--superficie); color: var(--tinta); }
[data-tema="oscuro"] .pagina-propietario .panel-bienvenida>.primario { background: var(--verde); color: #102d22; }
[data-tema="oscuro"] .pagina-propietario :is(.primario,.editor-panel__navegacion .primario,.editor-acciones-sticky .primario) { background: var(--verde); color: #102d22; border-color: var(--verde); }
[data-tema="oscuro"] .pagina-propietario .primario:hover { background: var(--verde-osc); }
[data-tema="oscuro"] .pagina-propietario :is(.secundario,.icono-boton,.perfil-trigger,.boton-google) { background: var(--control); color: var(--tinta); border-color: var(--borde-control); }
[data-tema="oscuro"] .pagina-propietario :is(.secundario:hover,.menu-perfil>button:hover,.menu-perfil>a:hover) { background: #343c37; color: var(--tinta); border-color: var(--borde-control); }
[data-tema="oscuro"] .pagina-propietario :is(input,select,textarea) { background: var(--control); color: var(--tinta); border-color: var(--borde-control); box-shadow: none; }
[data-tema="oscuro"] .pagina-propietario :is(input,select,textarea):hover { background: var(--control); border-color: var(--gris); }
[data-tema="oscuro"] .pagina-propietario :is(input,select,textarea):focus { background: var(--control); border-color: var(--verde); box-shadow: 0 0 0 3px #9addb126; }
[data-tema="oscuro"] .pagina-propietario :is(input[readonly],input:disabled,select:disabled,textarea:disabled) { background: #2c322e; color: var(--gris); }
[data-tema="oscuro"] .pagina-propietario input::file-selector-button { background: #343c37; color: var(--tinta); border-color: var(--borde-control); }
[data-tema="oscuro"] .pagina-propietario :is(.editor-panel__cuerpo label,.menu-perfil__resumen strong,.cuentas-vacio strong,.historial-inicial strong,.historial-vacio strong) { color: var(--tinta); }
[data-tema="oscuro"] .pagina-propietario label { color: var(--tinta); }
[data-tema="oscuro"] .pagina-propietario :is(.tabs button,.editor-indice button,.editor-panel__cabecera p,.menu-perfil__resumen small,.alojamiento-card__acciones label) { color: var(--gris); }
[data-tema="oscuro"] .pagina-propietario .tabs button.activo { color: var(--verde); }
[data-tema="oscuro"] .pagina-propietario :is(.editor-indice button:hover,.editor-indice button.activo,.estado,.alojamiento-card__estado,.editor-panel__cabecera>span,.cuenta-editor__cabecera>i,.cuentas-registradas__cabecera span,.cuenta-card__marca:not(.cuenta-card__marca--logo),.historial-tabla td>em) { background: var(--verde-claro); color: var(--verde-osc); }
[data-tema="oscuro"] .pagina-propietario :is(.usuario-avatar,.perfil-avatar-preview,.alojamiento-card__media,.alojamiento-card__identidad,.alojamiento-card__identidad>span,.editor-logo,.foto-admin,.galeria-admin,.historial-evidencia>i) { background: #2c322e; color: var(--tinta); }
[data-tema="oscuro"] .pagina-propietario :is(.analitica-alojamiento span,.checks-config>span,.movimiento-card__principal,.reserva-card__nota,.aviso-privacidad,.editor-panel__cuerpo .ayuda,.editor-panel__cuerpo .subpanel,.editor-panel__cuerpo .zona-subida,.editor-panel__cuerpo .ubicacion-acciones,.editor-panel__cuerpo .logo-alojamiento-editor,.editor-panel__cuerpo .galeria-admin__grupo,.editor-panel__cuerpo .servicios-admin-grupo,.editor-panel__cuerpo .servicios-admin-grupo label,.editor-panel__cuerpo .checks-pago label,.cuenta-editor__estado,.video-item,.historial-tabla th) { background: var(--control); color: var(--gris); border-color: var(--borde); }
[data-tema="oscuro"] .pagina-propietario .analitica-alojamiento b { color: var(--verde); }
[data-tema="oscuro"] .pagina-propietario .editor-panel__cuerpo :is(.checks-pago label,.servicios-admin-grupo label):has(input:checked) { background: var(--verde-claro); color: var(--verde-osc); border-color: var(--verde); }
[data-tema="oscuro"] .pagina-propietario :is(.editor-panel__cabecera,.editor-panel__navegacion,.editor-panel__cuerpo>h3,.alojamiento-card__cuerpo footer,.reserva-card>header,.reserva-card__datos>div,.reserva-card .acciones-reserva,.movimiento-card__principal>div,.cuenta-card__numero,.cuenta-card footer,.perfil-avatar-editor,.menu-perfil__resumen,.historial-tabla td) { border-color: var(--borde); }
[data-tema="oscuro"] .pagina-propietario :is(.progreso,.progreso-config,.editor-progreso>div) { background: #343c37; }
[data-tema="oscuro"] .pagina-propietario :is(.checks-config>span.pendiente,.checks-config>span.pendiente i,.alojamiento-card__alertas,.alojamiento-card__operativo,.estado-operativo--temporalmente_fuera_servicio,.reserva-card__motivo) { background: #454324; color: #f9ecc0; }
[data-tema="oscuro"] .pagina-propietario :is(.secundario--peligro,.video-item button,.estado-operativo--cerrado_permanentemente,.caja--error,.validacion-resumen button) { background: #512c2b; color: #ffc3ba; border-color: #a06d65; }
[data-tema="oscuro"] .pagina-propietario :is(.secundario--peligro:hover,.validacion-resumen button:hover) { background: #673532; color: #ffc3ba; }
[data-tema="oscuro"] .pagina-propietario :is(.validacion-resumen,.validacion-resumen>p,.historial-vacio--error strong) { color: #ffc3ba; }
[data-tema="oscuro"] .pagina-propietario #seccion-formulario .editor-acciones-sticky:has(.validacion-resumen) { background: #352422; border-color: #a06d65; }
[data-tema="oscuro"] .pagina-propietario #editor-guardado-estado.pendiente { color: #f9ecc0; }
[data-tema="oscuro"] .pagina-propietario .cuenta-card--inactiva { background: var(--control); color: var(--gris); }
[data-tema="oscuro"] .pagina-propietario :is(.foto-admin__acciones button,.foto-admin__portada) { background: var(--superficie); color: var(--tinta); border-color: var(--borde-control); }
[data-tema="oscuro"] .pagina-propietario :is(.foto-admin__imagen,.foto-admin__epigrafe,.galeria-admin__cabecera button,.foto-admin__epigrafe button) { background: var(--superficie); color: var(--tinta); border-color: var(--borde-control); }
[data-tema="oscuro"] .pagina-propietario .foto-admin__acciones label { background: var(--superficie); padding: 4px; border-radius: 4px; }
[data-tema="oscuro"] .pagina-propietario .estado-pago--ok { background: #263e31; color: #c0efcf; }
[data-tema="oscuro"] .pagina-propietario .estado-pago--pendiente { background: #454324; color: #f9ecc0; }
[data-tema="oscuro"] .pagina-propietario .estado-pago--error { background: #512c2b; color: #ffc3ba; }
[data-tema="oscuro"] .pagina-propietario .leaflet-bar a { background: var(--superficie); color: var(--tinta); border-color: var(--borde); }
[data-tema="oscuro"] .pagina-propietario .leaflet-control-attribution { background: var(--superficie); color: var(--gris); }
[data-tema="oscuro"] .pagina-propietario :focus-visible { outline-color: var(--verde); }
@media(max-width:700px) {
  .cab__acciones { gap: 8px; }
  .pagina-propietario .cab__contexto { display: none; }
  .pagina-propietario .cab { grid-template-columns: auto minmax(0,1fr); }
  .cab__acciones { justify-content: flex-end; }
}
