@import url(https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap);

.theme-dark,
.theme-light {
    --base-h: 360;
    --base-s: 3%;
    --base-l: 6%;
    --accent-h: 175;
}

.row-alt,
.row-hover {
    --table-edge-cell-padding-first: 10px;
}

body {
    --img-grid-fit: cover;
    --img-grid-background: transparent;
}

.lightbox,
.table-100 table,
.table-cards table,
.table-full table {
    width: 100%;
}

.cards table tbody > tr > td img,
.list-cards.markdown-preview-view div > ul .image-embed img {
    aspect-ratio: var(--cards-aspect-ratio);
    object-fit: var(--cards-image-fit);
    max-height: var(--cards-image-height);
    background-color: var(--background-secondary);
    vertical-align: bottom;
}

#cookie-banner,
.theme-light :not(pre) > code[class*="language-"],
.theme-light pre[class*="language-"] {
    background-color: var(--bg2);
}

.hide-title.markdown-preview-view div:nth-child(4) h1,
.markdown-embed-title {
    font-variant: var(--page-title-variant);
    line-height: var(--page-title-line-height);
    font-style: var(--page-title-style);
    font-family: var(--page-title-font);
}

body {
    --font-default: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Roboto",
        "Helvetica", "Arial", "Segoe UI", "Inter", "Apple Color Emoji",
        "Segoe UI Emoji", "Segoe UI Symbol", "Microsoft YaHei Light", sans-serif;
    --font-text-theme: var(--font-default);
    --font-text-size-mobile: calc(0.95rem + 0.3vw);
    --font-primary-sans: var(--font-default);
    --font-secondary-sans: Helvetica, -apple-system, BlinkMacSystemFont,
        Segoe UI, Arial, sans-serif;
    --font-primary-serif: Georgia, "Times New Roman", Times, serif;
    --font-secondary-serif: "Merriweather", "Times New Roman", Times, serif;
    --font-text-size: calc(0.8rem + 0.3vw);
    --font-smallest: 0.8em;
    --font-smaller: 0.875em;
    --font-small: 0.933em;
    --font-inputs: 0.933em;
    --normal-weight: 400;
    --bold-weight: 600;
    --link-weight: inherit;
    --cards-min-width: 180px;
    --cards-max-width: 1fr;
    --cards-mobile-width: 180px;
    --cards-image-height: 400px;
    --cards-padding: 1.2em;
    --cards-image-fit: contain;
    --cards-background: transparent;
    --cards-border-width: 1px;
    --cards-aspect-ratio: auto;
    --cards-columns: repeat(
        auto-fit,
        minmax(var(--cards-min-width), var(--cards-max-width))
    );
    --image-radius: 8px;
    --img-grid-gap: 0.5rem;
    --img-zoom-background: rgba(0, 0, 0, 0.6);
    --img-zoom-max-width: 96%;
    --img-zoom-max-height: 90vh;
    --img-zoom-in-cursor: zoom-in;
    --img-zoom-out-cursor: zoom-out;
    --icon-muted: 0.5;
    --border-width: 1px;
    --folding-offset: 16px;
    --nested-padding: 30px;
    --list-padding: 2em;
    --list-spacing: 0.075em;
}

@media (max-width: 400pt) {
    body {
        --cards-min-width: var(--cards-mobile-width);
        --img-grid-gap: 0.25rem;
    }
}

.theme-light {
    --color-red-rgb: 175, 48, 41;
    --color-orange-rgb: 188, 82, 21;
    --color-yellow-rgb: 173, 131, 1;
    --color-green-rgb: 102, 128, 11;
    --color-cyan-rgb: 36, 131, 123;
    --color-blue-rgb: 32, 94, 166;
    --color-purple-rgb: 94, 64, 157;
    --color-pink-rgb: 160, 47, 111;
    --color-red: #af3029;
    --color-orange: #bc5215;
    --color-yellow: #ad8301;
    --color-green: #66800b;
    --color-cyan: #24837b;
    --color-blue: #205ea6;
    --color-purple: #5e409d;
    --color-pink: #a02f6f;
    --accent-s: 57%;
    --accent-l: 33%;
    --bg1: #fffcf0;
    --bg2: #f2f0e5;
    --bg3: rgba(16, 15, 15, 0.05);
    --ui1: #e6e4d9;
    --ui2: #dad8ce;
    --ui3: #cecdc3;
    --tx1: #100f0f;
    --tx2: #6f6e69;
    --tx3: #b7b5ac;
    --hl1: rgba(187, 220, 206, 0.3);
    --hl2: rgba(247, 209, 61, 0.3);
    --mono100: black;
    --mono0: white;
    --interactive-normal: var(--bg1);
    --interactive-accent-rgb: 220, 220, 220;
    --text-highlight-bg: rgba(255, 225, 0, 0.5);
    --text-highlight-bg-active: rgba(0, 0, 0, 0.1);
    --background-modifier-error: rgba(255, 0, 0, 0.14);
    --background-modifier-error-hover: rgba(255, 0, 0, 0.08);
    --shadow-color: rgba(0, 0, 0, 0.1);
    --btn-shadow-color: rgba(0, 0, 0, 0.05);
}

.theme-dark {
    --color-red-rgb: 209, 77, 65;
    --color-orange-rgb: 218, 112, 44;
    --color-yellow-rgb: 208, 162, 21;
    --color-green-rgb: 135, 154, 57;
    --color-cyan-rgb: 58, 169, 159;
    --color-blue-rgb: 67, 133, 190;
    --color-purple-rgb: 139, 126, 200;
    --color-pink-rgb: 206, 93, 151;
    --color-red: #d14d41;
    --color-orange: #da702c;
    --color-yellow: #d0a215;
    --color-green: #879a39;
    --color-cyan: #3aa99f;
    --color-blue: #4385be;
    --color-purple: #8b7ec8;
    --color-pink: #ce5d97;
    --accent-s: 49%;
    --accent-l: 45%;
    --bg1: #292e3b;
    --bg2: #1a1f2b;
    --bg3: rgba(254, 252, 240, 0.05);
    --ui1: #282726;
    --ui2: #343331;
    --ui3: #403e3c;
    --tx1: #cecdc3;
    --tx2: #878580;
    --tx3: #575653;
    --hl1: rgba(30, 95, 91, 0.3);
    --hl2: rgba(213, 159, 17, 0.3);
    --mono100: white;
    --mono0: black;
    --interactive-normal: var(--bg3);
    --interactive-accent-rgb: 66, 66, 66;
    --text-highlight-bg: rgba(255, 177, 80, 0.3);
    --text-highlight-bg-active: rgba(255, 255, 255, 0.1);
    --background-modifier-error: rgba(255, 20, 20, 0.12);
    --background-modifier-error-hover: rgba(255, 20, 20, 0.18);
    --background-modifier-box-shadow: rgba(0, 0, 0, 0.3);
    --shadow-color: rgba(0, 0, 0, 0.3);
    --btn-shadow-color: rgba(0, 0, 0, 0.2);
    --interactive-accent: #f8c537;
    --interactive-accent-rgb: #f8c537;
}

.theme-dark,
.theme-light {
    --h1-color: var(--text-normal);
    --h2-color: var(--text-normal);
    --h3-color: var(--text-normal);
    --h4-color: var(--text-normal);
    --h5-color: var(--text-normal);
    --h6-color: var(--text-muted);
    --background-primary: var(--bg1);
    --background-primary-alt: var(--bg2);
    --background-secondary: var(--bg2);
    --background-secondary-alt: var(--bg1);
    --background-tertiary: var(--bg3);
    --background-table-rows: var(--bg2);
    --background-modifier-form-field: var(--bg1);
    --background-modifier-form-field-highlighted: var(--bg1);
    --background-modifier-accent: var(--ax3);
    --background-modifier-border: var(--ui1);
    --background-modifier-border-hover: var(--ui2);
    --background-modifier-border-focus: var(--ui3);
    --background-modifier-success: var(--color-green);
    --background-divider: var(--ui1);
    --interactive-hover: var(--ui1);
    --interactive-accent: var(--ax3);
    --interactive-accent-hover: var(--ax3);
    --quote-opening-modifier: var(--ui2);
    --modal-border: var(--ui2);
    --icon-color: var(--tx2);
    --icon-color-hover: var(--tx2);
    --icon-color-active: var(--tx1);
    --icon-hex: var(--mono0);
    --text-normal: var(--tx1);
    --text-bold: var(--tx1);
    --text-italic: var(--tx1);
    --text-muted: var(--tx2);
    --text-faint: var(--tx3);
    --text-accent: var(--ax1);
    --text-accent-hover: var(--ax2);
    --text-on-accent: white;
    --text-selection: var(--hl1);
    --text-code: var(--tx4);
    --text-error: var(--color-red);
    --text-blockquote: var(--tx2);
    --title-color: var(--tx1);
    --title-color-inactive: var(--tx2);
}

