:root {

    --pink: rgb(242, 120, 161);
    --border: hsl(207, 20%, 91%);


}


.container {
    max-width: 80%;
    margin: 0 auto;
    margin-bottom: 1em;
    padding: 1em 1em;
}

select {
    margin-bottom: 1em;
}

.container img {

    max-width: 20%;
}

.lower {
    display: flex;
    align-items: center;
    gap: 1em;

}

.lower p {
    padding: 1em;
    border: 4px solid var(--border);
    border-radius: 8px;
}

h1 {
    text-align: center;
}

h2,
h3 {
    margin-bottom: 1em;
}



h3:last-of-type, h3:nth-of-type(2) {
    margin-top: 1em;
}

.traits {
    margin: 0 1em;
}

.traits p {
    margin-bottom: 1em;
}

section {
    padding: 0 3em;
}


/* Select */

label {
    position: relative;
    display: inline-block;
}

label:before {
    content: '';
    position: absolute;
    right: 7px;
    top: 3px;
    width: 22px;
    background: var(--border);
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    pointer-events: none;
    display: block;
}

label:after {
    content: " ";
    position: absolute;
    right: 15px;
    top: 46%;
    margin-top: -3px;
    z-index: 2;
    pointer-events: none;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: calc(6.9px) 4px 0 4px;
    border-color: #aaa transparent transparent transparent;
    pointer-events: none;
}

label select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0 30px 0 10px;
    border: 1px solid #e0e0e0;
    border-radius: 3px;
    line-height: calc(30px + px);
    height: calc(30px + px);
    background: rgb(247, 247, 247);
    margin: 0 5px 5px 0;
}


label select::-ms-expand {
    display: none;
}

/* Select End */

/* Loading  */


#loading {
    display: none;
    align-items: center;
    gap: 1.5em;
    padding: .5em;
    width: 7.5em;
    border: 4px solid var(--border);
    border-radius: 8px;
}

.dot-pulse {
    position: relative;
    left: -9999px;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background-color: #9880ff;
    color: #9880ff;
    box-shadow: 9999px 0 0 -5px;
    animation: dot-pulse 1.5s infinite linear;
    animation-delay: 0.25s;
}

.dot-pulse::before,
.dot-pulse::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background-color: #9880ff;
    color: #9880ff;
}

.dot-pulse::before {
    box-shadow: 9984px 0 0 -5px;
    animation: dot-pulse-before 1.5s infinite linear;
    animation-delay: 0s;
}

.dot-pulse::after {
    box-shadow: 10014px 0 0 -5px;
    animation: dot-pulse-after 1.5s infinite linear;
    animation-delay: 0.5s;
}

@keyframes dot-pulse-before {
    0% {
        box-shadow: 9984px 0 0 -5px;
    }

    30% {
        box-shadow: 9984px 0 0 2px;
    }

    60%,
    100% {
        box-shadow: 9984px 0 0 -5px;
    }
}

@keyframes dot-pulse {
    0% {
        box-shadow: 9999px 0 0 -5px;
    }

    30% {
        box-shadow: 9999px 0 0 2px;
    }

    60%,
    100% {
        box-shadow: 9999px 0 0 -5px;
    }
}

@keyframes dot-pulse-after {
    0% {
        box-shadow: 10014px 0 0 -5px;
    }

    30% {
        box-shadow: 10014px 0 0 2px;
    }

    60%,
    100% {
        box-shadow: 10014px 0 0 -5px;
    }
}




/* Loading End */


@media (max-width:800px) {

    .lower {

        flex-direction: column;
    }

    .container img {
        max-width: 60%;
    }

    .recommendations {
        flex-direction: column;
    }

    .container {
        max-width: 100%;
    }

    section {
        padding: 0;
    }

}