﻿/*
 * Fælles adressekomponent
 */

.vf-address {
    position: relative !important;
    z-index: 10000 !important;

    width: 100%;
    max-width: 100%;

    /*
     * vf-address har Bootstrap-klassen col-12.
     * Derfor fjernes dens egen gutter, så felterne flugter
     * med Fornavn, Efternavn, Email og Telefon.
     */
    padding-right: 0 !important;
    padding-left: 0 !important;

    overflow: visible !important;
}

/*
 * Samme grid-struktur som formularens overordnede Bootstrap-row.
 */
.vf-address__row,
.vf-address__fallback-row {
    display: flex;
    flex-wrap: wrap;

    width: 100%;
    margin-right: 0;
    margin-left: 0;

    overflow: visible;
}

/*
 * Højre halvdel under Telefon.
 * Kolonnen eksisterer hele tiden, men er visuelt tom,
 * indtil Etage og Dør bliver relevante.
 */
.vf-address__unit-column {
    padding-top: 0;
}

.vf-address__unit-row {
    display: flex;
    flex-wrap: wrap;

    /*
     * Bootstrap-gutters mellem Etage og Dør.
     * De negative margins modsvarer padding på col-6.
     */
    margin-right: -12px;
    margin-left: -12px;
}

.vf-address__autocomplete {
    position: relative !important;
    z-index: 10001 !important;
    overflow: visible !important;
}

/*
 * Dropdown med adresseforslag.
 */
.vf-address__suggestions {
    position: absolute !important;
    top: calc(100% + 2px) !important;
    left: 0 !important;

    z-index: 10002 !important;

    display: none;

    /* ÆNDRINGER */
    min-width: 100%;
    width: max-content;
    max-width: 700px;

    max-height: 320px;

    overflow-x: auto;
    overflow-y: auto;

    background-color: #fff !important;
    opacity: 1 !important;

    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.vf-address__option {
    position: relative;

    display: block;
    width: 100%;
    padding: 0.65rem 0.75rem;

    color: #212529;
    text-align: left;

    /* ÆNDRING */
    white-space: nowrap;

    background-color: #fff !important;
    opacity: 1 !important;

    border: 0;
    border-bottom: 1px solid #eee;

    cursor: pointer;
}

.vf-address__option:last-child {
    border-bottom: 0;
}

.vf-address__option:hover,
.vf-address__option:focus,
.vf-address__option.is-active {
    color: #212529;
    background-color: #f1f3f5 !important;
    outline: none;
}

.vf-address__status {
    padding: 0.65rem 0.75rem;

    color: #6c757d;
    background-color: #fff !important;
}

/*
 * Etage og Dør er skjult fra starten.
 */
.vf-address__floor-wrapper,
.vf-address__door-wrapper {
    display: none;
}

/*
 * JavaScript tilføjer is-visible, når feltet er relevant.
 */
.vf-address__floor-wrapper.is-visible,
.vf-address__door-wrapper.is-visible {
    display: block;
}

/*
 * Begge felter fylder halvdelen af højre kolonne.
 */
.vf-address__floor-wrapper,
.vf-address__door-wrapper {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
}

/*
 * Sørger for ensartet afstand mellem Etage og Dør.
 */
.vf-address__unit-row > .contactform__inputwrapper {
    padding-right: 12px;
    padding-left: 12px;
}

.vf-address select.is-invalid {
    border-color: #dc3545;
}

/*
 * På mobil står Adresse, Etage og Dør under hinanden.
 */
@media (max-width: 767.98px) {
    .vf-address__unit-column {
        margin-top: 1rem;
    }

    .vf-address__floor-wrapper,
    .vf-address__door-wrapper {
        flex: 0 0 50%;
        width: 50%;
        max-width: 50%;
    }
}

/*
 * Ens højde på adresse, etage og dør.
 */
.vf-address input.form-control,
.vf-address select.form-control {
    height: 38px !important;
    min-height: 38px !important;
    padding: 0.375rem 0.75rem !important;
    line-height: 1.5 !important;
}

/*
 * Etage og dør vælges som en del af den præcise adresse
 * i den almindelige adresse-dropdown.
 */
.vf-address__floor-wrapper,
.vf-address__floor-wrapper.is-visible,
.vf-address__door-wrapper,
.vf-address__door-wrapper.is-visible {
    display: none !important;
}

/* Mindre afstand mellem adresse og alder i husberegneren */
#house-calculator .insurance-calculator-form-group.house {
    gap: 12px !important;
}

#house-calculator .vf-address--calculator {
    margin-right: 0 !important;
    margin-left: 0 !important;
}