.alt-title .page-header,
.hide-title .page-header {
    display: none;
}

button.mod-cta {
    background-color: var(--interactive-accent);
    color: var(--text-normal);
}

.plugin-tabs .stayopen .view-header {
    border-bottom: 2px solid var(--interactive-accent) !important;
}

.hide-title.markdown-preview-view div:nth-child(4) h1 {
    margin-top: 0.25em;
    letter-spacing: -0.015em;
    font-size: var(--page-title-size);
    color: var(--page-title-color);
    font-weight: var(--page-title-weight);
    border: none;
}

.h1-borders h1 {
    border-bottom: 1px solid var(--ui1);
    padding-bottom: 0.5em;
}

.table-col-1-150.markdown-preview-view td:first-child {
    width: 150px;
}

.table-col-1-200.markdown-preview-view td:first-child {
    width: 200px;
}

.table-small table {
    --table-text-size: 85%;
}

.table-tiny table {
    --table-text-size: 75%;
}

.row-hover {
    --table-row-background-hover: hsla(var(--accent-h), 50%, 80%, 20%);
}

.row-alt {
    --table-row-alt-background: var(--background-table-rows);
}

.col-alt .markdown-rendered:not(.cards) {
    --table-column-alt-background: var(--background-table-rows);
}

.table-tabular table {
    font-variant-numeric: tabular-nums;
}

.table-lines {
    --table-border-width: var(--border-width);
    --table-header-border-width: var(--border-width);
    --table-column-first-border-width: var(--border-width);
    --table-column-last-border-width: var(--border-width);
    --table-row-last-border-width: var(--border-width);
    --table-edge-cell-padding: 10px;
}

.table-nowrap {
    --table-white-space: nowrap;
}

.table-nowrap .table-wrap,
.trim-cols {
    --table-white-space: normal;
}

.table-numbers table {
    counter-reset: section;
}

.table-numbers table > thead > tr > th:first-child::before {
    content: " ";
    padding-right: 0.5em;
    display: inline-block;
    min-width: 2em;
}

.table-numbers table > tbody > tr > td:first-child::before {
    counter-increment: section;
    content: counter(section) " ";
    text-align: center;
    padding-right: 0.5em;
    display: inline-block;
    min-width: 2em;
    color: var(--text-faint);
    font-variant-numeric: tabular-nums;
}

.row-lines table tbody > tr:last-child > td,
.row-lines-off .table-view-table > tbody > tr > td,
.row-lines-off table tbody > tr:last-child > td,
.row-lines-off table tbody > tr > td {
    border-bottom: none;
}

.row-lines .table-view-table > tbody > tr > td,
.row-lines table tbody > tr > td {
    border-bottom: var(--table-border-width) solid var(--table-border-color);
}

.col-lines .table-view-table thead > tr > th:not(:last-child),
.col-lines .table-view-table > tbody > tr > td:not(:last-child),
.col-lines table tbody > tr > td:not(:last-child) {
    border-right: var(--table-border-width) solid
        var(--background-modifier-border);
}

.theme-dark .row-hover,
.theme-dark.row-hover {
    --table-row-background-hover: hsla(var(--accent-h), 30%, 40%, 20%);
}

img[src$="#outline"],
span[src$="#outline"] img {
    border: 1px solid var(--ui1);
}

.published-container img[src$="#interface"],
.published-container span[src$="#interface"] img {
    border: 1px solid var(--ui1);
    box-shadow:
        0 0.5px 0.9px rgba(0, 0, 0, 0.021),
        0 1.3px 2.5px rgba(0, 0, 0, 0.03),
        0 3px 6px rgba(0, 0, 0, 0.039),
        0 10px 20px rgba(0, 0, 0, 0.06);
    margin-top: 10px;
    margin-bottom: 15px;
    border-radius: var(--radius-m);
}

.theme-dark img[src$="#invert"],
.theme-dark span[src$="#invert"] img {
    filter: invert(1) hue-rotate(180deg);
    mix-blend-mode: screen;
}

.theme-light img[src$="#invertW"],
.theme-light span[src$="#invertW"] img {
    filter: invert(1) hue-rotate(180deg);
}

img[src$="#circle"],
span[src$="#circle"] img {
    border-radius: 50%;
    aspect-ratio: 1/1;
}

body {
    --img-grid-gap: 0.5rem;
}

.img-grid-ratio {
    --image-grid-fit: contain;
}

.img-grid .image-embed.is-loaded {
    line-height: 0;
    display: flex;
    align-items: stretch;
}

.img-grid .image-embed.is-loaded img {
    background-color: var(--image-grid-background);
}

.img-grid .image-embed.is-loaded img:active {
    background-color: transparent;
}

.img-grid .markdown-preview-section > div:has(img) .image-embed ~ br,
.img-grid .markdown-preview-section > div:has(img) img ~ br,
.img-grid .markdown-preview-section > div:has(img) p:empty {
    display: none;
}

.img-grid .markdown-preview-section div:has(> .image-embed ~ .image-embed),
.img-grid .markdown-preview-section div:has(> img ~ img),
.img-grid .markdown-preview-section p:has(> .image-embed ~ .image-embed),
.img-grid .markdown-preview-section p:has(> .image-embed ~ img),
.img-grid .markdown-preview-section p:has(> img ~ .image-embed),
.img-grid .markdown-preview-section p:has(> img ~ img) {
    display: grid;
    margin-block-start: var(--img-grid-gap);
    margin-block-end: var(--img-grid-gap);
    grid-column-gap: var(--img-grid-gap);
    grid-row-gap: 0;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}

.img-grid
    .markdown-preview-section
    div:has(> .image-embed ~ .image-embed)
    > img,
.img-grid .markdown-preview-section div:has(> img ~ img) > img,
.img-grid .markdown-preview-section p:has(> .image-embed ~ .image-embed) > img,
.img-grid .markdown-preview-section p:has(> .image-embed ~ img) > img,
.img-grid .markdown-preview-section p:has(> img ~ .image-embed) > img,
.img-grid .markdown-preview-section p:has(> img ~ img) > img {
    object-fit: var(--image-grid-fit);
    align-self: stretch;
}

.img-grid
    .markdown-preview-section
    div:has(> .image-embed ~ .image-embed)
    > .internal-embed
    img,
.img-grid .markdown-preview-section div:has(> img ~ img) > .internal-embed img,
.img-grid
    .markdown-preview-section
    p:has(> .image-embed ~ .image-embed)
    > .internal-embed
    img,
.img-grid
    .markdown-preview-section
    p:has(> .image-embed ~ img)
    > .internal-embed
    img,
.img-grid
    .markdown-preview-section
    p:has(> img ~ .image-embed)
    > .internal-embed
    img,
.img-grid .markdown-preview-section p:has(> img ~ img) > .internal-embed img {
    object-fit: var(--image-grid-fit);
    align-self: center;
}

.img-grid .markdown-preview-section > div:has(img) > p {
    display: grid;
    margin-block-start: var(--img-grid-gap);
    margin-block-end: var(--img-grid-gap);
    grid-column-gap: var(--img-grid-gap);
    grid-row-gap: 0;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}

.img-grid .markdown-preview-section > div:has(img) > p > br {
    display: none;
}

.img-zoom .image-embed {
    cursor: zoom-in;
}

