.main-header h1 {
    margin-bottom: 0.25rem;
    font-size: 1.5rem;
    font-weight: 500;
}

main {
    display: flex;
    flex-flow: row wrap;
    flex: 1 0 auto;
}

aside {
    flex-grow: 1;
    flex-basis: 20rem;

    .h-card {
        position: sticky;
        top: 2rem;
        justify-content: space-between;
        margin-bottom: 0;

        display: flex;
        flex-flow: row wrap;
        gap: 1rem;

        .h-card-grid__first-row {
            display: flex;
            flex-flow: row wrap;
            flex: 1 0 auto;
            gap: 1rem;

            .u-photo {
                width: 100px;
            }

            .h-card__name {
                margin-bottom: 2rem;
                padding: 0;

                .p-name {
                    margin: 0 0 0.5rem;
                }
            }
        }

        .h-card-grid__second-row {
            list-style: none;
            column-count: 2;
            padding: 0;
        }

        .h-card-grid__third-row {
            grid-column: span 2;
        }
    }
}

@media (min-width: 480px) {
    aside .h-card,
    aside .h-card-grid__first-row {
        display: block;
    }
}

.about {
  display: flex;
  flex-flow: row wrap;
  flex: 1 0 auto;
  width: 100%;

  .bio {
      flex-basis: 0;
      flex-grow: 999;
      min-width: 60%;
  }
}

.entries {
    flex-basis: 0;
    flex-grow: 999;
    min-width: 60%;

    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.entry {
    --badge-width: 50px;
    --badge-height: 50px;
    --badge-color: var(--highlight-color, var(--primary-color));
    margin: 0rem auto;
    padding: 0;
    width: 100%;

    &.entry--like {
        --highlight-color: var(--like-color);
    }

    &.entry--boost {
        --highlight-color: var(--boost-color);
    }

    &.entry--reply {
        --highlight-color: var(--reply-color);
    }

    &.entry--bookmark {
        --highlight-color: var(--bookmark-color);
    }

    &.entry--inline {
        display: inline;
    }

    header {
        display: flex;
        background: initial;
        margin: 0 0 1rem 0;
        padding: 0;

        .entry__badge {
            width: 0;
            height: 0;
            border-top: 50px solid var(--badge-color);
            border-right: 50px solid transparent;
            position: relative;

            > .svg-icon {
                position: absolute;
                top: -45px;
                left: 5px;
            }

            > .svg-icon--feather {
                width: 20px;
                height: 20px;
            }

            &.entry--like > .svg-icon {
                fill: white;
            }
        }

        .entry__header {
            display:flex;
            flex-flow: column;
            justify-content: center;

            /*
            flex: 1 0 auto;
            */
            text-align: start;

            .entry__name + .timestamps {
                padding-top: 0;
            }

            h4 + .timestamps {
                padding-top: 0.5rem;
            }

            .timestamps {
                padding-top: 50px;

                .entry__timestamp {
                    font-size: 12px;
                    font-weight: bold;
                    color: var(--green-2);
                }

                .entry__timestamp + .entry__timestamp {
                    margin-left: 1rem;
                }
            }

            .entry__name {
                line-height: initial;
                margin: 0.5rem 0;
                padding: 0;
                font-size: 1.3rem;
            }
        }
    }

    .h-cite {
        margin: 1rem;
        padding: 1rem;
        background: var(--nc-bg-2);
        border-left: 2px solid var(--secondary-color);

        .entry__summary {
            padding: 0.5rem 1rem 0.5rem 1.5rem;
            margin: 0;

            & + .entry__remote-authorship {
                margin-top: 0.5rem;
            }
        }

        .entry__remote-authorship {
            .p-author {
                margin-top: 0.5rem;
                align-items: center;
            }
        }
    }

    .entry__context-header {
        margin-left: 1rem;
        font-size: 14px;
    }

}

.p-category {
    display: inline-flex;
    flex-flow: row nowrap;
    align-items: center;

    background-color: var(--nc-ac-1);
    color: var(--nc-tx-1);
    padding: 0.25rem;
    transition: background-color ease 250ms;
    font-size: 12px;
    text-decoration: none;

    svg {
        width: 1rem;
        height: 1rem;
        margin: 0 0.15rem;
    }

    &:hover, &:focus {
        background-color: var(--nc-lk-2);
        text-decoration: underline;
        color: var(--nc-tx-2);
    }
}

.p-author .u-photo {
    border-radius: 25%;
}

.chat-handle {
    font-size: 1.2rem;
}

.entry__img {
    display: block;
    width: 50%;
    height: 80%;
    margin: 0 auto;
}

.svg-icon {
    width: 25px;
    height: 25px;
}

.svg-icon--feather {
    fill: none;
    stroke: white;
    stroke-width: 2px;
}

.heading {
    display: flex;
    border: none;
    padding: 0;
}

.heading:after {
    content: " ";
    flex-grow: 1;
    background: linear-gradient(to right, var(--highlight-color, var(--primary-color)), var(--nc-bg-1));
    position: relative;
    align-self: center;
    width: auto;
    height: 2px;
    margin: 0 .5rem;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    border-radius: var(--border-radius);
}

.page-nav {
    display: flex;
    justify-content: space-around;
    line-height: 2;
    padding: 0rem;
}

.main-footer {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: center;
    height: 50px;

	background: var(--nc-bg-2);
	border-top: 1px solid var(--nc-bg-3);

	/* This sets the right and left margins to cancel out the body's margins. It's width is still the same, but the background stretches across the page's width. */
	margin: 1rem calc(0px - (50vw - 50%)) -1rem;
	padding: 1rem calc(50vw - 50%);
}

.progress-ring {
    --progress-highlight-color: var(--highlight-color, var(--secondary-color));
}

.rss__link:hover {
    text-decoration: none;
    background-image: none;
}

.rss__icon {
    vertical-align: text-bottom;
    height: 1.1em;
}

.rss__icon:hover {
    height: 1.2em;
}

.rss__explainer {
    margin: 0 0.3em;
}

/** About styles */
.about__details {
    display: flex;
    flex-flow: row wrap;
    gap: 1rem;
    align-items: center;
    background: initial;
    border: none;
}

.about__name {
    flex: 1 0 auto;
}

.about__links {
    flex: 1 0 auto;
    gap: 3rem;
}

.about__links li {
    line-height: 2;
    margin: 0;
}
/** End About styles */

/** Recipe styles */
.recipes {
    flex-basis: 0;
    flex-grow: 999;
    min-width: 60%;

    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.h-recipe {
    .h-recipe__header {
        text-align: center;
        flex-direction: column;
        margin-bottom: 1rem;

        .p-name {
            margin-bottom: 0.5rem;
        }

        .recipe__byline {
          font-size: 1.2rem;
        }
    }

    ol, ul {
        column-count: 1
    }

    .h-recipe__meta {
        display: flex;
        justify-content: space-around;
    }
}
/** End Recipe styles */

