#route-form {
    padding-left: calc(var(--bs-gutter-x) * .5);
    padding-right: calc(var(--bs-gutter-x) * .5);
}

.autocomplete-suggestions {
    border: 1px solid #e0e0e0;
    background: #fff;
    overflow-y: auto;
    position: absolute;
    z-index: 1;
}

.autocomplete-suggestion {
    padding: 10px;
    cursor: pointer;
}

.autocomplete-active {
    background-color: #f0f0f0;
}

#output {
    border-right: none;
    min-height: 100px;
    padding: 10px;
    cursor: pointer;
    transition: background-color 0.3s, transform 0.3s;
}

#output:hover {
    background-color: var(--back-colorhovered);
}

.sidebar {
    overflow-y: auto;
    background-color: var(--back-color);
    position: relative;
}

.sidebar::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
    border-radius: 0px;
    background-color: #F5F5F5;
}

.sidebar::-webkit-scrollbar {
    width: 5px;
    background-color: #F5F5F5;
}

.sidebar::-webkit-scrollbar-thumb {
    border-radius: 0px;
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .1);
    background-color: var(--red);
}

@keyframes vibrate {
    0% {
        transform: translateX(0);
    }

    20% {
        transform: translateX(-5px);
    }

    40% {
        transform: translateX(5px);
    }

    60% {
        transform: translateX(-5px);
    }

    80% {
        transform: translateX(5px);
    }

    100% {
        transform: translateX(0);
    }
}

.vibrate {
    animation: vibrate 0.3s linear;
}


.details-popup {
    position: absolute;
    width: 100%;
    z-index: 401;
    height: 80%;
    left: 20px;
    box-shadow: 0 0 5px 1px rgba(0, 0, 0, .2);
    width: 400px;
    top: 10%;
    font-family: 'Sen', sans-serif;
}

.instruction-container {
    display: flex;
    width: 100%;
    gap: 10px;
    color: var(--blue);
}

.instruction-icon {
    flex-basis: 20%;
    text-align: center;
    border-right: 3px solid var(--gray);
}

.instruction-text {
    flex-basis: 80%;
    text-align: left;
}

.instruction-icon .icon {
    width: 30px;
    height: 30px;
}

.border-divider {
    background-color: var(--gray);
    height: 1px;
    flex: 1;
    margin-left: 2px;
    opacity: 0.5;
}

.instruction-distance {
    font-size: 16px;
    color: var(--gray);
    opacity: 0.8;
}