:root{--font-size-base:16px;--line-height-base:1.5rem;--gap:1rem;--outline-width:2px;--container-width:34rem;--col-width:16rem;--full-width:calc(var(--col-width) * 2 + var(--container-width));--post-width:calc(var(--col-width) + var(--container-width));--sides:calc(var(--col-width) * 4 + var(--container-width) + 2rem)}@media (min-width:768px){:root{--font-size-base:18px;--gap:1.25rem}}@media (min-width:1024px){:root{--font-size-base:20px;--gap:1.5rem}}*{box-sizing:border-box}figure{margin:0}h1,h2,h3,h4,h5,h6{font-family:Georgia,serif;font-weight:400}mark{background-color:#fff9c0}.grid{--cols:1;--home-gap:1.25rem;display:grid;gap:var(--home-gap);grid-template-columns:repeat(var(--cols),1fr);margin:3rem 0}.grid>*{grid-template-rows:1fr auto;margin-bottom:1rem;break-inside:avoid}@media (min-width:768px){.grid--2{--cols:2}.grid--3{--cols:3}}.grid__line{grid-column:1/span var(--cols);margin:0}a{vertical-align:baseline;text-decoration:underline var(--theme-secondary);color:var(--theme-accent)}a:focus,a:hover{color:var(--theme-secondary)}.input{font-size:inherit;font-family:inherit;background-color:inherit;color:inherit;border:0;outline:2px solid var(--theme-border);padding-left:.5em;padding-right:.5em}[contenteditable]{outline:var(--outline-width) solid var(--theme-text)}.button{padding-left:.5em;padding-right:.5em;border:0;font-size:inherit;vertical-align:bottom;outline-width:var(--outline-width);outline-style:solid;outline-color:var(--theme-border)}.avatar{display:inline-block;vertical-align:middle}.avatar--circle{border-radius:50%}.screen-reader-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.screen-reader-only:focus{position:static;width:auto;height:auto;clip:auto;overflow:visible}.nav{display:inline-flex;flex-wrap:wrap;margin:0 calc(var(--gap)*-.5);list-style:none}.nav__link{display:inline-block;white-space:nowrap;padding:.5rem calc(var(--gap)*.5)}.nav__link--active{outline-width:var(--outline-width);outline-style:dashed;outline-color:var(--theme-accent)}.form{display:inline-flex;flex-wrap:wrap}.form__control{padding-top:.5rem;padding-bottom:.5rem}.card{display:grid}.card__body{padding:0 1rem}.card__title{margin-bottom:.25rem}.card__date{font-size:.75rem;word-spacing:-.5px}.card__link{position:relative;display:flex;flex-direction:column;text-decoration:none;outline-width:var(--outline-width);outline-style:solid;outline-color:var(--theme-text)}.card__preview{position:relative;order:-1;padding-top:calc(1/2*100%)}.card__preview :is(img, svg){position:absolute;top:0;bottom:0;right:0;left:0;display:block;max-width:100%;max-height:100%;margin:auto;object-fit:scale-down;text-align:center}.document{height:100%;padding:0;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol",sans-serif;font-size:var(--font-size-base);color:var(--theme-text);background-color:var(--theme-background);scroll-behavior:smooth}:focus{outline-width:var(--outline-width);outline-style:solid;outline-color:var(--theme-accent);outline-offset:0}.layout{display:grid;min-height:100%;grid-template-rows:auto 1fr auto}.layout__footer,.layout__header{margin-left:auto;margin-right:auto;width:100%;max-width:var(--full-width)}.layout__header{margin-bottom:1.5rem}.layout__footer{grid-row-start:3;grid-row-end:4}.page{display:grid;grid-template:var(--grid-ascii-page);grid-template-columns:var(--grid-columns-page);grid-template-rows:min-content;grid-auto-rows:min-content;word-break:break-word;word-wrap:break-word}.page__content>*,.page__header,.page__nav,.page__summary{grid-column:content;padding-left:var(--gap);padding-right:var(--gap)}.page__header,.page__summary{grid-area:header;margin-bottom:1rem}.page__summary{grid-area:summary;font-size:2em;font-family:Georgia,serif;font-weight:400}.page__title{font-size:3em}.page__header .avatar{width:20px;height:20px}.page .note{grid-column:nav;z-index:2}.page :is(img, svg){max-width:100%;height:auto}.page :is(audio, video){width:100%}.page ul{margin-top:0}p+ol,p+ul{margin-top:-1em;list-style:inside}.page__footer{grid-column:footer;align-self:end}.header{padding:.5em var(--gap)}.header__end,.header__start{display:inline-flex;margin-bottom:calc(var(--outline-width)*2)}.header__start{padding-right:2em}@media (min-width:768px){.header{display:flex}.header__end{margin-left:auto}}.footer{display:grid;grid-auto-flow:column;padding:0 var(--gap)}.footer__help{text-align:right}