/*

Minimal Publish / MIT License
Copyright (c) 2020-2024 Steph Ango (@kepano)

*/
/* Adjust the following variables or find more at the link below */
/* https://docs.obsidian.md/Reference/CSS+variables/CSS+variables */
@import url('https://fonts.googleapis.com/css2?family=Lexend:wght@100..900&display=swap');

body {
    font-family: "Lexend", sans-serif; !important;
    font-size: var(--font-text-size);
    font-weight: var(--normal-weight);
    line-height: 1.5;
    color: var(--text-normal);
}

/* Ensure all text elements inherit the font */
h1, h2, h3, h4, h5, h6,
p, li, a, span, div {
    font-family: var(--font-family) !important;
    font-weight: inherit;
    color: inherit;
}

.site-footer a {
  display: none;
}

.site-body-left-column-site-name {
  display: block;
  text-align: center;
  width: 100%;
  margin: 0 auto;
}

	/* Font sizes */
	--font-text-size: 16px;
	--font-small:     13px;
	--font-smaller:   11px;
	--font-smallest:  10px;
	--font-inputs:    13px;
	--font-family: "Nunito", sans-serif;

	/* Font weights */
	--normal-weight:  400;
	--bold-weight:    600;
	--link-weight:    inherit;

	/* Headings */
	--page-title-weight: 500;
	--page-title-line-height: 1.1;

	--h1:             1.25em;
	--h2:             1.1em;
	--h3:             1.05em;
	--h4:             1em;
	--h5:             0.85em;
	--h6:             0.85em;

	--h1-weight:      600;
	--h2-weight:      600;
	--h3-weight:      600;
	--h4-weight:      500;
	--h5-weight:      500;
	--h6-weight:      400;

	--h1-variant:     normal;
	--h2-variant:     normal;
	--h3-variant:     normal;
	--h4-variant:     normal;
	--h5-variant:     small-caps;
	--h6-variant:     small-caps;

	--h1-style:       normal;
	--h2-style:       normal;
	--h3-style:       normal;
	--h4-style:       normal;
	--h5-style:       normal;
	--h6-style:       normal;

	/* Cards */
	--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)));

	/* Images */
	--image-radius:   8px;

	--img-grid-fit:        cover;
	--img-grid-background: transparent;
	--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;

	/* Misc */
	--icon-muted:     0.5;
	--border-width:   1px;

	--folding-offset: 16px;
	--nested-padding: 30px;    /* Quotes and transclusions */

	--list-padding:   2em;     /* List padding */
	--list-spacing:   0.075em; /* Space between list items */
}

/* Mobile */
@media (max-width:400pt) {
	body {
		--cards-min-width:var(--cards-mobile-width);
		--img-grid-gap: 0.25rem;
	}
}
/* 
Rosé Pine
MIT License 
Copyright (c) 2023 Rosé Pine
https://github.com/rose-pine/rose-pine-theme
*/

.theme-light {
	--color-red-rgb: 180,99,122;
	--color-orange-rgb: 215,130,125;
	--color-yellow-rgb: 234,157,53;
	--color-green-rgb: 40,105,131;
	--color-cyan-rgb: 87,147,159;
	--color-blue-rgb: 87,147,159;
	--color-purple-rgb: 144,122,169;
	--color-pink-rgb: 144,122,169;

	--color-red: #b4637a;
	--color-orange: #d7827e;
	--color-yellow: #ea9d34;
	--color-green: #286983;
	--color-cyan: #56949f;
	--color-blue: #56949f;
	--color-purple: #907aa9;
	--color-pink: #907aa9;
}

.theme-dark {
	--color-red-rgb: 234,111,146;
	--color-orange-rgb: 233,155,151;
	--color-yellow-rgb: 246,193,119;
	--color-green-rgb: 47,116,143;
	--color-cyan-rgb: 157,207,215;
	--color-blue-rgb: 157,207,215;
	--color-purple-rgb: 196,167,231;
	--color-pink-rgb: 196,167,231;

	--color-red: #eb6f92;
	--color-orange: #ea9a97;
	--color-yellow: #f6c177;
	--color-green: #31748f;
	--color-cyan: #9ccfd8;
	--color-blue: #9ccfd8;
	--color-purple: #c4a7e7;
	--color-pink: #c4a7e7;
}

