notes/quartz/styles/base.scss

644 lines
11 KiB
SCSS
Raw Normal View History

@use "sass:map";
@use "./variables.scss" as *;
@use "./syntax.scss";
@use "./callouts.scss";
2023-06-01 17:35:31 -04:00
html {
scroll-behavior: smooth;
2023-07-23 11:02:45 -07:00
text-size-adjust: none;
overflow-x: hidden;
2023-08-06 22:07:08 -07:00
width: 100vw;
2023-06-01 17:35:31 -04:00
}
2025-06-03 10:57:07 -07:00
body {
2023-06-01 17:35:31 -04:00
margin: 0;
box-sizing: border-box;
background-color: var(--light);
font-family: var(--bodyFont);
2023-08-12 17:44:35 -07:00
color: var(--darkgray);
2023-06-01 17:35:31 -04:00
}
.text-highlight {
background-color: var(--textHighlight);
2023-06-01 17:35:31 -04:00
padding: 0 0.1rem;
border-radius: 5px;
}
::selection {
background: color-mix(in srgb, var(--tertiary) 60%, rgba(255, 255, 255, 0));
2023-08-24 12:31:15 -07:00
color: var(--darkgray);
}
2023-07-22 17:27:41 -07:00
p,
ul,
text,
a,
tr,
td,
li,
ol,
ul,
.katex,
.math {
2023-06-01 17:35:31 -04:00
color: var(--darkgray);
fill: var(--darkgray);
hyphens: auto;
2023-06-01 17:35:31 -04:00
}
p,
ul,
text,
a,
li,
ol,
ul,
.katex,
.math {
overflow-wrap: anywhere;
/* tr and td removed from list of selectors for overflow-wrap, allowing them to use default 'normal' property value */
}
2023-07-09 19:32:24 -07:00
.math {
&.math-display {
text-align: center;
}
}
article {
> mjx-container.MathJax,
blockquote > div > mjx-container.MathJax {
display: flex;
> svg {
margin-left: auto;
margin-right: auto;
}
}
blockquote > div > mjx-container.MathJax > svg {
margin-top: 1rem;
margin-bottom: 1rem;
}
}
2024-02-17 10:57:59 -08:00
strong {
font-weight: $semiBoldWeight;
}
2023-06-01 17:35:31 -04:00
a {
font-weight: $semiBoldWeight;
2023-06-01 17:35:31 -04:00
text-decoration: none;
2023-07-02 13:08:29 -07:00
transition: color 0.2s ease;
2023-06-01 17:35:31 -04:00
color: var(--secondary);
&:hover {
color: var(--tertiary);
2023-06-01 17:35:31 -04:00
}
&.internal {
2023-06-01 17:35:31 -04:00
text-decoration: none;
background-color: var(--highlight);
padding: 0 0.1rem;
border-radius: 5px;
line-height: 1.4rem;
&.broken {
color: var(--secondary);
opacity: 0.5;
transition: opacity 0.2s ease;
&:hover {
opacity: 0.8;
}
}
&:has(> img) {
background-color: transparent;
border-radius: 0;
padding: 0;
}
&.tag-link {
&::before {
content: "#";
}
}
2023-06-01 17:35:31 -04:00
}
2024-01-16 02:55:32 -05:00
&.external .external-icon {
height: 1ex;
margin: 0 0.15em;
> path {
fill: var(--dark);
}
}
2023-06-01 17:35:31 -04:00
}
fix(flex): respect DesktopOnly and MobileOnly components (#1971) * fix(flex): respect DesktopOnly and MobileOnly components * Use classNames util function * fix(ofm): allow wikilink alias to be empty (#1984) This is in line with Obsidian's behavior. * fix(style): Katex adding scrollbars on non-overflowing content (#1989) * feat(i18n): Bahasa Indonesia translations (#1981) * fix(a11y): increased content-meta text contrast (#1980) * fix(analytics): streamline posthog script loading and event capturing (#1974) * css: adjust color blend for search bg * feat(links): added ofm option to style unresolved or broken links differently (#1992) * feat: add option to disable broken wikilinks * fix(style): update hover color for broken links and introduce new class * feat: add "disableBrokenWikilinks" option to ObsidianFlavoredMarkdown * chore(deps): replace `chalk` and `rimraf` with builtin functions (#1879) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * chore(deps): bump the production-dependencies group across 1 directory with 9 updates (#1996) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Node 22 (#1997) * docs: showcase housekeeping * docs: fix explorernode references (closes #1985) * fix: tz-less date parse in local tz instead of utc (closes #1615) * docs: added note to not forget to add https:// to the plausible-host (for #1337) (#2000) * docs: added note to not forget to add https:// to the plausible-host (for #1337) * Update docs/configuration.md --------- Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> * Updated documentation --------- Co-authored-by: Nizav <106657905+Ni-zav@users.noreply.github.com> Co-authored-by: Aswanth <aswanth366@gmail.com> Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> Co-authored-by: Keisuke ANDO <g.kei0429@gmail.com> Co-authored-by: fl0werpowers <47599466+fl0werpowers@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sebastian Moser <64004956+c2vi@users.noreply.github.com>
2025-06-02 18:36:57 +02:00
.flex-component {
display: flex;
}
.desktop-only {
display: initial;
fix(flex): respect DesktopOnly and MobileOnly components (#1971) * fix(flex): respect DesktopOnly and MobileOnly components * Use classNames util function * fix(ofm): allow wikilink alias to be empty (#1984) This is in line with Obsidian's behavior. * fix(style): Katex adding scrollbars on non-overflowing content (#1989) * feat(i18n): Bahasa Indonesia translations (#1981) * fix(a11y): increased content-meta text contrast (#1980) * fix(analytics): streamline posthog script loading and event capturing (#1974) * css: adjust color blend for search bg * feat(links): added ofm option to style unresolved or broken links differently (#1992) * feat: add option to disable broken wikilinks * fix(style): update hover color for broken links and introduce new class * feat: add "disableBrokenWikilinks" option to ObsidianFlavoredMarkdown * chore(deps): replace `chalk` and `rimraf` with builtin functions (#1879) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * chore(deps): bump the production-dependencies group across 1 directory with 9 updates (#1996) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Node 22 (#1997) * docs: showcase housekeeping * docs: fix explorernode references (closes #1985) * fix: tz-less date parse in local tz instead of utc (closes #1615) * docs: added note to not forget to add https:// to the plausible-host (for #1337) (#2000) * docs: added note to not forget to add https:// to the plausible-host (for #1337) * Update docs/configuration.md --------- Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> * Updated documentation --------- Co-authored-by: Nizav <106657905+Ni-zav@users.noreply.github.com> Co-authored-by: Aswanth <aswanth366@gmail.com> Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> Co-authored-by: Keisuke ANDO <g.kei0429@gmail.com> Co-authored-by: fl0werpowers <47599466+fl0werpowers@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sebastian Moser <64004956+c2vi@users.noreply.github.com>
2025-06-02 18:36:57 +02:00
&.flex-component {
display: flex;
}
@media all and ($mobile) {
fix(flex): respect DesktopOnly and MobileOnly components (#1971) * fix(flex): respect DesktopOnly and MobileOnly components * Use classNames util function * fix(ofm): allow wikilink alias to be empty (#1984) This is in line with Obsidian's behavior. * fix(style): Katex adding scrollbars on non-overflowing content (#1989) * feat(i18n): Bahasa Indonesia translations (#1981) * fix(a11y): increased content-meta text contrast (#1980) * fix(analytics): streamline posthog script loading and event capturing (#1974) * css: adjust color blend for search bg * feat(links): added ofm option to style unresolved or broken links differently (#1992) * feat: add option to disable broken wikilinks * fix(style): update hover color for broken links and introduce new class * feat: add "disableBrokenWikilinks" option to ObsidianFlavoredMarkdown * chore(deps): replace `chalk` and `rimraf` with builtin functions (#1879) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * chore(deps): bump the production-dependencies group across 1 directory with 9 updates (#1996) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Node 22 (#1997) * docs: showcase housekeeping * docs: fix explorernode references (closes #1985) * fix: tz-less date parse in local tz instead of utc (closes #1615) * docs: added note to not forget to add https:// to the plausible-host (for #1337) (#2000) * docs: added note to not forget to add https:// to the plausible-host (for #1337) * Update docs/configuration.md --------- Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> * Updated documentation --------- Co-authored-by: Nizav <106657905+Ni-zav@users.noreply.github.com> Co-authored-by: Aswanth <aswanth366@gmail.com> Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> Co-authored-by: Keisuke ANDO <g.kei0429@gmail.com> Co-authored-by: fl0werpowers <47599466+fl0werpowers@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sebastian Moser <64004956+c2vi@users.noreply.github.com>
2025-06-02 18:36:57 +02:00
&.flex-component {
display: none;
}
display: none;
}
}
.mobile-only {
display: none;
fix(flex): respect DesktopOnly and MobileOnly components (#1971) * fix(flex): respect DesktopOnly and MobileOnly components * Use classNames util function * fix(ofm): allow wikilink alias to be empty (#1984) This is in line with Obsidian's behavior. * fix(style): Katex adding scrollbars on non-overflowing content (#1989) * feat(i18n): Bahasa Indonesia translations (#1981) * fix(a11y): increased content-meta text contrast (#1980) * fix(analytics): streamline posthog script loading and event capturing (#1974) * css: adjust color blend for search bg * feat(links): added ofm option to style unresolved or broken links differently (#1992) * feat: add option to disable broken wikilinks * fix(style): update hover color for broken links and introduce new class * feat: add "disableBrokenWikilinks" option to ObsidianFlavoredMarkdown * chore(deps): replace `chalk` and `rimraf` with builtin functions (#1879) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * chore(deps): bump the production-dependencies group across 1 directory with 9 updates (#1996) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Node 22 (#1997) * docs: showcase housekeeping * docs: fix explorernode references (closes #1985) * fix: tz-less date parse in local tz instead of utc (closes #1615) * docs: added note to not forget to add https:// to the plausible-host (for #1337) (#2000) * docs: added note to not forget to add https:// to the plausible-host (for #1337) * Update docs/configuration.md --------- Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> * Updated documentation --------- Co-authored-by: Nizav <106657905+Ni-zav@users.noreply.github.com> Co-authored-by: Aswanth <aswanth366@gmail.com> Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> Co-authored-by: Keisuke ANDO <g.kei0429@gmail.com> Co-authored-by: fl0werpowers <47599466+fl0werpowers@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sebastian Moser <64004956+c2vi@users.noreply.github.com>
2025-06-02 18:36:57 +02:00
&.flex-component {
display: none;
}
@media all and ($mobile) {
fix(flex): respect DesktopOnly and MobileOnly components (#1971) * fix(flex): respect DesktopOnly and MobileOnly components * Use classNames util function * fix(ofm): allow wikilink alias to be empty (#1984) This is in line with Obsidian's behavior. * fix(style): Katex adding scrollbars on non-overflowing content (#1989) * feat(i18n): Bahasa Indonesia translations (#1981) * fix(a11y): increased content-meta text contrast (#1980) * fix(analytics): streamline posthog script loading and event capturing (#1974) * css: adjust color blend for search bg * feat(links): added ofm option to style unresolved or broken links differently (#1992) * feat: add option to disable broken wikilinks * fix(style): update hover color for broken links and introduce new class * feat: add "disableBrokenWikilinks" option to ObsidianFlavoredMarkdown * chore(deps): replace `chalk` and `rimraf` with builtin functions (#1879) Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * chore(deps): bump the production-dependencies group across 1 directory with 9 updates (#1996) Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Node 22 (#1997) * docs: showcase housekeeping * docs: fix explorernode references (closes #1985) * fix: tz-less date parse in local tz instead of utc (closes #1615) * docs: added note to not forget to add https:// to the plausible-host (for #1337) (#2000) * docs: added note to not forget to add https:// to the plausible-host (for #1337) * Update docs/configuration.md --------- Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> * Updated documentation --------- Co-authored-by: Nizav <106657905+Ni-zav@users.noreply.github.com> Co-authored-by: Aswanth <aswanth366@gmail.com> Co-authored-by: Jacky Zhao <j.zhao2k19@gmail.com> Co-authored-by: Keisuke ANDO <g.kei0429@gmail.com> Co-authored-by: fl0werpowers <47599466+fl0werpowers@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Sebastian Moser <64004956+c2vi@users.noreply.github.com>
2025-06-02 18:36:57 +02:00
&.flex-component {
display: flex;
}
display: initial;
}
}
2023-06-01 17:35:31 -04:00
.page {
max-width: calc(#{map.get($breakpoints, desktop)} + 300px);
margin: 0 auto;
& article {
& > h1 {
font-size: 2rem;
}
2023-07-22 17:27:41 -07:00
& li:has(> input[type="checkbox"]) {
list-style-type: none;
padding-left: 0;
2023-07-25 22:27:59 -07:00
}
& li:has(> input[type="checkbox"]:checked) {
text-decoration: line-through;
text-decoration-color: var(--gray);
color: var(--gray);
}
2023-07-09 19:32:24 -07:00
& li > * {
2023-07-25 22:27:59 -07:00
margin-top: 0;
margin-bottom: 0;
2023-07-09 19:32:24 -07:00
}
p > strong {
color: var(--dark);
}
2023-06-17 14:36:06 -07:00
}
2023-07-02 13:08:29 -07:00
& > #quartz-body {
display: grid;
grid-template-columns: #{map.get($desktopGrid, templateColumns)};
grid-template-rows: #{map.get($desktopGrid, templateRows)};
column-gap: #{map.get($desktopGrid, columnGap)};
row-gap: #{map.get($desktopGrid, rowGap)};
grid-template-areas: #{map.get($desktopGrid, templateAreas)};
2024-10-18 05:50:48 +02:00
@media all and ($tablet) {
grid-template-columns: #{map.get($tabletGrid, templateColumns)};
grid-template-rows: #{map.get($tabletGrid, templateRows)};
column-gap: #{map.get($tabletGrid, columnGap)};
row-gap: #{map.get($tabletGrid, rowGap)};
grid-template-areas: #{map.get($tabletGrid, templateAreas)};
}
@media all and ($mobile) {
grid-template-columns: #{map.get($mobileGrid, templateColumns)};
grid-template-rows: #{map.get($mobileGrid, templateRows)};
column-gap: #{map.get($mobileGrid, columnGap)};
row-gap: #{map.get($mobileGrid, rowGap)};
grid-template-areas: #{map.get($mobileGrid, templateAreas)};
}
2024-10-18 05:50:48 +02:00
@media all and not ($desktop) {
padding: 0 1rem;
}
@media all and ($mobile) {
margin: 0 auto;
}
2023-07-02 13:08:29 -07:00
2023-07-04 17:14:15 -07:00
& .sidebar {
2023-07-02 13:08:29 -07:00
gap: 2rem;
top: 0;
box-sizing: border-box;
padding: $topSpacing 2rem 2rem 2rem;
display: flex;
height: 100vh;
position: sticky;
2023-07-02 13:08:29 -07:00
}
2023-07-04 17:14:15 -07:00
& .sidebar.left {
z-index: 1;
grid-area: grid-sidebar-left;
flex-direction: column;
@media all and ($mobile) {
2023-07-31 05:08:32 +01:00
gap: 0;
align-items: center;
position: initial;
display: flex;
height: unset;
flex-direction: row;
padding: 0;
padding-top: 2rem;
}
2023-07-02 13:08:29 -07:00
}
2023-07-04 17:14:15 -07:00
& .sidebar.right {
grid-area: grid-sidebar-right;
margin-right: 0;
flex-direction: column;
@media all and ($mobile) {
margin-left: inherit;
margin-right: inherit;
}
2024-10-18 05:50:48 +02:00
@media all and not ($desktop) {
position: initial;
height: unset;
width: 100%;
flex-direction: row;
padding: 0;
& > * {
flex: 1;
2025-04-05 11:38:50 -07:00
max-height: 24rem;
}
& > .toc {
display: none;
}
}
2023-07-02 13:08:29 -07:00
}
& .page-header,
& .page-footer {
margin-top: 1rem;
}
& .page-header {
grid-area: grid-header;
margin: $topSpacing 0 0 0;
@media all and ($mobile) {
margin-top: 0;
padding: 0;
}
}
2024-07-09 19:09:31 -07:00
& .center > article {
grid-area: grid-center;
2024-07-09 19:09:31 -07:00
}
& footer {
grid-area: grid-footer;
2023-06-17 14:36:06 -07:00
}
2023-06-01 17:35:31 -04:00
& .center,
& footer {
max-width: 100%;
min-width: 100%;
margin-left: auto;
margin-right: auto;
2024-10-18 05:50:48 +02:00
@media all and ($tablet) {
margin-right: 0;
}
@media all and ($mobile) {
2024-10-18 05:50:48 +02:00
margin-right: 0;
margin-left: 0;
}
}
& footer {
margin-left: 0;
2023-07-02 13:08:29 -07:00
}
2023-06-01 17:35:31 -04:00
}
}
2023-07-09 19:32:24 -07:00
.footnotes {
margin-top: 2rem;
border-top: 1px solid var(--lightgray);
}
2023-07-02 13:08:29 -07:00
input[type="checkbox"] {
transform: translateY(2px);
color: var(--secondary);
2023-07-25 22:27:59 -07:00
border: 1px solid var(--lightgray);
border-radius: 3px;
2023-07-02 13:08:29 -07:00
background-color: var(--light);
2023-07-25 22:27:59 -07:00
position: relative;
margin-inline-end: 0.2rem;
margin-inline-start: -1.4rem;
appearance: none;
width: 16px;
height: 16px;
&:checked {
border-color: var(--secondary);
background-color: var(--secondary);
&::after {
content: "";
position: absolute;
left: 4px;
top: 1px;
width: 4px;
height: 8px;
display: block;
2023-07-31 05:08:32 +01:00
border: solid var(--light);
2023-07-25 22:27:59 -07:00
border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
}
2023-07-02 13:08:29 -07:00
}
2023-06-01 17:35:31 -04:00
blockquote {
2023-06-06 19:48:37 -07:00
margin: 1rem 0;
2023-06-01 17:35:31 -04:00
border-left: 3px solid var(--secondary);
padding-left: 1rem;
transition: border-color 0.2s ease;
}
h1,
h2,
h3,
h4,
h5,
h6,
thead {
font-family: var(--headerFont);
color: var(--dark);
font-weight: revert;
2023-07-09 19:32:24 -07:00
margin-bottom: 0;
2023-06-01 17:35:31 -04:00
article > & > a[role="anchor"] {
2023-06-01 19:48:38 -04:00
color: var(--dark);
background-color: transparent;
2023-06-01 17:35:31 -04:00
}
2023-06-01 19:48:38 -04:00
}
2023-06-01 17:35:31 -04:00
2023-07-22 17:27:41 -07:00
h1,
h2,
h3,
h4,
h5,
h6 {
2023-07-02 13:08:29 -07:00
&[id] > a[href^="#"] {
2023-06-01 19:48:38 -04:00
margin: 0 0.5rem;
opacity: 0;
transition: opacity 0.2s ease;
2023-06-03 15:07:19 -04:00
transform: translateY(-0.1rem);
2023-06-01 19:48:38 -04:00
font-family: var(--codeFont);
user-select: none;
}
2023-07-23 11:02:45 -07:00
2023-06-01 19:48:38 -04:00
&[id]:hover > a {
opacity: 1;
2023-06-01 17:35:31 -04:00
}
&:not([id]) > a[role="anchor"] {
display: none;
}
2023-06-01 17:35:31 -04:00
}
2023-07-23 11:02:45 -07:00
// typography improvements
h1 {
font-size: 1.75rem;
2023-08-08 20:36:24 -07:00
margin-top: 2.25rem;
margin-bottom: 1rem;
2023-07-23 11:02:45 -07:00
}
h2 {
font-size: 1.4rem;
2023-08-08 20:36:24 -07:00
margin-top: 1.9rem;
margin-bottom: 1rem;
2023-07-23 11:02:45 -07:00
}
h3 {
font-size: 1.12rem;
2023-08-08 20:36:24 -07:00
margin-top: 1.62rem;
margin-bottom: 1rem;
2023-07-23 11:02:45 -07:00
}
2023-07-23 11:04:20 -07:00
h4,
h5,
h6 {
2023-07-23 11:02:45 -07:00
font-size: 1rem;
2023-08-08 20:36:24 -07:00
margin-top: 1.5rem;
margin-bottom: 1rem;
2023-07-23 11:02:45 -07:00
}
figure[data-rehype-pretty-code-figure] {
margin: 0;
position: relative;
2023-07-23 11:02:45 -07:00
line-height: 1.6rem;
2023-06-01 17:35:31 -04:00
position: relative;
& > [data-rehype-pretty-code-title] {
2023-06-01 17:35:31 -04:00
font-family: var(--codeFont);
font-size: 0.9rem;
2023-07-09 19:32:24 -07:00
padding: 0.1rem 0.5rem;
2023-06-01 17:35:31 -04:00
border: 1px solid var(--lightgray);
width: fit-content;
2023-06-01 17:35:31 -04:00
border-radius: 5px;
2023-07-09 19:32:24 -07:00
margin-bottom: -0.5rem;
2023-06-01 17:35:31 -04:00
color: var(--darkgray);
}
2023-07-09 19:32:24 -07:00
& > pre {
padding: 0;
2023-07-09 19:32:24 -07:00
}
2023-06-01 19:05:14 -04:00
}
2023-06-01 17:35:31 -04:00
2023-06-01 19:05:14 -04:00
pre {
font-family: var(--codeFont);
padding: 0 0.5rem;
2023-06-01 19:05:14 -04:00
border-radius: 5px;
overflow-x: auto;
2023-06-01 19:05:14 -04:00
border: 1px solid var(--lightgray);
2023-12-28 15:07:59 -08:00
position: relative;
2023-06-01 19:05:14 -04:00
&:has(> code.mermaid) {
2023-07-08 14:36:02 -07:00
border: none;
}
2023-06-01 19:05:14 -04:00
& > code {
background: none;
padding: 0;
2023-06-06 19:48:37 -07:00
font-size: 0.85rem;
2023-06-01 19:05:14 -04:00
counter-reset: line;
counter-increment: line 0;
display: grid;
padding: 0.5rem 0;
overflow-x: auto;
2023-06-01 19:05:14 -04:00
2023-07-09 19:32:24 -07:00
& [data-highlighted-chars] {
background-color: var(--highlight);
border-radius: 5px;
}
& > [data-line] {
2023-06-01 19:05:14 -04:00
padding: 0 0.25rem;
box-sizing: border-box;
border-left: 3px solid transparent;
2023-07-09 19:32:24 -07:00
&[data-highlighted-line] {
2023-06-01 19:05:14 -04:00
background-color: var(--highlight);
border-left: 3px solid var(--secondary);
}
2023-06-01 17:35:31 -04:00
2023-06-01 19:05:14 -04:00
&::before {
content: counter(line);
counter-increment: line;
width: 1rem;
margin-right: 1rem;
display: inline-block;
text-align: right;
2023-07-09 19:32:24 -07:00
color: rgba(115, 138, 148, 0.6);
2023-06-01 17:35:31 -04:00
}
}
2023-07-09 19:32:24 -07:00
2023-07-22 17:27:41 -07:00
&[data-line-numbers-max-digits="2"] > [data-line]::before {
2023-07-09 19:32:24 -07:00
width: 2rem;
}
2023-07-22 17:27:41 -07:00
&[data-line-numbers-max-digits="3"] > [data-line]::before {
2023-07-09 19:32:24 -07:00
width: 3rem;
}
2023-06-01 17:35:31 -04:00
}
}
code {
font-size: 0.9em;
2023-06-19 20:37:45 -07:00
color: var(--dark);
2023-06-01 17:35:31 -04:00
font-family: var(--codeFont);
border-radius: 5px;
padding: 0.1rem 0.2rem;
background: var(--lightgray);
}
2023-07-22 17:27:41 -07:00
tbody,
li,
p {
2023-07-23 11:02:45 -07:00
line-height: 1.6rem;
2023-06-01 17:35:31 -04:00
}
2023-11-11 11:39:56 -08:00
.table-container {
overflow-x: auto;
& > table {
margin: 1rem;
padding: 1.5rem;
border-collapse: collapse;
th,
td {
min-width: 75px;
}
& > * {
line-height: 2rem;
}
2023-08-06 19:52:30 -07:00
}
2023-06-01 17:35:31 -04:00
}
2023-07-22 17:27:41 -07:00
th {
2023-08-06 19:52:30 -07:00
text-align: left;
2023-11-11 11:39:56 -08:00
padding: 0.4rem 0.7rem;
2023-08-06 19:52:30 -07:00
border-bottom: 2px solid var(--gray);
}
td {
2023-11-11 11:39:56 -08:00
padding: 0.2rem 0.7rem;
2023-08-06 19:52:30 -07:00
}
tr {
border-bottom: 1px solid var(--lightgray);
&:last-child {
border-bottom: none;
}
2023-06-01 17:35:31 -04:00
}
img {
max-width: 100%;
border-radius: 5px;
margin: 1rem 0;
2025-01-03 11:27:43 -08:00
content-visibility: auto;
2023-06-01 17:35:31 -04:00
}
p > img + em {
display: block;
transform: translateY(-1rem);
}
hr {
width: 100%;
margin: 2rem auto;
height: 1px;
border: none;
background-color: var(--lightgray);
}
2023-07-22 17:27:41 -07:00
audio,
video {
2023-06-06 00:00:38 -07:00
width: 100%;
border-radius: 5px;
}
2023-06-18 10:47:07 -07:00
.spacer {
2025-03-10 15:13:04 -07:00
flex: 2 1 auto;
2023-06-18 10:47:07 -07:00
}
div:has(> .overflow) {
max-height: 100%;
overflow-y: hidden;
}
2023-07-22 17:27:41 -07:00
ul.overflow,
ol.overflow {
max-height: 100%;
2023-08-19 21:55:09 -07:00
overflow-y: auto;
width: 100%;
2025-03-10 15:13:04 -07:00
margin-bottom: 0;
2023-07-09 19:32:24 -07:00
// clearfix
content: "";
clear: both;
& > li.overflow-end {
2025-04-05 11:38:50 -07:00
height: 0.5rem;
margin: 0;
}
&.gradient-active {
mask-image: linear-gradient(to bottom, black calc(100% - 50px), transparent 100%);
}
}
.transclude {
ul {
padding-left: 1rem;
}
}
.katex-display {
display: initial;
overflow-x: auto;
2024-03-24 15:50:38 -07:00
overflow-y: hidden;
}
.external-embed.youtube,
iframe.pdf {
aspect-ratio: 16 / 9;
height: 100%;
width: 100%;
border-radius: 5px;
}
2024-12-26 21:18:17 -08:00
.navigation-progress {
position: fixed;
top: 0;
left: 0;
width: 0;
height: 3px;
background: var(--secondary);
transition: width 0.2s ease;
z-index: 9999;
}