/* City Routes Landing Page */

.route-list-item {
    transition: background-color 0.15s;
}

.route-list-item:hover {
    background-color: #f8f9fa;
}

.route-list-item.selected {
    background-color: #e8f5e9 !important;
    border-left: 4px solid var(--medium-green) !important;
    margin-left: -4px;
}

.text-truncate-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Leaflet popup styling */
.leaflet-popup-content {
    margin: 10px 12px;
}

.leaflet-popup-content strong {
    display: block;
    margin-bottom: 4px;
}

/* Nearby city cards */
.hover-shadow {
    transition: box-shadow 0.15s, transform 0.15s;
}

.hover-shadow:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transform: translateY(-1px);
}

/* Mobile */
@media (max-width: 991.98px) {
    .city-routes-list {
        height: 500px !important;
    }
}

@media (max-width: 575.98px) {
    .city-routes-list {
        height: 450px !important;
    }
    
    .route-list-item {
        padding: 0.75rem !important;
    }
    
    .route-thumbnail {
        width: 60px !important;
        height: 60px !important;
    }
}
