/*

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 */

body {
	/* Font sizes */
	/* --font-text-size: 20px;
	--font-small: 16px --font-smaller: 14px;
	--font-smallest: 12px;
	--font-inputs: 16px; */

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

/* Default color scheme */
.theme-light,
.theme-dark {
	--red: #d04255;
	--yellow: #e5b567;
	--green: #a8c373;
	--orange: #e57e43;
	--cyan: #73bbb2;
	--blue: #6c99bb;
	--purple: #9e86c8;
	--pink: #b05279;
}

/* override with catppuchin */
.theme-light,
.theme-dark {
	--red: #f38ba8;
	--yellow: #f9e2af;
	--green: #a6e3a1;
	--orange: #fab387;
	--cyan: #94e2d5;
	--blue: #89b4fa;
	--purple: #cba6f7;
	--pink: #f5c2e7;
}

}

.theme-light {
	--bg1: #FFF;
	--bg2: #F5F5F5;
	--bg3: #E5E5E5;

	--ui1: #E6E6E6;
	--ui2: #D6D6D6;
	--ui3: #C2C2C2;

	--tx1: #0F0F0F;
	--tx2: #828282;
	--tx3: #B5B5B5;

	--ax1: #6A8695;
	--ax2: #556B77;
	--ax3: #889EAA;

	--hl1: hsla(201, 50%, 40%, 30%);
}

.theme-dark {
	--bg1: #262626;
	--bg2: #212121;
	--bg3: hsla(0, 0, 55%, 0.12);

	--ui1: #333333;
	--ui2: #3B3B3B;
	--ui3: #595959;

	--tx1: #D1D1D1;
	--tx2: #999999;
	--tx3: #595959;

	--ax1: #889EAA;
	--ax2: #ACBBC3;
	--ax3: #67808E;

	--hl1: hsla(201, 70%, 40%, 30%);
}

.theme-dark {
	--bg1: #1e1e2e;
	/* Base - Mantle */
	--bg2: #181825;
	/* Base - Crust */
	--bg3: hsla(240, 15%, 20%, 0.12);
	/* Adjusted transparency for Catppuccin tones */

	--ui1: #313244;
	/* Surface0 */
	--ui2: #45475a;
	/* Surface1 */
	--ui3: #585b70;
	/* Surface2 */

	--tx1: #cdd6f4;
	/* Text - Base */
	--tx2: #a6adc8;
	/* Text - Subtle */
	--tx3: #6c7086;
	/* Text - Muted */

	--ax1: #89b4fa;
	/* Blue */
	--ax2: #bac2de;
	/* Overlay0 */
	--ax3: #74c7ec;
	/* Sapphire */

	--hl1: hsla(220, 70%, 50%, 0.3);
	/* Adjusted Blue with transparency */
}

.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 {
	--outline-heading-color-active: var(--tx1);
	--sidebar-left-background: var(--bg2)
}

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

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

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

.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: -.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-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%
}

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

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

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

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
}

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
}

.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;
	width: 100%;
	height: 100%;
	max-width: 100%;
	top: 0;
	left: 0;
	background: var(--img-zoom-background);
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%
}

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

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

.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) {
	.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: .85em
}

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

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

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