.service-area-picker {
    width: 100%;
    min-width: 0;
}

#coverageAreaCatWrapper {
    overflow: visible;
    padding: 0 !important;
}

#authModalCaterer #coverageAreaCatWrapper {
    height: 3.5rem !important;
    min-height: 3.5rem !important;
    box-sizing: border-box;
    border: 1px solid #ff7b54 !important;
    border-radius: 0.65rem;
    background: #fff;
    box-shadow: none !important;
    transition: none !important;
}

#authModalCaterer #coverageAreaCatWrapper:focus-within,
#authModalCaterer #coverageAreaCatWrapper.error {
    border: 1px solid #ff7b54 !important;
    box-shadow: none !important;
}

#authModalCaterer #coverageAreaCatWrapper .service-area-trigger {
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0.75rem 1rem !important;
    justify-content: space-between !important;
    border: 0 !important;
    border-radius: inherit;
    background: transparent !important;
    color: #374151 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

.service-area-control {
    position: relative;
    width: 100%;
    min-width: 0;
}

.service-area-picker input[type="hidden"] {
    display: none !important;
}

.service-area-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    min-height: 3rem;
    padding: 0.75rem 1rem;
    border: 0;
    border-radius: 0.55rem;
    background: transparent;
    color: #374151;
    font: inherit;
    text-align: left;
    cursor: pointer;
    box-sizing: border-box;
}

.service-area-trigger:hover,
.service-area-trigger:focus-visible {
    background: #fff;
    outline: 2px solid rgba(249, 115, 22, 0.25);
    outline-offset: -2px;
}

.service-area-trigger-label {
    display: block;
    overflow: hidden;
    flex: 1 1 auto;
    min-width: 0;
    color: #6b7280;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#authModalCaterer #coverageAreaCatWrapper .service-area-trigger-label,
#authModalCaterer #coverageAreaCatWrapper.error .service-area-trigger-label,
#authModalCaterer #coverageAreaCatWrapper .service-area-picker.has-selection .service-area-trigger-label {
    color: #374151 !important;
}

#authModalCaterer #coverageAreaCatWrapper .service-area-trigger > i {
    flex: 0 0 auto;
    color: #ff7b54;
}

.service-area-picker.has-selection .service-area-trigger-label {
    color: #374151;
}

.service-area-menu:not([hidden]) {
    position: absolute;
    z-index: 30;
    top: calc(100% + 0.35rem);
    left: 0;
    width: 100%;
    max-height: min(12rem, 35vh);
    overflow-y: auto;
    padding: 0.35rem;
    border: 1px solid var(--auth-slate-200);
    border-radius: 0.65rem;
    background: #fff;
    box-shadow: 0 8px 18px rgba(15, 23, 42, 0.14);
    box-sizing: border-box;
    text-align: left;
}

.service-area-menu.opens-up {
    top: auto;
    bottom: calc(100% + 0.35rem);
}

.service-area-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.2rem;
}

.service-area-option {
    display: flex;
    align-items: center;
    justify-content: flex-start !important;
    width: 100%;
    min-width: 0;
    min-height: 2.5rem;
    padding: 0.5rem 0.65rem;
    border: 0;
    border-radius: 0.4rem;
    background: #fff;
    color: #4b5563;
    font: inherit;
    font-size: 0.85rem;
    cursor: pointer;
    text-align: left !important;
    box-sizing: border-box;
}

.service-area-option:hover,
.service-area-option:focus-visible {
    background: #f9fafb;
    outline: none;
}

.service-area-option[aria-pressed="true"] {
    background: #fff7ed;
    color: #9a3412;
}

.service-area-option[aria-pressed="true"]::before {
    content: "\2713";
    display: inline-block;
    width: 1.25rem;
    color: #ea580c;
    font-weight: 700;
}

.service-area-option:not([aria-pressed="true"])::before {
    content: "";
    display: inline-block;
    width: 1.25rem;
}

.service-area-selected {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.5rem;
}

.service-area-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    max-width: 100%;
    padding: 0.2rem 0.5rem;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    background: #fff7ed;
    color: #9a3412;
    font-size: 0.75rem;
    overflow-wrap: anywhere;
}

.service-area-chip-remove {
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-size: 1rem;
    line-height: 1;
    cursor: pointer;
}

#authModalCaterer #coverageAreaCatError {
    display: block !important;
    height: 1.35em;
    min-height: 1.35em;
    margin-top: 0.3rem !important;
    overflow: hidden;
    line-height: 1.35em;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-sizing: border-box;
    visibility: hidden;
}

#authModalCaterer #coverageAreaCatWrapper.error + #coverageAreaCatError {
    visibility: visible;
}

.phone-input-control {
    display: flex;
    align-items: stretch;
    min-height: 3rem;
}

.phone-country-code {
    position: static;
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    padding: 0 0.85rem 0 1rem;
    border-right: 1px solid var(--auth-slate-200);
    transform: none;
}

.phone-input-control .phone-national-input,
.auth-modal-content .phone-input-control .phone-national-input {
    min-width: 0;
    padding: 0.75rem 1rem !important;
}

.auth-modal-content #catererNavButtonsContainer {
    margin-top: 1.25rem !important;
    padding-top: 1rem !important;
}

@media (max-width: 600px) {
    .service-area-menu:not([hidden]) {
        max-height: min(10rem, 30vh);
    }

    .auth-modal-content #catererNavButtonsContainer {
        margin-top: 0.75rem !important;
        padding-top: 0.6rem !important;
    }
}
