:root {
    --shadow: 0px 30px 100px 0px rgba(17, 23, 41, 0.05);

    /* Typography */
    --font-family: 'Sora', sans-serif;

    /* Colors */
    --color-white: #FFFFFF;
    --color-gray-100: #FAFAF9;
    --color-gray-200: #E5EAF0;
    --color-gray-300: #6C727F;
    --color-gray-400: #20293A;
    --color-purple-100: #E6D6FC;
    --color-purple-200: #883AE1;

    /* Text sizes */
    --text-title: 1.125rem;
    --text-body: 0.875rem;
    --text-small: 0.75rem;
    --text-tag: 0.625rem;
}

body {
    background-color: var(--color-gray-100);
    font-family: var(--font-family);
    font-size: var(--text-body);
    margin: 0;
    padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
    padding: 0;
    margin: 0;
}

.card {
    margin: 164px auto 0;
    width: 336px;
    padding-inline: 16px;
    padding-block: 16px 20px;
    border-radius: .5rem;
    background-color: var(--color-white);
    box-shadow: var(--shadow);

    .card_image {
        background-image: url(/assets/cactus_img.jpg);
        background-size: cover;
        background-position: center;
        height: 152px;
        width: 100%;
        border-radius: 8px;
        margin-bottom: 1rem;
    }

    .card_category_pill {
        display: inline-block;
        background-color: var(--color-purple-100);
        color: var(--color-purple-200);
        font-size: var(--text-tag);
        font-weight: 700;
        padding: 6px 16px;
        border-radius: 50px;
        margin-bottom: 1rem;
    }

    .card_content {
        margin-bottom: 20px;

        .card_title {
            font-size: var(--text-title);
            font-weight: 700;
            margin-bottom: 6px;
            color: var(--color-gray-400);
        }

        .card_description {
            font-size: var(--text-body);
            color: var(--color-gray-300);
            line-height: 1.5;
        }
    }

    .card_footer {
        display: flex;
        flex-direction: column;
        justify-content: end;

        .user_name {
            font-size: var(--text-small);
            color: var(--color-gray-300);
        }
    }
}