.theme-light {
	--base-h: 32;
	--base-s: 57%;
	--base-l: 95%;

	--accent-h: 3;
	--accent-s: 53%;
	--accent-l: 67%;

	--ax1: hsl( var(--accent-h), var(--accent-s), var(--accent-l) );
        --ax2: hsl( var(--accent-h), var(--accent-s), calc(var(--accent-l) + 8%) );
        --ax3: hsl( var(--accent-h), var(--accent-s), calc(var(--accent-l) - 6%) );
	
	--bg1: #fffaf3;
	--bg2: #faf4ed;
	--bg3: rgba(233,223,218,0.5);

	--ui1: #EAE3E1;
	--ui2: #dfdad9;
	--ui3: #cecacd;

	--tx1: #575279;
	--tx2: #797593;
	--tx3: #9893a5;

	--hl1: #EAE3E1;
}
.theme-dark {
	--base-h: 247;
	--base-s: 23%;
	--base-l: 15%;

	--accent-h: 2;
	--accent-s: 55%;
	--accent-l: 83%;

	--ax1: hsl( var(--accent-h), var(--accent-s), var(--accent-l) );
        --ax2: hsl( var(--accent-h), var(--accent-s), calc(var(--accent-l) + 8%) );
        --ax3: hsl( var(--accent-h), var(--accent-s), calc(var(--accent-l) - 5%) );
	
	--bg1: #1f1d2e;
	--bg2: #191724;
	--bg3: rgba(68,66,86,0.5);

	--ui1: #312F41;
	--ui2: #403d52;
	--ui3: #524f67;

	--tx1: #e0def4;
	--tx2: #908caa;
	--tx3: #6e6a86;

	--hl1: #403d52;
}
/* -----------------------------------------------------
   THEME COLORS
----------------------------------------------------- */

.theme-light {
    --mono100: black;
    --mono0: white;
}

.theme-dark {
    --mono100: white;
    --mono0: black;
}

.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);
}

/* Published container */
.published-container {
    --outline-heading-color-active: var(--tx1);
    --sidebar-left-background: var(--bg2);
}

/* Shared theme vars */
.theme-dark,
.theme-light {
    --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);
}

/* Light mode specifics */
.theme-light {
    --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);
}

/* Dark mode specifics */
.theme-dark {
    --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);
}


/* -----------------------------------------------------
   HEADER VISIBILITY + TITLES
----------------------------------------------------- */

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

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

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


/* -----------------------------------------------------
   TABLE UTILITIES
----------------------------------------------------- */

.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-100 table,
.table-cards table,
.table-full table {
    width: 100%;
}

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

/* Alternating / hover rows */
.row-hover {
    --table-edge-cell-padding-first: 10px;
}

.row-alt {
    --table-row-alt-background: var(--background-table-rows);
    --table-edge-cell-padding-first: 10px;
}

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

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

/* Table borders */
.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 numbering */
.table-numbers table {
    counter-reset: section;
}

.table-numbers table > thead > tr > th:first-child::before {
    content: " ";
    padding-right: .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: .5em;
    display: inline-block;
    min-width: 2em;
    color: var(--text-faint);
    font-variant-numeric: tabular-nums;
}

/* Row lines on/off */
.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);
}

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

/* Column lines */
.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);
}

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

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


/* -----------------------------------------------------
   IMAGE UTILITIES
----------------------------------------------------- */

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 .5px .9px rgba(0, 0, 0, .021),
        0 1.3px 2.5px rgba(0, 0, 0, .03),
        0 3px 6px rgba(0, 0, 0, .039),
        0 10px 20px rgba(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;
}


/* -----------------------------------------------------
   IMAGE GRID
----------------------------------------------------- */

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

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

.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;
}

/* Suppress stray <br> */
.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;
}

/* Actual grid logic */
.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;
}


/* -----------------------------------------------------
   IMAGE ZOOM / LIGHTBOX
----------------------------------------------------- */

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

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

.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 CARDS + LIST CARDS)
----------------------------------------------------- */

.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: .5rem 0;
    display: grid;
    grid-template-columns: var(--cards-columns);
    grid-column-gap: .75rem;
    grid-row-gap: .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 .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,.05),
        0 1px 3px 1px rgba(0,0,0,.025);
    transition: box-shadow .15s linear;
}

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

.cards table tbody > tr > td:first-child a {
    display: block;
}

.cards table tbody > tr > td:last-child {
    border: none;
}

.cards table tbody > tr > td:not(:first-child) {
    font-size: calc(var(--table-text-size) * .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 {
    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: .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 {
    aspect-ratio: var(--cards-aspect-ratio);
    width: 100%;
    object-fit: var(--cards-image-fit);
    max-height: var(--cards-image-height);
    background-color: var(--background-secondary);
    vertical-align: bottom;
}

.cards table thead {
    display: none;
}


/* -------- LIST-STYLE CARDS -------- */

.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 {
    display: none;
}

.list-cards.markdown-preview-view div > ul {
    display: grid;
    gap: .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 .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;
}

.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);
}

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

/* Aspect-ratio variants */
.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;  }

/* Column count */
.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; }

/* Bottom-align last cell */
.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;
}

/* Grid-responsive breakpoints */
@media (max-width: 400pt) {
    .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)); }
}


/* -----------------------------------------------------
   CODE BLOCKS / INPUTS / MISC
----------------------------------------------------- */

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

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

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

/* Inputs */
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);
}

/* List item markers */
ol > li::marker,
ul > li::marker {
    color: var(--tx3);
}

/* Base table defaults */
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);
}

.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);
}

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

/* Tooltip */
.tooltip {
    display: none;
}