#map.leaflet-container {
    letter-spacing: 0;

    .vehicle-icon-container {
        width: 30px;
        height: 30px;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;

        &.aircraft-circle {
            border-radius: 50%;
            border: 3px solid;

            &.range-red-color {
                border-color: var(--va-range-red-color);
            }

            &.range-orange-color {
                border-color: var(--va-range-orange-color);
            }

            &.range-yellow-color {
                border-color: var(--va-range-yellow-color);
            }

            &.range-green-color {
                border-color: var(--va-range-green-color);
            }
        }
    }

    .aircraft-label {
        position: absolute;
        bottom: 100%;

        .label-row {
            line-height: 14px;
            font-size: 12px;
            color: var(--va-text-light);
            font-weight: 600;
            font-family: 'Segoe UI', Arial, sans-serif;
            text-shadow: 0 0 2px rgba(0, 0, 0, 0.9), 0 0 4px rgba(0, 0, 0, 0.6);
            white-space: nowrap;
            pointer-events: none;

            &.arrival-gate.occupied {
                color: var(--va-aircraft-label-occupied-gate-color);
                font-weight: bold;
            }
        }

        &.filtered-out {
            .label-row {
                color: var(--va-aircraft-icon-filtered-out-color);
                text-shadow: none;
            }
        }
    }

    .gate-label {
        font-size: 13px;
        font-weight: bold;
        color: var(--va-text-light);
        text-shadow: 0 0 2px rgba(0, 0, 0, 0.9), 0 0 4px rgba(0, 0, 0, 0.6);
        white-space: nowrap;
        pointer-events: none;
    }

    .deicing-station-label {
        font-size: 11px;
        font-weight: normal;
        color: var(--va-text-light);
        text-shadow: 0 0 2px rgba(0, 0, 0, 0.9), 0 0 4px rgba(0, 0, 0, 0.6);
        white-space: nowrap;
        pointer-events: none;
    }

    .aero-symbol {
        --size: 1em;
        display: flex;
        flex-direction: column;
        align-items: center;

        & > .label {
            position: absolute;
            text-align: center;
            font-size: 0.8em;
            font-weight: bold;
            bottom: 100%;
        }

        & > .triangle-right-shape {
            border-left: calc(var(--size) * 0.8) solid var(--va-aero-symbol-color);
            border-top: calc(var(--size) * 0.5) solid transparent;
            border-bottom: calc(var(--size) * 0.5) solid transparent;
        }

        & > .diamond-shape {
            width: calc(var(--size) * 0.6);
            height: calc(var(--size) * 0.6);
            background: var(--va-aero-symbol-color);
            transform: rotate(45deg);
        }

        &.highlighted {
            --va-aero-symbol-color: var(--va-aero-symbol-selected-color);
            --size: 1.4em;
        }
    }

    .holding-symbol {
        width: 1em;
        height: 1em;
        transform: rotate(45deg);
        border: 0.2em solid;
    }

    .holding-symbol-issued {
        background: var(--va-holding-issued-symbol-color);
        border-color: color-mix(in lch, var(--va-holding-issued-symbol-color) 75%, black);
    }

    .holding-symbol-released {
        background: var(--va-holding-released-symbol-color);
        border-color: color-mix(in lch, var(--va-holding-released-symbol-color) 75%, black);
    }

    .leaflet-control-zoom, .leaflet-control-zoom-in, .leaflet-control-zoom-out {
        background-color: var(--va-grey);
        color: var(--va-text-light);
        border: none;
        transition: background-color var(--rz-transition), color var(--rz-transition);
        font-family: var(--va-font-family);
        font-size: 20px;
        font-weight: normal;
        width: 28px;
        min-width: unset;
        height: 28px;
        line-height: 28px;

        &:hover {
            background-color: var(--va-blue);
            color: var(--va-text-dark)
        }

        &.leaflet-control-zoom-in {
            border-top-left-radius: 4px;
            border-top-right-radius: 4px;
        }

        &.leaflet-control-zoom-out {
            border-bottom-left-radius: 4px;
            border-bottom-right-radius: 4px;
        }
    }

    .leaflet-control-layers {
        background-color: var(--va-grey);
        color: var(--va-text-light);
        border: none;

        &.leaflet-control-layers-toggle:hover {
            background-color: var(--va-blue);
            color: var(--va-text-dark)
        }
    }

    .leaflet-control-attribution {
        background-color: var(--va-grey);
        color: var(--va-white-dark);
        border-radius: 3px;
        margin-right: 10px;
        margin-bottom: 10px;

        .leaflet-attribution-flag {
            display: none !important;
        }

        a {
            color: var(--va-white-dark);
        }
    }

    .leaflet-top, .leaflet-bottom {
        z-index: 400;
    }
}
