Files
Portfolio/src/styles/base.css

122 lines
1.8 KiB
CSS

* {
box-sizing: border-box;
}
html {
min-width: 0;
background: var(--canvas);
color: var(--text);
font-family: var(--sans);
font-size: 100%;
line-height: 1.55;
scroll-behavior: auto;
text-size-adjust: 100%;
}
body {
min-width: 0;
min-height: 100vh;
margin: 0;
overflow-wrap: anywhere;
background: var(--canvas);
}
button,
input,
textarea,
select {
font: inherit;
}
a {
color: var(--cyan);
overflow-wrap: anywhere;
text-decoration-color: color-mix(in srgb, currentcolor 55%, transparent);
text-underline-offset: 0.18em;
}
a:hover {
color: var(--text);
text-decoration-color: currentcolor;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible {
outline: 3px solid var(--focus);
outline-offset: 3px;
}
::selection {
background: var(--amber);
color: #14100a;
}
h1,
h2,
h3,
p,
dl,
ul,
ol,
figure {
margin-block: 0;
}
h1,
h2,
h3 {
color: var(--text);
font-weight: 680;
letter-spacing: -0.025em;
line-height: 1.08;
text-wrap: balance;
}
p,
li,
dd,
dt,
a {
max-inline-size: 72ch;
}
svg,
img,
video,
canvas {
display: block;
max-inline-size: 100%;
}
.skip-link {
position: fixed;
z-index: 10;
inset: var(--space-2) auto auto var(--space-2);
min-block-size: 44px;
padding: var(--space-1) var(--space-2);
transform: translateY(-160%);
background: var(--amber);
color: #171006;
font-weight: 700;
transition: transform var(--transition);
}
.skip-link:focus {
transform: translateY(0);
}
@media (prefers-reduced-motion: reduce) {
*,
*::before,
*::after {
scroll-behavior: auto !important;
transition-duration: 0.001s !important;
animation-duration: 0.001s !important;
animation-iteration-count: 1 !important;
}
}