.lightbox {
    z-index: 99999;
    position: fixed;
    max-width: 100%;
    top: 0;
    left: 0;
    background: var(--img-zoom-background);
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.theme-dark,
.theme-light {
    --background-reader: var(--background-primary);
    --blockquote-font-style: italic;
    --blockquote-border-thickness: 1px;
    --embed-border-left: 1px solid var(--blockquote-border-color);
    --link-external-decoration: underline;
    --link-decoration: underline;
    --link-unresolved-color: var(--text-faint);
    --link-unresolved-decoration-style: wavy;
    --logo-width: 100%;
    --text-selection: var(--interactive-accent);
}

.site-footer,
.sliding-windows .render-container {
    background-color: var(--background-primary);
}

.lightbox .internal-embed.image-embed {
    max-width: var(--img-zoom-max-width);
    max-height: var(--img-zoom-max-height);
    cursor: var(--img-zoom-in-cursor);
    display: flex;
}

.lightbox img {
    cursor: var(--img-zoom-out-cursor);
    object-fit: contain;
    width: auto;
}

.cards table {
    --table-width: 100%;
    --table-edge-cell-padding-first: calc(var(--cards-padding) / 2);
    --table-edge-cell-padding-last: calc(var(--cards-padding) / 2);
    --table-cell-padding: calc(var(--cards-padding) / 3)
        calc(var(--cards-padding) / 2);
    line-height: 1.3;
}

.cards table tbody {
    clear: both;
    padding: 0.5rem 0;
    display: grid;
    grid-template-columns: var(--cards-columns);
    grid-column-gap: 0.75rem;
    grid-row-gap: 0.75rem;
}

.cards table > tbody > tr {
    background-color: var(--cards-background);
    border: var(--cards-border-width) solid var(--background-modifier-border);
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0 0 calc(var(--cards-padding) / 3) 0;
    border-radius: 6px;
    overflow: hidden;
    transition: box-shadow 0.15s linear;
    max-width: var(--cards-max-width);
}

.cards table > tbody > tr:hover {
    border: var(--cards-border-width) solid
        var(--background-modifier-border-hover);
    box-shadow:
        0 4px 6px 0 rgba(0, 0, 0, 0.05),
        0 1px 3px 1px rgba(0, 0, 0, 0.025);
    transition: box-shadow 0.15s linear;
}

.cards table tbody > tr > td:first-child {
    font-weight: var(--bold-weight);
    border: none;
}

.cards table tbody > tr > td:first-child a,
.footnote-link:hover .footnote-tooltip,
.list-cards.markdown-preview-view div ul ul > li {
    display: block;
}

.cards table tbody > tr > td:last-child,
.markdown-rendered.clean-table tbody > tr > td,
.markdown-rendered.clean-table thead > tr > th {
    border: none;
}

.cards table tbody > tr > td:not(:first-child) {
    font-size: calc(var(--table-text-size) * 0.9);
    color: var(--text-muted);
}

.cards table tbody > tr > td > * {
    padding: calc(var(--cards-padding) / 3) 0;
}

.cards table tbody > tr > td:not(:last-child):not(:first-child) {
    padding: 4px 0;
    border-bottom: 1px solid var(--background-modifier-border);
    width: calc(100% - var(--cards-padding));
    margin: 0 calc(var(--cards-padding) / 2);
}

.cards table tbody > tr > td a,
.site-header-text:hover {
    text-decoration: none;
}

.cards table tbody > tr > td > button {
    width: 100%;
    margin: calc(var(--cards-padding) / 2) 0;
}

.cards table tbody > tr > td:last-child > button {
    margin-bottom: calc(var(--cards-padding) / 6);
}

.cards table tbody > tr > td > ul {
    width: 100%;
    padding: 0.25em 0 !important;
    margin: 0 auto !important;
}

.cards table tbody > tr > td:has(img) {
    padding: 0 !important;
    background-color: var(--background-secondary);
    display: block;
    margin: 0;
    width: 100%;
}

.cards table tbody > tr > td img {
    width: 100%;
}

.callout[data-callout="big-sans"] .callout-title,
.callout[data-callout="big-serif"] .callout-title,
.callout[data-callout="cite"] .callout-icon,
.callout[data-callout="cite"] .callout-title,
.callout[data-callout="clean"] > .callout-title,
.callout[data-callout="infobox"] .callout-title,
.callout[data-callout="infobox"] .callout-title .svg-icon,
.callout[data-callout="languages"] .callout-content,
.callout[data-callout="noteinfo"] .callout-title,
.callout[data-callout="small"] .callout-title,
.cards table thead,
.list-cards.markdown-preview-view .list-bullet,
.list-cards.markdown-preview-view .list-collapse-indicator,
.list-cards.markdown-preview-view.markdown-rendered.show-indentation-guide
    li
    > ul::before,
.site-header-logo,
.tooltip {
    display: none;
}

.list-cards.markdown-preview-view div > ul {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: var(--cards-columns);
    padding: 0;
    line-height: var(--line-height-tight);
}

.list-cards.markdown-preview-view div > ul > li {
    background-color: var(--cards-background);
    padding: calc(var(--cards-padding) / 2);
    border-radius: var(--radius-s);
    border: var(--cards-border-width) solid var(--background-modifier-border);
    overflow: hidden;
}

.list-cards.markdown-preview-view div > ul .image-embed {
    padding: 0;
    display: block;
    background-color: var(--background-secondary);
    border-radius: var(--image-radius);
}

.list-cards.markdown-preview-view div > ul > li > a {
    --link-decoration: none;
    --link-external-decoration: none;
    font-weight: var(--bold-weight);
}

.list-cards.markdown-preview-view div ul > li:hover {
    border-color: var(--background-modifier-border-hover);
}

.list-cards.markdown-preview-view div ul ul {
    display: block;
    width: 100%;
    color: var(--text-muted);
    font-size: var(--font-smallest);
    margin: calc(var(--cards-padding) / -4) 0;
    padding: calc(var(--cards-padding) / 2) 0;
}

.list-cards.markdown-preview-view div ul ul ul {
    padding-bottom: calc(var(--cards-padding) / 4);
}

.cards.cards-16-9,
.list-cards.cards-16-9 {
    --cards-aspect-ratio: 16/9;
}

.cards.cards-1-1,
.list-cards.cards-1-1 {
    --cards-aspect-ratio: 1/1;
}

.cards.cards-2-1,
.list-cards.cards-2-1 {
    --cards-aspect-ratio: 2/1;
}

.cards.cards-2-3,
.list-cards.cards-2-3 {
    --cards-aspect-ratio: 2/3;
}

.cards.cards-cols-1,
.list-cards.cards-cols-1 {
    --cards-columns: repeat(1, minmax(0, 1fr));
}

.cards.cards-cols-2,
.list-cards.cards-cols-2 {
    --cards-columns: repeat(2, minmax(0, 1fr));
}

.cards.cards-cover,
.list-cards.cards-cover {
    --cards-image-fit: cover;
}

.cards.cards-align-bottom table.dataview tbody > tr > td:last-child,
.list-cards.cards-align-bottom table.dataview tbody > tr > td:last-child {
    margin-top: auto;
}

@media (max-width: 400pt) {
    body {
        --img-grid-gap: 0.25rem;
    }

    .cards table.dataview tbody > tr > td:not(:first-child) {
        font-size: 80%;
    }
}

@media (min-width: 400pt) {
    .cards-cols-3 {
        --cards-columns: repeat(3, minmax(0, 1fr));
    }

    .cards-cols-4 {
        --cards-columns: repeat(4, minmax(0, 1fr));
    }

    .cards-cols-5 {
        --cards-columns: repeat(5, minmax(0, 1fr));
    }

    .cards-cols-6 {
        --cards-columns: repeat(6, minmax(0, 1fr));
    }

    .cards-cols-7 {
        --cards-columns: repeat(7, minmax(0, 1fr));
    }

    .cards-cols-8 {
        --cards-columns: repeat(8, minmax(0, 1fr));
    }
}

.markdown-preview-view code {
    color: var(--tx4);
    font-size: 0.85em;
}

iframe,
img {
    border-radius: var(--image-radius);
}

input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="text"] {
    border-color: var(--ui1);
}

