239 lines
5 KiB
SCSS
239 lines
5 KiB
SCSS
@use "../utilities/css-variables.scss" as cv;
|
|
@use "../utilities/mixins" as mx;
|
|
|
|
$body-background-color: cv.getVar("scheme-main") !default;
|
|
$body-size: 1em !default;
|
|
$body-min-width: 300px !default;
|
|
$body-rendering: optimizeLegibility !default;
|
|
$body-family: cv.getVar("family-primary") !default;
|
|
$body-overflow-x: hidden !default;
|
|
$body-overflow-y: scroll !default;
|
|
|
|
$body-color: cv.getVar("text") !default;
|
|
$body-font-size: 1em !default;
|
|
$body-weight: cv.getVar("weight-normal") !default;
|
|
$body-line-height: 1.5 !default;
|
|
|
|
$code-family: cv.getVar("family-code") !default;
|
|
$code-padding: 0.25em 0.5em 0.25em !default;
|
|
$code-weight: normal !default;
|
|
$code-size: 0.875em !default;
|
|
|
|
$small-font-size: 0.875em !default;
|
|
|
|
$hr-background-color: cv.getVar("background") !default;
|
|
$hr-height: 2px !default;
|
|
$hr-margin: 1.5rem 0 !default;
|
|
|
|
$strong-color: cv.getVar("text-strong") !default;
|
|
$strong-weight: cv.getVar("weight-semibold") !default;
|
|
|
|
$pre-font-size: 0.875em !default;
|
|
$pre-padding: 1.25rem 1.5rem !default;
|
|
$pre-code-font-size: 1em !default;
|
|
|
|
:root {
|
|
@include cv.register-vars(
|
|
(
|
|
"body-background-color": #{$body-background-color},
|
|
"body-size": #{$body-size},
|
|
"body-min-width": #{$body-min-width},
|
|
"body-rendering": #{$body-rendering},
|
|
"body-family": #{$body-family},
|
|
"body-overflow-x": #{$body-overflow-x},
|
|
"body-overflow-y": #{$body-overflow-y},
|
|
"body-color": #{$body-color},
|
|
"body-font-size": #{$body-font-size},
|
|
"body-weight": #{$body-weight},
|
|
"body-line-height": #{$body-line-height},
|
|
"code-family": #{$code-family},
|
|
"code-padding": #{$code-padding},
|
|
"code-weight": #{$code-weight},
|
|
"code-size": #{$code-size},
|
|
"small-font-size": #{$small-font-size},
|
|
"hr-background-color": #{$hr-background-color},
|
|
"hr-height": #{$hr-height},
|
|
"hr-margin": #{$hr-margin},
|
|
"strong-color": #{$strong-color},
|
|
"strong-weight": #{$strong-weight},
|
|
"pre-font-size": #{$pre-font-size},
|
|
"pre-padding": #{$pre-padding},
|
|
"pre-code-font-size": #{$pre-code-font-size},
|
|
)
|
|
);
|
|
}
|
|
|
|
html {
|
|
background-color: cv.getVar("body-background-color");
|
|
font-size: cv.getVar("body-size");
|
|
-moz-osx-font-smoothing: grayscale;
|
|
-webkit-font-smoothing: antialiased;
|
|
min-width: cv.getVar("body-min-width");
|
|
overflow-x: cv.getVar("body-overflow-x");
|
|
overflow-y: cv.getVar("body-overflow-y");
|
|
text-rendering: cv.getVar("body-rendering");
|
|
text-size-adjust: 100%;
|
|
}
|
|
|
|
article,
|
|
aside,
|
|
figure,
|
|
footer,
|
|
header,
|
|
hgroup,
|
|
section {
|
|
display: block;
|
|
}
|
|
|
|
body,
|
|
button,
|
|
input,
|
|
optgroup,
|
|
select,
|
|
textarea {
|
|
font-family: cv.getVar("body-family");
|
|
}
|
|
|
|
code,
|
|
pre {
|
|
-moz-osx-font-smoothing: auto;
|
|
-webkit-font-smoothing: auto;
|
|
font-family: cv.getVar("code-family");
|
|
}
|
|
|
|
body {
|
|
color: cv.getVar("body-color");
|
|
font-size: cv.getVar("body-font-size");
|
|
font-weight: cv.getVar("body-weight");
|
|
line-height: cv.getVar("body-line-height");
|
|
}
|
|
|
|
// Inline
|
|
|
|
a,
|
|
button {
|
|
cursor: pointer;
|
|
|
|
&:focus-visible {
|
|
outline-color: hsl(
|
|
cv.getVar("focus-h"),
|
|
cv.getVar("focus-s"),
|
|
cv.getVar("focus-l")
|
|
);
|
|
outline-offset: cv.getVar("focus-offset");
|
|
outline-style: cv.getVar("focus-style");
|
|
outline-width: cv.getVar("focus-width");
|
|
|
|
&:active {
|
|
outline-width: 1px;
|
|
}
|
|
}
|
|
|
|
&:active {
|
|
outline-width: 1px;
|
|
}
|
|
}
|
|
|
|
a {
|
|
color: cv.getVar("link-text");
|
|
cursor: pointer;
|
|
text-decoration: none;
|
|
transition-duration: cv.getVar("duration");
|
|
transition-property: background-color, border-color, color;
|
|
|
|
strong {
|
|
color: currentColor;
|
|
}
|
|
}
|
|
|
|
button {
|
|
@include mx.reset;
|
|
transition-duration: cv.getVar("duration");
|
|
transition-property: background-color, border-color, color;
|
|
}
|
|
|
|
code {
|
|
background-color: cv.getVar("code-background");
|
|
border-radius: 0.5em;
|
|
color: cv.getVar("code");
|
|
font-size: cv.getVar("code-size");
|
|
font-weight: cv.getVar("code-weight");
|
|
padding: cv.getVar("code-padding");
|
|
}
|
|
|
|
hr {
|
|
background-color: cv.getVar("hr-background-color");
|
|
border: none;
|
|
display: block;
|
|
height: cv.getVar("hr-height");
|
|
margin: cv.getVar("hr-margin");
|
|
}
|
|
|
|
img {
|
|
height: auto;
|
|
max-width: 100%;
|
|
}
|
|
|
|
input[type="checkbox"],
|
|
input[type="radio"] {
|
|
vertical-align: baseline;
|
|
}
|
|
|
|
small {
|
|
font-size: cv.getVar("small-font-size");
|
|
}
|
|
|
|
span {
|
|
font-style: inherit;
|
|
font-weight: inherit;
|
|
}
|
|
|
|
strong {
|
|
color: cv.getVar("strong-color");
|
|
font-weight: cv.getVar("strong-weight");
|
|
}
|
|
|
|
svg {
|
|
height: auto;
|
|
width: auto;
|
|
}
|
|
|
|
// Block
|
|
|
|
fieldset {
|
|
border: none;
|
|
}
|
|
|
|
pre {
|
|
@include mx.overflow-touch;
|
|
|
|
background-color: cv.getVar("pre-background");
|
|
color: cv.getVar("pre");
|
|
font-size: cv.getVar("pre-font-size");
|
|
overflow-x: auto;
|
|
padding: cv.getVar("pre-padding");
|
|
white-space: pre;
|
|
word-wrap: normal;
|
|
|
|
code {
|
|
background-color: transparent;
|
|
color: currentColor;
|
|
font-size: cv.getVar("pre-code-font-size");
|
|
padding: 0;
|
|
}
|
|
}
|
|
|
|
table {
|
|
td,
|
|
th {
|
|
vertical-align: top;
|
|
|
|
&:not([align]) {
|
|
text-align: inherit;
|
|
}
|
|
}
|
|
|
|
th {
|
|
color: cv.getVar("text-strong");
|
|
}
|
|
}
|