@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000;1,6..12,200..1000&display=swap');

:root {
    --dark: #0E0F14;
    --text: #fff;
    --card_bg: #14161D;
    --card_hbg: #171924;
    --card_b: #1C1F2A;
    --card_hb: #7C5CFF;
    --secondary: #C9CDD6;
}

* {
    padding: 0;
    margin: 0;
    color: var(--text);
    font-family: "Montserrat", sans-serif;
    box-sizing: border-box;
    line-height: 1.55;
}

body {
    background: var(--dark);
}

a {
    text-decoration: none;
}

.container {
    max-width: 1120px;
    padding: 0px 40px;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 20px;

    @media (max-width: 767px) {
        padding: 0 15px;
    }
}

.card {
    padding: 24px;
    background: var(--card_bg);
    border: 1px solid var(--card_b);
    border-radius: 16px;
    box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.15);

    @media (max-width: 767px) {
        padding: 10px;
    }

    .card__title {
        font-size: 14px;
        margin-bottom: 10px;
    }

    .card__text {
        font-size: 12px;
    }
}

.badger {
    width: fit-content;
    display: block;
    font-weight: 400;
    color: var(--dark);
    padding: 6px 10px;
    font-size: 12px;
    border-radius: 999px;
    user-select: none;
    background: linear-gradient(135deg, #7C5CFF 0%, #2DFFD9 100%);

    &.type_1 {
        background: rgba(124, 92, 255, 0.15);
        border: 1px solid rgba(124, 92, 255, 0.45);
        color: #9B85FF;
    }

    &.type_2 {
        background: #14161D;
        color: #C9CDD6;
        border: 1px solid #2A2E3B;
    }

    &.success {
        background: rgba(34,197,94,0.15);
        color: #22C55E;
        border: 1px solid rgba(34,197,94,0.45);
    }

    &.warning {
        background: rgba(245,158,11,0.15);
        color: #F59E0B;
        border: 1px solid rgba(245,158,11,0.45);
    }

    &.error {
        background: rgba(239,68,68,0.15);
        color: #EF4444;
        border: 1px solid rgba(239,68,68,0.45);
    }

    &.info {
        background: rgba(56,189,248,0.15);
        color: #38BDF8;
        border: 1px solid rgba(56,189,248,0.45);
    }
}

.header {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;

    .logo {
        padding: 50px 0px;
        user-select: none;

        h1 {
            font-size: 36px;
            font-weight: 900;
        }

        span {
            color: #7C5CFF;
        }
    }

    .navigation {
        display: flex;
        gap: 40px;
        padding: 20px 0px;
    }
}

.big_slide {
    display: flex;
    flex-direction: column;
    gap: 15px;

    h2 {
        font-size: 24px;
        max-width: 400px;
        font-weight: 800;
    }

    p {
        max-width: 600px;
        font-size: 16px;
    }

    .pills {
        display: flex;
        align-items: center;
        gap: 10px;

        @media (max-width: 767px) {
            flex-wrap: wrap;
        }
    }
}

.home_content {
    display: grid;
    grid-template-columns: 8fr 4fr;
    gap: 20px;
    align-items: start;

    @media (max-width: 1120px) {
        grid-template-columns: 1fr;
    }

    .post_list {
        display: flex;
        flex-direction: column;
        gap: 15px;

        .post {
            transition: 0.3s ease-in-out;

            &:hover {
                background: var(--card_hbg);
                border-color: var(--card_hb);
                box-shadow: 0px 10px 40px rgba(0, 0, 0, 0.35);
            }

            .header_post {
                display: flex;
                align-items: start;
                gap: 10px;
                justify-content: space-between;

                h3 {
                    font-weight: 700;
                    font-size: 24px;
                    margin-bottom: 15px;
                }

                @media (max-width: 767px) {
                    flex-wrap: wrap;
                    margin-bottom: 20px;
                }
            }

            .excerpt {
                font-weight: 300;
                font-size: 16px;
                color: var(--secondary);
            }

            .icons {
                display: flex;
                margin-top: 20px;
                justify-content: space-between;
                align-items: center;

                .meta_post {
                    display: flex;
                    align-items: center;
                    gap: 20px;

                    .meta_item {
                        display: flex;
                        align-items: center;gap: 5px;
                        font-size: 14px;
                        color: #8B90A0;
                    }
                }

                .read {
                    display: flex;
                    align-items: center;
                    gap: 5px;
                    width: fit-content;
                    background: #7C5CFF;
                    padding: 8px 16px;
                    border-radius: 16px;
                    font-size: 14px;
                    box-shadow: 0px 0px 40px rgba(124, 92, 255, 0);
                    transition: 0.3s ease-in-out;

                    &:hover {
                        background: #9B85FF;
                        box-shadow: 0px 0px 40px rgba(124, 92, 255, 0.35);
                    }
                }
            }
        }
    }
}

.sidebar {
    background: radial-gradient(circle at top right, rgba(124, 92, 255, 0.25), transparent 60%);
    background-color: var(--card_bg);

    .pills {
        display: flex;
        margin-top: 50px;
        gap: 3px;
    }
}
