104 lines
1.6 KiB
CSS
104 lines
1.6 KiB
CSS
#toc {
|
|
float: right;
|
|
margin: 1rem 0 1.5rem 1.5rem;
|
|
width: fit-content;
|
|
max-width: 55%;
|
|
}
|
|
|
|
@media (max-width: 900px) {
|
|
#toc {
|
|
float: unset;
|
|
margin-top: 2rem;
|
|
margin-left: .5rem;
|
|
width: calc(100% - .5rem);
|
|
max-width: unset;
|
|
}
|
|
}
|
|
|
|
#toc details {
|
|
border: thick solid var(--color-pink);
|
|
border-radius: 1rem;
|
|
margin-top: 1rem;
|
|
background-color: var(--color-bg);
|
|
}
|
|
|
|
#toc summary {
|
|
position: relative;
|
|
top: -1.5rem;
|
|
left: -.75rem;
|
|
width: fit-content;
|
|
background: var(--color-bg);
|
|
border-radius: .5rem;
|
|
cursor: pointer;
|
|
padding-inline-end: .25rem;
|
|
}
|
|
|
|
#toc summary:focus-visible {
|
|
outline: .15rem solid var(--color-teal);
|
|
}
|
|
|
|
#toc summary::marker {
|
|
font-size: 2.35rem;
|
|
}
|
|
|
|
#toc h2 {
|
|
margin-top: 0;
|
|
display: inline;
|
|
line-height: normal;
|
|
}
|
|
|
|
#toc nav {
|
|
position: relative;
|
|
top: -1.25rem;
|
|
}
|
|
|
|
/* `tree` style toc */
|
|
#toc nav > ol {
|
|
margin-inline: 1rem;
|
|
}
|
|
|
|
#toc ol {
|
|
margin: 0;
|
|
}
|
|
|
|
#toc li {
|
|
position: relative;
|
|
padding-inline-start: 1em;
|
|
list-style: none;
|
|
margin-block: 0;
|
|
margin-left: .35rem;
|
|
}
|
|
|
|
#toc li::before,
|
|
#toc li::after {
|
|
display: block;
|
|
position: absolute;
|
|
box-sizing: border-box;
|
|
inset-block: 0 auto;
|
|
inset-inline: 0 auto;
|
|
inline-size: .75em;
|
|
border-inline-start: .1rem solid var(--color-pink);
|
|
}
|
|
|
|
#toc li::before {
|
|
block-size: .5lh;
|
|
border-block-end: .1rem solid var(--color-pink);
|
|
content: "";
|
|
}
|
|
|
|
#toc li:not(:last-child)::after {
|
|
block-size: 100%;
|
|
content: "";
|
|
}
|
|
|
|
/* underlines are unnecessary in this context */
|
|
#toc a {
|
|
text-decoration: none;
|
|
color: var(--color-blue);
|
|
font-weight: bold;
|
|
}
|
|
|
|
#toc a:focus-visible {
|
|
outline-color: var(--color-pink);
|
|
}
|