:root {
    /*Primary*/
    --Light-red: hsl(0, 100%, 67%);
    --Orangey-yellow: hsl(39, 100%, 56%);
    --Green-teal: hsl(166, 100%, 37%);
    --Cobalt-blue: hsl(234, 85%, 45%);
    
    /*Soft*/
    --Light-red-soft: hsla(0, 100%, 67%, 0.07);
    --Orangey-yellow-soft: hsla(39, 100%, 56%, 0.07);
    --Green-teal-soft: hsla(166, 100%, 37%, 0.07);
    --Cobalt-blue-soft: hsla(234,85%, 45%, 0.07);
    --Dark-gray-blue-soft: hsla(224, 30%, 27%, 0.6);

    /*Gradients*/
    --Light-slate-blue: hsl(252, 100%, 67%);
    --Light-royal-blue: hsl(241, 81%, 54%);
    --Violet-blue: hsla(256, 72%, 46%, 1);
    --Persian-blue: hsla(241, 72%, 46%, 0);

    /*Neutral*/
    --White: hsl(0, 0%, 100%);
    --Pale-blue: hsl(221, 100%, 96%);
    --Light-lavender: hsl(241, 100%, 89%);
    --Dark-gray-blue: hsl(224, 30%, 27%);
}

@font-face {
    font-family: "Hanken Grotesk";
    src: url(./assets/fonts/HankenGrotesk-VariableFont_wght.ttf) format("truetype");
    font-weight: 100 900;
    font-style: normal;
}

html {
    height: 100%;
}

body {
    height: 100%;
    font-family: "Hanken Grotesk", sans-serif;
    font-size: 1.125rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--Pale-blue);
    margin: 0;
}

ul {
    padding: 0;
}

li {
    list-style-type: none;
}

.main-card{
    display: flex;
    width: 43.75rem;
    height: 30rem;
    background: var(--White);
    border-radius: 1.75rem;
}

.results {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 21.875rem;
    background: linear-gradient(var(--Light-slate-blue), var(--Light-royal-blue));
    border-radius: 1.75rem;
    color: hsla(0, 0%, 100%, 0.7);
    padding: 2.15rem 2.813rem 2.813rem 2.813rem;
    box-sizing: border-box;
}

.results-title {
    font-size: 1.375rem;
    margin: 0;
    font-weight: 500;
}

.score-circle {
    background: linear-gradient(var(--Violet-blue), var(--Persian-blue));
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 11.875rem;
    height: 11.875rem;
    margin: 1.25rem 0 0 0;
}

.score-value,
.score-total {
    display: block;
}

.score-value {
    font-size: 3.75rem;
    font-weight: bold;
    color: var(--White);
}

.score-total {
    font-size: 1rem;
    color: hsla(0, 0%, 100%, 0.4);
}

.result-message-label {
    margin-top: 1.875rem;
    margin-bottom: 0;
    color: var(--White);
    font-size: 1.75rem;
    font-weight: 500;
}

.result-message-text {
    margin: 1.125rem 0 0 0;
    text-align: center;
}

.summary {
    display: flex;
    flex-direction: column;
    width: 21.875rem;
    background: var(--White);
    box-sizing: border-box;
    padding: 2.15rem 2.5rem 2.813rem 2.5rem;
    border-top-right-radius: 1.75rem;
    border-bottom-right-radius: 1.75rem;
}

.summary-title {
    font-size: 1.375rem;
    margin: 0;
    color: var(--Dark-gray-blue);
}

.categories {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    margin: 1.75rem 0 0 0;
}

.category {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 3.25rem;
    border-radius: 0.625rem;
    padding: 0 0.875rem 0 2.813rem;
    position: relative;
    font-size: 1rem;
    font-weight: 600;
}

.category img {
    position: absolute;
    top: 0.98rem;
    left: 0.875rem;
}

.reaction-cat {
    color: var(--Light-red);
    background: var(--Light-red-soft);
}

.memory-cat {
    color: var(--Orangey-yellow);
    background: var(--Orangey-yellow-soft);
}

.verbal-cat {
    color: var(--Green-teal);
    background: var(--Green-teal-soft);
}

.visual-cat {
    color: var(--Cobalt-blue);
    background: var(--Cobalt-blue-soft);
}

.cat-score {
    color: var(--Dark-gray-blue);
}

.cat-score-total {
    color: var(--Dark-gray-blue-soft);
}

.continue-btn {
    margin: 1.875rem 0 0 0;
    height: 3.125rem;
    border-radius: 1.563rem;
    border: none;
    color: var(--White);
    background: var(--Dark-gray-blue);
    font-size: 1.063rem;
    cursor: pointer;
}

.continue-btn:hover {
    background: linear-gradient(var(--Light-slate-blue), var(--Light-royal-blue));
}

.attribution {
    margin-top: 1rem;
    color: var(--Dark-gray-blue);
    font-size: 0.6875rem;
    text-align: center;
}

.attribution a:hover {
    color: var(--Light-slate-blue);
}

@media screen and (max-width: 375px){
    body {
        height: fit-content;
        flex-direction: column;
    }

    .main-card {
        width: 100vw;
        height: fit-content;
        flex-direction: column;
        border-radius: 0;
    }

    .results, .summary{
        width: 100%;
    }

    .results {
        height: fit-content;
        border-radius: 0 0 1.75rem 1.75rem;
        padding: 1rem 2.813rem 2.25rem 2.813rem;
    }

    .results-title {
        font-size: 1.188rem;
    }

    .score-circle {
        background: linear-gradient(var(--Violet-blue), var(--Persian-blue));
        border-radius: 50%;
        width: 9.5rem;
        height: 9.5rem;
        margin: 1.5rem 0 0 0;
    }

    .result-message-label {
        margin: 1.5rem 0 0 0;
        font-size: 1.65rem;
    }

    .result-message-text {
        margin: 0.8rem 0 0 0;
        font-size: 1.05rem;
    }

    .summary {
        padding: 1.5rem 2rem 1.5rem 2rem;
        border-radius: 0;
    }

    .summary-title {
        font-size: 1.25rem;
    }

    .continue-btn {
        margin: 1.7rem 0 0 0;
        height: 3.125rem;
        border-radius: 1.563rem;
        border: none;
        color: var(--White);
        background: var(--Dark-gray-blue);
        font-size: 1.063rem;
        cursor: pointer;
    }

    .attribution {
        display: none;
    }
}