.property-card {
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.property-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.15) !important;
}

.property-img {
    height: 220px;
    object-fit: cover;
}

.property-img-placeholder {
    height: 220px;
}

.detail-carousel-img {
    height: 400px;
    object-fit: cover;
    cursor: pointer;
}

.cursor-pointer {
    cursor: pointer;
}

.thumbnail-strip {
    scrollbar-width: thin;
}

.thumbnail-img {
    width: 70px;
    height: 50px;
    object-fit: cover;
    border-radius: 4px;
    cursor: pointer;
    opacity: 0.6;
    border: 2px solid transparent;
    transition: opacity 0.15s, border-color 0.15s;
    flex-shrink: 0;
}

.thumbnail-img:hover {
    opacity: 0.9;
}

.thumbnail-img.active {
    opacity: 1;
    border-color: #0d6efd;
}

.lightbox-img {
    max-height: 80vh;
    max-width: 100%;
    object-fit: contain;
}

.badge-user-ah-dot,
.badge-user-ph-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 4px;
}

.badge-user-ah-dot {
    background-color: #0dcaf0;
}

.badge-user-ph-dot {
    background-color: #198754;
}