input[type="email"]:hover,
input[type="number"]:hover,
input[type="password"]:hover,
input[type="search"]:hover,
input[type="text"]:hover {
    border-color: var(--ui2);
}

input[type="email"]:active,
input[type="email"]:focus,
input[type="number"]:active,
input[type="number"]:focus,
input[type="password"]:active,
input[type="password"]:focus,
input[type="search"]:active,
input[type="search"]:focus,
input[type="text"]:active,
input[type="text"]:focus {
    border-color: var(--ui2);
    box-shadow: 0 0 0 2px var(--ui2);
}

ol > li::marker,
ul > li::marker {
    color: var(--tx3);
}

.markdown-preview-view .tag:not(.token) {
    background-color: transparent;
    border: 1px solid var(--ui1);
    color: var(--tx2);
    font-size: var(--font-small);
}

body {
    --table-header-border-width: 0;
    --table-column-first-border-width: 0;
    --table-column-last-border-width: 0;
    --table-row-last-border-width: 0;
    --table-edge-cell-padding-first: 0;
    --table-edge-cell-padding-last: 10px;
    --table-cell-padding: 4px 10px;
    --table-header-size: var(--table-text-size);
    --tag-color: #ff4d85;
    --tag-size: var(--font-smallest);
    --tag-radius: var(--radius-s);
    --tag-padding-x: 8px;
    --tag-padding-y: 2px;
    --h1-size: calc(2.8em + 0.55vw);
    --h2-size: calc(1.4em + 0.35vw);
    --h3-size: calc(1.3em + 0.25vw);
    --h4-size: calc(1.2em + 0.15vw);
    --h5-size: calc(1.1em + 0.2vw);
    --h6-size: calc(0.8em + 0.1vw);
    --h1-weight: 100;
    --h6-weight: 400;
    --h2-weight: 300;
    --h3-weight: 300;
    --h4-weight: 300;
    --h5-weight: 300;
    --h1-line-height: 1;
    --h2-line-height: 1.1;
    --h3-line-height: var(--line-height-tight);
    --h4-line-height: var(--line-height-tight);
    --h5-line-height: 1.15;
    --h6-line-height: var(--line-height-tight);
    --h6-variant: all-small-caps;
}

body.theme-light {
    --color-base-55: #a3a199;
    --color-base-80: #555450;
    --tag-background: var(--background-secondary);
    --tag-background-hover: var(--color-base-50);
    --sidebar-left-border-width: 0px;
    --sidebar-right-border-width: 0px;
}

body.theme-dark {
    --color-base-55: #63615d;
    --color-base-80: #abaaa4;
    --tag-background: #8cd1dc;
    --tag-background-hover: #60b8e4;
    /* --sidebar-left-border-width: 1px;
    --sidebar-right-border-width: 1px; */
}

.theme-light {
    --blockquote-border-color: var(--color-base-25);
    --color-ligthorange: rgb(96, 184, 228);
    --color-faintorange: rgb(204, 146, 83);
    --color-darkorange: rgb(211, 117, 13);
    --color-wine: #9a4a42;
    --color-oldpink: #ac6a8c;
    --color-wine-rgb: 154, 74, 66;
    --color-oldpink-rgb: 172, 106, 140;
    --color-gray-rgb: 111, 110, 105;
    --color-base: 0, 0, 0;
    --code-background: #efefe8;
    --component-title-color: var(--text-normal);
    --graph-node: var(--color-ligthorange);
    --graph-node-unresolved: rgba(0, 0, 0, 1);
    --graph-text: var(--color-base-60);

    --graph-node-Object: #ff4d85; /* Червоний */
    --graph-node-System: #4d59ff; /* Синій */
    --graph-node-Role-QA: #4dff94; /* Зелений */

    --img-zoom-color-background: rgba(250, 250, 244, 0.85);
    --interactive-accent: var(--color-darkorange);
    --link-color: rgb(16, 15, 15);
    --link-external-color: rgb(16, 15, 15);
    --link-decoration-thickness: auto;
    --sidebar-right-background: var(--color-base-10);
    --text-light: var(--color-base-00);
    --text-accent: var(--color-faintorange);
    --text-accent-hover: var(--color-ligthorange);
}

/* Фарбування вузлів у графі за тегами */
.graph-view.color-fill [data-tag-name*="Object"] {
    --graph-node: var(--graph-node-Object) !important;
}

.graph-view.color-fill [data-tag-name*="System"] {
    --graph-node: var(--graph-node-System) !important;
}

.graph-view.color-fill [data-tag-name*="Role-QA"] {
    --graph-node: var(--graph-node-Role-QA) !important;
}

.graph-view.color-fill g[data-tag-name*="Object"] circle {
    fill: var(--graph-node-Object) !important;
}

.theme-dark {
    --background-modifier-border: #3e424d;
    --blockquote-border-color: var(--color-base-50);
    --color-wine: #b34b42;
    --color-oldpink: #a02f6f;
    --color-wine-rgb: 179, 75, 66;
    --color-oldpink-rgb: 174, 88, 132;
    --color-gray-rgb: 218, 216, 206;
    --color-base: 255, 255, 255;
    --code-background: var(--background-secondary);

    --graph-controls-width: 100px;

    --graph-node: #dae4ea;
    --graph-node-focused: #60b8e4;

    --graph-text: rgba(136, 159, 170, 1);
    --graph-line: rgba(118, 117, 117, 0.6);
    --graph-node-unresolved: #fd7878;
    --interactive-accent: #4690b5;
    --link-color: rgb(206, 205, 195);
    --link-external-color: rgb(206, 205, 195);
    --link-decoration-thickness: from-font;
    --link-unresolved-decoration-color: var(--text-faint);
    --img-zoom-color-background: rgba(0, 0, 0, 0.85);
    --text-accent: rgb(96 184 228);
    --text-accent-hover: #50d9fc;
    --text-light: var(--color-base-100);
}

.published-container {
    --outline-heading-color-active: var(--tx1);
    --sidebar-left-background: var(--bg2);
    --background-color: var(--background-primary);
    --code-radius: var(--radius-m);
    --footer-display: fixed;
    --page-title-size: 14px;
    --page-title-weight: 500;
    --page-title-line-height: 1.1;
    --page-title-variant: all-small-caps;
    --page-title-color: var(--color-base-60);
    --page-title-style: normal;
    --sidebar-right-background: var(--background-primary);
    --site-name-size: 14px;
    --site-name-color: var(--text-accent);
    --site-name-color-hover: var(--color-base-80);
    --site-name-weight: 600;
}

html {
    -webkit-text-size-adjust: 100%;
}

::-moz-selection {
    color: #fff;
}

::selection {
    color: #fff;
}

.site-body-center-column {
    position: relative;
    box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.1);
}

.page-header {
    letter-spacing: 0;
}

.publish-renderer:has(:active) {
    z-index: 99999;
}

.site-header {
    border-bottom: 0;
}

.sliding-windows .publish-renderer,
.sliding-windows .site-body-right-column {
    box-shadow: none;
}

button .external-link {
    background-image: none;
}

.site-body-left-column-site-logo img:hover,
button {
    cursor: pointer;
}

button.center {
    display: flex;
}

button:not(.clickable-icon) {
    color: var(--background-primary);
    background-color: var(--interactive-accent);
    padding: 15px;
    margin: 40px auto;
}

button:not(.clickable-icon):hover {
    background-color: var(--text-accent);
    color: var(--background-primary);
}

button:not(.clickable-icon) a.external-link,
button:not(.clickable-icon) a.internal-link {
    color: var(--background-primary);
    padding: 10px 30px;
    border: 0;
    margin: 0 auto;
    text-decoration: none;
    font-weight: 700;
}

button:not(.clickable-icon) a.external-link:hover,
button:not(.clickable-icon) a.internal-link:hover {
    color: var(--background-primary);
    text-decoration: none;
}

