:root { font-family: "Open Sans", sans-serif, serif; /* Variables */ --content-width: 60rem; --blurb-width: 45%; --header-width: 35rem; --box-padding-vert: 1rem; --box-padding-horz: 1rem; --box-margin-vert: 0.5rem; --box-margin-horz: 0.5rem; --footer-padding: 0.25rem; --box-gap: 0.5rem; --box-radius: 1rem; } /* border box everything */ * { box-sizing: border-box; } /* slightly larger than content-width to account for padding/margins */ @media screen and (max-width: 62rem) { :root { --content-width: 95vw; } } /* slightly larger than blurb-width to account for padding/margins */ @media screen and (max-width: 40rem) { :root { --blurb-width: 100%; } } /* Main Body and Post Flexboxs */ body, .post, .series { display: flex; flex-direction: column; align-items: center; gap: var(--box-gap); } .post, .series, .series-list { width: 100%; } /* Footnotes */ .footnotes { display: flex; flex-direction: column; align-tems: left; width: 100%; } .footnotes > hr { width: 95%; } /* Style the site header */ .site-header { display: flex; flex-direction: column; align-items: center; width: 100%; max-width: var(--header-width); padding: var(--box-padding-vert) var(--box-padding-horz); border-radius: var(--box-radius); } .site-logo { font-size: 2.5rem; font-weight: bold; } .site-tagline { font-size: 0.9rem; font-style: italic; } .header-links { display: flex; flex-direction: row; align-items: center; gap: var(--box-gap); font-size: 1.1rem; flex-wrap: wrap; margin-top: var(--box-margin-vert); justify-content: center; } .header-links > a > span, .post-series-tag > a > span, .post-tag > a > span, .footer-link > a > div { text-decoration: underline; } .header-links > a, .post-series-tag > a, .post-tag > a, .footer-link > a { text-decoration: none; } /* Style the post header, body, and blurbs */ /* TODO: Style footnotes and get footnote hover working */ .post-header, .post-body, .series-header { display: flex; flex-direction: column; align-items: center; gap: var(--box-gap); width: 100%; max-width: var(--content-width); padding: var(--box-padding-vert) var(--box-padding-horz); border-radius: var(--box-radius); } .post-body p { margin: auto var(--box-margin-horz); align-self: stretch; } .post-title h1, .series-title h1 { margin-top: 0px; margin-bottom: 0px; } .post-info, .series-info { display: flex; flex-direction: row; align-items: center; gap: var(--box-gap); font-size: 0.9rem; flex-wrap: wrap; } .post-read-time { text-decoration: underline dotted; } .post-body h2, .post-body h3, .post-body h4 { text-align: center; } .post-body h2 { padding: var(--box-margin-vert) var(--box-margin-horz); border-radius: var(--box-radius); width: 100%; } .post-blurbs, .series-blurbs, .series-list { display: flex; flex-direction: column; align-items: center; gap: var(--box-gap); max-width: var(--content-width); padding: var(--box-padding-vert) var(--box-padding-horz); border-radius: var(--box-radius); } .post-blurb, .series-list-blurb { width: 100%; display: block; border-radius: var(--box-radius); padding: var(--box-padding-vert) var(--box-padding-horz); display: flex; align-items: center; justify-content: center; flex-direction: column; } .post-info > *, .series-info > *, .header-links > * { padding: 0.25em; border-radius: 0.25em; } /* TODO: Nice fancy blockquotes */ blockquote { width: 90%; border-radius: var(--box-radius); padding: var(--box-padding-vert) var(--box-padding-horz); } /* Style the tags blurbs and page */ .tags { display: flex; flex-direction: column; align-items: center; gap: var(--box-gap); max-width: var(--content-width); /* min-width: var(--blurb-width); */ padding: var(--box-padding-vert) var(--box-padding-horz); border-radius: var(--box-radius); } .tag-blurb { width: 100%; display: flex; flex-direction: column; align-items: center; gap: var(--box-gap); border-radius: var(--box-radius); } .tag-blurb-links { display: block; border-radius: var(--box-radius); display: flex; flex-flow: row wrap; gap: var(--box-gap); align-items: stretch; gap: var(--box-gap); padding: var(--box-padding-vert) var(--box-padding-horz); } .tag-blurb-post { font-size: 0.8rem; width: var(--blurb-width); display: flex; flex-direction: column; align-items: center; gap: var(--box-gap); flex-shrink: 1; flex-grow: 1; border-radius: var(--box-radius); padding: var(--box-padding-vert) var(--box-padding-horz); } .tag-blurb-title { margin-top: var(--box-margin-vert); margin-bottom: 0; font-size: 1.5rem; font-weight: bold; } /* Style the footer */ footer { display: flex; flex-flow: row wrap; align-items: stretch; gap: var(--box-gap); max-width: var(--content-width); width: 100%; border-radius: var(--box-radius); padding: var(--box-padding-vert) var(--box-padding-horz); font-size: 0.8rem; } footer > div { display: flex; flex-direction: column; align-items: center; justify-content: space-around; flex: 1; gap: var(--box-gap); border-radius: var(--box-radius); padding: var(--footer-padding); } .footer-title { font-size: 1rem; font-weight: bold; } footer i { font-size: 1rem; line-height: 0.8rem; } .footer-link > a { margin-left: 0.25rem; } .footer-link > img { height: 1rem; width: 1rem; margin: 0.1rem; } .footer-links { display: flex; flex-flow: row wrap; align-items: center; justify-content: center; gap: var(--box-gap); border-radius: var(--box-radius); padding: var(--footer-padding); } .footer-link { display: flex; flex-flow: row nowrap; align-content: center; border-radius: 0.25rem; padding: var(--footer-padding); } /* Formatting for special pages */ .special-post h2 { font-size: 2rem; } .special-post h3 { font-size: 1.5rem; }