Files
fedizinefest/css/main.css
T
inherentlee 67aa1d562a
continuous-integration/drone/push Build is passing
add exact timeline
2026-09-14 11:06:47 -07:00

252 lines
4.2 KiB
CSS

@font-face {
font-family: "Bloktype";
src: url("/fonts/BLOKTYPE.woff2");
}
:root {
color-scheme: light dark;
--color-light: #f3ccfb;
--color-dark: #130b16;
--color-pink: #ea33d2;
--color-blurple: #6d12e2;
--color-bg: light-dark(var(--color-light), var(--color-dark));
--color-text: light-dark(var(--color-dark), var(--color-light));
--color-header: light-dark(var(--color-blurple), var(--color-pink));
--color-warn: light-dark(var(--color-pink), var(--color-blurple));
}
/* numbered components are from https://www.joshwcomeau.com/css/custom-css-reset/ */
*, *::before, *::after {
box-sizing: border-box; /* 1. Use a more-intuitive box-sizing model */
}
*:not(dialog) {
margin: 0; /* 2. Remove default margin */
}
*:focus-visible {
outline: .2rem solid var(--color-header);
outline-offset: .15rem;
background-color: var(--color-header);
}
html {
height: 100%;
}
@media (prefers-reduced-motion: no-preference) {
html {
interpolate-size: allow-keywords; /* 3. Enable keyword animations */
}
}
#root, #__next {
isolation: isolate; /* 10. Create a root stacking context */
}
body {
line-height: 1.5; /* 4. Increase line-height */
-webkit-font-smoothing: antialiased; /* 5. Improve text rendering */
font-family: "Atkinson Hyperlegible Next", sans-serif;
background-color: var(--color-bg);
color: var(--color-text);
display: grid;
grid-template-rows: auto 1fr auto;
min-height: 100%;
}
main {
width: 60%;
margin: 0 auto 2rem;
}
@media (max-width: 1100px) {
main {
width: 80%;
}
}
@media (max-width: 650px) {
main {
width: 92%;
}
}
img, picture, video, canvas, svg {
display: block; /* 6. Improve media defaults */
max-width: 100%; /* 6. Improve media defaults */
height: auto; /* 6. Improve media defaults */
margin: 0 auto;
}
input, button, textarea, select {
font: inherit; /* 7. Inherit fonts for form controls */
}
p, h1, h2, h3, h4, h5, h6 {
overflow-wrap: break-word; /* 8. Avoid text overflows */
}
h1, h2, h3, h4, h5, h6 {
text-wrap: balance; /* 9. Improve line wrapping */
color: var(--color-header);
font-weight: bold;
line-height: 105%;
}
h1 {
margin: 5rem 0;
font-size: 3rem;
text-align: center;
}
@media (max-width: 650px) {
h1 { margin: 2rem 0; }
}
h2 {
font-size: 2rem;
margin: 1.4rem 0;
}
p + h2,
h3 + h2 {
padding-top: 3rem;
border-top: solid;
}
h3 {
font-size: 1.4rem;
margin-top: 1rem;
}
p {
text-wrap: pretty; /* 9. Improve line wrapping */
}
p, ul {
margin: 1.5rem 0;
}
ul ul {
margin: .5rem 0;
}
@media (max-width: 650px) {
ul {
padding-left: 1.5rem;
}
}
a:link,
a:visited {
background-color: var(--color-text);
color: var(--color-bg);
font-weight: bold;
padding: 0 .2rem;
text-decoration: none;
border-radius: .2rem;
}
/* makes the years page prettier */
h3 a:link,
h3 a:visited {
background-color: var(--color-header);
}
h3 *:focus-visible {
outline: .2rem solid var(--color-text);
background-color: var(--color-text);
}
time {
text-decoration: .1rem underline wavy var(--color-blurple);
}
/* Header nav */
nav {
border-bottom: .25rem solid var(--color-header);
font-size: 1.1rem;
}
#skip {
position: absolute;
left: -999px;
top: -999px;
}
#skip:focus-visible {
left: 1rem;
top: .5rem;
}
nav ul {
display: flex;
flex-flow: row wrap;
align-items: stretch;
justify-content: center;
list-style: none;
padding: 0;
margin: 0;
}
nav li {
margin: .5rem .5rem;
}
footer {
display: flex;
justify-content: space-between;
margin: 1rem auto 0;
padding: 1rem .5rem;
width: 100%;
flex-flow: row wrap;
border-top: .25rem solid var(--color-header);
}
footer p {
margin: 0.5rem 0;
}
@media (max-width: 650px) {
footer {
flex-flow: column nowrap;
}
footer p {
text-align: center;
}
}
.bloktype {
font-family: "Bloktype", "Atkinson Hyperlegible Next", sans-serif;
font-size: 1.35em; /* because of the blocks the letters are rather small */
color: var(--color-text);
}
@media (prefers-color-scheme: light) {
.dark-mode {
display: none;
}
}
@media (prefers-color-scheme: dark) {
.light-mode {
display: none;
}
}
/* only float insets on larger screens */
@media (min-width: 551px) {
.inset {
clear: both;
width: 40%;
padding-left: 1rem;
padding-bottom: .5rem;
float: right;
background-color: var(--color-bg);
}
}