@media screen and (min-width: 751px) {
    #toggle-sidebar-btn {
        margin: 0;
        width: 30px;
        background: 0 0;
        padding: 5px;
        position: fixed;
        right: 5px;
        top: 5px;
        border-radius: 50%;
        border: 0;
        box-shadow: none;
        background: var(--background-primary);
        opacity: 1;
        color: var(--component-title-color);
        z-index: 10;
    }

    #chooser {
        position: absolute;
        bottom: 5px;
        right: 0;
        background-color: var(--background-color);
        padding: 7px 10px 2px;
        border-radius: 20px;
    }

    #chooser a {
        color: var(--text-muted);
        margin-right: 5px;
    }

    #chooser a:hover {
        color: var(--text-accent-hover);
    }

    #chooser a:last-child {
        margin-right: 0;
    }

    #chooser svg {
        width: 18px;
        height: auto;
    }

    .sliding-windows #toggle-sidebar-btn {
        right: 287px;
        top: 25px;
    }

    #toggle-sidebar-btn:hover {
        color: var(--color-base-100);
        background: var(--background-secondary);
        cursor: pointer;
    }

    .theme-dark #toggle-sidebar-btn {
        top: 25px;
    }

    .site-body:has(.reader-view) .publish-renderer {
        min-width: 800px !important;
    }

    .site-body:has(.reader-view) #toggle-sidebar-btn {
        color: var(--component-title-color);
    }

    .site-body:has(.reader-view) #toggle-sidebar-btn::before {
        content: "Press r to switch view";
        position: absolute;
        top: 82px;
        right: -46px;
        transform: rotate(90deg);
        color: var(--text-faint);
        font-size: var(--font-smaller);
    }

    .site-body:has(.reader-view) .published-container .markdown-rendered h1 {
        margin-top: 0;
    }

    .site-body:has(.reader-view) .markdown-preview-view {
        font-size: calc(0.8rem + 0.3vw);
    }

    .site-body:has(.reader-view) #toggle-sidebar-btn {
        top: 5px;
        background: 0 0;
    }

    .site-body:has(.reader-view) #toggle-sidebar-btn:hover {
        background: 0 0;
    }

    .sliding-windows .site-body:has(.reader-view) #toggle-sidebar-btn {
        right: 5px;
    }

    .published-container:has(.reader-view) .site-header {
        display: block;
        position: fixed;
        top: 5px;
        right: 30px;
        z-index: 10;
        height: auto;
        padding: 5px 10px;
    }

    .sliding-windows
        .site-body:has(.reader-view)
        .markdown-preview-view:not(.internal-embed .markdown-preview-view) {
        padding-top: 40px;
    }

    .published-container:has(.reader-view)
        .site-header
        .site-header-text::after {
        display: none;
    }

    .sliding-windows:has(.reader-view) .publish-renderer,
    .sliding-windows:has(.reader-view) .render-container,
    body:has(.reader-view) {
        background-color: var(--background-reader);
    }

    .sliding-windows:has(.reader-view.white) .publish-renderer,
    .sliding-windows:has(.reader-view.white) .render-container,
    body:has(.reader-view.white) {
        background-color: #fff;
    }

    .site-body:has(.reader-view) .render-container-inner {
        margin: 0 auto;
    }

    body:not(.sliding-windows):has(.reader-view)
        .is-readable-line-width.has-outline.has-navigation
        .publish-renderer
        > .markdown-preview-view
        > .markdown-preview-sizer {
        margin-right: inherit;
    }

    body:not(.sliding-windows):has(.reader-view)
        .publish-renderer
        > .markdown-preview-view
        > .markdown-preview-sizer {
        margin: 0 auto;
    }

    .sliding-windows div.hover-popover.is-loaded .publish-renderer {
        width: inherit !important;
        flex: inherit !important;
    }

    .sliding-windows
        .published-container.has-graph
        .site-body:has(.reader-view)
        .site-body-center-column,
    .sliding-windows .site-body:has(.reader-view) .site-body-center-column {
        padding-right: 40px;
    }

    .site-body:has(.reader-view) .site-body-center-column {
        padding-left: 0;
        box-shadow: none;
    }

    .site-body:has(.reader-view) .graph-view-outer .published-section-header,
    .site-body:has(.reader-view) .mod-footer,
    .site-body:has(.reader-view) .nav-view-outer,
    .site-body:has(.reader-view) .outline-view-outer,
    .site-body:has(.reader-view) .page-header,
    .site-body:has(.reader-view) .search-view-container,
    .site-body:has(.reader-view) .site-body-left-column,
    .site-body:has(.reader-view) .site-body-left-column-site-logo,
    .site-body:has(.reader-view) .site-body-left-column-site-name,
    .site-body:has(.reader-view) .site-body-right-column,
    .site-body:has(.reader-view) .site-footer {
        display: none;
    }
}

.publish-article-heading .clickable-icon,
.site-footer {
    position: absolute;
}

.site-body:has(.reader-view) h1 {
    font-size: calc(3.4em + 0.55vw);
}

@media screen and (max-width: 750px) {
    #toggle-sidebar-btn {
        display: none;
    }

    .site-body:has(.reader-view) .site-body-left-column {
        display: flex !important;
    }

    .markdown-rendered .callout-content ol > li,
    .markdown-rendered .callout-content ul > li {
        margin-inline-start: 1.25em;
    }
}

::-webkit-scrollbar-track:has(.reader-view) {
    background: rgba(14, 13, 13, 0);
}

.published-container .backlinks {
    margin-top: 100px;
    margin-bottom: 100px;
}

.backlink-items-container {
    font-size: 16px;
}

.callout[data-callout="small"]
    .callout-content
    .markdown-rendered
    .tag:not(.token),
.footnote-ref,
.markdown-preview-view .caption,
.markdown-preview-view .smalltext,
.markdown-preview-view .smalltext *,
.markdown-rendered.small-table table td,
.smalltext.smalltext.list-cards.markdown-preview-view div > ul > li,
span.inline-note {
    font-size: var(--font-smallest);
}

.backlinks .internal-link,
.theme-dark .markdown-rendered.clean-table tbody tr > td:first-child,
.theme-dark .markdown-rendered.clean-table thead tr > th:first-child {
    color: var(--text-muted);
}

.theme-dark .invert {
    filter: invert();
}

.theme-light .blend,
.theme-light img[src$="#blend"],
.theme-light img[src$="#invert"],
.theme-light span[src$="#blend"] img,
.theme-light span[src$="#invert"] img {
    mix-blend-mode: multiply;
}

.theme-dark .blend {
    mix-blend-mode: normal;
}

div.hover-popover.is-loaded h1,
div.hover-popover.is-loaded h2 {
    margin-block-end: 0.3em !important;
}

#cookie-banner {
    position: fixed;
    bottom: 0;
    width: 100%;
    text-align: center;
    padding: 10px;
    z-index: 1000;
    border-top: 1px solid var(--background-modifier-border);
}

#cookie-banner button:not(.clickable-icon) {
    margin: 10px;
}

.markdown-rendered
    div:has(> :is(p, pre, table, ul, ol, blockquote))
    + div
    > :is(h1, h2, h3, h4, h5, h6) {
    margin-top: var(--heading-spacing) !important;
}

.published-container .markdown-rendered h1,
.published-container .markdown-rendered h2 {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0.35em;
}

.list-cards.markdown-preview-view div ul ul > li,
.list-cards.markdown-preview-view div > ul > li {
    margin-inline-start: 0;
}

.list-cards.markdown-preview-view
    div
    > ul
    > li
    > a
    .publish-article-heading
    .footnote-ref {
    font-size: 1.3rem;
}

.markdown-preview-view .caption a,
.markdown-preview-view .smalltext a,
.markdown-rendered h1 .internal-link,
.markdown-rendered h2 .internal-link,
.markdown-rendered h3 .internal-link,
.markdown-rendered h4 .internal-link,
.markdown-rendered h5 .internal-link,
.markdown-rendered h6 .internal-link {
    text-decoration-thickness: 1px;
}

.markdown-preview-view .caption .external-link,
.markdown-preview-view .small .external-link {
    background-position-y: 2px;
}

.theme-light .external-link,
.theme-light .internal-link {
    text-decoration-color: var(--color-base-40);
}

.theme-dark .external-link,
.theme-dark .internal-link {
    text-decoration-color: var(--color-base-70);
}

