        /* =====================================================
           STOP MARKER
        ===================================================== */

        .stop-marker {
            width: 38px;
            height: 38px;

            border-radius: 50%;

            background: #fff;
            color: #d90000;

            border:
                3px solid #d90000;

            box-shadow:
                0 3px 10px rgba(0,0,0,0.22);

            display: flex;
            align-items: center;
            justify-content: center;

            font-size: 15px;
            font-weight: 700;
        }


        /* =====================================================
           POI MARKER
        ===================================================== */

        .poi-marker {
            width: 28px;
            height: 28px;

            border-radius: 50%;

            background: white;
            color: #a90000;

            border:
                2px solid #a90000;

            box-shadow:
                0 2px 7px rgba(0,0,0,0.20);

            display: flex;
            align-items: center;
            justify-content: center;

            font-size: 11px;
        }

        .poi-sticker-marker {
            width: 58px;
            height: 58px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            filter: drop-shadow(0 3px 5px rgba(0,0,0,.32));
            transition: transform .15s ease, filter .15s ease;
        }

        .poi-sticker-marker:hover {
            transform: scale(1.12);
            filter: drop-shadow(0 5px 8px rgba(0,0,0,.38));
        }

        .poi-sticker-marker img {
            width: 58px;
            height: 58px;
            object-fit: contain;
            pointer-events: none;
        }


        /* =====================================================
           VAN MARKER
        ===================================================== */

        .van-marker-wrap {
            position: relative;

            width: 54px;
            height: 54px;
        }


        .van-heading {
            position: absolute;

            top: -5px;
            left: 17px;

            width: 20px;
            height: 20px;

            color: #d90000;

            transform-origin:
                center 16px;

            font-size: 16px;
            font-weight: 700;
            text-align: center;
        }


        .van-marker-circle {
            position: absolute;

            top: 5px;
            left: 5px;

            width: 44px;
            height: 44px;

            box-sizing: border-box;

            border-radius: 0;

            background: transparent;

            border: 0;

            box-shadow: none;

            display: flex;
            align-items: center;
            justify-content: center;

            color: #fff;
        }


        .van-marker-circle .vehicle-symbol {
            width: 43px;
            height: 28px;

            filter: drop-shadow(0 3px 3px rgba(0,0,0,.35));

        }


        /* =====================================================
           USER LOCATION
        ===================================================== */

        .user-location-wrapper {
            position: relative;

            width: 32px;
            height: 32px;
        }


        .user-location-pulse {
            position: absolute;

            width: 32px;
            height: 32px;

            border-radius: 50%;

            background:
                rgba(40,110,255,0.18);

            animation:
                pulse 2s infinite;
        }


        .user-location-dot {
            position: absolute;

            top: 7px;
            left: 7px;

            width: 18px;
            height: 18px;

            border-radius: 50%;

            background: #2870ff;

            border:
                3px solid white;

            box-shadow:
                0 2px 8px rgba(0,0,0,0.28);
        }


        @keyframes pulse {

            0% {
                transform: scale(0.7);
                opacity: 1;
            }

            100% {
                transform: scale(1.6);
                opacity: 0;
            }

        }
