/* Variables */
:root {
    --main-bg-color: rgb(248, 231, 208);
    --main-font-color: rgb(153, 73, 8);
    --accent-font-family: 'YoungSerif', Arial, sans-serif;
    /* Ensures that omlette picture has negative margins equal to padding of <main> */
    --main-area-padding: 40px; 
}

/* Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Main Font */
@font-face {
    font-family: 'Outfit';
    src: url('assets/fonts/Outfit-VariableFont_wght.ttf') format('truetype');
}

/* Accent Font */
@font-face {
    font-family: 'YoungSerif';
    src: url('assets/fonts/YoungSerif-Regular.ttf') format('truetype');
}

body {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--main-bg-color);
    font-family: 'Outfit', Arial, sans-serif;
    color: rgb(87, 87, 87);
}

main {
    background-color: white;
    width: 60vw;
    margin: 40px 0;
    border-radius: 15px;
    padding: var(--main-area-padding);
}

/* Adds marging between all of the <section>s */
main > *:not(:last-child) {
    margin-bottom: 30px;
}

main h1, h2, h3, h4, h5, h6 {
    margin-bottom: 20px;
}

#final-result {
    object-fit: contain;
    width: 100%;
    height: 100%;
    border-radius: 15px;
}

h2 {
    font-size: 1.17rem;
}

h3 {
    font-size: 1.5rem;
}

li:not(:last-child) {
    margin-bottom: 15px; /* Adds spacing between list items except the last one */
}

.bold {
    font-weight: bold;
}

.prep-time {
    padding: 25px 20px;
    border-radius: 15px;
    background-color: rgb(255, 238, 255);
}

.prep-time > h2 {
    color: rgb(139, 0, 139);
}

ul, ol {
    list-style-position: outside;
    padding-left: 1em;
}

li::marker {
    color: var(--main-font-color);
    font-weight: bold;
}

ol>li::marker {
    margin: 5px;
}

hr {
    border: 0.5px solid #ddd;
    width: 100%;
}

.nutrition {
    width: 100%;
}

.nutrition > p {
    margin-bottom: 20px;
}

.nutrition-table {
    border-collapse: collapse;
    width: 100%;
}

.nutrition-table tr:not(:last-child) {
    border-bottom: 1px solid #ddd;
}

.nutrition-table tr td {
    padding: 10px 10px 10px 20px;
}

.nutrition-table .value {
    font-weight: bold;
    color: var(--main-font-color); /* Brown color */
}


@media (max-width: 768px) {
    main {
        /* background-color: white; */
        width: 100vw;
        margin: 0;
        padding-top: 0;
    }
    #final-result {
        border-radius: 0px;
        margin-left: calc(-1*var(--main-area-padding));
        margin-right: calc(-1*var(--main-area-padding));
        width: 100vw;
    }
}

main h3,h1 {
    font-family: var(--accent-font-family);
    font-weight: lighter;
}

main h3 {
    color: rgb(153, 73, 8);
}