body {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
    display: flex;
    flex-direction: column;
}

#toolbar {
    background-color: #f8f9fa;
    padding: 10px;
    border-bottom: 1px solid #ddd;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 10px;
    height: 50px;
    width: 100%;
}

button {
    padding: 0;
}


#toolbar > div {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}

#routeSelector, #addressInput, #addAddressButton, #previewRouteButton, #logoutButton {
    padding: 5px;
    font-size: 14px;
}

#addAddressButton {
    cursor: pointer;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 3px;
}

#addAddressButton:hover {
    background-color: #0056b3;
}

#map {
    min-width: 100%;
    min-height: calc(100vh - 100px);
}

.numbered-marker {
    background-color: #007bff;
    color: white;
    font-size: 12px;
    text-align: center;
    line-height: 28px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid white;
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
}

.route-color-0  { background-color: #e6194b; }
.route-color-1  { background-color: #3cb44b; }
.route-color-2  { background-color: #ffe119; }
.route-color-3  { background-color: #4363d8; }
.route-color-4  { background-color: #f58231; }
.route-color-5  { background-color: #911eb4; }
.route-color-6  { background-color: #46f0f0; }
.route-color-7  { background-color: #f032e6; }
.route-color-8  { background-color: #bcf60c; }
.route-color-9  { background-color: #fabebe; }
.route-color-10 { background-color: #008080; }
.route-color-11 { background-color: #e6beff; }
.route-color-12 { background-color: #9a6324; }
.route-color-13 { background-color: #fffac8; }
.route-color-14 { background-color: #800000; }
.route-color-15 { background-color: #aaffc3; }
.route-color-16 { background-color: #808000; }
.route-color-17 { background-color: #ffd8b1; }
.route-color-18 { background-color: #000075; }
.route-color-19 { background-color: #808080; }

.route-text-color-0  { color: #fff; } /* #e6194b */
.route-text-color-1  { color: #000; } /* #3cb44b */
.route-text-color-2  { color: #000; } /* #ffe119 */
.route-text-color-3  { color: #fff; } /* #4363d8 */
.route-text-color-4  { color: #000; } /* #f58231 */
.route-text-color-5  { color: #fff; } /* #911eb4 */
.route-text-color-6  { color: #000; } /* #46f0f0 */
.route-text-color-7  { color: #fff; } /* #f032e6 */
.route-text-color-8  { color: #000; } /* #bcf60c */
.route-text-color-9  { color: #000; } /* #fabebe */
.route-text-color-10 { color: #fff; } /* #008080 */
.route-text-color-11 { color: #000; } /* #e6beff */
.route-text-color-12 { color: #fff; } /* #9a6324 */
.route-text-color-13 { color: #000; } /* #fffac8 */
.route-text-color-14 { color: #fff; } /* #800000 */
.route-text-color-15 { color: #000; } /* #aaffc3 */
.route-text-color-16 { color: #fff; } /* #808000 */
.route-text-color-17 { color: #000; } /* #ffd8b1 */
.route-text-color-18 { color: #fff; } /* #000075 */
.route-text-color-19 { color: #fff; } /* #808080 */

button:disabled {
  background-color: #ccc;
  color: #666;
  cursor: not-allowed;
}

button:disabled:hover {
  background-color: #ccc;
}

span.email-ellipsis {
  display: inline-block;
  max-width: 300px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#logoutButton {
    width: 100px;
}

h1 {
    margin: 0;
    padding: 0;
    flex: 3;
}

#actions {
    flex: 5;
}

#authentication {
    flex: 1;
}
