@font-face {
    font-family: "ABC Areal";
    src: url("assets/ABC%20Areal/WOFF2/ABCAreal-Regular.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "ABC Areal";
    src: url("assets/ABC%20Areal/WOFF2/ABCAreal-RegularItalic.woff2") format("woff2");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: "ABC Areal";
    src: url("assets/ABC%20Areal/WOFF2/ABCAreal-Medium.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "ABC Areal";
    src: url("assets/ABC%20Areal/WOFF2/ABCAreal-MediumItalic.woff2") format("woff2");
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: "ABC Areal";
    src: url("assets/ABC%20Areal/WOFF2/ABCAreal-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "ABC Areal";
    src: url("assets/ABC%20Areal/WOFF2/ABCAreal-BoldItalic.woff2") format("woff2");
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}

body {
    max-width: 32rem;
    margin: 64px auto;
    padding: 1rem;
    font-family: "ABC Areal", Arial, sans-serif;
    font-size: 14px;
}

p {
    line-height: 1.4;
}

header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 1.5rem;
    margin-bottom: 3rem;
}

.site-icon {
    width: 28px;
    height: 28px;
    image-rendering: pixelated;
}

.blog-title {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: inherit;
    text-decoration: none;
}

/* Links keep the same blue whether or not they have been visited. The
   :visited rule out-specifies a bare class, so .blog-title is pinned back
   to inherit or the site title would turn blue once clicked. */
a:link,
a:visited {
    color: #0000EE;
}

.blog-title:link,
.blog-title:visited {
    color: inherit;
}

.widget {
    color: #888;
    margin-bottom: 1rem;
}

/* Clusters are the entries. The left gutter carries the month span the
   cluster covers, the way loglogloglog's gutter carries the day. */
.group {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    margin-bottom: 2.5rem;
}
#feed > .group:last-child {
    margin-bottom: 0;
}
.group__date {
    flex: 0 0 auto;
    width: 5.5rem;
    color: #888;
    font-size: 0.85em;
    line-height: 1.4;
}
.group__body {
    flex: 1 1 auto;
    min-width: 0;
}

.cluster__name {
    margin-bottom: 0.5rem;
}

/* The rule standing in for the tree's vertical run. */
.cluster__notes {
    border-left: 1px solid #ddd;
    padding-left: 1rem;
}

a.note-link {
    display: block;
    margin: 0.35rem 0;
}

/* note view */
.note h1 {
    font-size: 1.4rem;
    letter-spacing: -0.01em;
    margin: 0 0 1rem;
}
.note h2 {
    font-size: 1rem;
    margin: 1.75rem 0 0.5rem;
}
.note blockquote {
    border-left: 2px solid #888;
    padding-left: 1rem;
    margin: 0.5rem 0;
    font-style: italic;
}
.note li {
    margin: 10px 0;
    line-height: 1.4;
}
.note pre {
    overflow-x: auto;
    background: #f6f6f6;
    padding: 0.75rem 1rem;
    border-radius: 4px;
    line-height: 1.4;
}
.note pre code {
    background: none;
    padding: 0;
}
.note code {
    background: #f6f6f6;
    padding: 0.1em 0.3em;
    border-radius: 3px;
    font-size: 0.9em;
}

.related {
    margin-top: 2.5rem;
}
.related__label {
    color: #888;
    font-size: 0.85em;
    margin-bottom: 0.35rem;
}

@media (max-width: 600px) {
    .group {
        flex-direction: column;
        gap: 0.5rem;
    }
    .group__date {
        width: auto;
    }
}
