/* Body */
body {
    font-family: "Helvetica Neue","Segoe UI", Roboto, Arial, sans-serif;
    font-size: 1.1em;
    line-height: 1.7;
    overflow-wrap: break-word;
    word-wrap: break-word;
    margin: 0;
    background-color: #f9fbff;
    color: #2a2b30;
    padding-top: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
@media screen and (min-width: 40em) {
    body {
        font-size: 1.5em;
    }
}
@media (prefers-color-scheme: dark) {
    body {
        background-color: #2a2b30;
        color: #f9fbff;
    }
    ::selection {
        background: black;
      }
}
/* Typography */
h1,h2,h3,h4,h5,h6 {
    font-weight: 900;
    line-height: 1.4;
    text-wrap: balance;
}
h1 {
    font-size: 2.2em;
    line-height: 1.3;
    margin-top: 0;
}
@media only screen and (min-width: 55em) {
    h1 {
        font-size: 3em;
    }
}
ul {
    padding-left: 1em   ;
}
ol {
    padding-left: em   ;
}
li {
    margin-bottom: 0.4em;
}
.container {
    margin-left: auto;
    margin-right: auto;
    max-width: 65ch;
    padding: 1em 2em;
}
article {
    padding-bottom: 2em;
}
a {
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 0.33em;
}
a:hover {
    text-decoration-thickness: 4px;
}
a:focus, button:focus {
    outline: #2a2b30 solid 4px;
    outline-offset: 3px;
}
a,a:active {
    color: #006fd4;
}
a:visited:active {
    color: #2a2b30;
}
a:visited {
    color: #2a2b30;
}
@media (prefers-color-scheme: dark) {
    a:focus, button:focus {
        outline-color: #f9fbff;
    }
    a, a:active {
        color: #6aa4ff;
    }
    a:visited:active {
        color: #f9fbff;
    }
    a:visited {
        color: #f9fbff;
    }
}
h1 a {
    text-decoration-thickness: 4px;
    text-underline-offset: 0.27em;
}
h1 a:hover {
    text-decoration-thickness: 6px;
}

button {
    cursor: pointer;
    padding: 1em 1.2em;
}
pre {
    background-color: #e3f0fe;
    padding: 1em;
}
code {
    font-size: 0.8em;
    white-space : pre-wrap;
    background-color: #e3f0fe;
    padding: 0.1em;
    font-family: ui-monospace, 'Cascadia Code', 'Source Code Pro', Menlo, Consolas, 'DejaVu Sans Mono', monospace;
}
@media (prefers-color-scheme: dark) {
    pre {
        background-color: #1e1d1d;
    }
    code {
        background-color: #1e1d1d;
    }
}
img {
    height: auto;
    width: 100%;
}
.border {
    border: 5px solid #2a2b30;
}
@media (prefers-color-scheme: dark) {
    .border {
        border-color: #e3f0fe;
    }
}
.image-avatar {
    width: 5em;
    height: 5em;
    border-radius: 50%;
}
figure {
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}
blockquote {
    border-left: 5px solid #2a2b30;
    margin-left: 0;
    margin-right: 0;
    margin-block-start: 1.5em;
    margin-block-end: 1.5em;
    padding-left: 1.5em;
}
@media (prefers-color-scheme: dark) {
    blockquote {
        border-left-color: #e3f0fe;
    }
}
hr {
    border-top: 5px solid #2a2b30;
    margin-top: 3em;
    margin-bottom: 3em;
}
@media (prefers-color-scheme: dark) {
    hr {
        border-top-color: #e3f0fe;
    }
}
table {
    margin-bottom: 3em;
    border-spacing: 0;
    border-collapse: collapse;
}
th, td {
    border-bottom: 1px solid #2a2b30;
    text-align: left;
    padding-right:2em;
    padding-top:0.5em;
    padding-bottom:0.5em;
}
@media (prefers-color-scheme: dark) {
    th, td {
        border-color: #e3f0fe;
    }
}
/* Header */
.skip-link {
    font-size: 0.8em;
}
.header__name {
    margin-bottom: 1em;
}
.header__name a {
    color: #2a2b30;
    font-weight: 900;
    text-decoration: none;
    display: inline-block;
    padding-right: 0.5em;
}
.header__name a img {
    width: 2em;
    height: 2em;
    vertical-align: middle;
    margin-right: 0.5em;
    border-radius: 50%;
}
.header__name a:hover, .header__name a:focus {
    text-decoration: underline;
    text-decoration-thickness: 4px;
}
.header_navigation-list {
    margin: 0;
    padding: 0;
}
.header__navigation-item {
    display: inline-block;
    margin-right: 1em;
}
.header__navigation-item a {
    text-decoration: none;
    color: #2a2b30;
    font-weight: 900;
}
.header__navigation-item a:visited {
    color: #2a2b30;
}
.header__navigation-item a:hover {
    text-decoration: underline;
    text-decoration-thickness: 4px;
    text-underline-offset: 0.34em;
}
.header__navigation-item a[aria-current] {
    text-decoration: underline;
    text-decoration-thickness: 4px;
    text-underline-offset: 0.34em;
}
@media (prefers-color-scheme: dark) {
    .header__name a {
        color: #e3f0fe;
    }
    .header__navigation-item a {
        color: #e3f0fe;
    }
    .header__navigation-item a:visited {
        color: #e3f0fe;
    }
}
/* Footer */
.footer {
    padding: 0.5em 0;
}
.footer__inline-list {
    padding: 0;
}
.footer__inline-list-item {
    display: inline-block;
    margin-right: 1em;
}
/* By line */
.by-line {
    font-size: 0.8em;
    margin-bottom: 3em;
}
.by-line__list {
    padding: 0;
}
.by-line__list-item {
    list-style: none;
    margin-bottom: 0.4em;
}
.by-line__list-item-key {
    font-weight: 900;
    display: block;
}
.by-line__list-item-value {
    display: block;
}
.by-line__tags-item {
    display: inline-block;
}
.by-line__tags-item:not(:last-child):after {
    content: ',';
}
.by-line a {
    color: #2a2b30;
}
@media (prefers-color-scheme: dark) {
    .by-line a {
        color: #e3f0fe;
    }
}
/* Post list */
.post-list {
    padding-left: 0;
    margin-top: 2em;
}
.post-list-item {
    list-style: none;
    margin-bottom: 2em;
}
.post-list-item__title {
    margin-top: 0;
    margin-bottom: 0;
}
.post-list-item__meta {
    margin-top: 0.5em;
    margin-bottom: 0;
    font-size: 0.8em;
}
.post-list-item__text {
    margin-top: 0.25em;
    margin-bottom: 0;
}
/* Panel */
.panel {
    background-color: #e3f0fe;
    padding: 1em;
    display: inline-block;
}
@media (prefers-color-scheme: dark) {
    .panel {
        background-color: #1e1d1d;
    }
}
/* Utilities */
.margin-bottom-0 {
    margin-bottom: 0;
}
.margin-top-0 {
    margin-top: 0;
}