103 lines
2.3 KiB
CSS
103 lines
2.3 KiB
CSS
html, body {
|
|
--font-sans: system-ui;
|
|
--font-serif: ui-serif, serif;
|
|
--font-mono: ui-monospace, monospace;
|
|
--hover-color: var(--color-subtle-dark);
|
|
--hover-size: 0.15rem;
|
|
--hover-filter: brightness(1);
|
|
|
|
-moz-osx-font-smoothing: grayscale;
|
|
-webkit-font-smoothing: antialiased;
|
|
-webkit-text-size-adjust: none;
|
|
background: var(--color-bg);
|
|
color: var(--color-ink);
|
|
font-family: var(--font-sans);
|
|
line-height: 1.4;
|
|
overflow: unset;
|
|
scroll-behavior: auto;
|
|
text-rendering: optimizeLegibility;
|
|
text-size-adjust: none;
|
|
}
|
|
|
|
a:not([class]) {
|
|
--hover-size: 0;
|
|
|
|
color: var(--color-link);
|
|
text-decoration: underline;
|
|
text-decoration-skip-ink: auto;
|
|
}
|
|
|
|
:is(a, button, input, textarea, .switch, .toc, .toc__title) {
|
|
--outline-size: max(2px, 0.08em);
|
|
|
|
caret-color: var(--color-link);
|
|
text-decoration: none;
|
|
touch-action: manipulation;
|
|
transition: box-shadow 150ms ease, outline-offset 150ms ease, background-color 150ms ease, opacity 150ms ease, filter 150ms ease;
|
|
|
|
/* Hover */
|
|
@media (any-hover: hover) {
|
|
&:where(:not(:active):hover) {
|
|
box-shadow: 0 0 0 var(--hover-size) var(--hover-color);
|
|
}
|
|
}
|
|
|
|
/* Keyboard navigation */
|
|
&:where(:not(:active)):focus-visible {
|
|
outline-width: var(--outline-size);
|
|
outline-color: var(--outline-color, currentColor);
|
|
outline-offset: var(--outline-offset, calc(var(--outline-size) * 2));
|
|
}
|
|
|
|
&:where(:focus-visible):active {
|
|
outline: 0;
|
|
}
|
|
|
|
/* Pressing */
|
|
&:focus:not(:focus-visible) {
|
|
--outline-offset: 0;
|
|
}
|
|
|
|
/* Disabled */
|
|
&:where([disabled]):not(:hover):not(:active) {
|
|
cursor: not-allowed;
|
|
filter: brightness(0.75);
|
|
}
|
|
}
|
|
|
|
::selection {
|
|
background-color: var(--color-selected);
|
|
}
|
|
|
|
:where(ul, ol):where([role="list"]) {
|
|
margin: 0;
|
|
padding: 0;
|
|
list-style: none;
|
|
}
|
|
|
|
/* Printing */
|
|
@page {
|
|
margin: 1in;
|
|
}
|
|
|
|
@media print {
|
|
.no-print {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
/* Turbo */
|
|
turbo-frame {
|
|
display: contents;
|
|
}
|
|
|
|
/* Nicer scrollbars on Chrome 29+. This is intended for Windows machines, but */
|
|
/* there's not a way to target Windows using CSS, so Chrome on Mac will have */
|
|
/* slightly thinner scrollbars than normal. #C1C1C1 is the default color on Macs. */
|
|
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution:.001dpcm) {
|
|
* {
|
|
scrollbar-color: #C1C1C1 transparent;
|
|
scrollbar-width: thin;
|
|
}
|
|
}
|