292 lines
4.7 KiB
CSS
292 lines
4.7 KiB
CSS
:root {
|
|
color-scheme: light dark;
|
|
|
|
--color-background-light: #ffffff; /* White */
|
|
--color-dimmed-light: #f3f4f5; /* Light Gray 200 */
|
|
--color-primary-light: #191e23; /* Dark Gray 900 */
|
|
--color-secondary-light: #6c7781; /* Dark Gray 300 */
|
|
--color-accent-light: #0073aa; /* WordPress Blue */
|
|
|
|
--color-background-dark: #191e23; /* Dark Gray 900 */
|
|
--color-dimmed-dark: #23282d; /* Dark Gray 800 */
|
|
--color-primary-dark: #fbfbfc; /* Light Gray 100 */
|
|
--color-secondary-dark: #ccd0d4; /* Light Gray 700 */
|
|
--color-accent-dark: #00a0d2; /* Medium Blue */
|
|
|
|
--color-background: var(--color-background-light);
|
|
--color-dimmed: var(--color-dimmed-light);
|
|
--color-primary: var(--color-primary-light);
|
|
--color-secondary: var(--color-secondary-light);
|
|
--color-accent: var(--color-accent-light);
|
|
|
|
--scale-ratio: 1.25;
|
|
--scale0: 1rem;
|
|
--scale1: calc(var(--scale0) * var(--scale-ratio));
|
|
--scale2: calc(var(--scale1) * var(--scale-ratio));
|
|
--scale3: calc(var(--scale2) * var(--scale-ratio));
|
|
--scale4: calc(var(--scale3) * var(--scale-ratio));
|
|
--scale5: calc(var(--scale4) * var(--scale-ratio));
|
|
}
|
|
|
|
@media (prefers-color-scheme: dark) {
|
|
:root {
|
|
--color-background: var(--color-background-dark);
|
|
--color-dimmed: var(--color-dimmed-dark);
|
|
--color-primary: var(--color-primary-dark);
|
|
--color-secondary: var(--color-secondary-dark);
|
|
--color-accent: var(--color-accent-dark);
|
|
}
|
|
}
|
|
|
|
* {
|
|
box-sizing: border-box;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
html {
|
|
font-size: 14px;
|
|
}
|
|
|
|
body {
|
|
background: var(--color-background);
|
|
color: var(--color-primary);
|
|
display: grid;
|
|
font: 1em/1.5 Lato, sans-serif;
|
|
gap: 2em;
|
|
grid-template-columns:
|
|
[full-start]
|
|
1fr
|
|
[main-start side-start]
|
|
minmax(min-content, 12em)
|
|
[side-end content-start]
|
|
minmax(min-content, 36em)
|
|
[main-end content-end]
|
|
1fr
|
|
[full-end];
|
|
grid-template-rows: auto [content] 0;
|
|
margin-bottom: 4em;
|
|
}
|
|
|
|
body::before {
|
|
content: '';
|
|
grid-column: full;
|
|
grid-row: content;
|
|
}
|
|
|
|
ol,
|
|
ul {
|
|
padding-left: 1em;
|
|
}
|
|
|
|
:not(.icon-list, .tag-list) > li + li {
|
|
margin-top: 0.4em;
|
|
}
|
|
|
|
li::marker,
|
|
.network {
|
|
color: var(--color-secondary);
|
|
}
|
|
|
|
a {
|
|
color: var(--color-accent);
|
|
text-decoration: none;
|
|
}
|
|
|
|
a:focus,
|
|
a:hover {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
h1,
|
|
h2,
|
|
h3,
|
|
h5 {
|
|
font-weight: normal;
|
|
}
|
|
|
|
h1,
|
|
h2,
|
|
h3 {
|
|
line-height: 1.2;
|
|
}
|
|
|
|
h1 {
|
|
font-size: var(--scale5);
|
|
}
|
|
|
|
h2 {
|
|
color: var(--color-secondary);
|
|
font-size: var(--scale4);
|
|
}
|
|
|
|
h3 {
|
|
color: var(--color-secondary);
|
|
font-size: var(--scale3);
|
|
grid-column: side;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
h4 {
|
|
font-size: var(--scale2);
|
|
}
|
|
|
|
h5 {
|
|
font-size: var(--scale1);
|
|
}
|
|
|
|
h6 {
|
|
font-size: var(--scale0);
|
|
}
|
|
|
|
blockquote {
|
|
border-left: 0.2em solid var(--color-dimmed);
|
|
padding-left: 1em;
|
|
}
|
|
|
|
cite {
|
|
color: var(--color-secondary);
|
|
font-style: inherit;
|
|
}
|
|
|
|
cite::before {
|
|
content: '— ';
|
|
}
|
|
|
|
svg {
|
|
margin-right: 0.2em;
|
|
vertical-align: text-bottom;
|
|
}
|
|
|
|
.masthead {
|
|
background: var(--color-dimmed);
|
|
display: inherit;
|
|
gap: inherit;
|
|
grid-column: full;
|
|
grid-template-columns: inherit;
|
|
padding: 4em 0;
|
|
text-align: center;
|
|
}
|
|
|
|
.masthead > *,
|
|
section {
|
|
grid-column: main;
|
|
}
|
|
|
|
.masthead > img {
|
|
border: 4px solid;
|
|
border-radius: 50%;
|
|
margin: 0 auto;
|
|
max-width: 12em;
|
|
}
|
|
|
|
article > * + *,
|
|
blockquote > * + *,
|
|
.timeline > div > * + * {
|
|
margin-top: 0.6em;
|
|
}
|
|
|
|
.meta {
|
|
color: var(--color-secondary);
|
|
}
|
|
|
|
.stack {
|
|
display: grid;
|
|
gap: 1.5em;
|
|
}
|
|
|
|
.icon-list {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 0.4em 1em;
|
|
justify-content: center;
|
|
list-style: none;
|
|
padding: 0;
|
|
}
|
|
|
|
.grid-list {
|
|
display: grid;
|
|
gap: 1em;
|
|
}
|
|
|
|
.tag-list {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 0.4em;
|
|
list-style: none;
|
|
padding: 0;
|
|
}
|
|
|
|
.tag-list > li {
|
|
background: var(--color-dimmed);
|
|
border-radius: 0.2em;
|
|
padding: 0.2em 0.6em;
|
|
}
|
|
|
|
.timeline > div {
|
|
position: relative;
|
|
}
|
|
|
|
.timeline > div:not(:last-child) {
|
|
padding-bottom: 1rem;
|
|
}
|
|
|
|
.timeline > div:not(:last-child)::before {
|
|
content: '';
|
|
position: absolute;
|
|
top: 1rem;
|
|
left: -15px;
|
|
width: 2px;
|
|
height: 100%;
|
|
background: var(--color-secondary);
|
|
}
|
|
|
|
.timeline > div:not(:only-child)::after {
|
|
content: '';
|
|
position: absolute;
|
|
top: 0.6rem;
|
|
left: -20px;
|
|
width: 8px;
|
|
height: 8px;
|
|
background: var(--color-secondary);
|
|
border: 2px solid var(--color-background);
|
|
border-radius: 50%;
|
|
}
|
|
|
|
@media print, (min-width: 48em) {
|
|
h3 {
|
|
text-align: right;
|
|
margin-bottom: inherit;
|
|
}
|
|
|
|
.masthead {
|
|
text-align: inherit;
|
|
}
|
|
|
|
.masthead > *,
|
|
section {
|
|
grid-column: content;
|
|
}
|
|
|
|
.masthead img {
|
|
grid-column: side;
|
|
grid-row: span 2;
|
|
max-width: 100%;
|
|
}
|
|
|
|
section {
|
|
display: contents;
|
|
}
|
|
|
|
.icon-list {
|
|
flex-direction: column;
|
|
}
|
|
|
|
.grid-list {
|
|
grid-template-columns: repeat(
|
|
auto-fit,
|
|
minmax(calc((100% - 1em) / 2), 1fr)
|
|
);
|
|
}
|
|
}
|