.external-link:hover,
.markdown-rendered .internal-link:hover,
.metadata-container .internal-link:hover {
    text-decoration-color: var(--text-accent);
}

.theme-dark .markdown-rendered mark .internal-link {
    color: var(--background-primary);
    font-weight: 700;
}

.outline-view-outer .outline-view {
    padding-bottom: 80px;
}

span.inline-note {
    vertical-align: super;
    color: var(--color-base-50);
    padding: 3px;
    font-style: italic;
}

.social svg,
p svg.lucide {
    vertical-align: middle;
}

input.search-bar {
    border-radius: var(--radius-l);
    background: var(--background-primary);
}

.publish-renderer .motionblur {
    animation: 3s ease-out blur-in;
}

@keyframes blur-in {
    from {
        filter: blur(4px) grayscale(100%);
    }

    to {
        filter: blur(0px) grayscale(0);
    }
}

.theme-dark .markdown-rendered mark {
    color: var(--background-primary);
    background-color: rgb(255 235 146 / 71%);
}

.boxed {
    padding: 15px;
    border: 1px solid var(--color-base-50);
    margin: 0 auto;
    border-radius: var(--radius-m);
    max-width: 700px;
    text-align: center;
}

.callout[data-callout="galleries"] .callout-title,
.callout[data-callout="images"] .callout-title,
.callout[data-callout="info"] .callout-title,
.callout[data-callout="languages"] .callout-title .svg-icon,
.callout[data-callout="portfolio"] .callout-title,
.grayscale img {
    filter: grayscale();
}

.grayscale img:hover {
    filter: none;
}

.desaturated {
    filter: grayscale(90%);
}

.desaturated a,
.site-footer a {
    text-decoration: underline;
}

.reduced {
    font-size: 96%;
}

.blur {
    filter: blur(4px);
}

.blur:hover {
    filter: blur(0px);
}

.desaturated.blur {
    filter: blur(4px) grayscale(90%);
}

.desaturated.blur:hover {
    filter: blur(0px) grayscale(90%);
}

.markdown-preview-view .date {
    font-weight: 700;
    opacity: 0.7;
    text-align: right;
    margin-right: 5px;
}

.site-body-left-column-site-name::after,
.site-header-text::after {
    content: "Keep it simple";
    font-size: var(--font-smaller);
    color: var(--color-base-70);
    font-weight: 400;
}

.caption {
    text-align: center;
    display: block;
    margin: -12px auto 35px;
}

.list-cards .caption {
    margin-top: 0;
}

.img-grid .markdown-preview-section > div:has(.image-embed) > p span.caption {
    text-align: left;
    margin: 0 auto 35px;
}

.markdown-preview-view .light * {
    opacity: 0.7;
}

.markdown-preview-view .footnotes ol {
    font-size: var(--font-smallest) !important;
}

ul > li.task-list-item .task-list-item-checkbox {
    margin-left: -1.83em !important;
}

.nav-view-outer,
.outline-view-outer {
    padding-bottom: 90px;
}

.modal-close-button {
    top: 16px;
}

.markdown-preview-view.reduced p {
    margin-block-start: 0px;
}

.mermaid {
    text-align: center;
    margin: 30px auto;
}

.mermaid .text-inner-tspan {
    fill: var(--text-light);
}

.markdown-rendered table {
    border-radius: var(--radius-m);
    margin: 30px 0;
}

.markdown-rendered.nolists ol,
.markdown-rendered.nolists.clean-table ul,
table ul:has(li .tag) {
    margin: 0;
    padding: 0;
}

.markdown-rendered.nolists ol > li,
.markdown-rendered.nolists ul > li,
table ul:has(li .tag) > li {
    list-style-type: none;
    display: inline-block;
    margin-inline-start: 0;
}

table ul:has(li .tag) > li::after {
    content: " ";
}

.markdown-rendered.nolists ol > li::after,
.markdown-rendered.nolists ul > li::after {
    content: " / ";
}

.markdown-rendered.nolists ol > li:last-child::after,
.markdown-rendered.nolists ul > li:last-child::after,
table ul:has(li .tag) > li:last-child::after {
    content: "";
}

.markdown-rendered.clean-table tbody tr > td:first-child,
.markdown-rendered.clean-table thead tr > th:first-child {
    text-align: right;
    color: var(--color-base-55);
}

.markdown-preview-view table {
    border: var(--border-width) solid var(--border-color);
    border-collapse: collapse;
    margin-block-start: 1em;
}

.markdown-preview-view td,
.markdown-preview-view th {
    padding: var(--table-cell-padding);
}

.markdown-preview-view td:first-child,
.markdown-preview-view th:first-child {
    padding-left: var(--table-edge-cell-padding-first);
}

.markdown-preview-view td:last-child,
.markdown-preview-view th:last-child {
    padding-right: var(--table-edge-cell-padding-last);
}

.search-view-container {
    margin: 0 0 10px;
}

.site-body-left-column-site-logo img {
    border-radius: 0;
}

.site-body-left-column-site-name {
    z-index: 0 !important;
    padding: 0;
    text-align: center;
    font-weight: 600;
}

.theme-dark .site-body-left-column-site-logo img {
    filter: invert(1) hue-rotate(212deg);
    opacity: 1;
}

.site-body-left-column-site-theme-toggle {
    margin: 0 auto;
    padding-right: 32px;
    position: absolute;
    top: 10px;
    left: 10px;
}

.site-body-left-column .search-view-outer {
    margin: 0;
    display: contents;
}

.site-body-left-column-site-name::after {
    display: block;
    margin: 0 0 30px;
}

.site-body-left-column-site-name::after:hover {
    color: var(--color-base-100);
}

.site-header-text::after {
    text-align: right;
    margin-left: 10px;
}

.site-body-left-column {
    padding-right: 18px;
}

.nav-view-outer
    .nav-view
    > .tree-item
    > .tree-item-children
    > .tree-item
    > .tree-item-self:hover {
    opacity: 0.65;
}

.callout {
    margin: 30px 0;
    padding: 10px;
    border-radius: var(--radius-m);
    border-left: 0;
}

.callout[data-callout="hint"],
.callout[data-callout="note"] {
    --callout-color: var(--color-purple-rgb);
}

.callout[data-callout="important"] {
    --callout-color: var(--color-red-rgb);
}

.callout[data-callout="watch"] {
    --callout-icon: "lucide-youtube";
    background-color: var(--background-secondary);
}

.callout[data-callout="timeline"] {
    --callout-icon: "lucide-calendar";
    --callout-color: var(--color-purple-rgb);
}

.callout[data-callout="links"] {
    --callout-icon: "lucide-link";
    --callout-color: var(--color-orange-rgb);
}

.callout[data-callout="user"] {
    --callout-icon: "lucide-user";
    background-color: var(--background-secondary);
    --callout-color: var(--color-gray-rgb);
}

.callout[data-callout="grid"].callout,
.callout[data-callout="routes"] {
    filter: none;
    -webkit-filter: none;
}

.callout[data-callout="cite"] {
    background-color: transparent;
    border-radius: 0;
    margin: 20px 30px;
    padding: 0;
}

.callout[data-callout="texts"] {
    --callout-icon: "lucide-file-text";
    --callout-color: var(--color-oldpink-rgb);
}

.callout[data-callout="docs"] {
    --callout-icon: "lucide-paperclip";
    --callout-color: var(--color-green-rgb);
}

.callout[data-callout="routes"] {
    --callout-icon: "lucide-map";
    --callout-color: var(--color-yellow-rgb);
}

.callout[data-callout="hipertext"] {
    --callout-icon: "lucide-refresh-cw";
    --callout-color: var(--color-wine-rgb);
}

.callout[data-callout="small"] {
    --callout-icon: "circle-dashed";
    background-color: transparent;
}

.callout[data-callout="video"] {
    --callout-icon: "lucide-video";
}

.callout[data-callout="galleries"],
.callout[data-callout="images"],
.callout[data-callout="portfolio"] {
    --callout-icon: "lucide-image";
    border: 1px solid var(--color-base-35);
    margin: 20px auto;
    border-radius: var(--radius-m);
    background-color: #fff;
}

