/* DEV · Entidades
   Estilos deliberadamente acotados al contenido central de los CRUD técnicos.
   Header y footer quedan fuera de este alcance. */

.dev-entities-container {
    max-width: 1500px;
    --bs-body-font-size: .85rem;
    font-size: var(--bs-body-font-size);
}

/* .dev-entities-page queda como marcador semántico para futuros ajustes de
   densidad/tabla/filtros. No redefine font-size: el tamaño base lo gobierna
   dev-entities-container. */

.dev-entity-thumb { width:50px; height:50px; flex:0 0 50px; border-radius:.55rem; object-fit:cover; background:#f1f3f5; border:1px solid rgba(0,0,0,.08); }
.dev-entity-avatar { width:50px; height:50px; flex:0 0 50px; border-radius:var(--user-avatar-radius); object-fit:cover; background:#eef1f3; border:1px solid rgba(0,0,0,.08); }
.dev-entity-media-lg { width:140px; height:140px; object-fit:cover; background:#f1f3f5; border:1px solid rgba(0,0,0,.08); border-radius:.85rem; }
.dev-entity-avatar-lg { border-radius:var(--user-avatar-radius); }
.dev-entity-fallback { display:inline-flex; align-items:center; justify-content:center; color:#6c757d; }
.dev-entity-related-property-thumb { width:72px; height:54px; flex:0 0 72px; border-radius:.5rem; object-fit:cover; background:#f1f3f5; border:1px solid rgba(0,0,0,.08); }
.dev-entity-related-row + .dev-entity-related-row { border-top:1px solid var(--bs-border-color); }


/* Referencias cruzadas entre entidades DEV. */
.dev-entity-ref-link { display:inline-flex; align-items:center; justify-content:center; text-decoration:none; vertical-align:middle; }
.dev-entity-ref-link:hover { text-decoration:none; }
.dev-entity-ref-btn { width:30px; height:30px; padding:0; display:inline-flex; align-items:center; justify-content:center; }

/* ProcesoValoracion: propiedad + avatar del propietario superpuesto. */
.dev-process-participants { display:flex; align-items:flex-start; gap:1.25rem; }
.dev-process-participants__media { position:relative; width:132px; min-width:132px; padding-bottom:10px; }
.dev-process-participants__property { width:120px; height:90px; display:flex; align-items:center; justify-content:center; border-radius:.65rem; object-fit:cover; background:#f1f3f5; border:1px solid rgba(0,0,0,.08); }
.dev-process-participants__owner-avatar { position:absolute; right:0; bottom:0; width:44px; height:44px; display:flex; align-items:center; justify-content:center; object-fit:cover; background:#fff; border:3px solid #fff; box-shadow:0 1px 5px rgba(0,0,0,.18); }
.dev-process-participants__data { min-width:0; }

@media (max-width: 575.98px) {
    .dev-process-participants { flex-direction:column; }
}

/* Reservas DEV: indicador de proximidad al check-in. */
.dev-reserva-checkin-cell { min-width:130px; }
.dev-reserva-checkin { min-width:110px; }
.dev-reserva-checkin__progress { height:6px; background:var(--bs-gray-200); }
