/* Public ROCCA appearance only. Existing dark styles and brand assets stay authoritative. */
.apariencia { width:44px; height:44px; flex:0 0 44px; display:grid; place-items:center; padding:9px; border:1px solid #817361; border-radius:50%; background:#171717; color:#f2efe7; cursor:pointer; order:4; margin-left:8px; }
.apariencia svg { display:block; width:26px; height:26px; }
.apariencia:focus-visible { outline:3px solid #a95742; outline-offset:4px; }
html[data-rocca-theme="light"] { --fondo:#F2EFE7; --panel:#FAF8F3; --panel-2:#E9E5DA; --papel:#FAF8F3; --texto:#171717; --texto-2:#55524B; --texto-inv:#171717; --texto-inv-2:#55524B; --linea:#CBC4B6; --linea-inv:#CBC4B6; --punteado:1px dashed #817361; --ev-banda:#E9E5DA; --terracota:#A95742; --dorado:#8E4634; }
html[data-rocca-theme="light"] body { background:var(--fondo); color:var(--texto); }
html[data-rocca-theme="light"] :is(h1,h2,h3,h4,a,.papel,.oscuro,.seccion,.logo,.logo-nombre,.logo-descriptor,.tr-nombre,.tr-palabra,.precio-grande,.cifras dd,.tarjeta .numero,.pasos li::before,.ficha-tarjeta .datos,.ficha-tarjeta h3,.ficha-tarjeta .precio,.ev-cita p,.ev-cita footer b,.ev-contador b,.ev-flecha,.ev-mas a,.opinion blockquote,.pregunta,.boton-menu,.accesos-principales a,.idiomas-visibles [aria-current]) { color:var(--texto); }
html[data-rocca-theme="light"] :is(p,.entradilla,.nota-portada,.portada .entradilla,.portada .nota-portada,.precio-nota,.idiomas-visibles,.ficha-tarjeta .lugar,.ficha-tarjeta .medidas) { color:var(--texto-2); }
html[data-rocca-theme="light"] .encabezado .contenedor { background:rgba(242,239,231,.96); border-color:var(--linea); }
html[data-rocca-theme="light"] :is(.menu,.submenu) { background:var(--fondo) !important; box-shadow:0 12px 32px #17171718; }
html[data-rocca-theme="light"] .menu a:not(.boton) { color:var(--texto); }
html[data-rocca-theme="light"] .apariencia { color:#171717; background:#F2EFE7; }
html[data-rocca-theme="light"] :is(.oscuro,.portada,.pie) { background:var(--fondo); }
html[data-rocca-theme="light"] :is(.portada,main>.seccion:first-child)::before { background:none; }
html[data-rocca-theme="light"] .portada::after { opacity:.025; }
html[data-rocca-theme="light"] .acento { color:var(--terracota); }
html[data-rocca-theme="light"] :is(.antetitulo,.oscuro .antetitulo) { color:#8E4634; }
html[data-rocca-theme="light"] :is(.boton-principal,.busqueda-inicio .boton,#portafolio .busqueda-inicio .boton) { background:#A95742; border-color:#A95742; color:#fff; }
html[data-rocca-theme="light"] .boton-principal:hover { background:#8E4634; border-color:#8E4634; }
html[data-rocca-theme="light"] .boton-linea { color:#171717; border-color:#817361; }
html[data-rocca-theme="light"] .boton-linea:hover { background:#171717; color:#F2EFE7; }
html[data-rocca-theme="light"] :is(.campo input,.campo select,.campo textarea,#portafolio .busqueda-inicio input,#portafolio .busqueda-inicio select,body[data-pagina="listado"] .campo input,body[data-pagina="listado"] .campo select) { background:#FAF8F3; color:#171717; border-color:#817361; color-scheme:light; }
html[data-rocca-theme="light"] .campo select option { background:#FAF8F3; color:#171717; }
html[data-rocca-theme="light"] :is(.campo label,#portafolio .busqueda-inicio .campo label,body[data-pagina="listado"] .campo label) { color:var(--texto-2); }
html[data-rocca-theme="light"] :is(input,textarea)::placeholder { color:#686056; }
html[data-rocca-theme="light"] :is(.selector-operacion,#portafolio .operaciones-inicio,body[data-pagina="listado"] .selector-operacion,body[data-pagina="listado"] .panel-filtros>summary) { background:#E9E5DA; border-color:#817361; color:#171717; }
html[data-rocca-theme="light"] :is(.selector-operacion a,#portafolio .operaciones-inicio button,body[data-pagina="listado"] .selector-operacion a) { color:#171717; }
html[data-rocca-theme="light"] :is(.selector-operacion a[aria-current="page"],#portafolio .operaciones-inicio button[aria-pressed="true"],body[data-pagina="listado"] .selector-operacion a[aria-current="page"]) { background:#A95742; border-color:#A95742; color:#fff; }
html[data-rocca-theme="light"] :is(#portafolio .busqueda-inicio,#portafolio .cabecera-seccion,.preguntas details,.cv-preliminar) { border-color:var(--linea); }
html[data-rocca-theme="light"] :is(.carrusel-controles button,#portafolio .cabecera-seccion .boton,.ev-mini::after,.ev-retrato.sin-foto::after,.dictado,.voz,.listo,.aviso,.formulario,.calc-resultado,.ficha-tarjeta,.historia-opcion) { color:#171717; }
html[data-rocca-theme="light"] :is(.chip input:checked+span,.estado-pasos .activo b) { background:#171717; color:#F2EFE7; }
html[data-rocca-theme="light"] :is(.hero-inmueble>a,.hero-espera,.hero-pie,.cv-tarjeta,.estudio-pasos b) { background:var(--panel); color:#171717; }
html[data-rocca-theme="light"] :is(.hero-pie>span:first-child,.inventario-aviso) { color:var(--texto-2); }
html[data-rocca-theme="light"] .ev-barra { background:#17171730; }
html[data-rocca-theme="light"] .ficha-tarjeta.esqueleto .foto { background:#17171710; }
html[data-rocca-theme="light"] .ficha-tarjeta.esqueleto .linea { background:#17171718; }
html[data-rocca-theme="light"] :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid #8E4634; outline-offset:3px; }
/* Photo overlays, viewer and WhatsApp retain their contrast on photographs/dark surfaces. */
html[data-rocca-theme="light"] :is(.flotante,.visor button,.leyenda-amoblada) { color:#F2EFE7; }
html[data-rocca-theme="light"] .visor .contador { color:#C4BFB3; }
html[data-rocca-theme="light"] .flotante { background:#171717; }
@media(max-width:600px) {
  .apariencia { position:fixed; left:max(16px,env(safe-area-inset-left)); bottom:calc(16px + env(safe-area-inset-bottom)); width:48px; height:48px; margin:0; z-index:45; box-shadow:0 2px 10px #17171722; }
  /* Space at the end lets every control scroll clear of both floating buttons. */
  body { padding-bottom:calc(80px + env(safe-area-inset-bottom)); }
  html.menu-abierto .apariencia { visibility:hidden; }
}
@media print { .apariencia { display:none; } }
html[data-rocca-theme="light"] a.flotante { color:#F2EFE7; border-color:rgba(242,239,231,.12); }
html[data-rocca-theme="light"] .visor button { color:#F2EFE7; }
html[data-rocca-theme="light"] .apariencia:focus-visible { outline-width:3px; }
html[data-rocca-theme="light"] a.flotante[data-wa] { color:#F2EFE7; }
html[data-rocca-theme="light"] a.boton-linea:hover { color:#F2EFE7; }

/* Light appearance: separate search controls with space and surfaces, not repeated rules. */
html[data-rocca-theme="light"] .accesos-principales { border-top:0; }
html[data-rocca-theme="light"] #portafolio .busqueda-inicio { border-top:0; border-bottom:0; }
html[data-rocca-theme="light"] #portafolio .operaciones-inicio,
html[data-rocca-theme="light"] body[data-pagina="listado"] .selector-operacion { border:0; }
html[data-rocca-theme="light"] #portafolio .busqueda-inicio :is(select,input),
html[data-rocca-theme="light"] body[data-pagina="listado"] .campo :is(select,input) {
  border:0; border-radius:3px; background:var(--panel); padding-inline:12px;
}
html[data-rocca-theme="light"] #portafolio .carrusel-controles button.carrusel-pausa { border-bottom:0; }
html[data-rocca-theme="light"] body[data-pagina="listado"] .panel-filtros > summary { border:0; }
html[data-rocca-theme="light"] body[data-pagina="listado"] .panel-filtros .filtros { border-bottom:0 !important; }
html[data-rocca-theme="light"] body[data-pagina="listado"] .filtros-acciones { border-top:0; }
html[data-rocca-theme="light"] #portafolio .busqueda-inicio :is(select,input):focus,
html[data-rocca-theme="light"] body[data-pagina="listado"] .campo :is(select,input):focus {
  outline:2px solid #8E4634; outline-offset:3px;
}

/* Keep the existing map's original dark surface and palette in both appearances. */
.mapa-zonas {
  --panel:#1A1A1A;
  --marfil:#F2EFE7;
  --dorado:#C8A96B;
  --punteado:1px dashed rgba(242,239,231,.38);
  color:#F2EFE7;
  color-scheme:dark;
}
.mapa-zonas a:focus-visible { outline:2px solid #C8A96B; outline-offset:3px; }

/* Light surfaces: legacy white/gold text must use the local surface's text tokens. */
html[data-rocca-theme="light"] :is(.perfil-frase,.perfil-cifras b,.perfil-trayectoria b,.opinion footer b,
  .tp-cifra,.tp-flujo li:first-child,.frase-cierre,.barra-texto,.impacto-nota,.aviso-historia strong,
  .faq summary,.pie-firma,.dh-proposito,.nota-captacion,.doc .doc-titulo,.calc-tabla th,.calc-tabla td,
  .opcion-grande span,.cv-grande,.arr-dato strong,.calc-total,.cv-datos b,.cv-arriendo b) { color:var(--texto); }
html[data-rocca-theme="light"] :is(.perfil-cifras span,.perfil-cifras b small,.perfil-trayectoria p) { color:var(--texto-2); }
html[data-rocca-theme="light"] :is(.perfil-frase em,.perfil-trayectoria .anos,.acento) { color:#8E4634; }
html[data-rocca-theme="light"] .ficha-tarjeta .codigo { opacity:1; }
html[data-rocca-theme="light"] .chip span { color:var(--texto); }
/* This existing capture form is intentionally dark: keep its labels light, not carbon. */
html[data-rocca-theme="light"] .captacion-panel {
  --texto:#F2EFE7; --texto-2:#D4D1C8; --dorado:#C8A96B; color:var(--texto);
}
html[data-rocca-theme="light"] .captacion-panel :is(.campo label,.nota) { color:var(--texto-2); }
html[data-rocca-theme="light"] .captacion-panel :is(.antetitulo,.acento) { color:#C8A96B; }
/* Image overlays remain light on a reliably dark backing. */
html[data-rocca-theme="light"] .galeria-miniatura .mas { background:rgba(14,14,14,.72); color:#fff; }
html[data-rocca-theme="light"] :is(.ev-tj footer b,.ev-marco strong) { color:var(--texto); }
html[data-rocca-theme="light"] .ev-legal { opacity:1; }
html[data-rocca-theme="light"] .h-estado { --dorado:#C8A96B; --terracota:#E2A28D; color:#F2EFE7; }
html[data-rocca-theme="light"] .visor { --texto:#F2EFE7; --texto-2:#D4D1C8; color:#F2EFE7; }
html[data-rocca-theme="light"] .d-cerrar { background:#171717; color:#F2EFE7; border-radius:50%; width:44px; height:44px; }
html[data-rocca-theme="light"] .mapa-zonas a:focus-visible { outline-color:#C8A96B; }