.theme-dark .callout[data-callout="galleries"],
.theme-dark .callout[data-callout="images"],
.theme-dark .callout[data-callout="portfolio"] {
    background-color: #000;
}

.callout[data-callout="newsbox"] {
    padding: 15px;
    border: 1px solid var(--text-normal);
    margin: 20px auto;
    border-radius: var(--radius-m);
    background-color: transparent;
    --callout-icon: "calendar-days";
}

.callout[data-callout="info"] {
    background-color: rgb(70 115 232 / 20%);
    --callout-color: #ffffff;
}

.callout[data-callout="infobox"] {
    padding: 0;
    border: 1px solid var(--color-base-35);
    margin: 20px auto;
    background-color: transparent;
    font-size: var(--font-small);
}

.callout[data-callout="big-sans"],
.callout[data-callout="big-serif"] {
    font-size: 22px;
    background: 0;
    margin: 50px 0;
    line-height: 30px;
    padding: 0;
}

.callout[data-callout="big-serif"] {
    font-family: var(--font-primary-serif);
}

.callout[data-callout="clean"] {
    background: 0;
    border: 0;
    padding: 30px 0 30px 50px;
}

.callout[data-callout="noteinfo"],
.callout[data-callout="small"] {
    margin: 0 0 50px;
    border-radius: 0;
    line-height: var(--line-height-normal);
}

div.hover-popover.is-loaded .callout[data-callout="clean"] {
    margin-left: 0 !important;
}

.callout[data-callout="book"] {
    --callout-color: var(--color-yellow-rgb);
    --callout-icon: "lucide-book";
}

div.popover.hover-popover.is-loaded .callout[data-callout="noteinfo"] {
    margin-top: 0 !important;
}

.callout[data-callout="noteinfo"] {
    --callout-icon: "lucide-info";
    font-size: var(--font-smaller);
    background: 0;
    padding: 0;
}

.callout[data-callout="small"] {
    font-size: var(--font-smallest);
    padding: 0;
    opacity: 1;
}

.lightbox div[src$="#boxed"] img,
.lightbox img[src$="#boxed"],
.lightbox span[src$="#boxed"] img,
.list-cards.cards-noborder.markdown-preview-view div > ul > li,
iframe {
    border: 0;
}

.callout[data-callout="languages"] {
    padding: 5px;
    background-color: transparent;
    font-size: var(--font-smallest);
    border: 0.01em solid var(--color-base-50);
    margin: 0 0 5px;
    --callout-icon: "lucide-languages";
    font-variant: all-small-caps;
}

.callout[data-callout="languages"] .callout-title,
.callout[data-callout="noteinfo"] .callout-content,
.callout[data-callout="small"] .callout-content,
iframe.boxed {
    padding: 0;
}

.callout[data-callout="languages"] .callout-title-inner {
    font-weight: 300;
    color: var(--text-muted);
}

.callout[data-callout="cite"] .callout-content {
    font-weight: inherit;
    font-style: italic;
    font-family: var(--font-primary-serif);
    padding: 0;
}

.callout[data-callout="cite"] .callout-content blockquote {
    border: 0;
    padding: 0;
}

.callout[data-callout="infobox"] .callout-content {
    padding-top: 10px;
    text-align: center;
}

.callout[data-callout="infobox"] .callout-content p {
    margin: 10px 0;
}

.callout[data-callout="big-sans"] .callout-content,
.callout[data-callout="big-serif"] .callout-content {
    padding: 0 0 0 30px;
}

.callout[data-callout="big-sans"] p,
.callout[data-callout="big-serif"] p,
.callout[data-callout="noteinfo"] .callout-content p,
.callout[data-callout="small"] .callout-content,
.callout[data-callout="small"] .callout-content p {
    padding: 0;
    margin: 0;
}

.callout[data-callout="noteinfo"] .callout-content {
    text-indent: 0;
    color: var(--text-muted);
}

.callout[data-callout="noteinfo"] .external-link,
.callout[data-callout="small"] .external-link {
    background-size: 10px;
    background-position-y: 0px;
}

.callout[data-callout="small"] .callout-content p svg.lucide {
    vertical-align: text-bottom;
}

.callout[data-callout="noteinfo"]
    .callout-content
    .markdown-rendered
    .tag:not(.token) {
    font-size: var(--font-smaller);
}

.callout[data-callout="noteinfo"] .callout-content a {
    color: var(--color-base-60);
    text-decoration-color: var(--color-base-40);
}

.callout[data-callout="noteinfo"] .callout-content a:hover {
    color: var(--text-accent-hover);
    text-decoration-color: var(--text-accent-hover);
}

.callout[data-callout="noteinfo"] .callout-content .tag:not(.token):hover {
    color: var(--color-base-00);
}

.theme-dark
    .callout[data-callout="noteinfo"]
    .callout-content
    .tag:not(.token):hover {
    color: var(--color-base-60);
}

.markdown-preview-view .tag:not(.token) {
    white-space: nowrap;
    text-decoration: none;
    font-size: var(--font-smallest);
    border: 1px solid var(--ui3);
}

.markdown-preview-view .tag:not(.token):hover {
    text-decoration: none;
    background-color: var(--ui3);
}

.body:not(.minimal-unstyled-tags) {
    margin: 1px 10px 0 0;
}

.markdown-preview-view
    .callout:not([data-callout="noteinfo"]):not([data-callout="clean"]):not(
        [data-callout="small"]
    )
    .tag:not(.token) {
    background-color: transparent;
    color: var(--text-normal);
    border: 1px solid var(--text-normal);
    padding: 0 5px;
    font-size: var(--font-smallest);
}

.markdown-preview-view
    .callout:not([data-callout="noteinfo"]):not([data-callout="clean"]):not(
        [data-callout="small"]
    )
    .tag:not(.token):hover {
    background-color: var(--text-normal);
    color: var(--background-color);
}

.theme-light .lightbox [src$="#blend"],
.theme-light .lightbox [src$="#invert"],
.theme-light .lightbox span[src$="#blend"] img,
.theme-light .lightbox span[src$="#invert"] img {
    mix-blend-mode: screen;
}

.list-cards.cards-white.markdown-preview-view div > ul > li {
    background-color: #fff;
}

img {
    cursor: var(--img-zoom-in-cursor);
}

.publish-renderer .grayscale img {
    filter: grayscale(100%);
    opacity: 1;
}

.publish-renderer .grayscale img:hover {
    filter: none;
    opacity: 1;
}

.markdown-preview-view img {
    max-width: 100%;
    border-radius: var(--radius-m);
    display: block;
    margin: 0 auto;
}

.theme-dark img {
    opacity: 0.8;
}

.theme-dark .lightbox img {
    opacity: 1;
}

div[src$="#float"],
span[src$="#float"] {
    padding-right: 10px;
    float: left;
}

div[src$="#float"] img,
img[src$="#float"],
span[src$="#float"] img {
    height: auto;
    width: 100px;
}

.lightbox div[src$="#float"] img,
.lightbox img[src$="#float"],
.lightbox span[src$="#float"] img {
    height: auto;
    width: auto;
}

div[src$="#boxed"] img,
img[src$="#boxed"],
span[src$="#boxed"] img {
    border: 1px solid var(--color-base-50);
}

.theme-dark div[src$="#icon"] img,
.theme-dark img[src$="#icon"],
.theme-dark span[src$="#icon"] img,
.theme-dark svg.icon {
    height: 16px;
    width: 20px;
    filter: invert();
}

div[src$="#icon"] img,
img[src$="#icon"],
span[src$="#icon"] img,
svg.icon {
    height: 16px;
    width: 20px;
}

.img-grid .image-embed.is-loaded[src$="#icon"],
.img-grid div[src$="#icon"],
.img-grid span[src$="#icon"],
div[src$="#icon"],
span[src$="#icon"] {
    display: inline-block;
    vertical-align: middle;
    opacity: 0.6;
}

.img-grid span[src$="#icon"].image-embed img:hover,
.img-zoom span[src$="#icon"].image-embed img:hover,
div[src$="#icon"].image-embed img:hover,
span[src$="#icon"].image-embed img:hover {
    cursor: default;
}

