mirror of
https://github.com/jaronpate/folio.git
synced 2026-10-18 17:06:56 +00:00
163 lines
3.1 KiB
CSS
163 lines
3.1 KiB
CSS
@import './fonts.css';
|
|
|
|
:root {
|
|
/* --font: 'Baskervville', serif; */
|
|
/* --font: 'EB Garamond', serif; */
|
|
/* --font: 'Plantin MT Pro', serif; */
|
|
/* --font: 'Young Serif', serif; */
|
|
/* --font: "SohneBuch", sans-serif; */
|
|
--font-plain: 'SohneBuch', sans-serif;
|
|
--font: 'Redaction', serif;
|
|
--font-hover: 'Redaction 70', serif;
|
|
/* --font-hover: var(--font); */
|
|
--text: #333;
|
|
--muted: #666;
|
|
--bg: #fbfbf7;
|
|
--bg-secondary: #efefe8;
|
|
--dot-color: #666;
|
|
|
|
--color-white-500: #fbfbf7;
|
|
|
|
--gap: 1rem;
|
|
|
|
--radius: 4px;
|
|
}
|
|
|
|
::selection {
|
|
background: var(--text);
|
|
color: var(--bg);
|
|
}
|
|
|
|
.dark-mode {
|
|
--text: #fbfbf7;
|
|
--bg: #0c0c0c;
|
|
--bg-secondary: #1c1c1c;
|
|
--dot-color: #666;
|
|
--muted: #a3a3a3;
|
|
|
|
--color-white-500: #fbfbf7;
|
|
}
|
|
|
|
.flex {
|
|
display: flex;
|
|
}
|
|
|
|
.flex-center {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
|
|
.flex-ff {
|
|
flex: 1;
|
|
}
|
|
|
|
.row {
|
|
flex-direction: row;
|
|
}
|
|
|
|
.col {
|
|
flex-direction: column;
|
|
}
|
|
|
|
* {
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
html,
|
|
body {
|
|
margin: 0;
|
|
padding: 0;
|
|
background: var(--bg);
|
|
overscroll-behavior-y: none;
|
|
overscroll-behavior-x: auto;
|
|
}
|
|
|
|
body {
|
|
font-family: var(--font);
|
|
color: var(--text);
|
|
font-size: 16px;
|
|
line-height: 1.6;
|
|
}
|
|
|
|
/* full-page film grain */
|
|
body::after {
|
|
content: '';
|
|
position: fixed;
|
|
inset: 0;
|
|
z-index: 9999;
|
|
pointer-events: none;
|
|
opacity: 0.06;
|
|
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
|
|
mix-blend-mode: multiply;
|
|
}
|
|
|
|
.dark-mode body::after {
|
|
mix-blend-mode: screen;
|
|
opacity: 0.045;
|
|
}
|
|
|
|
/* quick page transition */
|
|
.page-enter-active,
|
|
.page-leave-active {
|
|
transition: opacity 0.18s ease;
|
|
}
|
|
|
|
.page-enter-from,
|
|
.page-leave-to {
|
|
opacity: 0;
|
|
}
|
|
|
|
.basic-link {
|
|
color: var(--text);
|
|
transition: opacity 0.2s ease;
|
|
text-underline-offset: 4px;
|
|
}
|
|
|
|
.basic-link:hover {
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.punch-link {
|
|
display: inline-block;
|
|
vertical-align: bottom;
|
|
position: relative;
|
|
color: var(--color-white-500);
|
|
text-decoration: none;
|
|
transition: all 200ms ease;
|
|
padding: 0 4px;
|
|
margin: 0 -4px;
|
|
background-image: linear-gradient(
|
|
var(--color-white-500),
|
|
var(--color-white-500)
|
|
);
|
|
background-size: 100% 1px;
|
|
background-position: bottom;
|
|
background-repeat: no-repeat;
|
|
mix-blend-mode: screen;
|
|
}
|
|
|
|
.punch-link:hover {
|
|
background-size: 100% 100%;
|
|
background-image: linear-gradient(#fff, #fff);
|
|
color: #000;
|
|
}
|
|
|
|
.back-link {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
font-size: small;
|
|
color: var(--text);
|
|
text-decoration: none;
|
|
transition: opacity 0.2s ease;
|
|
}
|
|
|
|
.back-link .arrow {
|
|
transition: transform 0.2s ease;
|
|
}
|
|
|
|
.back-link:hover .arrow {
|
|
transform: translateX(-4px);
|
|
}
|