json-theme-even-fork/style.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)
);
}
}