span[src$="#icon"] + span[src$="#icon"] {
    margin-left: 2px;
}

.markdown-rendered video {
    width: 100%;
    margin: 0 auto;
    display: block;
    border-radius: var(--radius-m);
}

.markdown-source-view .pdf-embed,
.pdf-embed {
    max-width: 100%;
    height: auto !important;
}

.internal-embed:not(.image-embed) {
    --embed-padding: 20px 0 0 20px;
}

.internal-embed:not(.image-embed) h1 {
    margin-top: 0;
    font-size: var(--h2-size) !important;
}

.internal-embed:not(.image-embed).pdf-embed .iframe,
.internal-embed:not(.image-embed).pdf-embed .iframe embed {
    max-width: 100% !important;
}

.markdown-embed-title {
    white-space: pre-wrap;
    font-size: var(--page-title-size);
    color: var(--page-title-color);
    font-weight: var(--page-title-weight);
    margin-bottom: 50px;
}

iframe video .media-controls {
    width: 100% !important;
}

iframe {
    width: 100%;
    max-width: 100%;
    border-radius: var(--radius-m);
    background-color: transparent;
    margin: 50px auto;
    display: block;
}

iframe.border {
    border-color: var(--color-base-100);
}

.internal-embed:not(.image-embed).pdf-embed {
    height: 800px !important;
    max-width: 100%;
    width: 100%;
    border: 0;
}

.internal-embed:not(.image-embed).pdf-embed iframe {
    height: 100% !important;
    min-height: 340px;
    max-width: 100%;
    width: 100%;
    border-radius: var(--radius-m);
    margin: 0;
}

.lr_embed {
    margin: 20px 0;
}

#slideshow .image-view .image,
video {
    border-radius: var(--radius-m);
}

.site-footer {
    right: 23px;
    bottom: 0;
    width: 258px;
    text-align: left;
    font-size: 11px;
    line-height: initial;
    padding-bottom: 10px;
}

.theme-light .site-footer {
    color: #7f7f7f;
}

.theme-dark .site-footer {
    color: #7e7e7e;
}

.site-footer .foot-links {
    margin-bottom: 2px;
    border-bottom: 0 dotted #e2e2e2;
    padding-bottom: 2px;
    display: none;
}

.social {
    margin: 5px auto;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 5px;
}

.social svg {
    width: auto;
    height: 15px;
}

.social svg .cls-1 {
    fill: var(--text-muted);
}

.social svg:hover path {
    fill: var(--text-accent);
}

.social svg .cls-0,
.social svg:hover path.cls-0 {
    fill: none;
}

.social svg#mailme {
    border-radius: 2px;
    background: 0 0;
    width: auto;
    height: 12px;
    gap: 33px;
}

.social svg#portfolio {
    height: 18px;
}

.social svg#blog {
    height: 20px;
}

.social svg#behance {
    background: 0 0;
    width: auto;
    height: 13px;
}

.social svg#linkedin-icon {
    background: 0 0;
    width: auto;
    height: 22px;
}

.social svg#face {
    border-radius: 2px;
}

.social a {
    background: 0 0;
    text-decoration: none;
    margin-right: 15px;
}

.social a:last-child {
    margin-right: 0 !important;
}

.site-footer .social .behance,
.site-footer .social .facebook,
.site-footer .social .linkedin,
.site-footer .social .mastodon,
.social .telegram,
.social .twitter {
    display: none !important;
}

.site-footer .social {
    text-align: left;
    display: block;
}

@media screen and (min-width: 1800px) {
    .sliding-windows .publish-renderer {
        width: 800px;
        flex: 0 0 800px;
    }

    .site-body-left-column-site-name,
    body {
        font-size: 110%;
    }
}

@media screen and (min-width: 2100px) {
    .published-container {
        --sidebar-left-width: 400px;
    }

    .nav-view,
    .site-body-left-column-site-name,
    body {
        font-size: 120%;
    }

    .nav-view [data-path]::after,
    .site-body-left-column-site-name::after {
        font-size: 100%;
        padding: 0;
    }

    .callout[data-callout="circle"],
    .callout[data-callout="noteinfo"],
    .callout[data-callout="small"] {
        font-size: 85% !important;
    }
}

@media screen and (max-width: 730px) {
    .mermaid {
        margin: 0 auto;
        overflow-x: auto;
    }

    .mermaid svg[aria-roledescription="flowchart-v2"] {
        width: 100%;
    }

    .site-header-text::after {
        display: block;
        text-align: left;
        margin: 0;
    }

    .page-header {
        display: none;
    }

    .site-footer .social {
        display: flex;
        text-align: center;
    }

    .site-footer {
        position: relative;
        width: 100%;
        text-align: center;
        right: 0;
    }

    .search-view-container {
        margin: 10px 15px 15px;
    }

    .search-view-container input {
        height: 50px;
    }

    .site-body-left-column-site-name,
    .site-body-left-column-site-theme-toggle {
        margin: 0 0 20px 5px !important;
        position: relative;
        top: 0;
    }
}

@media screen and (max-width: 1024px) {
    #toggle-sidebar-btn {
        right: 10px;
    }

    .markdown-rendered h1 {
        margin-block-start: 40px !important;
    }

    .frontmatter-container {
        margin-bottom: 3rem;
    }

    .callout[data-callout="clean"] {
        background: 0;
        border: 0;
        padding: 10px 0;
    }

    .site-footer {
        width: 100%;
    }

    .site-body-left-column .search-view-outer {
        margin: 20px 0 0;
    }

    .site-footer .social {
        display: none;
    }
}

@media screen and (max-width: 1024px) and (orientation: landscape) {
    .site-body-left-column-site-logo,
    .site-footer {
        width: 150px !important;
        display: none;
    }

    .site-body-left-column-site-name,
    .site-body-left-column-site-theme-toggle {
        margin: 0 !important;
    }

    .nav-view-outer {
        opacity: 1;
    }

    .markdown-preview-view:not(.show-frontmatter) .frontmatter {
        display: none !important;
    }

    .site-footer {
        text-align: center;
        width: 100%;
        right: 50%;
        bottom: -20px;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 5px 0 22px !important;
        margin: 0;
    }

    .site-footer .social {
        display: none;
    }
}

@media screen and (max-width: 1024px) and (orientation: portrait) {
    .site-footer,
    .site-footer .social {
        text-align: center;
    }

    body {
        --font-text-size: var(--font-text-size-mobile) !important
    ;
    }

    .tree-item-self .tree-item-icon {
        padding-inline-start: 25px !important;
    }

    .site-footer {
        right: 0;
        width: 100%;
    }
}

@media print {
    #toggle-sidebar-btn,
    .backlinks,
    .boxed:has(.social),
    .callout.is-collapsed,
    .frontmatter-container,
    .markdown-preview-view:not(.show-frontmatter) .frontmatter,
    .page-header {
        display: none !important;
    }
}

.footnote-tooltip {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    border: 1px solid #ccc;
    padding: 10px;
    z-index: 1000;
    max-width: 300px;
    font-size: 0.9em;
}

/* tag styling*/
a.tag {
    color: #292e3b !important;
    background: #c3cace !important;
    font-size: 1rem;
    padding: 0.2rem;
    display: inline-block;
    text-decoration: none !important;
    line-height: normal;
    radius: var(--radius-s);
    padding-x: 8px;
    padding-y: 4px;
    transition:
        color 0.3s,
        background 0.3s,
        box-shadow 0.3s,
        transform 0.3s;
}

a.tag:hover {
    background: #60b8e4 !important;
    color: #292e3b;
    /* transform: scale(1.1); */
}

/* show brackets for internal links in preview */
.internal-link::before {
    /* content: "«"; */
    color: #60b8e4;
    opacity: 0.6;
    position: relative;
    bottom: 0;
    /* text-decoration: none !important; */
    transition:
        color 0.3s,
        background 0.3s,
        box-shadow 0.3s,
        transform 0.3s;
}

.internal-link::after {
    /* content: "»"; */
    color: #60b8e4;
    opacity: 0.6;
    position: relative;
    bottom: 0;
    /* text-decoration: none !important; */
}
