barrettruth.com/public/styles/common.css
2025-11-30 02:04:37 -05:00

287 lines
5.6 KiB
CSS

@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-Thin.ttf") format("truetype");
font-weight: 100;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-ThinItalic.ttf") format("truetype");
font-weight: 100;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-Extralight.ttf") format("truetype");
font-weight: 200;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-ExtralightItalic.ttf") format("truetype");
font-weight: 200;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-Light.ttf") format("truetype");
font-weight: 300;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-LightItalic.ttf") format("truetype");
font-weight: 300;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-Regular.ttf") format("truetype");
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-RegularItalic.ttf") format("truetype");
font-weight: 400;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-Medium.ttf") format("truetype");
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-MediumItalic.ttf") format("truetype");
font-weight: 500;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-Bold.ttf") format("truetype");
font-weight: 700;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-BoldItalic.ttf") format("truetype");
font-weight: 700;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-Black.ttf") format("truetype");
font-weight: 900;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Signifier";
src: url("/fonts/signifier/Signifier-BlackItalic.ttf") format("truetype");
font-weight: 900;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: "Apercu Mono";
src: url("/fonts/apercu-mono/ApercuMonoProLight.ttf") format("truetype");
font-weight: 300;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Apercu Mono";
src: url("/fonts/apercu-mono/ApercuMonoProRegular.ttf") format("truetype");
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Apercu Mono";
src: url("/fonts/apercu-mono/ApercuMonoProMedium.ttf") format("truetype");
font-weight: 500;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: "Apercu Mono";
src: url("/fonts/apercu-mono/ApercuMonoProBold.ttf") format("truetype");
font-weight: 700;
font-style: normal;
font-display: swap;
}
:root {
--bg: #fff;
--text: #000;
--code-bg: #f4f4f4;
--border: #e1e1e1;
--grid-color: rgba(200, 200, 200, 0.4);
}
@media (prefers-color-scheme: dark) {
:root {
--bg: #000;
--text: #fff;
--code-bg: #121212;
--border: #2d2d2d;
--grid-color: rgba(55, 55, 55, 0.4);
}
}
[data-theme="light"] {
--bg: #fff;
--text: #000;
--code-bg: #f4f4f4;
--border: #e1e1e1;
--grid-color: rgba(200, 200, 200, 0.4);
}
[data-theme="dark"] {
--bg: #000;
--text: #fff;
--code-bg: #121212;
--border: #2d2d2d;
--grid-color: rgba(55, 55, 55, 0.4);
}
pre,
code,
pre code,
.astro-code,
code[class*="language-"] {
font-family: "Apercu Mono", monospace !important;
font-size: 0.95em;
line-height: 1.5;
font-weight: 400;
}
html,
body {
font-family: "Signifier", serif;
margin: 0;
padding: 0;
min-height: 100vh;
display: flex;
flex-direction: column;
background: var(--bg);
color: var(--text);
}
header,
footer {
padding: 30px 20px;
font-size: 1.5em;
display: flex;
align-items: center;
justify-content: space-between;
}
#theme-toggle {
cursor: pointer;
user-select: none;
}
.main {
display: flex;
justify-content: center;
flex: 1;
width: 100%;
}
a {
color: inherit;
}
li {
margin-bottom: 10px;
}
.graph-background {
background-image:
linear-gradient(to right, var(--grid-color) 1px, transparent 1px),
linear-gradient(to bottom, var(--grid-color) 1px, transparent 1px);
background-size: 3vw 3vw;
}
html:has(body.graph-background) {
background-image:
linear-gradient(to right, var(--grid-color) 1px, transparent 1px),
linear-gradient(to bottom, var(--grid-color) 1px, transparent 1px);
background-size: 3vw 3vw;
background-color: var(--bg);
}
.terminal-cursor {
display: inline-block;
width: 10px;
height: 1em;
background-color: var(--bg);
border: 1px solid var(--text);
vertical-align: text-top;
animation: blink 1s step-start infinite;
}
@keyframes blink {
50% {
background-color: transparent;
border-color: transparent;
}
}
.terminal-container {
font-family: "Courier New", monospace;
}
pre {
font-feature-settings:
"liga" 0,
"calt" 0;
}
@media (max-width: 1024px) {
header,
footer {
font-size: 1.2em;
padding: 20px 15px;
}
}
@media (max-width: 640px) {
header,
footer {
font-size: 1em;
padding: 15px 10px;
}
}