
        /* Custom numbered marker styles */
        .custom-div-icon {
            background: none;
            border: none;
        }
        .marker-pin {
            width: 30px;
            height: 30px;
            border-radius: 50% 50% 50% 0;
            background: #2563eb;
            position: absolute;
            transform: rotate(-45deg);
            left: 50%;
            top: 50%;
            margin: -15px 0 0 -15px;
            box-shadow: 2px 2px 4px rgba(0,0,0,0.3);
            border: 2px solid white;
        }
        .marker-number {
            position: absolute;
            width: 30px;
            height: 30px;
            left: 50%;
            top: 50%;
            margin: -15px 0 0 -15px;
            text-align: center;
            line-height: 30px;
            color: white;
            font-weight: bold;
            font-size: 14px;
            font-family: sans-serif;
            z-index: 10;
        }

        /* Layout utility for map height on mobile */
        #map {
            height: 50vh;
        }
        @media (min-width: 768px) {
            #map {
                height: 100vh;
            }
        }

        /* Custom Scrollbar for sidebar */
        ::-webkit-scrollbar {
            width: 6px;
        }
        ::-webkit-scrollbar-track {
            background: #f1f1f1;
        }
        ::-webkit-scrollbar-thumb {
            background: #cbd5e1;
            border-radius: 4px;
        }
        ::-webkit-scrollbar-thumb:hover {
            background: #94a3b8;
        }
