p {
    color: #391E10;
}

h1 {
    color: #391E10;
}

body {
    margin: 0;
    padding: 0 16px 24px;

    width: 100%;
    margin-left: auto;
    margin-right: auto;

    box-sizing: border-box;

    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;

    background-color: #e2ceb1;
}

body a {
    color: #734128;
    text-decoration: none;
}

body a:hover {
    text-decoration: underline;
}

.top {
    display: flex;
    justify-content: space-between;
    align-items: center;

    width: 100%;
    margin: 0;

    padding: 16px;

    background-color: #c7a07a;
}

.top div {
    font-size: 1.2em;
    padding: 0px 32px;
}

.top a {
    color: #734128;
    text-decoration: none;
}

.top a:hover {
    text-decoration: underline;
}

.nav {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 16px;

    font-size: 1.2em;
}

.nav a {
    text-decoration: none;
    color: #734128;
}

.nav a:hover {
    text-decoration: underline;
}

.recipes {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
    gap: 16px;

    box-sizing: border-box;

    margin: 16px auto;
    border: 1px solid #734128;
    padding: 16px;
    background-color: #eedec5;

    width: 80%;
}

.recipe-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #c7a07a;

    flex: 1 1 250px;
    box-sizing: border-box;

    padding: 16px;
    flex-shrink: 2;
}

.recipe-box a {
    color: #ffc5d3;
    text-decoration: none;
}

.recipe-box a:hover {
    text-decoration: underline;
}

.recipe-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    margin: 0;
    padding: 0;
}

.recipe-tags span {
    display: inline-block;
    font-style: italic;
    white-space: nowrap;
}

img {
    max-width: 100%;
    height: auto;
}

@media (max-width: 600px) {
    .top {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .top div {
        padding: 0;
    }

    .recipe-box {
        max-width: 100%;
    }
}

.remix-form {
    background-color: #eedec5;

    width: 100%;
    max-width: 800px;
    padding: 24px;

    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 16px;
}

.remix-form label {
    font-weight: bold;
    font-size: 24px;


    margin: 0;
}

.remix-form input[type="text"],
.remix-form input[type="number"],
.remix-form textarea {
    width: 100%;

    box-sizing: border-box;

    font-family: inherit;
    font-size: 0.9em;
}

.remix-form textarea {
    height: 50px;
    resize: vertical;
}

.remix-checkbox {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}

.remix-checkbox label {
    margin: 0;
    cursor: pointer;
    font-weight: bold;
}

.remix-checkbox input[type="checkbox"] {
    margin: 0;
    width: 18px;
    height: 18px;
    cursor: pointer;
}


#ingredient-list,
#tag-list,
#step-list,
.simple-form-input {
    display: flex;
    flex-direction: column;
    width: 100%;

    gap: 8px;
    margin: 0;
}

.ingredient-row,
.tag-row,
.step-row {
    display: flex;
    flex-direction: row;
    gap: 8px;

    align-items: center;
}

.ingredient-row input,
.tag-row input,
.step-row textarea {
    flex: 1;
}

.step-row input[name="order[]"] {
    flex: 0 0 50px;
    text-align: center;

    pointer-events: none;
}

.message {
    padding: 12px;
    border-radius: 4px;
    font-weight: bold;
}

.message.error {
    background-color: #f8d7da;
    color: red;
    border: 1px solid #f5c6cb;
}