@use "@styles/abstracts/functions" as fun;
@use "@styles/abstracts/variables" as var;
h1 {
font-size: var(--font-size-3xl);
}
h2 {
padding-bottom: fun.convert-px(3);
background: linear-gradient(
to top,
var(--color-primary-dark) 0.3rem,
transparent 0.3rem
)
0 0 / 3rem 100% no-repeat;
font-size: var(--font-size-2xl);
text-shadow: fun.convert-px(1) fun.convert-px(1) 0 var(--color-shadow-lighter);
}
h3 {
font-size: var(--font-size-xl);
}
h4 {
font-size: var(--font-size-lg);
}
h5 {
font-size: var(--font-size-md);
font-weight: 600;
}
h6 {
font-size: var(--font-size-md);
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--color-primary-dark);
font-family: var(--font-family-secondary);
font-weight: 500;
letter-spacing: 0.01ex;
margin: 0 0 var(--spacing-sm);
* + {
h2,
h3,
h4,
h5,
h6 {
margin-top: var(--spacing-md);
}
}
}
p {
font-size: var(--font-size-md);
margin: 0 0 var(--spacing-sm);
}
small {
font-size: var(--font-size-sm);
}
ol {
list-style-type: none;
counter-reset: li;
padding: 0;
> li {
display: table;
counter-increment: li;
&::before {
content: counters(li, ".") ". ";
color: var(--color-secondary);
display: table-cell;
padding-right: var(--spacing-2xs);
}
}
li ol > li::before {
content: counters(li, ".") ". ";
}
}
ul,
ol {
li {
margin-bottom: var(--spacing-2xs);
&:last-child {
margin-bottom: 0;
}
}
::marker {
color: var(--color-secondary);
}
}
ul {
padding-left: var(--spacing-sm);
}
dl {
display: flex;
flex-flow: row wrap;
gap: var(--spacing-2xs);
}
ul,
ol,
dl {
margin: var(--spacing-md) 0;
& & {
margin: var(--spacing-2xs) 0 0;
}
}
dt {
flex: 0 0 max-content;
font-weight: 600;
}
dd {
flex: 0 0 auto;
margin: 0;
}
a {
background: linear-gradient(to top, var(--color-primary) 50%, transparent 50%)
0 0 / 100% 200% no-repeat;
color: var(--color-primary);
text-decoration-thickness: 13%;
text-underline-offset: 20%;
transition: all 0.3s linear 0s, text-decoration 0.18s ease-in-out 0s;
&:hover {
color: var(--color-primary-light);
text-decoration-thickness: 23%;
}
&:focus {
background-position: 0 100%;
color: var(--color-fg-inverted);
}
&:active {
background-position: 0 0;
color: var(--color-primary-dark);
text-decoration-thickness: 18%;
}
&.external {
&::after {
display: inline-block;
content: "\0000a0"url(fun.encode-svg(''));
}
&:focus:not(:active)::after {
content: "\0000a0"url(fun.encode-svg(''));
}
}
&[hreflang] {
&::after {
display: inline-block;
content: "\0000a0["attr(hreflang) "]";
font-size: var(--font-size-sm);
}
&.external {
&::after {
content: "\0000a0["attr(hreflang) "]\0000a0"url(fun.encode-svg(
''
));
}
&:focus:not(:active)::after {
content: "\0000a0["attr(hreflang) "]\0000a0"url(fun.encode-svg(
''
));
}
}
}
}
button,
input,
optgroup,
select,
textarea {
line-height: var(--line-height);
}
code,
kbd,
pre,
var {
font-family: var(--font-family-mono);
}
:not(pre) > code {
background: var(--color-bg-secondary);
border: fun.convert-px(1) solid var(--color-border-lighter);
border-radius: fun.convert-px(3);
color: var(--color-primary-darker);
padding: fun.convert-px(2) fun.convert-px(5) fun.convert-px(1)
fun.convert-px(5);
}
pre {
display: block;
max-width: 100%;
overflow: auto;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
}
figure {
margin: var(--spacing-md) 0;
}
figcaption {
margin-top: var(--spacing-xs);
font-size: var(--font-size-sm);
text-align: center;
}