@import url(../../../css/style.css);

html {
    font-size: clamp(12px, 1.5vw, 14px);
}

body {
    height: 100vh;
    /* background-color: var(--p1); */
    background-repeat: no-repeat;
    color: white;
}

#weather {
    font-size: 1.75rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    position: relative;

    & .wepad {
        padding: 5em;
    }

    & .container-fluid {
        display: flex;
        flex-direction: column;
        flex: 1;
        width: 100%;
    }

    & .we-title {
        font-size: 3em;
        margin-bottom: 0.5em;
        color: var(--p7);
    }

    & .we-grid {
        flex: 1;
        width: 100%;
        display: grid;
        gap: 0.75em;
        grid-template-columns: repeat(1, 1fr);

        @media (min-width: 576px) {
            grid-template-columns: repeat(2, 1fr);
            grid-template-rows: auto auto;

            & .we-today {
                grid-row: 1 / 3;
            }
        }

        @media (min-width: 992px) {
            grid-template-columns: 2fr repeat(3, 1fr);
            grid-template-rows: auto auto;

            & .we--today {
                grid-row: 1 / 3;
            }
        }
    }

    & .we {
        position: relative;
        height: 100%;
        background-color: color-mix(in srgb, var(--w1) 50%, transparent);
        border: 2px solid var(--p3);
        border-radius: 1em;
        overflow: hidden;
        transition: border-color 0.3s ease, transform 0.3s ease;
        cursor: default;

        &:hover {
            border-color: var(--p5);
            transform: translateY(-4px);
        }

        &.we-today {
            border-color: var(--p4);
            background-color: color-mix(in srgb, var(--w2) 50%, transparent);

            & .we-icon {
                font-size: 15em;
            }

            & .we-temp {
                font-size: 2.5em;
            }

            & .we-desc {
                font-size: 1.25em;
            }
        }
    }

    & .we-inner {
        position: relative;
        z-index: 1;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.4em;
        padding: 1em;
        height: 100%;
        box-sizing: border-box;
    }

    & .we-day {
        font-size: 0.75em;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        color: white;
        background: var(--w1);
        padding: 0.2em 0.6em;
        border-radius: 0.25em;
        white-space: nowrap;
    }

    & .we-icon {
        flex: 1;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 4em;
        color: var(--p6);
    }

    & .we-temp {
        font-size: 1.5em;
        font-weight: 700;
        color: var(--p7);
        line-height: 1;
    }

    & .we-desc {
        font-size: 0.85em;
        color: white;
        line-height: 1.3;
        word-break: break-word;
    }
}