/* ───────────────────────────────────────────────────
SHIMMERING FOCUS
by @pseudometa
Version 3.522
MIT License
https://github.com/chrisgrieser/shimmering-focus
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* < Globally Disabled Stylelint Rules
──────────────────────────────────────────────────── */
/* stylelint-disable no-descending-specificity */

/* ───────────────────────────────────────────────── */
/* < Fonts (base64 encoded)
──────────────────────────────────────────────────── */
/* Open Font 1.1 https://github.com/iaolo/iA-Fonts/blob/master/iA%20Writer%20Quattro/LICENSE.md */
@font-face {
	font-family: "iA Writer Quattro S";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("data:font/woff2;charset=utf-8;base64,[encoded data, 58240 characters]") format("woff2");
}

@font-face {
	font-family: "iA Writer Quattro S";
	font-style: italic;
	font-weight: 700;
	font-display: swap;
	src: url("data:font/woff2;charset=utf-8;base64,[encoded data, 54056 characters]") format("woff2");
}

@font-face {
	font-family: "iA Writer Quattro S";
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url("data:font/woff2;charset=utf-8;base64,[encoded data, 53152 characters]") format("woff2");
}

@font-face {
	font-family: "iA Writer Quattro S";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("data:font/woff2;charset=utf-8;base64,[encoded data, 57244 characters]") format("woff2");
}

/* Ubuntu Font License (similar to Open Font) https://ubuntu.com/legal/font-licence */
@font-face {
	font-family: "Ubuntu Mono S";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('data:font/woff2;charset=utf-8;base64,[encoded data, 108172 characters]') format('woff2');
}

/* Open Font 1.1 https://github.com/arrowtype/recursive#license */
@font-face {
	font-family: "Recursive S";
	font-style: normal;
	font-weight: 600 900;
	font-display: swap;
	src: url("data:font/woff2;charset=utf-8;base64,[encoded data, 91896 characters]") format("woff2");
}

@font-face {
	font-family: "Recursive S";
	font-style: normal;
	font-weight: 300 500;
	font-display: swap;
	src: url("data:font/woff2;charset=utf-8;base64,[encoded data, 91580 characters]") format("woff2");
}

/* Apache License 2.0 https://developers.google.com/fonts/docs/material_icons#licensing */
@font-face {
	font-family: "Material Icons (Filled)";
	font-display: swap;
	src: url("data:font/woff2;charset=utf-8;base64,[encoded data, 139704 characters]") format("woff2");
}

/* ───────────────────────────────────────────────── */
/* < Temporary Bug Fixes / Additions
──────────────────────────────────────────────────── */
.cm-hashtag-begin.cm-hashtag-begin {
	font-family: var(--font-text);
}

/* inconsistent line height of lines with footnotes */
.footnote-ref {
	line-height: var(--line-height-tight);
}

/* https://discord.com/channels/686053708261228577/989603365606531104/1015645516341719120 */
.cm-hashtag:hover {
	color: var(--tag-color-hover);
	text-decoration: var(--tag-decoration-hover);
	background-color: var(--tag-background-hover);
	border: var(--tag-border-width) solid var(--tag-border-color-hover);
}

/* https://discord.com/channels/686053708261228577/989603365606531104/1015835317347029092 */
.modal-container a {
	color: var(--link-external-color);
	text-decoration: var(--link-external-decoration);
}

.modal-container a:hover {
	color: var(--link-external-color-hover);
	text-decoration: var(--link-external-decoration-hover);
}

/* task done */
/* https://discord.com/channels/686053708261228577/989603365606531104/1016468110972301424 */
.HyperMD-task-line .cm-formatting-task.cm-property {
	color: var(--checklist-done-color);
}

.HyperMD-task-line .cm-formatting-task.cm-property~* {
	color: var(--checklist-done-color);
	text-decoration: var(--checklist-done-decoration);
}

/* ───────────────────────────────────────────────── */
/* < Variables
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* << Unchanged Obsidian Variables (Dummy Variables)
──────────────────────────────────────────────────── */
/* these values are unchanged from the default theme, but included here for
autocompletion via LSP and for quicker reference
https://www.youtube.com/watch?v=yl0pvIRTWWo&t=7s */

.dummy {
	/* user setting */
	--font-interface: "";
	--font-text: "";
	--font-monospace: "";
	--font-text-size: "";

	/* Misc */
	--tag-border-color-hover: hsla(var(--interactive-accent-hsl) / 15%);
	--background-modifier-border-hover: var(--color-base-35);
	--highlight-mix-blend-mode: darken;
	--callout-border-opacity: 0.25;
	--ribbon-width: 44px;
	--mono-rgb-100: 0, 0, 0;
	--background-modifier-hover: rgba(var(--mono-rgb-100) / 7.5%);
	--nav-item-background-hover: var(--background-modifier-hover);
	--nav-item-background-active: var(--background-modifier-hover);
	--line-height-normal: 1.5;
	--link-external-decoration: underline;
	--link-external-decoration-hover: underline;
	--tab-width: 200px;

	/* Icons */
	--icon-size: var(--icon-m);
	--icon-stroke: var(--icon-m-stroke-width);
	--icon-xs: 14px;
	--icon-s: 16px;
	--icon-m: 18px;
	--icon-l: 18px;
	--icon-xs-stroke-width: 2px;
	--icon-s-stroke-width: 2px;
	--icon-m-stroke-width: 1.75px;
	--icon-l-stroke-width: 1.75px;
	--icon-color: var(--text-muted);
	--icon-color-active: var(--text-accent);
	--icon-color-focused: var(--text-normal);
	--icon-opacity: 0.85;
	--icon-opacity-hover: 1;
	--icon-opacity-active: 1;
	--clickable-icon-radius: var(--radius-s);

	/* the --size variables are not supposed to be changed */
	--size-2-1: 2px;
	--size-2-2: 4px;
	--size-2-3: 6px;
	--size-4-1: 4px;
	--size-4-2: 8px;
	--size-4-3: 12px;
	--size-4-4: 16px;
	--size-4-5: 20px;
	--size-4-6: 24px;
	--size-4-8: 32px;
	--size-4-12: 48px;
	--size-4-16: 64px;
	--size-4-18: 72px;
	--radius-s: 4px;
	--radius-m: 8px;
	--radius-l: 10px;

	/* File navigator */
	--nav-item-size: var(--font-ui-small);
	--nav-item-weight: inherit;
	--nav-item-weight-hover: inherit;
	--nav-item-weight-active: inherit;
	--nav-item-white-space: nowrap;

	/* Tabs */
	--tab-background-active: var(--background-primary);
	--tab-text-color: var(--text-faint);
	--tab-text-color-focused: var(--text-muted);
	--tab-text-color-focused-active: var(--text-normal);
	--tab-font-size: var(--font-ui-small);
	--tab-font-weight: inherit;
	--tab-container-background: var(--background-secondary);
	--tab-divider-color: var(--background-modifier-border-hover);
	--tab-outline-color: var(--divider-color);
	--tab-outline-width: 1px;
	--tab-curve: 6px;
	--tab-radius: var(--radius-s);
	--tab-radius-active: 6px 6px 0 0;
	--anim-duration-none: 0;
	--anim-duration-superfast: 70ms;
	--anim-duration-fast: 140ms;
	--anim-duration-moderate: 300ms;
	--anim-duration-slow: 560ms;

	/* Relative font sizes */
	--font-smallest: 0.8em;
	--font-smaller: 0.875em;
	--font-small: 0.933em;

	/* UI font sizes */
	--font-ui-smaller: 12px;
	--font-ui-small: 13px;
	--font-ui-medium: 15px;
	--font-ui-large: 20px;
	--footnote-size: var(--font-smaller);
	--divider-width: 1px;
	--divider-width-hover: 3px;
	--cursor: default;
	--cursor-link: pointer;
	--text-on-accent: hsl(0 0% 100%);
	--text-error: var(--color-red);
	--text-success: var(--color-green);

	/* colors for syntax highlighting & callouts (different tone in dark mode) */
	--color-red-rgb: 251, 70, 76;
	--color-green-rgb: 68, 207, 110;
	--color-orange-rgb: 236, 117, 0;
	--color-red: hsl(358 96% 63%);
	--color-green: hsl(138 59% 54%);
	--color-orange: hsl(31 79% 58%);
	--color-yellow: hsl(59 64% 66%);
	--color-cyan: hsl(179 69% 60%);
	--color-blue: hsl(212 100% 50%);
	--color-purple: hsl(258 100% 75%);
	--color-pink: hsl(328 91% 79%);
	--callout-warning: var(--color-orange-rgb);

	/* Default Accent Color: ; will be overridden by user selection in `Appearance
	tab`, however, by setting color accent of its own, they are going to be
	ignored in this theme */
	--accent-h: 184;
	--accent-s: 79%;
	--accent-l: 35%;

	/* shadows */
	--input-height: 30px;
	--input-radius: 5px;
	--input-shadow: inset 0 0 0 1px rgb(0 0 0 / 12%), 0 2px 3px 0 rgb(0 0 0 / 5%),
		0 1px 1.5px 0 rgb(0 0 0 / 3%), 0 1px 2px 0 rgb(0 0 0 / 4%), 0 0 0 0 transparent;
	--input-shadow-hover: inset 0 0 0 1px rgb(0 0 0 / 17%), 0 2px 3px 0 rgb(0 0 0 / 10%),
		0 1px 1.5px 0 rgb(0 0 0 / 3%), 0 1px 2px 0 rgb(0 0 0 / 4%), 0 0 0 0 transparent;
	--shadow-l: 0px 1.8px 7.3px rgb(0 0 0 / 7.1%), 0px 6.3px 24.7px rgb(0 0 0 / 11.2%),
		0px 30px 90px rgb(0 0 0 / 20%);
	--shadow-s: 0px 1px 2px rgb(0 0 0 / 2.8%), 0px 3.4px 6.7px rgb(0 0 0 / 4.2%),
		0px 15px 30px rgb(0 0 0 / 7%);
}

/* ───────────────────────────────────────────────── */
/* << Color Scheme Variables
──────────────────────────────────────────────────── */
/* stylelint-disable no-duplicate-selectors */

/* default values, changed via style settings */
body {
	--longform-bg-hue: 200;
	--bg-hue-light: 230;
	--bg-hue-dark: 230;
}

/* this style setting overrides background colors */
.mac-os-native:is(.theme-light, .theme-dark) {
	--bg-hue: 0;
	--longform-bg-hue: 0;
	--bg-sat: 0%;
}

/* <<< gamma color scheme */
.theme-light {
	--bg-sat: 25%;
	--bg-hue: var(--bg-hue-light);

	/* hard-coded, so user does not mess up color scheme */
	--color-accent: hsl(184 79% 35%);
	/* --color-accent-hsl needs commas, otherwise dependent colors are not display correctly */
	--color-accent-hsl: 184, 79%, 35%;
	--interactive-accent: hsl(184 79% 30%);
	--alt-heading-color: hsl(232 34% 50%);
	--secondary-accent: hsl(28 54% 51%);
	--hover-accent: hsl(328 100% 54%);
	--link-unresolved-color: hsl(101 42% 51%);
}

.theme-dark {
	--bg-sat: 15%;
	--bg-hue: var(--bg-hue-dark);
	--color-accent: hsl(184 79% 45%);
	/* --color-accent-hsl needs commas, otherwise dependent colors are not display correctly */
	--color-accent-hsl: 184, 79%, 45%;
	--interactive-accent: hsl(184 79% 30%);
	--alt-heading-color: hsl(232 50% 70%);
	--secondary-accent: hsl(28 63% 61%);
	--hover-accent: hsl(328 100% 64%);
	--link-unresolved-color: hsl(101 42% 51%);
}

/* variables dependent on the main variables above */
.theme-light {
	--color-base-00: hsl(var(--bg-hue) calc(var(--bg-sat) * 1.5) 99%);
	--color-base-10: hsl(var(--bg-hue) var(--bg-sat) 97%);
	--color-base-20: hsl(var(--bg-hue) var(--bg-sat) 95%);
	--color-base-25: hsl(var(--bg-hue) var(--bg-sat) 92%);
	--color-base-30: hsl(var(--bg-hue) var(--bg-sat) 88%);
	--color-base-35: hsl(var(--bg-hue) var(--bg-sat) 83%);
	--color-base-40: hsl(var(--bg-hue) var(--bg-sat) 74%);
	--color-base-50: hsl(var(--bg-hue) var(--bg-sat) 67%);
	--color-base-60: hsl(var(--bg-hue) var(--bg-sat) 44%);
	--color-base-70: hsl(var(--bg-hue) var(--bg-sat) 35%);
	--color-base-85s: hsl(var(--bg-hue) calc(var(--bg-sat) * 2) 24%);
	--color-base-100: hsl(var(--bg-hue) var(--bg-sat) 13%);
}

.theme-dark {
	--color-base-00: hsl(var(--bg-hue) var(--bg-sat) 12%);
	--color-base-10: hsl(var(--bg-hue) var(--bg-sat) 14%);
	--color-base-20: hsl(var(--bg-hue) var(--bg-sat) 16%);
	--color-base-25: hsl(var(--bg-hue) var(--bg-sat) 18%);
	--color-base-30: hsl(var(--bg-hue) var(--bg-sat) 22%);
	--color-base-35: hsl(var(--bg-hue) var(--bg-sat) 25%);
	--color-base-40: hsl(var(--bg-hue) var(--bg-sat) 33%);
	--color-base-50: hsl(var(--bg-hue) var(--bg-sat) 40%);
	--color-base-60: hsl(var(--bg-hue) var(--bg-sat) 60%);
	--color-base-70: hsl(var(--bg-hue) var(--bg-sat) 73%);
	--color-base-85s: hsl(var(--bg-hue) calc(var(--bg-sat) * 2) 82%);
	--color-base-100: hsl(var(--bg-hue) var(--bg-sat) 85%);
}

.theme-dark,
.theme-light {
	--hotkey-color: var(--secondary-accent);
	--bold-color: var(--text-accent-hover);
	--italic-color: var(--text-accent-hover);
	--text-selection: hsl(var(--color-accent-hsl), 20%);
	--text-normal: var(--color-base-85s);
	--active-line-color: var(--color-accent);
	--text-muted: var(--color-base-70);

	/* custom middle ground between text-muted and text-faint */
	--text-gray: var(--color-base-60);
	--text-faint: var(--color-base-50);
	--text-accent: var(--color-accent);
	--text-accent-hover: var(--hover-accent);
	--interactive-normal: var(--color-base-00);
	--interactive-hover: var(--color-base-20);
	--interactive-accent-hsl: var(--color-accent-hsl);
	--interactive-accent-hover: var(--hover-accent);

	/* links and tags */
	--tag-color: var(--secondary-accent);
	--tag-color-hover: var(--text-accent-hover);

	/* only used for annotation tags, disable in normal tags */
	--tag-radius: var(--radius-s);
	--link-color: var(--text-accent);
	--link-color-hover: var(--text-accent-hover);
	--link-external-color: var(--text-accent);
	--link-external-color-hover: var(--text-accent-hover);
	--inline-code-color: var(--secondary-accent);
	/* own variable */
}

/* ───────────────────────────────────────────────── */
/* << Custom Color Template
──────────────────────────────────────────────────── */
/* use this to create your own color scheme */

/*
.theme-light.theme-light {
	--bg-hue: 230;
	--bg-sat: 15%;

	--color-accent: hsl(184 79% 35%);
	--color-accent-hsl: 184 79% 35%;
	--interactive-accent: hsl(184 79% 30%);

	--secondary-accent: hsl(28 54% 51%);
	--hover-accent: hsl(328 100% 54%);
	--link-unresolved-color: hsl(101 42% 51%);
}

.theme-dark.theme-dark {
	--bg-hue: 230;
	--bg-sat: 15%;

	--color-accent: hsl(184 79% 45%);
	--color-accent-hsl: 184 79% 35%;
	--interactive-accent: hsl(184 79% 30%);

	--secondary-accent: hsl(28 63% 61%);
	--hover-accent: hsl(328 100% 64%);
	--link-unresolved-color: hsl(101 42% 51%);
	}
*/

/* ───────────────────────────────────────────────────── */
/* << Changed Obsidian Variables
──────────────────────────────────────────────────── */

body {
	/* this variable is determined by the accent color chosen by the user, so it
	* needs to be overwritten to be the same across this theme */
	/* stylelint-disable-next-line declaration-no-important */
	--text-on-accent: hsl(0 100% 100%) !important;

	/* Font */
	--font-text-theme: "iA Writer Quattro S";
	--font-interface-theme: "Recursive S";
	--font-monospace-theme: "Ubuntu Mono S";
	--line-height-tight: 1.2;
	--code-block-scaling: 1;
	--code-size: calc(var(--font-small) * var(--code-block-scaling));

	/* Headings */
	--h1-font: var(--font-heading-theme);
	--h2-font: var(--font-heading-theme);
	--h3-font: var(--font-heading-theme);
	--h4-font: var(--font-heading-theme);
	--h5-font: var(--font-heading-theme);
	--h6-font: var(--font-heading-theme);
	--heading-scaling: 1;
	--h1-size: calc(1.7em * var(--heading-scaling));
	--h2-size: calc(1.5em * var(--heading-scaling));
	--h3-size: calc(1.35em * var(--heading-scaling));
	--h4-size: calc(1.2em * var(--heading-scaling));
	--h5-size: calc(1.1em * var(--heading-scaling));
	--h6-size: calc(1em * var(--heading-scaling));
	--inline-title-color: var(--text-gray);
	--inline-title-style: normal;
	--inline-title-margin-bottom: 0.75em;

	/* Tags */
	--tag-size: var(--font-text-size);
	--tag-decoration-hover: underline;
	--tag-background: none;
	--tag-background-hover: none;
	--tag-border-width: 0;
	--tag-padding-x: 0;
	--tag-padding-y: 0;

	/* Metadata */
	--metadata-gap: 1px;

	/* Tab */
	--tab-background-active: var(--bg3);
	--tab-stacked-header-width: 28px;

	/* Table */
	--table-text-size: calc(var(--font-text-size) * 0.95);
	--table-header-size: 1em;
	--table-header-weight: 600;
	--table-white-space: normal;
	--table-border-width: 1px;
	--table-border-color: var(--basic-border-color);
	--table-header-border-color: var(--basic-border-color);
	--table-header-border-width: 1px;
	--table-header-background: var(--bg5);
	--table-header-background-hover: var(--bg5);
	--table-row-alt-background: var(--b-row);
	/* needs to be fix at 1.3, otherwise glitchy when changing table cells */
	--table-line-height: 1.3;

	/* Blockquote */
	--blockquote-border-thickness: 8px;
	--blockquote-border-color: var(--bg5);
	--blockquote-background-color: var(--bg3);

	/* Tree items (file explorer, outline, etc.) */
	--nav-item-size: var(--font-ui-medium);
	--nav-item-color: var(--text-muted);
	--nav-item-color-hover: var(--text-accent-hover);
	--nav-item-color-active: var(--text-accent);
	--nav-item-color-highlighted: var(--text-accent-hover);

	/* Checkboxes */
	--checkbox-radius: var(--radius-m);
	--checkbox-size: 17px;
	--checkbox-color: var(--secondary-accent);
	--checkbox-color-hover: var(--hover-accent);
	--checkbox-border-color: var(--text-gray);
	--checkbox-border-color-hover: var(--hover-accent);
	--checkbox-marker-color: var(--background-primary);
	--checklist-done-decoration: line-through;
	--checklist-done-color: var(--text-faint);

	/* Callouts */
	--callout-title-size: 110%;
	--callout-padding: var(--size-4-2);

	/* Icons */
	--icon-color-hover: var(--hover-accent);
	--icon-stroke: 2px;

	/* Dividers (like hr or resize handles) */
	/* so the divider part at the top does not stand out */
	--divider-color: var(--titlebar-background-focused);
	--divider-color-hover: var(--hover-accent);
	--divider-width: 2px;
	--hr-color: var(--text-faint);
	--hr-thickness: 2px;

	/* Misc */
	--list-indent: 1.6em;
	--link-unresolved-opacity: 0.8;
	--code-background: var(--bg3);
	--status-bar-font-size: var(--font-ui-small);
	--metadata-input-font-size: var(--font-smallest);

	/* to be set via style setting */
	--file-line-width: 700px;

	/* Indentation Guide */
	--indentation-guide-width: 1.5px;
	--indentation-guide-width-active: var(--indentation-guide-width);
	--indentation-guide-color: var(--text-faint);
	--indentation-guide-color-active: var(--indentation-guide-color);
	--nav-indentation-guide-color: var(--text-faint);
}

.theme-dark {
	--titlebar-background: var(--bg6);
	--titlebar-background-focused: var(--bg5);
}

.theme-light {
	--titlebar-background: var(--bg5);
	--titlebar-background-focused: var(--bg4);
}

/* ───────────────────────────────────────────────── */
/* << Theme Variables
──────────────────────────────────────────────────── */

body {
	--signature: "⟡";
	--icon-font: "Material Icons (Filled)";
	--math-font: var(--font-monospace);
	--math-font-size: 1em;

	/* Optima pre-installed on macOS */
	--font-heading-theme: "Optima", "Recursive S";
	--font-canvas-cards-heading-theme: "Recursive S";
	--heading-letter-spacing: 1.5px;

	/* Use system fonts for longform */
	--longform-font-text-theme: "Garamond", "Times New Roman", serif;
	--longform-font-size: 1.3rem;
	--longform-base-line-height: 1;
	--longform-letter-spacing: 0px;
	--inactive-pane-opacity: 75%;
	--transition-delay-passing-over-protection: 200ms;
	--image-size: 50;
	--bg1: var(--color-base-00);
	--bg2: var(--color-base-10);
	--bg3: var(--color-base-20);
	--bg4: var(--color-base-25);
	--bg5: var(--color-base-30);
	--bg6: var(--color-base-35);

	/* overwrite Obsidian variables w/ --bg colors for consistency with plugins */
	--background-primary: var(--bg1);
	--background-primary-alt: var(--bg2);
	--background-secondary: var(--bg3);
	--basic-border-color: var(--color-base-50);
	--thin-border: 1px solid var(--basic-border-color);
	--basic-border: 2px solid var(--basic-border-color);
	--muted-border-color: var(--color-base-30);
	--thin-muted-border: 1px solid var(--muted-border-color);
	--muted-border: 2px solid var(--muted-border-color);
	--radius-xs: 2px;
	--readability-text-shadow-dark: 1px 1px 0px hsl(0 0% 0% / 100%);
}

.theme-light {
	--a-row: hsla(0 0% 0% / 2.5%);
	--b-row: hsla(0 0% 0% / 7.5%);
	--search-match-color: var(--color-orange);
}

.theme-dark {
	--a-row: hsla(0 0% 0% / 15%);
	--b-row: hsla(0 0% 0% / 30%);
	--search-match-color: var(--color-yellow);
}

/* stylelint-enable no-duplicate-selectors */

/* ───────────────────────────────────────────────── */
/* < Markup
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* << MathJax
──────────────────────────────────────────────────── */

body .markdown-source-view .cm-math,
body .markdown-preview-view .MJX-TEX {
	font-size: var(--math-font-size);
}

body .markdown-source-view .cm-math {
	font-family: var(--math-font);
}

/* ───────────────────────────────────────────────── */
/* << hr
──────────────────────────────────────────────────── */

.cm-hr {
	font-weight: 600;
	color: var(--hr-color);
}

/* ───────────────────────────────────────────────── */
/* << Tables
──────────────────────────────────────────────────── */
/* most table styling via Obsidian Variables */

table :is(ul, ol) {
	line-height: 1.1;
}

/* make lists in tables take up less space */
.markdown-rendered table :is(ul, ol) {
	/* stylelint-disable-next-line declaration-no-important */
	margin-block: 0 0 !important;
	margin-top: 0;
	margin-bottom: 0;
}

.markdown-preview-view table {
	margin-top: 0.5em;
	margin-bottom: 1.2em;
}

.is-live-preview.markdown-source-view.mod-cm6 .cm-embed-block:hover {
	border-radius: 0;
}

/* FIX disable hover effect on table rows, since Obsidian table vars do not
* allow us to do so. */
body .markdown-rendered tbody tr:nth-child(odd):hover {
	background-color: var(--table-row-alt-background);
}

/* automatically turn off readable line length when there is a table */
.unrestricted-line-length-tables:not(.is-mobile) :is(.markdown-source-view, .markdown-preview-view):has(table, .HyperMD-table-2) {
	--file-line-width: 100%;
}

/* Obsidian 1.5: Active Table Cells (requires Obsidian installer 1.1.9) */
body.highlight-active-cell .table-cell-wrapper:has(.cm-s-obsidian) {
	outline: 2.5px solid var(--color-accent);
}

/* FIX lists in tables looking off */
.table-cell-wrapper .list-bullet {
	float: none;
}

/* ───────────────────────────────────────────────── */
/* << Annotation Tags
──────────────────────────────────────────────────── */
/* stylelint-disable-next-line no-duplicate-selectors */
.theme-light {
	--annotation-tag-font-color: hsl(0 0% 13%);
}

/* stylelint-disable-next-line no-duplicate-selectors */
.theme-dark {
	--annotation-tag-font-color: hsl(0 0% 100%);
}

/* all annotation tags */
body:not(.annotation-tags-off) .tag:is([href="#goal"],
	[href="#idea"],
	[href="#question"],
	[href="#gap"],
	[href="#main"],
	[href="#disagree"],
	[href="#summary"],
	[href="#agree"],
	[href="#example"],
	[href="#definition"],
	[href="#method"],
	[href="#data"],
	[href="#important"],
	[href="#quote"],
	[href="#todo"],
	[href="#critique"],
	[href="#sidenote"],
	[href="#litreview"],
	[href="#epistemic-break"],
	[href="#hypothesis"]),
body:not(.annotation-tags-off) .cm-s-obsidian .cm-line span:is(.cm-tag-litreview,
	.cm-tag-idea,
	.cm-tag-sidenote,
	.cm-tag-goal,
	.cm-tag-critique,
	.cm-tag-todo,
	.cm-tag-quote,
	.cm-tag-method,
	.cm-tag-data,
	.cm-tag-disagree,
	.cm-tag-gap,
	.cm-tag-summary,
	.cm-tag-definition,
	.cm-tag-question,
	.cm-tag-main,
	.cm-tag-agree,
	.cm-tag-important,
	.cm-tag-example,
	.cm-tag-epistemic-break,
	.cm-tag-hypothesis) {
	padding-right: 6px;
	padding-left: 6px;
	font-style: normal;
	font-weight: 900;
	color: var(--text-normal);
	white-space: nowrap;
	border-radius: var(--tag-radius);
}

/* annotation tags in longform notes */
body:not(.annotation-tags-off) .longform-leaf .tag:is([href="#goal"],
	[href="#idea"],
	[href="#question"],
	[href="#gap"],
	[href="#main"],
	[href="#disagree"],
	[href="#summary"],
	[href="#agree"],
	[href="#example"],
	[href="#definition"],
	[href="#method"],
	[href="#data"],
	[href="#important"],
	[href="#quote"],
	[href="#todo"],
	[href="#critique"],
	[href="#sidenote"],
	[href="#litreview"],
	[href="#epistemic-break"],
	[href="#hypothesis"]),
body:not(.annotation-tags-off) .longform-leaf .cm-s-obsidian .cm-line span:is(.cm-tag-litreview,
	.cm-tag-idea,
	.cm-tag-sidenote,
	.cm-tag-goal,
	.cm-tag-critique,
	.cm-tag-todo,
	.cm-tag-quote,
	.cm-tag-method,
	.cm-tag-data,
	.cm-tag-disagree,
	.cm-tag-gap,
	.cm-tag-summary,
	.cm-tag-definition,
	.cm-tag-question,
	.cm-tag-main,
	.cm-tag-agree,
	.cm-tag-important,
	.cm-tag-example,
	.cm-tag-epistemic-break,
	.cm-tag-hypothesis) {
	font-family: var(--longform-font-text-theme);
	font-size: var(--longform-font-size);
}

/* the "#" */
body:not(.annotation-tags-off) .cm-s-obsidian .cm-line .cm-hashtag-begin:is(.cm-tag-litreview,
	.cm-tag-idea,
	.cm-tag-sidenote,
	.cm-tag-goal,
	.cm-tag-critique,
	.cm-tag-todo,
	.cm-tag-quote,
	.cm-tag-method,
	.cm-tag-data,
	.cm-tag-disagree,
	.cm-tag-gap,
	.cm-tag-summary,
	.cm-tag-definition,
	.cm-tag-question,
	.cm-tag-main,
	.cm-tag-agree,
	.cm-tag-important,
	.cm-tag-example,
	.cm-tag-epistemic-break,
	.cm-tag-hypothesis) {
	padding-right: 0;
	white-space: nowrap;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

/* the tag text */
body:not(.annotation-tags-off) .cm-s-obsidian .cm-line .cm-hashtag-end:is(.cm-tag-litreview,
	.cm-tag-idea,
	.cm-tag-sidenote,
	.cm-tag-goal,
	.cm-tag-critique,
	.cm-tag-todo,
	.cm-tag-quote,
	.cm-tag-method,
	.cm-tag-data,
	.cm-tag-disagree,
	.cm-tag-gap,
	.cm-tag-summary,
	.cm-tag-definition,
	.cm-tag-question,
	.cm-tag-main,
	.cm-tag-agree,
	.cm-tag-important,
	.cm-tag-example,
	.cm-tag-epistemic-break,
	.cm-tag-hypothesis) {
	padding-left: 0;
	font-family: var(--font-text);
	/* fixes their appearance in headings */
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

/* the individual annotation tags */
body:not(.annotation-tags-off) :is(.cm-tag-gap, .tag[href="#gap"]),
body:not(.annotation-tags-off) :is(.cm-tag-sidenote, .tag[href="#sidenote"]),
body:not(.annotation-tags-off) :is(.cm-tag-epistemic-break, .tag[href="#epistemic-break"]),
body:not(.annotation-tags-off) :is(.cm-tag-litreview, .tag[href="#litreview"]) {
	background-color: rgb(128 128 128 / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-gap, .tag[href="#gap"])::after {
	content: " 🕳";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-litreview, .tag[href="#litreview"])::after {
	content: " 📚";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-epistemic-break, .tag[href="#epistemic-break"])::after {
	content: " ⚡️";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-sidenote, .tag[href="#sidenote"])::after {
	content: " ⬅️";
}

body:not(.annotation-tags-off) :is(.cm-tag-question, .tag[href="#question"]),
body:not(.annotation-tags-off) :is(.cm-tag-goal, .tag[href="#goal"]) {
	background-color: hsl(178 100% 30% / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-goal, .tag[href="#goal"])::after {
	content: " 🏁";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-question, .tag[href="#question"])::after {
	content: " ❓";
}

body:not(.annotation-tags-off) :is(.cm-tag-critique, .tag[href="#critique"]) {
	background-color: hsl(330 60% 50% / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-critique, .tag[href="#critique"])::after {
	content: " ☝️";
}

body:not(.annotation-tags-off) :is(.cm-tag-idea, .tag[href="#idea"]),
body:not(.annotation-tags-off) :is(.cm-tag-quote, .tag[href="#quote"]) {
	background-color: hsl(86 100% 51% / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-idea, .tag[href="#idea"])::after {
	content: " 🤔";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-quote, .tag[href="#quote"])::after {
	content: " 💬";
}

body:not(.annotation-tags-off) :is(.cm-tag-summary, .tag[href="#summary"]),
body:not(.annotation-tags-off) :is(.cm-tag-important, .tag[href="#important"]) {
	background-color: rgb(255 120 15 / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-summary, .tag[href="#summary"])::after {
	content: " ✴️";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-important, .tag[href="#important"])::after {
	content: " 📌";
}

body:not(.annotation-tags-off) :is(.cm-tag-data, .tag[href="#data"]),
body:not(.annotation-tags-off) :is(.cm-tag-method, .tag[href="#method"]) {
	background-color: rgb(170 121 66 / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-method, .tag[href="#method"])::after {
	content: " 🔬";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-data, .tag[href="#data"])::after {
	content: " 📊";
}

body:not(.annotation-tags-off) :is(.cm-tag-hypothesis, .tag[href="#hypothesis"]),
body:not(.annotation-tags-off) :is(.cm-tag-todo, .tag[href="#todo"]),
body:not(.annotation-tags-off) :is(.cm-tag-main, .tag[href="#main"]) {
	background-color: rgb(32 156 238 / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-todo, .tag[href="#todo"])::after {
	content: " ☑️";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-hypothesis, .tag[href="#hypothesis"])::after {
	content: " ⏺";
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-main, .tag[href="#main"])::after {
	content: " 👉";
}

body:not(.annotation-tags-off) :is(.cm-tag-definition, .tag[href="#definition"]) {
	background-color: rgb(217 188 77 / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-definition, .tag[href="#definition"])::after {
	content: " 💡";
}

body:not(.annotation-tags-off) :is(.cm-tag-agree, .tag[href="#agree"]) {
	background-color: rgb(35 209 96 / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-agree, .tag[href="#agree"])::after {
	content: " ✅";
}

body:not(.annotation-tags-off) :is(.cm-tag-disagree, .tag[href="#disagree"]) {
	background-color: rgb(255 56 96 / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-disagree, .tag[href="#disagree"])::after {
	content: " ⛔️";
}

body:not(.annotation-tags-off) :is(.cm-tag-example, .tag[href="#example"]) {
	background-color: rgb(230 128 253 / 50%);
}

body:not(.annotation-tags-off) :is(.cm-hashtag-end.cm-tag-example, .tag[href="#example"])::after {
	content: " ⚛️";
}

/* ───────────────────────────────────────────────── */
/* << Bold & Italic
──────────────────────────────────────────────────── */

.modal-container strong,
.uncolored-bold:is(.theme-light, .theme-dark) {
	--bold-color: var(--text-normal);
}

.modal-container em,
.uncolored-italic:is(.theme-light, .theme-dark) {
	--italic-color: var(--text-normal);
}

/* ───────────────────────────────────────────────── */
/* << Tasks
──────────────────────────────────────────────────── */
/* most styling in form of changed --checkbox variables */

input[type="checkbox"] {
	border-width: 1.5px;
}

.contains-task-list.contains-task-list {
	--list-indent: 1.6em;
}

body .cm-s-obsidian span.cm-formatting-task {
	color: var(--text-gray);
}

/* ───────────────────────────────────────────────── */
/* << Footnotes
──────────────────────────────────────────────────── */

/* footnotes-references in text */
.cm-footref.cm-footref.cm-footref.cm-footref,
.footnotes li::marker,
.cm-hmd-footnote.cm-hmd-footnote.cm-hmd-footnote.cm-hmd-footnote.cm-hmd-footnote,
.footnote-link {
	color: var(--secondary-accent);
}

/* bold to increase readability */
.cm-footref,
.footnote-link {
	font-weight: 600;
	text-rendering: geometricprecision;
}

body .HyperMD-footnote.cm-line.cm-line,
.footnotes.footnotes li {
	padding-top: var(--size-4-1);
	padding-bottom: var(--size-4-1);
	line-height: 1.2;
}

/* separator line above the first footnote */
.cm-line:not(.HyperMD-footnote)+.HyperMD-footnote.HyperMD-footnote,
.footnotes hr {
	padding-top: var(--size-4-3);
	border-top: var(--basic-border);
}

.footnotes hr {
	margin-top: 40px;
	margin-bottom: 0;
}

.cm-line.HyperMD-footnote.HyperMD-footnote {
	padding-left: 0;
}

.footnote-link:hover {
	color: var(--text-accent-hover);
	text-decoration: none;
	/* remove underline which only decreases readability */
}

.footnote-backref {
	margin-left: var(--size-2-1);
	font-family: Inter, sans-serif;
	font-size: 90%;
	color: var(--text-gray);
	text-decoration: none;
}

/* ───────────────────────────────────────────────── */
/* << Links
──────────────────────────────────────────────────── */
/* link styling also done in section for color scheme variables
and changed Obsidian variables */

u,
.cm-underline,
.internal-link,
.external-link,
.cm-url,
.cm-link-alias {
	text-decoration-skip-ink: none;
	text-underline-offset: 2px;
}

.cm-hmd-internal-link .cm-underline.cm-underline,
.markdown-preview-view .internal-link:not(.multi-select-pill, .metadata-link-inner) {
	text-decoration: underline double 1.1px;
}

/* dotted underline links to headings */
.markdown-preview-view .internal-link[href*="#"] {
	text-decoration: underline dotted 1px;
}

/* dashed alias link: Source Mode / LP */
.markdown-source-view .cm-link-alias.cm-link-alias.cm-link-alias {
	text-decoration: underline dashed 1px;
}

/* tiny fix for weird LP CSS */
.is-live-preview .cm-link-alias.cm-link-alias.cm-link-alias .cm-underline {
	text-decoration: none;
}

/* dashed alias link: Preview Mode (works cause only aliases get an aria-label) */
body:not(.is-mobile) .markdown-preview-view .internal-link[aria-label] {
	text-decoration: underline dashed 1px;
}

.dataview.dataview.dataview a.internal-link {
	/* undoing of this styling in dataview section,
	since dataview internal links do have aria labels, too */
	text-decoration: solid underline 1.5px;
}

body .cm-string.cm-url {
	color: var(--text-gray);
}

/* don't underline the formatting */
.cm-s-obsidian .cm-url.cm-formatting,
body:not(.show-urls) .cm-line:not(.cm-active) .cm-string.cm-url,
.cm-link-alias-pipe.cm-link-alias-pipe.cm-link-alias-pipe.cm-link-alias-pipe.cm-link-alias-pipe,
.cm-formatting-link.cm-formatting-link.cm-formatting-link {
	color: var(--text-faint);
	text-decoration: none;
	cursor: default;
}

/* ───────────────────────────────────────────────── */
/* <<< Fold external URLs (Source Mode)
──────────────────────────────────────────────────── */
body:not(.show-urls) .cm-s-obsidian:not(.is-live-preview) .cm-line:not(.cm-active) .cm-string.cm-url:not(.cm-formatting) {
	font-size: 0;
	letter-spacing: 0;
	/* letter spacing causes some gaps even with font-size 0 */
}

body:not(.show-urls) .cm-s-obsidian:not(.is-live-preview) .cm-line:not(.cm-active) .cm-string.cm-url:not(.cm-formatting)::after {
	position: relative;
	top: 2px;
	font-family: var(--icon-font);
	font-size: calc(var(--font-text-size) * 0.9);
	content: "link";
}

/* so quickly scrolling through a list of links does not expand the URLs */
body:not(.show-urls) .cm-s-obsidian:not(.is-live-preview) .cm-line.cm-active .cm-string.cm-url:not(.cm-formatting)::after,
body:not(.show-urls) .cm-s-obsidian:not(.is-live-preview) .cm-line.cm-active .cm-string.cm-url:not(.cm-formatting) {
	transition-delay: var(--transition-delay-passing-over-protection);
}

/* remove external link icon */
.external-link {
	padding-right: 0;
	background-image: none;
}

/* ───────────────────────────────────────────────── */
/* << Code
──────────────────────────────────────────────────── */
/* styling of code in general */

.markdown-preview-view.markdown-preview-view :is(pre, code),
.cm-s-obsidian .HyperMD-codeblock,
.cm-inline-code {
	--codeblock-border: var(--thin-muted-border);
	--codeblock-roundness: var(--radius-s);
	--code-block-alt-bg: var(--bg5);
	--slight-code-roundish: var(--radius-xs);
}

/* ───────────────────────────────────────────────── */
/* <<< Inline Code
──────────────────────────────────────────────────── */

/* "*:not(pre) > code" targets inline code
(i.e. code that is not in a pre (= block) ) */
.is-live-preview code,
body .markdown-preview-view *:not(pre)>code,
.cm-inline-code.cm-inline-code.cm-inline-code.cm-inline-code.cm-inline-code.cm-inline-code {
	color: var(--inline-code-color);
	background-color: var(--bg2);
	/* more distinduishable from background */
}

.is-live-preview code,
.markdown-preview-view *:not(pre)>code {
	border-radius: var(--slight-code-roundish);
}

.is-live-preview code,
.markdown-source-view .cm-line .cm-inline-code:not(.cm-formatting-code),
.markdown-preview-view *:not(pre)>code {
	background-color: var(--bg2);
}

/* interaction with blockquotes */
.markdown-preview-view blockquote>*:not(pre)>code,
.cm-quote.cm-inline-code.cm-inline-code.cm-inline-code.cm-inline-code.cm-inline-code {
	background-color: var(--bg3);
}

.cm-inline-code {
	padding: 1px 0;
	background-color: var(--bg2);
	border-radius: var(--slight-code-roundish);
}

/* inline code surrounded by backticks */
.cm-formatting-code+.cm-inline-code:not(.cm-formatting-code) {
	border-radius: 0;
}

/* opening backtick */
.cm-formatting-code.cm-formatting-code {
	border-radius: var(--slight-code-roundish) 0 0 var(--slight-code-roundish);
}

/* closing backtick */
.cm-inline-code:not(.cm-formatting-code)+.cm-formatting-code {
	border-radius: 0 var(--slight-code-roundish) var(--slight-code-roundish) 0;
}

/* live preview */
.is-live-preview .cm-active .cm-inline-code:not(.cm-formatting-code) {
	border-radius: 0;
}

/* ───────────────────────────────────────────────── */
/* <<< Code Blocks
──────────────────────────────────────────────────── */
/* templater code gets same size as code blocks */
.cm-templater-command.cm-templater-command {
	font-size: var(--code-size);
}

/* Code blocks in Edit Mode */
:is(.HyperMD-codeblock-end, .HyperMD-codeblock-begin) .cm-formatting-code-block {
	color: var(--text-muted);
}

.cm-s-obsidian .HyperMD-codeblock {
	line-height: 1.4em;
}

body .markdown-source-view.mod-cm6 .cm-line.HyperMD-codeblock {
	padding-left: var(--size-2-2);
}

.cm-s-obsidian div.HyperMD-codeblock-begin-bg {
	background-color: var(--code-block-alt-bg);
	border: var(--codeblock-border);
	border-bottom: none;
	border-top-left-radius: var(--codeblock-roundness);
	border-top-right-radius: var(--codeblock-roundness);
}

.cm-s-obsidian div.HyperMD-codeblock-end-bg {
	border-bottom: var(--codeblock-border);
	border-bottom-right-radius: var(--codeblock-roundness);
	border-bottom-left-radius: var(--codeblock-roundness);
}

div.HyperMD-codeblock-bg:not(.HyperMD-codeblock-begin-bg) {
	border-right: var(--codeblock-border);
	border-left: var(--codeblock-border);
}

/* Code blocks in Live Preview */
.cm-line.HyperMD-codeblock .code-block-flair {
	top: unset;
	padding: 0 1px;
	font-size: calc(var(--code-size) * 0.9);
	color: var(--text-muted);
}

/* Code Blocks in Reading Mode */
.markdown-preview-view.markdown-preview-view pre {
	padding: 0;
	margin-top: var(--size-4-2);
	border: var(--codeblock-border);
	border-radius: var(--codeblock-roundness);
}

.markdown-preview-view pre code {
	padding: var(--size-4-1) var(--size-4-2);
}

/* border on top created like this, since the
::after element cannot be moved beyond a border */
.markdown-reading-view pre[class*="language-"]::before {
	display: block;
	line-height: 1.5em;
	content: " ";
	background-color: var(--code-block-alt-bg);
	border-top-left-radius: calc(var(--codeblock-roundness) * 0.8);
	border-top-right-radius: calc(var(--codeblock-roundness) * 0.8);
}

/* CODE BLOCK WITHOUT LANGUAGE */
.markdown-reading-view pre:not([class^="language-"]) {
	padding: 7px 7px 0;
	overflow-y: hidden;
}

.copy-code-button.copy-code-button.copy-code-button {
	top: unset;
	bottom: 0;
	padding: 0 var(--size-2-2);
	background-color: var(--interactive-normal);
}

.copy-code-button.copy-code-button.copy-code-button:hover {
	color: var(--interactive-normal);
	background-color: var(--hover-accent);
}

.markdown-reading-view pre:not([class^="language-"]) code {
	display: block;
	/* prevents bad multiline-indentation */
	color: var(--text-normal);
}

/* <<< language labels */
pre[class*="language-"]::after {
	position: absolute;
	top: 2px;
	right: 5px;
	font-size: 0.9rem;
	color: var(--text-muted);
	text-shadow: none;
	content: attr(class);
	/* fallback when none of the languages below is used */
}

pre.language-c::after {
	content: "C";
}

pre.language-python::after {
	content: "Python";
}

pre.language-py::after {
	content: "Python";
}

pre.language-nginx::after {
	content: "Nginx";
}

pre.language-css::after {
	content: "CSS";
}

pre.language-node::after {
	content: "Node";
}

pre.language-react::after {
	content: "React";
}

pre.language-javascript::after {
	content: "JavaScript";
}

pre.language-js::after {
	content: "JavaScript";
}

pre.language-typescript::after {
	content: "TypeScript";
}

pre.language-ts::after {
	content: "TypeScript";
}

pre.language-php::after {
	content: "PHP";
}

pre.language-shell::after {
	content: "Shell";
}

pre.language-bash::after {
	content: "Bash";
}

pre.language-zsh::after {
	content: "zsh";
}

pre.language-flow::after {
	content: "Flow";
}

pre.language-sequence::after {
	content: "Sequence";
}

pre.language-sql::after {
	content: "SQL";
}

pre.language-yaml::after {
	content: "YAML";
}

pre.language-ini::after {
	content: "INI";
}

pre.language-xml::after {
	content: "XML";
}

pre.language-git::after {
	content: "GIT";
}

pre.language-cs::after {
	content: "C#";
}

pre.language-cpp::after {
	content: "C++";
}

pre.language-java::after {
	content: "JAVA";
}

pre.language-html::after {
	content: "HTML";
}

pre.language-txt::after {
	content: "Plain Text";
}

pre.language-text::after {
	content: "Plain Text";
}

pre.language-url::after {
	content: "URL";
}

pre.language-applescript::after {
	content: "AppleScript";
}

pre.language-markdown::after {
	content: "Markdown";
}

pre.language-md::after {
	content: "Markdown";
}

pre.language-regex::after {
	content: "Regex";
}

pre.language-lua::after {
	content: "Lua";
}

pre.language-haskell::after {
	content: "Haskell";
}

pre.language-vim::after {
	content: "vimrc";
}

/* <<< Code Block: Line Numbers in Edit Mode */
body:not(.no-codeblock-line-numbers) .HyperMD-codeblock-begin {
	counter-reset: codeblock-line-numbers;
}

body:not(.no-codeblock-line-numbers) .HyperMD-codeblock.cm-line:not(.HyperMD-codeblock-begin, .HyperMD-codeblock-end) {
	padding-left: 2.8em;
}

body:not(.no-codeblock-line-numbers) .HyperMD-codeblock:not(.HyperMD-codeblock-begin, .HyperMD-codeblock-end)::before {
	position: absolute;
	left: 0;
	width: 1.7em;
	height: 100%;
	/* ensures border closes w/ wrapped lines */
	padding-right: 1.4em;
	/* space is needed for collapse indicators */
	font-size: 0.75em;
	line-height: 2;
	color: var(--text-muted);
	text-align: right;
	content: counter(codeblock-line-numbers);
	counter-increment: codeblock-line-numbers;
	background-color: var(--bg2);
}

/* code block end */
body:not(.no-codeblock-line-numbers) .HyperMD-codeblock-end .cm-formatting-code-block {
	padding: 2px 3.5px;
	margin-left: -4px;
	border-bottom-left-radius: var(--codeblock-roundness);
}

body:not(.no-codeblock-line-numbers) .is-live-preview .HyperMD-codeblock-end span:nth-child(2)::before {
	padding: 2px 0.85em;
	margin-left: -4px;
	content: " ";
	background-color: var(--bg2);
	border-bottom-left-radius: var(--radius-s);
}

body:not(.no-codeblock-line-numbers) .HyperMD-codeblock-end .cm-formatting-code-block:first-child {
	/* "first-child" ensures that indented code blocks (e.g. in lists) do not look off */
	background-color: var(--bg2);
}

/* No Wrapping */
/* .markdown-reading-view ensures that these do not get applied to canvases */
.markdown-reading-view .markdown-preview-view pre:not(.frontmatter) code {
	white-space: pre;
}

.markdown-reading-view .markdown-preview-view pre:not(.frontmatter, [class*="language-"]) {
	overflow-x: scroll;
}

/* ───────────────────────────────────────────────── */
/* << Syntax Highlighting
──────────────────────────────────────────────────── */
/* increase readability */
body.theme-light {
	--color-cyan: hsl(179 60% 38%);
}

.theme-light .cm-s-obsidian .cm-templater-command.cm-templater-execution-tag {
	color: hsl(66 100% 33%);
}

/* ───────────────────────────────────────────────── */
/* << Lists
──────────────────────────────────────────────────── */

.markdown-rendered :is(ul, ol) {
	margin-top: 0.2em;
	margin-bottom: 0.2em;
}

.markdown-rendered ol {
	padding-inline-start: 1.9em;
}

.markdown-rendered ul:not(.contains-task-list) {
	padding-inline-start: 1em;
}

.markdown-rendered ul.contains-task-list {
	padding-inline-start: 1.65em;
}

/* ───────────────────────────────────────────────── */
/* << Headings
──────────────────────────────────────────────────── */

.less-heading-letter-spacing {
	--heading-letter-spacing: 0;
}

.markdown-rendered :is(h1, h2, h3, h4, h5, h6) {
	margin-top: 1em;
	margin-bottom: 0.3em;
}

body p {
	margin-block-start: 0.3em;
}

.cm-header,
.markdown-rendered.markdown-rendered :is(h1, h2, h3, h4, h5, h6) {
	font-weight: 700;
	letter-spacing: var(--heading-letter-spacing);
}

.cm-formatting-header {
	color: var(--text-faint);
}

body:not(.no-alternating-header-colors) :is(.cm-header-1, .cm-header-3, .cm-header-5):not(.cm-formatting-header),
body:not(.no-alternating-header-colors) .view-content :is(h1, h3, h5) {
	color: var(--alt-heading-color);
}

/* <<< Live Preview Heading Level Indicator */
body:not(.no-lp-heading-level-indicator) .is-live-preview .cm-header::before {
	position: relative;
	bottom: 1px;
	left: -2px;
	padding-right: 4px;
	padding-left: 4px;
	font-family: var(--font-monospace);
	font-size: 0.8rem;
	font-style: normal;
	line-height: 1em;
	color: var(--text-muted);
}

body:not(.no-lp-heading-level-indicator) .is-live-preview .cm-line:not(.cm-active)>.cm-header-1::before {
	content: "H1";
}

body:not(.no-lp-heading-level-indicator) .is-live-preview .cm-line:not(.cm-active)>.cm-header-2::before {
	content: "H2";
}

body:not(.no-lp-heading-level-indicator) .is-live-preview .cm-line:not(.cm-active)>.cm-header-3::before {
	content: "H3";
}

body:not(.no-lp-heading-level-indicator) .is-live-preview .cm-line:not(.cm-active)>.cm-header-4::before {
	content: "H4";
}

body:not(.no-lp-heading-level-indicator) .is-live-preview .cm-line:not(.cm-active)>.cm-header-5::before {
	content: "H5";
}

body:not(.no-lp-heading-level-indicator) .is-live-preview .cm-line:not(.cm-active)>.cm-header-6::before {
	content: "H6";
}

body:not(.no-lp-heading-level-indicator) .is-live-preview .cm-header~.cm-header::before {
	/* FIX only first header element gets the prefix */
	display: none;
}

/* <<< Headers with background colors */
body:not(.no-heading-background) .markdown-source-view .cm-line.HyperMD-header,
body:not(.no-heading-background) .markdown-preview-view :is(h1, h2, h3, h4, h5, h6) {
	background-color: var(--bg4);
	border: var(--thin-border);
	border-radius: var(--radius-s);
	padding-left: 6px;

	/* remove padding of first heading */
	padding-top: 0;
}

/* ───────────────────────────────────────────────── */
/* << Inline Title
──────────────────────────────────────────────────── */

.inline-title {
	letter-spacing: var(--heading-letter-spacing);
}

/* ───────────────────────────────────────────────── */
/* << Blockquotes
──────────────────────────────────────────────────── */

.markdown-source-view:not(.is-live-preview) .cm-line.HyperMD-quote.HyperMD-quote.HyperMD-quote {
	border-left: var(--blockquote-border-thickness) solid var(--blockquote-border-color);
}

.cm-hmd-indent-in-quote,
:is(.markdown-preview-view, .community-modal-readme) blockquote,
.cm-line.HyperMD-quote .cm-quote:not(.cm-formatting,
	.cm-url,
	.cm-link,
	.cm-hmd-internal-link,
	.cm-formatting-link,
	.cm-strong,
	.cm-em) {
	color: var(--text-normal);
}

.cm-line.HyperMD-quote .cm-quote.cm-strong {
	color: var(--bold-color);
}

.cm-line.HyperMD-quote .cm-quote.cm-em {
	color: var(--italic-color);
}

/* edit mode & live preview */
.HyperMD-quote.HyperMD-quote.HyperMD-quote {
	padding: 3px 10px;
	background-color: var(--blockquote-background-color);
	border-radius: var(--radius-s);
}

/* less padding between quote blocks */
.HyperMD-quote:not(.HyperMD-callout)+.HyperMD-quote.HyperMD-quote.HyperMD-quote {
	padding-top: 0;
}

/* style links in blockquotes, e.g. quote sources */
.cm-link.cm-quote:not(.cm-formatting) {
	color: var(--text-accent);
}

.cm-string.cm-url.cm-quote,
.cm-link.cm-quote {
	font-style: unset;
}

.is-live-preview .HyperMD-quote::before {
	border-radius: var(--radius-s) 0 0 var(--radius-s);
}

.is-live-preview .HyperMD-quote .cm-formatting-quote-1 {
	position: relative;
	left: 2px;
}

/* HACK live-preview: prevent rounded corners with consecutive block quotes */
.is-live-preview .HyperMD-quote+.HyperMD-quote::before {
	margin-top: -0.5em;
	border-bottom-left-radius: var(--radius-s);
}

/* HACK source-mode: prevent rounded corners with consecutive block quotes */
.markdown-source-view:not(.is-live-preview) .HyperMD-quote+.HyperMD-quote::before {
	position: absolute;
	width: var(--blockquote-border-thickness);
	height: 1.5em;
	margin-top: -12px;
	margin-left: calc(-1 * (var(--blockquote-border-thickness)));
	white-space: pre;
	content: " ";
	background-color: var(--blockquote-border-color);
}

.markdown-source-view:not(.is-live-preview) .HyperMD-quote+.HyperMD-quote.HyperMD-quote-lazy::before {
	margin-left: calc(-1 * (var(--blockquote-border-thickness) + 10px));
}

.markdown-source-view .HyperMD-quote+.HyperMD-quote::after {
	position: absolute;
	top: -8px;
	right: 0;
	/* so it does not overlay the callout header */
	z-index: -1;
	width: 0.5em;
	height: 1em;
	content: "";
	background-color: var(--blockquote-background-color);
}

/* Reading Mode */
:is(.markdown-preview-view, .community-modal-readme, .is-live-preview) blockquote {
	padding: var(--size-2-2) var(--size-4-3);
	border-radius: var(--radius-s);
}

/* block quotes in lists */
.markdown-preview-view li blockquote {
	margin-top: 6px;
	margin-bottom: 2px;
}

/* option to left-align */
body:not(.blockquotes-left-aligned) .app-container :is(.markdown-preview-view, .community-modal-readme) blockquote {
	hyphens: auto;
	text-align: justify;
}

blockquote,
.cm-hmd-indent-in-quote,
.HyperMD-quote.HyperMD-quote-1,
.cm-quote.cm-inline-code,
blockquote code {
	line-height: 1.4;
}

/* ───────────────────────────────────────────────── */
/* << Callouts
──────────────────────────────────────────────────── */
.callout {
	--callout-icon: triangle;
	/* default callout icon */
	--icon-stroke: 2px;
	--sidenote-callout-width: 35%;
	--callout-border-width: 1.5px;
	--callout-padding: 0;
	--callout-radius: var(--radius-s);
	--callout-blend-mode: var(--highlight-mix-blend-mode);
	--callout-title-size: inherit;
	background-color: rgb(var(--callout-color), 11%);
}

.callout :is(h1, h2, h3, h4, h5, h6) {
	font-family: var(--font-interface);
}

.HyperMD-callout.HyperMD-callout.HyperMD-callout.HyperMD-callout {
	padding-top: var(--size-2-1);
	padding-bottom: var(--size-2-1);
	font-weight: 700;
	background-color: var(--bg4);
}

.cm-hmd-callout.cm-hmd-callout.cm-hmd-callout {
	color: var(--secondary-accent);
	opacity: 0.8;
}

.callout-title {
	padding: 2px 8px 3px;
	letter-spacing: 0.8px;
	background-color: rgb(var(--callout-color), 15%);
	border-bottom: var(--callout-border-width) solid
		/* stylelint-disable-next-line color-function-notation */
		rgb(var(--callout-color), var(--callout-border-opacity));
}

.callout-content {
	padding: 2px 8px;
}

.callout-title-inner,
.callout-icon {
	margin-right: var(--size-2-3);
}

.callout-title,
body .callout-icon .svg-icon {
	color: var(--text-muted);
	stroke-width: 3px;
}

/* interaction of callouts with other markdown syntax */
.callout-content :is(ul, p, ol) {
	margin: 6px 0;
	line-height: 1.4em;
}

.callout-content li {
	margin: 5px 0;
	line-height: 1.1em;
}

.callout-content.callout-content ul {
	padding-left: 20px;
	margin-top: 5px;
}

.callout-content p+p {
	margin-top: 12px;
}

.callout ol {
	padding-inline-start: 1.85em;
	margin-top: var(--size-4-1);
	margin-bottom: 0;
}

.callout ol li::marker {
	color: var(--text-gray);
}

.callout.callout.callout :is(code, pre) {
	background-color: var(--bg1);
}

body .callout ul.contains-task-list {
	padding-inline-start: 1.5em;
}

.callout .task-list-item-checkbox {
	top: -2px;
	width: 1em;
	height: 1em;
	margin-bottom: 0;
}

/* <<< Sidenote Callouts */
.callout[data-callout*="sidenote"] {
	--callout-icon: lightbulb;
	--callout-color: 255, 210, 107;
	float: right;
	max-width: calc(var(--file-line-width) * var(--sidenote-callout-width) * 0.01);
	margin: 4px 0 4px 7px;
	font-size: 90%;
	line-height: 1.3em;
}

.sidenote-callout-outdent .callout[data-callout$="sidenote"] {
	margin-right: -30px;
	/* more makes it cut off with a narrow window size */
}

.callout[data-callout*="sidenote"] .callout-title {
	padding-top: 1px;
	padding-bottom: 1px;
}

body .callout {
	clear: right;
}

/* <<< Config Callout */
.callout.callout.callout[data-callout*="config"] {
	--callout-icon: settings;
	--callout-color: 202, 164, 255;
}

.callout[data-callout*="config"] .task-list-item {
	margin-inline-start: 3px;
	color: var(--text-normal);
	text-decoration: none;
}

.callout[data-callout*="config"] .task-list-item .task-list-item-checkbox {
	margin-bottom: -3px;
}

.callout[data-callout*="config"] .task-list-item .task-list-item-checkbox::after {
	display: none;
}

/* attachments */
.callout[data-callout^="attachment"],
.callout[data-callout^="file"] {
	--callout-icon: paperclip;
	--callout-color: 255, 90, 143;
}

/* URLs */
.callout[data-callout^="URL" i] {
	--callout-icon: link;
	--callout-color: 255, 240, 143;
}

.callout[data-callout^="URL" i] .callout-title {
	text-transform: uppercase;
}

/* "Warn" should work the same as "Warning" */
.callout[data-callout^="warn"] {
	--callout-icon: lucide-alert-triangle;
	--callout-color: var(--callout-warning);
}

/* ───────────────────────────────────────────────── */
/* << Trailing Whitespace (Two Space Rule)
──────────────────────────────────────────────────── */
/* needs this selector, so it does not affect spaces in the table editor
 * (Obsidian 1.5), which only differs at the level of `.view-content` */
body:not(.hide-trailing-whitespace) .view-content>.cm-s-obsidian>div>.cm-scroller>.cm-sizer>.cm-contentContainer>.cm-content>.cm-line> :is(.cm-trailing-space-a, .cm-trailing-space-b, .cm-trailing-space-new-line)::after {
	font-size: 1em;
	font-weight: 600;
	color: var(--text-faint);
	content: "·";
}

/* ───────────────────────────────────────────────── */
/* << Strikethroughs
──────────────────────────────────────────────────── */

/* make the "~" readable */
.cm-formatting-strikethrough {
	text-decoration: none;
}

/* ───────────────────────────────────────────────── */
/* << Highlights
──────────────────────────────────────────────────── */

/* stylelint-disable-next-line no-duplicate-selectors */
.theme-light {
	--highlight-hue-1: 60;
	--highlight-sla-values: 85% 70% / 40%;
}

/* stylelint-disable-next-line no-duplicate-selectors */
.theme-dark {
	--highlight-hue-1: 60;
	--highlight-sla-values: 85% 40% / 40%;
}

mark,
.cm-highlight,
.style-settings-container {
	--highlight-color-1: hsla(var(--highlight-hue-1) var(--highlight-sla-values));
}

mark {
	padding-right: 2px;
	padding-left: 2px;
}

.markdown-rendered mark,
.cm-s-obsidian span.cm-highlight {
	background-color: var(--highlight-color-1);
}

/* ───────────────────────────────────────────────── */
/* << Pandoc Citations
──────────────────────────────────────────────────── */

/* applies to all []-links (barelinks), partially also to footnotes */
body:not(.no-pandoc-citation-emphasis) .cm-hmd-barelink.cm-hmd-barelink.cm-hmd-barelink.cm-hmd-barelink.cm-hmd-barelink:not(.cm-formatting) {
	color: var(--secondary-accent);
}

body:not(.no-pandoc-citation-emphasis) .cm-hmd-barelink.cm-formatting:not(.cm-footref) {
	color: var(--text-faint);
}

/* ───────────────────────────────────────────────── */
/* << Images
──────────────────────────────────────────────────── */
/* .workspace-leaf-content so images in modal aren't affected, :not([data-type="image"]) so
 * images as files aren't affected */
body:not(.is-mobile, .max-image-size-toggle) .workspace-leaf-content:not([data-type="image"]) img:not(:active),
body:not(.is-mobile, .max-image-size-toggle) .oz-image-widget-cm6>img:not(:active) {
	max-width: calc(var(--image-size) * 1%);
	cursor: zoom-in;
}

/* Remove Image Size Toggle in Style settings, since only used for command
 * (see dummy setting in Style Settings) */
.style-settings-container .setting-item[data-id="max-image-size-toggle"] {
	display: none;
}

/* images as file with reduced with to avoid collusions with breadcrumbs or
 * traffic lights */
.workspace-leaf-content .image-container img {
	max-width: 97%;
	margin-top: 1em;
}

/* Image Alt as caption
(except when no explicit alt is provided and urls are the alt text) */
body:not(.no-image-alttext-caption) .image-embed[alt]:not([alt$=".png"], [alt$=".jpg"], [alt$=".jpeg"], [alt$=".tiff"])::after {
	padding-top: var(--size-2-1);
	margin-bottom: 1em;
	font-family: var(--font-interface);
	font-size: var(--font-smaller);
	font-style: italic;
	color: var(--text-gray);
	content: attr(alt);
}

.view-content img[src]:not(.emoji, .link-favicon) {
	border: var(--thin-muted-border);
	border-radius: var(--radius-s);
}

/* centers image and image caption */
.image-embed[alt]::after {
	display: block;
	text-align: center;
}

/* .emoji class are Twitter Images for Emojis from Emoji Toolbar */
.view-content img:not(.emoji) {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

/* ───────────────────────────────────────────────── */
/* < Modals
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* << Settings Menu
──────────────────────────────────────────────────── */

body:not(.show-close-buttons) .modal-close-button {
	display: none;
}

.vertical-tab-content {
	padding: var(--size-4-3) var(--size-4-5) var(--size-4-8) var(--size-4-6);
}

.modal.mod-settings {
	border: var(--basic-border);
}

.modal.mod-settings .vertical-tab-content-container {
	padding: 0;
	margin-top: 0;
	border-left: var(--basic-border);
}

/* setting tab selection */
.vertical-tab-header-group,
.vertical-tab-header {
	padding: 0;
}

.vertical-tab-header.vertical-tab-header.vertical-tab-header {
	padding-bottom: var(--size-4-18);
	/* overscroll */
	border-right: none;
}

.vertical-tab-header-group-title {
	display: none;
}

.vertical-tab-header-group:not(:first-child) {
	border-top: var(--basic-border);
}

.vertical-tab-nav-item {
	margin-bottom: 0;
	/* distance between items */
	font-size: 1em;
	line-height: 1.35;
	/* distance between items */
	border-radius: 0;
}

.mod-settings input:is([type="text"], [type="search"]) {
	min-width: 250px;
	background-color: var(--bg1);
}

/* thicker "community plugins", "hotkey" & "appearance" */
/* via non-last-child b/c the settings search plugin adds a group in front */
.vertical-tab-header-group:nth-last-child(3) .vertical-tab-header-group-items .vertical-tab-nav-item:is(:nth-child(3), :nth-child(4), :last-child) {
	font-weight: 900;
}

.theme-dark .vertical-tab-header-group:nth-last-child(3) .vertical-tab-header-group-items .vertical-tab-nav-item:is(:nth-child(3), :nth-child(4), :last-child) {
	text-shadow: var(--readability-text-shadow-dark);
}

/* ───────────────────────────────────────────────── */
/* << Individual Setting Pages
──────────────────────────────────────────────────── */
.installed-plugins-container .setting-item-description div:nth-child(2)::first-letter {
	text-transform: lowercase;
}

.installed-plugins-container .setting-item-description div:nth-child(2) {
	font-style: italic;
}

.installed-plugins-container .setting-item-description>div:first-child {
	margin-top: -0.1em;
	margin-bottom: 2px;
}

.installed-plugins-container .setting-item-description>div:nth-child(2) {
	margin-top: -17.5px;
	margin-left: 100px;
}

.plugin-list-plugins>.setting-item:first-child {
	padding-bottom: var(--size-4-8);
}

.setting-filter-container .hotkey-filter {
	background-color: var(--bg1);
	border: var(--thin-muted-border);
}

/* ───────────────────────────────────────────────── */
/* <<< Settings Menu Colors
──────────────────────────────────────────────────── */

body .vertical-tab-content {
	background-color: var(--bg3);
}

.theme-light :is(.vertical-tab-header, .vertical-tab-nav-item) {
	background-color: var(--bg2);
}

.theme-dark :is(.vertical-tab-header, .vertical-tab-nav-item) {
	background-color: var(--bg1);
}

.theme-dark .modal-bg {
	background-color: hsl(var(--bg-hue-dark) 10% 5%);
}

.theme-light .modal-bg {
	background-color: hsl(var(--bg-hue-light) 5% 25%);
}

.vertical-tab-nav-item.is-active {
	font-weight: 600;
	color: var(--text-accent);
	background-color: var(--nav-item-background-active);
}

.vertical-tab-nav-item.is-active:hover,
.vertical-tab-nav-item:hover {
	color: var(--text-accent-hover);
	background-color: var(--nav-item-background-hover);
}

/* ───────────────────────────────────────────────── */
/* <<< Settings Headings
──────────────────────────────────────────────────── */

.setting-item-heading:not(.style-settings-heading) .setting-item-name {
	padding: 2px 6px 0;
	font-family: var(--font-heading-theme);
	font-size: 1.3em;
	font-weight: 600;
	letter-spacing: var(--heading-letter-spacing);
	background-color: var(--bg6);
	border-radius: var(--radius-s) var(--radius-s) 0 0;
}

.setting-item-heading:not(:first-child, .style-settings-heading) .setting-item-name {
	margin-top: var(--size-4-3);
}

.setting-item.setting-item-heading {
	padding-bottom: 0;
	border-bottom: var(--basic-border);
}

.modal.mod-settings :is(h1, h2) {
	font-family: var(--font-heading-theme);
	font-size: var(--h1-size);
	font-style: normal;
	letter-spacing: var(--heading-letter-spacing);
}

.modal.mod-settings :is(h1, h2):first-child {
	margin-top: var(--size-4-1);
	margin-bottom: var(--size-4-6);
}

.modal.mod-settings :is(h3, h4, h5, h6, h1:not(:first-child), h2:not(:first-child)) {
	margin-top: var(--size-4-3);
	margin-bottom: var(--size-4-1);
	letter-spacing: calc(var(--heading-letter-spacing) * 0.5);
}

.setting-item-description.setting-item-description.setting-item-description {
	line-height: 1.3;
	color: var(--text-gray);
}

/* ───────────────────────────────────────────────── */
/* <<< Remove Color Picker from Settings
──────────────────────────────────────────────────── */

.mod-settings .vertical-tab-content>.setting-item:nth-child(2)>.setting-item-control>.setting-editor-extra-setting-button+input[type="color"] {
	width: 350px;
	visibility: hidden;
}

.mod-settings .vertical-tab-content>.setting-item:nth-child(2)>.setting-item-control>.setting-editor-extra-setting-button>.lucide-rotate-ccw {
	display: none;
}

.mod-settings .vertical-tab-content>.setting-item:nth-child(2)>.setting-item-control>.setting-editor-extra-setting-button+input[type="color"]::before {
	position: relative;
	top: 12px;
	font-family: var(--font-interface);
	font-size: var(--font-ui-smaller);
	line-height: 1.3;
	color: var(--text-gray);
	visibility: visible;
	content: "The accent color is overridden by the theme. Use the Style Settings Plugin to customize theme colors.";
}

/* ───────────────────────────────────────────────── */
/* << Theme Browser
──────────────────────────────────────────────────── */
/* is this typo still not fixed? */
.mod-community-theme .community-item-author::first-letter {
	text-transform: lowercase;
}

.mod-community-theme .community-item-author {
	font-style: italic;
}

.mod-community-theme .community-item-name .flair {
	margin-left: var(--size-4-3);
	background-color: var(--bg3);
	border: var(--thin-border);
}

.mod-community-theme .community-item-name .flair.mod-pop {
	color: var(--text-accent);
}

.mod-community-theme .community-item.mod-active {
	border-color: var(--color-accent);
}

.mod-community-theme .community-item:is(:hover, .mod-active:hover) {
	border-color: var(--hover-accent);
}

/* ───────────────────────────────────────────────── */
/* << Plugin / Theme Browser
──────────────────────────────────────────────────── */

/* redundant, since plugin name is already displayed above */
.community-modal-readme h1:first-child {
	display: none;
}

.community-modal-info a.internal-link {
	text-decoration: dotted underline;
}

.flair.mod-pop {
	position: relative;
	top: -2px;
	vertical-align: middle;
}

.community-item.is-selected .flair {
	padding: 1px 3px;
	border: var(--thin-border);
}

/* remove empty header unnecessarily taking up space */
:is(.mod-community-theme, .mod-community-plugin) .modal-setting-nav-bar {
	height: 0;
	padding: 0;
}

:is(.mod-community-theme, .mod-community-plugin) .modal-setting-nav-bar .clickable-icon {
	position: sticky;
	height: 30px;
}

:is(.mod-community-theme, .mod-community-plugin) .community-modal-info {
	padding: var(--size-4-4) var(--size-4-6) var(--size-4-6) 40px;
}

/* ───────────────────────────────────────────────── */
/* << Toggles
──────────────────────────────────────────────────── */
/* prettier wall-o-toggles */

.checkbox-container::after {
	display: none;
}

.checkbox-container.checkbox-container {
	width: 22px;
	height: 22px;
	margin-left: var(--size-4-1);
	cursor: var(--cursor-link);
	background-color: var(--bg2);
	border: var(--basic-border);
	transition-duration: var(--anim-duration-moderate);
}

body .checkbox-container.mod-small {
	width: var(--icon-l);
	height: var(--icon-l);
}

/* colors */
.checkbox-container.is-enabled.is-enabled {
	background-color: var(--color-accent);
	border-color: transparent;
}

.checkbox-container.checkbox-container:hover {
	border: 9px solid var(--hover-accent);
	border-color: var(--hover-accent);
}

.checkbox-container.is-enabled:hover {
	background-color: var(--hover-accent);
	border-color: transparent;
}

/* ───────────────────────────────────────────────── */
/* << Hotkeys
──────────────────────────────────────────────────── */

kbd.suggestion-hotkey,
.setting-hotkey {
	color: var(--hotkey-color);
	background-color: var(--bg4);
	border: var(--thin-border);
}

/* ───────────────────────────────────────────────── */
/* < UI Elements
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* << Notice
──────────────────────────────────────────────────── */
.notice-container {
	top: 0;
}

.notice {
	min-width: 10rem;
	padding: var(--size-2-3) var(--size-4-3);
	margin-bottom: var(--size-2-3);
	font-size: var(--font-small);
	line-height: 1.3;
	color: var(--interactive-normal);
	background-color: var(--color-base-100);
	border: 3px ridge var(--basic-border-color);
}

/* do not bold text in notices, used e.g. by Templater errors */
.notice b {
	color: var(--interactive-normal);
}

.notice:hover {
	opacity: 0.7;
}

/* ───────────────────────────────────────────────── */
/* << Input & Dropdowns & Sliders
──────────────────────────────────────────────────── */

input[type]:focus,
select:focus {
	border-color: var(--color-accent);
	box-shadow: none;
}

input[type]:hover,
select:hover {
	border-color: var(--hover-accent);
	box-shadow: none;
}

.dropdown {
	border: 1px solid transparent;
}

.dropdown:focus {
	border-color: var(--color-accent);
	box-shadow: none;
}

.dropdown:hover {
	border-color: var(--hover-accent);
	box-shadow: none;
}

input[type="text"][type]:not(.metadata-input, .metadata-property-key-input) {
	background-color: var(--bg1);
}

/* thx jdaniel for the idea */
input[type="range"] {
	align-items: center;
	min-width: 150px;
}

input[type="range"]::before,
input[type="range"]::after {
	display: block;
	padding: 2px;
	font-size: var(--font-ui-smaller);
	color: var(--text-muted);
	background-color: inherit;
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

.modal:not(.mod-narrow) input[type="range"]::before {
	content: attr(min);
}

.modal:not(.mod-narrow) input[type="range"]::after {
	content: attr(max);
}

/* ───────────────────────────────────────────────── */
/* << Progress Bars
──────────────────────────────────────────────────── */

/* <<< Vault Launch */
/* INFO use `debugger` in the console while the vault launches. Close Obsidian
 * while the console is open, so the console appears on start. */

@keyframes startup-blink {

	/* cannot use variables, since they are not fully available yet on startup */
	0% {
		opacity: 0.1;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 0.1;
	}
}

/* .app-container is needed so this does not affect the canvas progress bar */
.app-container+.progress-bar .progress-bar-message {
	margin-bottom: 30px;
	font-size: 0;
	animation-name: startup-blink;
	animation-duration: 1s;
	animation-iteration-count: infinite;
}

.app-container+.progress-bar .progress-bar-message::before {
	font-size: 10rem;
	font-weight: 500;
	color: var(--text-normal);
	content: var(--signature);
}

.app-container+.progress-bar .progress-bar-indicator {
	display: none;
}

/* <<< Plugin Update Progress Bar */
.modal .is-loading::before {
	height: var(--size-4-2);
	background: linear-gradient(45deg,
			var(--color-accent) 0% 20%,
			var(--hover-accent) 40% 60%,
			var(--secondary-accent) 80% 100%);
}

.theme-light .modal .is-loading::before {
	filter: brightness(1.2);
}

/* ───────────────────────────────────────────────── */
/* << Frontmatter / Metadata Block
──────────────────────────────────────────────────── */

/* SOURCE VIEW */
/* values */
.cm-hmd-frontmatter {
	font-size: calc(var(--code-size) * 0.9);
	color: var(--text-normal);
}

/* the "---"" */
.cm-def.cm-hmd-frontmatter.cm-hmd-frontmatter {
	color: var(--secondary-accent);
	letter-spacing: 0.1rem;
}

/* keys */
.frontmatter.language-yaml .atrule,
.cm-atom.cm-hmd-frontmatter {
	font-weight: 600;
	color: var(--text-accent);
}

/* Punctuation
- first child = unordered list in yaml
- second child = colon between key and value in unordered list
- third child = colon between key and value
- last child = bracket to close of array brackets, see https://github.com/chrisgrieser/shimmering-focus/issues/194 */
.cm-line .cm-hmd-frontmatter.cm-meta:is(:first-child, :nth-child(2), :nth-child(3), :last-child),
.frontmatter.language-yaml .punctuation {
	font-weight: 600;
	color: var(--bold-color);
}

/* strings & boolean in yaml */
.frontmatter.language-yaml :is(.boolean, .number, .string),
.cm-hmd-frontmatter:is(.cm-keyword, .cm-string) {
	font-weight: 500;
	color: var(--secondary-accent);
}

/* READING VIEW before 1.4.0 */
.frontmatter-container {
	padding: var(--size-4-2) var(--size-4-3);
	background-color: var(--bg2);
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

.frontmatter-container-header.frontmatter-container-header {
	display: none;
}

.frontmatter-alias-icon>svg {
	color: var(--text-faint);
}

.frontmatter-alias.frontmatter-alias {
	white-space: pre-wrap;
}

body .frontmatter-container .frontmatter-alias,
.frontmatter-section-label,
.frontmatter-section-tags .tag,
.frontmatter-section-data-item {
	font-size: var(--font-small);
	line-height: 1.2;
}

.frontmatter-section-label {
	font-weight: 500;
	color: var(--text-accent);
}

.frontmatter-container .frontmatter-section-tags {
	column-gap: var(--size-4-3);
}

/* ───────────────────────────────────────────────── */
/* << NEW Metadata Block (since 1.4)
──────────────────────────────────────────────────── */
.mod-root .metadata-container {
	padding: 0;
	margin-top: 0.5em;
	margin-left: 4px;
	font-family: var(--font-interface);
	background-color: var(--bg2);
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

.metadata-property-value :is(.metadata-input-number, .multi-select-container) {
	padding-left: 2px;
}

.multi-select-container.multi-select-container .multi-select-input {
	padding-top: 2px;
}

.mod-root .metadata-add-button.metadata-add-button {
	position: absolute;
	right: 0;
	bottom: 0;
	height: 28px;
	padding: 4px 6px;
	margin-top: 0;
	font-size: 75%;
	font-style: italic;
	color: var(--text-gray);
	background: var(--bg4);
	border-top: var(--thin-border);
	border-left: var(--thin-border);
	border-radius: var(--radius-s) 0 var(--radius-s) 0;
}

.metadata-add-button.text-icon-button .text-button-label {
	display: none;
}

/* heading */
.metadata-properties-heading:not(.is-collapsed) {
	display: block;
	padding: 0;
	margin: 0;
}

.metadata-properties-heading:not(.is-collapsed) .metadata-properties-title {
	display: none;
}

.metadata-properties-heading.is-collapsed {
	padding: 6px 8px;
	margin-bottom: 0;
	font-size: 0.9em;
}

.metadata-properties-heading.is-collapsed .metadata-properties-title {
	color: var(--text-muted);
}

.metadata-property-value-item.metadata-property-value-item,
.metadata-input-longtext {
	padding-left: 2px;
}

.metadata-add-button:hover {
	color: var(--hover-accent);
}

.metadata-property-icon {
	padding-right: 4px;
	color: var(--hover-accent);
}

.metadata-property-icon:hover {
	color: var(--hover-accent);
	background-color: var(--bg5);
}

.metadata-property-key-input.metadata-property-key-input {
	color: var(--text-accent);
}

.multi-select-input.multi-select-input {
	font-family: var(--font-interface);
	font-size: var(--font-small);
	color: var(--text-normal);
}

body .metadata-property:focus-within,
body .metadata-property:hover {
	background-color: var(--bg4);
	box-shadow: none;
}

/* tags & multi-select */
.metadata-link-inner,
.multi-select-pill-content.multi-select-pill-content {
	line-height: 1.1;
	background: var(--bg1);
	border-color: var(--text-faint);
}

.metadata-link-inner,
.multi-select-pill-content {
	padding: 2px 4px;
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

.multi-select-pill .multi-select-pill-remove-button {
	margin-left: -3px;
	color: var(--hover-accent);
}

.multi-select-pill-remove-button:not(:hover) {
	opacity: 0;
}

/* Date Picker */
/* color of the date picker cannot be changed in a flexible manner
 * https://stackoverflow.com/questions/62162645/change-color-of-chromes-calendar-icon-in-html-date-input
 * */
.metadata-property-value input:is([type="date"], [type="datetime-local"]) {
	margin-left: -4px;
}

/* links in metadata */
.internal-link:is(.multi-select-pill, .metadata-link-inner) {
	text-decoration: none;
	/* creates single underline instead of double */
}

.metadata-link {
	padding: 0;
}

/* ───────────────────────────────────────────────── */
/* << Settings Button & Ribbon
──────────────────────────────────────────────────── */
body:not(.show-ribbon) .workspace-ribbon.mod-left {
	visibility: hidden;
}

body:not(.show-ribbon) .mod-left-split.is-sidedock-collapsed+.mod-root,
body:not(.show-ribbon) .mod-left-split {
	margin-left: calc(-1 * var(--ribbon-width));
}

body:not(.show-ribbon) .side-dock-settings .side-dock-ribbon-action:last-child:hover {
	background-color: var(--bg3);
}

body:not(.show-ribbon, .is-mobile) .side-dock-settings .side-dock-ribbon-action:last-child {
	position: absolute;
	bottom: 0.5em;
	left: 0.5em;
	visibility: visible;
	background-color: var(--bg4);
	border: var(--thin-muted-border);
	opacity: 1;
}

.hide-settings-button:not(.show-ribbon) .side-dock-settings .side-dock-ribbon-action:last-child {
	display: none;
}

/* adjust left sidebar tab headers for hidden ribbon */
.mod-macos.is-hidden-frameless:not(.is-fullscreen, .show-ribbon) {
	--frame-left-space: calc(var(--ribbon-width) + 1.5vw);
}

/* ───────────────────────────────────────────────── */
/* << Status Bar
──────────────────────────────────────────────────── */
.hide-pandoc-reference-list-status-bar .status-bar-item.plugin-obsidian-pandoc-reference-list,
.hide-longform-status-bar .status-bar-item.plugin-longform,
.hide-languagetool-status-bar .status-bar-item.plugin-obsidian-languagetool-plugin,
.hide-pane-relief-focus-lock-status-bar .status-bar-item.plugin-pane-relief,
.hide-electron-window-tweaker-status-bar .status-bar-item.plugin-obsidian-electron-window-tweaker,
.hide-properties-in-statusbar .status-bar-item.plugin-properties,
.hide-backlinks-status-bar .status-bar-item.plugin-backlink {
	display: none;
}

/* show text generator icons only when autosuggest is active */
.hide-inactive-textgenerator .plugin-obsidian-textgenerator-plugin:has(> .lucide-zap),
.hide-inactive-textgenerator .plugin-obsidian-textgenerator-plugin:has(~ .plugin-obsidian-textgenerator-plugin > .lucide-zap-off),
.hide-inactive-textgenerator .plugin-obsidian-textgenerator-plugin:has(.lucide-zap-off) {
	display: none;
}

.status-bar {
	min-height: 0;
	padding: 3px 4px;
	font-size: 1em;
	background-color: var(--bg5);
	border-top: 3px groove var(--color-base-10);
	border-left: 3px groove var(--color-base-10);
}

.status-bar-item:empty {
	display: none;
}

/* When both sidebars are hidden, also hide status bar */
.hidden-sidebars-hidden-statusbar:not(.is-mobile) .horizontal-main-container:has(.mod-left-split.is-sidedock-collapsed):has(.mod-right-split.is-sidedock-collapsed)+.status-bar {
	display: none;
}

/* extra space for the bottom right item to not conflict with status bar */
.mod-right-split .workspace-tabs:last-child .workspace-leaf .view-content {
	padding-bottom: 2em;
}

/* signature icon */
body:not(.hide-signature-icon) .status-bar::after {
	margin-top: -1px;
	padding-right: 6px;
	padding-left: 4px;
	font-family: "Recursive S", sans-serif;
	font-size: 1.1rem;
	font-weight: 800;
	content: var(--signature);
}

/* ───────────────────────────────────────────────── */
/* << Header Bar (Tab Title Bar)
──────────────────────────────────────────────────── */
.workspace-leaf-content .view-header-title-container::after {
	display: none;
}

body .workspace-leaf-content .view-header {
	height: 37px;
	padding: 0 var(--size-2-3);
	margin-right: 0;
	margin-left: 0;
	background-color: var(--bg4);
}

body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content .view-header-title-container::after,
body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content .view-header :is(.view-header-nav-buttons, .view-header-title),
body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content .view-header .view-action:nth-last-child(2) {
	display: none;
}

body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content .view-header {
	height: 0;
	border: none;
}

/* <<< Note Path Breadcrumbs */
body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content .view-header-title-container {
	position: absolute;
	top: 35px;
	right: 1.1rem;
	transition-duration: var(--anim-duration-moderate);
	transform: rotate(270deg);
	transform-origin: right;
}

/* account for pdf header */
body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content[data-type="pdf"] .view-header-title-container {
	top: 75px;
	right: 0.7rem;
}

.view-header-breadcrumb {
	font-size: 0.9rem;
}

.view-header-breadcrumb.view-header-breadcrumb:hover {
	color: var(--hover-accent);
	cursor: var(--cursor-link);
	background: none;
}

body:not(.normal-header-bar, .is-mobile) .view-header-breadcrumb {
	color: var(--text-faint);
}

/* remaining buttons (by default only the "more options" button) */
body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content .view-header .view-actions {
	position: absolute;
	top: 4px;
	right: 2px;
}

body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content .view-header .view-action:last-child:hover {
	background: none;
}

body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content .view-header .view-action:last-child svg {
	width: 20px;
	height: 20px;
}

/* interactions */
.workspace-leaf-content[data-type="kanban"] .view-header-title-container {
	display: none;
}

/* <<< PDF Toolbar
/* avoid collision with three-dot-menu */
body:not(.normal-header-bar, .is-mobile) .pdf-toolbar {
	padding-right: 32px;
}

/* avoid traffic lights */
.hide-tabbar-when-one-tab.mod-macos:not(.show-sidebar-header-buttons, .normal-header-bar, .is-mobile) .workspace:not(.is-left-sidedock-open) .pdf-toolbar {
	padding-left: 60px;
}

/* ───────────────────────────────────────────────── */
/* << Tab Bar
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* <<< Hide Various Elements
──────────────────────────────────────────────────── */

body:not(.show-new-tab-button) .workspace-tab-header-new-tab,
body:not(.show-close-buttons) .workspace-tab-header:only-child .workspace-tab-header-inner-close-button,
body:not(.show-close-buttons) .mod-stacked .workspace-tab-header .workspace-tab-header-inner-close-button,
body:not(.show-close-buttons) .workspace-tabs:not(.mod-stacked) .workspace-tab-header:not(:hover) .workspace-tab-header-inner-close-button,
body:not(.show-tab-list-button) .workspace-tab-header-tab-list {
	display: none;
}

/* ───────────────────────────────────────────────── */
/* <<< tab bar when only tab
──────────────────────────────────────────────────── */

body:not(.normal-tab-bar) .mod-root .workspace-tab-header:only-child {
	width: 9001px;
	max-width: unset;
	padding-bottom: 1px;
	background-color: transparent;
	box-shadow: none;
}

body:not(.normal-tab-bar) .mod-root .workspace-tab-header:only-child .workspace-tab-header-inner-title {
	width: 9001px;
	margin-bottom: 2px;
	margin-left: -3px;
	font-size: 1.5em;
}

body:not(.normal-tab-bar) .mod-root .workspace-tab-header:only-child :is(.workspace-tab-header-inner-title,
	.workspace-tab-header-inner-icon,
	.workspace-tab-header-inner-icon svg),
body:not(.normal-tab-bar) .mod-root .workspace-tab-header:only-child::before,
body:not(.normal-tab-bar) .mod-root .workspace-tab-header:only-child::after,
body:not(.normal-tab-bar) .mod-root .workspace-tab-header:only-child {
	transition-delay: var(--transition-delay-passing-over-protection);
	transition-duration: var(--anim-duration-moderate);
	transition-property: font-size, width;
}

/* icon with more spacing and size */
body:not(.normal-tab-bar) .mod-root .workspace-tab-header:only-child :is(.workspace-tab-header-inner-icon, .workspace-tab-header-status-container) {
	padding-right: var(--size-4-3);
}

body:not(.normal-tab-bar) .mod-root .workspace-tab-header:only-child :is(.workspace-tab-header-inner-icon, .workspace-tab-header-status-container) svg {
	width: var(--icon-l);
	height: var(--icon-l);
}

/* <<< hidden tab bar when only one tab */
.hide-tabbar-when-one-tab:not(.is-mobile) .mod-root .workspace-tab-header-container:not(:has(.workspace-tab-header + .workspace-tab-header)) {
	display: none;
}

/* MACOS: reduce height of RIGHT sidebar when tab bar hidden */
/* WINDOWS: reduce height of LEFT sidebar when tab bar hidden */
.hide-tabbar-when-one-tab.mod-macos:not(.show-sidebar-header-buttons) .mod-root:not(:has(.workspace-tab-header + .workspace-tab-header))+.mod-right-split .mod-top-right-space .workspace-tab-header-container:not(:hover),
.hide-tabbar-when-one-tab.mod-windows:not(.show-sidebar-header-buttons) .mod-root:not(:has(.workspace-tab-header + .workspace-tab-header))+.mod-left-split .mod-top-left-space .workspace-tab-header-container:not(:hover) {
	height: var(--sidebar-tabs-unhovered-height);
}

/* hide inline title only when one more than tab */
.hide-tabbar-when-one-tab:not(.is-mobile) .mod-root .workspace-tab-header-container:has(.workspace-tab-header + .workspace-tab-header)+.workspace-tab-container .inline-title {
	display: none;
}

/* ───────────────────────────────────────────────── */
/* <<< Stacked Tabs
──────────────────────────────────────────────────── */

.mod-stacked .workspace-tab-header-inner {
	background-color: var(--bg3);
	border-right: var(--thin-muted-border);
}

/* hide useless tab bar when stacked */
.mod-stacked .workspace-tab-header-container.workspace-tab-header-container {
	height: 0;
}

.workspace-tab-header-inner.workspace-tab-header-inner:hover.workspace-tab-header-inner:hover * {
	color: var(--hover-accent);
}

.workspace-tab-header-inner.workspace-tab-header-inner:hover.workspace-tab-header-inner:active * {
	color: var(--color-accent);
}

/* ───────────────────────────────────────────────── */
/* <<< Styling of Tabs
──────────────────────────────────────────────────── */

.mod-root .workspace-tab-header-container-inner {
	margin-top: var(--size-2-2);
}

.is-active .workspace-tab-header-inner-title {
	font-weight: 600;
	text-rendering: geometricprecision;
}

body .workspace-tab-header-container {
	padding-right: 0;
}

.mod-root .workspace-tab-header::after,
.mod-root .workspace-tab-header::before {
	display: none;
}

.mod-root .workspace-tab-header-inner-title {
	margin-bottom: -1px;
}

body .workspace .mod-root .workspace-tab-header {
	width: var(--tab-width);
}

/* pin */
.workspace-tabs:not(.mod-stacked) .workspace-tab-header-status-container {
	padding-top: 2px;
}

.mod-stacked .workspace-tab-header-status-icon .lucide-pin {
	stroke: var(--icon-color);
}

.workspace-tab-header-status-icon:hover .lucide-pin.lucide-pin {
	stroke: var(--icon-color-hover);
}

/* change order for pin */
.workspace-tab-header-status-container {
	order: 1;
}

.workspace-tab-header-inner-title {
	order: 3;
}

.workspace-tab-header-inner-icon {
	order: 2;
}

.workspace-tab-header-inner-close-button {
	order: 4;
}

/* tab bar height – cannot modify --header-height, since it would also affect the sidebar tabs that are not top */
.mod-macos :is(.mod-top, .mod-root) .workspace-tab-header-container {
	height: 35px;
}

.mod-macos .workspace-ribbon.mod-left::before {
	height: 34px;
}

.mod-macos .workspace-ribbon.mod-left {
	margin-top: 34px;
}

/* ───────────────────────────────────────────────── */
/* << Release Notes Tab
──────────────────────────────────────────────────── */

/* add favicon */
.workspace-tab-header[data-type="release-notes"] .workspace-tab-header-inner-icon {
	display: none;
}

.workspace-tab-header[data-type="release-notes"] .workspace-tab-header-inner-title::before {
	position: relative;
	top: 2px;
	padding-right: 2px;
	font-family: var(--icon-font);
	content: "tips_and_updates ";
}

/* ───────────────────────────────────────────────── */
/* << Editor Suggestions
──────────────────────────────────────────────────── */

.suggestion-container {
	border-radius: var(--radius-s);
}

.suggestion-container .suggestion {
	padding: 0;
}

.suggestion-container .suggestion-item:last-child {
	margin-bottom: 0;
}

/* ───────────────────────────────────────────────────
/* << Prompts
/* <<< QuickSwitcher
─────────────────────────────────────────────────── */

div.prompt-results {
	padding: var(--size-2-1);
	margin-top: 0;
}

.prompt .suggestion-item {
	padding: 6px;
	border-radius: 0;
}

.prompt {
	border: var(--basic-border);
}

input.prompt-input.prompt-input {
	padding: var(--size-4-3);
	margin: var(--size-2-2) var(--size-2-2) 0;
	font-size: var(--font-ui-medium);
	border: 1px ridge var(--muted-border-color);
	border-radius: var(--radius-m);
	box-shadow: var(--input-shadow);
}

/* hide placeholder, except for templater where the prompts contain information */
.prompt .prompt-input[placeholder^="Select a command"]::placeholder {
	color: transparent;
}

/* item descriptions */
.suggestion-note {
	line-height: 1.3em;
}

.suggestion-empty,
.prompt-instructions {
	display: none;
}

.suggestion-item :is(.suggestion-note, .suggestion-prefix) {
	font-size: var(--font-small);
	/* font-style: italic; */
	color: var(--text-gray);
}

/* Alternating row colors */
.suggestion-item:nth-child(odd):not(:hover, .is-selected) .suggestion-prefix,
.suggestion-item:nth-child(odd):not(:hover, .is-selected) {
	background-color: var(--bg2);
}

body .suggestion-item:hover,
body .suggestion-item:hover :is(.suggestion-prefix, .suggestion-flair) {
	color: var(--text-accent-hover);
}

.suggestion-item.is-selected,
.suggestion-item.is-selected :is(.suggestion-prefix, .suggestion-flair) {
	color: var(--text-accent);
}

.suggestion-item .suggestion-flair.suggestion-flair {
	margin-bottom: 2px;
}

/* looks nicer with rounded corners on first/last item */
.prompt .suggestion-item:is(.is-selected, :hover):last-child {
	border-bottom-right-radius: var(--radius-m);
	border-bottom-left-radius: var(--radius-m);
}

.prompt .suggestion-item:is(.is-selected, :hover):first-child:last-child {
	border-top-left-radius: var(--radius-s);
	border-top-right-radius: var(--radius-s);
}

/* ───────────────────────────────────────────────────
/* <<< Command Palette
─────────────────────────────────────────────────── */
/* (everything from QuickSwitcher also applies) */

body:not(.is-mobile) .prompt .suggestion-prefix::after {
	display: none;
}

/* to anchor the plugin names below relative to this */
body:not(.is-mobile) .prompt .suggestion-item {
	position: relative;
}

body:not(.is-mobile) .prompt .suggestion-prefix.suggestion-prefix {
	position: absolute;
	top: 5px;
	right: 140px;
	padding: 1px 4px 2px;
	background-color: var(--bg3);
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

/* macOS has modifier key symbols, requiring slightly different placement */
.mod-macos:not(.is-mobile) .suggestion-prefix {
	right: 110px;
}

/* ───────────────────────────────────────────────── */
/* << Sidebars
──────────────────────────────────────────────────── */

body:not(.trim-long-filenames) {
	/* = wrap */
	--nav-item-white-space: normal;
}

/* <<< Overlaying Sidebar */
.overlaying-right-sidebar .mod-right-split {
	position: absolute;
	right: 0;
}

.sidebar-no-animations .workspace-split:is(.mod-left-split, .mod-right-split) {
	/* stylelint-disable-next-line declaration-no-important */
	transition: var(--anim-duration-none) !important;
}

/* ───────────────────────────────────────────────── */
/* <<< Sidebar Headers Hidden (Tab Headers)
──────────────────────────────────────────────────── */

body:not(.show-sidebar-header-buttons) {
	--sidebar-tabs-unhovered-height: 10px;
}

/* WINDOWS */
/* fix sidebar header buttons on Windows not being clickable, credits @joelatschool
 * see https://github.com/chrisgrieser/shimmering-focus/issues/247 */
body.mod-windows:not(.show-sidebar-header-buttons) .titlebar {
	height: 35px;
}

.is-hidden-frameless.mod-windows:not(.is-grabbing, .is-fullscreen, .show-sidebar-header-buttons) .mod-top .workspace-tab-header-container {
	-webkit-app-region: no-drag;
}

body:not(.show-sidebar-header-buttons) :is(.mod-left-split, .mod-right-split) :is(.workspace-tab-header, .workspace-tab-header svg),
body:not(.show-sidebar-header-buttons) :is(.mod-left-split, .mod-right-split) :is(.workspace-tab-header-container, .workspace-tab-header-container *) {
	transition: var(--anim-duration-moderate);
	transition-delay: var(--transition-delay-passing-over-protection);
	/* so transition of hovering the tab itself does not get delayed */
	transition-property: opacity, height, background-color;
}

body:not(.show-sidebar-header-buttons) :is(.mod-left-split, .mod-right-split) .workspace-tabs:not(.mod-top) .workspace-tab-header-container:not(:hover) {
	height: var(--sidebar-tabs-unhovered-height);
}

body:not(.show-sidebar-header-buttons) :is(.mod-left-split, .mod-right-split) .workspace-tabs.mod-top .workspace-tab-header-container:not(:hover) .workspace-tab-header-container-inner {
	opacity: 0;
}

body:not(.show-sidebar-header-buttons) :is(.mod-left-split, .mod-right-split) .workspace-tabs:not(.mod-top) .workspace-tab-header-container {
	background-color: var(--bg1);
}

.theme-light:not(.show-sidebar-header-buttons) :is(.mod-left-split, .mod-right-split) .workspace-tabs:not(.mod-top) .workspace-tab-header-container:not(:hover) {
	background-color: var(--bg2);
}

/* ───────────────────────────────────────────────── */
/* <<< Sidebar Styling
──────────────────────────────────────────────────── */
:is(.mod-right-split, .mod-left-split) .workspace-leaf-content .view-content {
	padding: 0 0 var(--size-4-4) 0;
}

body:not(.show-sidebar-toggle-buttons) .sidebar-toggle-button {
	display: none;
}

.sidebar-toggle-button {
	height: 35px;
}

/* move the tab-list button to the space now free from the "right sidebar toggle" */
body.mod-macos.is-hidden-frameless:not(.is-popout-window) .workspace .workspace-tabs.mod-top-right-space .workspace-tab-header-container {
	padding-right: 0;
}

.nav-file-title,
.nav-folder-title {
	margin-top: 0;
	margin-bottom: 0;
	border-radius: 0;
}

.nav-file-title:hover,
.nav-folder-title:hover,
.tree-item-inner:hover {
	cursor: var(--cursor-link);
}

:is(.mod-left-split, .mod-right-split) .mod-top .workspace-tab-header-container-inner {
	padding-bottom: var(--size-4-1);
	margin-top: var(--size-4-1);
}

/* ───────────────────────────────────────────────── */
/* << Editor
──────────────────────────────────────────────────── */

/* save space at the top */
.mod-root .markdown-reading-view .markdown-preview-view,
.mod-root .view-content>.markdown-source-view.mod-cm6>.cm-editor>.cm-scroller {
	padding-top: 25px;
}

/* ───────────────────────────────────────────────── */
/* <<< Search Matches
──────────────────────────────────────────────────── */
/* actually affects any kind of search anywhere in the app, but mostly the Editor */
.suggestion-highlight.suggestion-highlight {
	color: var(--search-match-color);
	background: none;
}

body .markdown-rendered .search-highlight>div,
.cm-s-obsidian span.obsidian-search-match-highlight {
	box-shadow: 0 0 0 2px var(--search-match-color);
}

body .markdown-rendered .search-highlight>div {
	opacity: 0.9;
}

body .markdown-rendered .search-highlight>div.is-active {
	box-shadow: 0 0 0 3px var(--hover-accent);
}

/* ───────────────────────────────────────────────── */
/* <<< Folds & Collapse Indicators
──────────────────────────────────────────────────── */

/* emphasized folded lines */
.folded-line-emphasis .markdown-preview-view .is-collapsed:not(.callout-fold),
.folded-line-emphasis .cm-line:has(.cm-fold-indicator.is-collapsed) {
	background-color: var(--bg3);
	border-radius: var(--radius-s);
}

.folded-line-emphasis .cm-line:has(.cm-fold-indicator.is-collapsed) .cm-foldPlaceholder {
	display: none;
}

:is(.style-settings-collapse-indicator, .collapse-icon)>.svg-icon.svg-icon.svg-icon.svg-icon {
	width: 0.75em;
	height: 0.75em;
	margin-left: -0.35em;
	stroke-width: 5px;
}

:is(.markdown-preview-view, .cm-line:not(.cm-active)) .collapse-icon>.svg-icon.svg-icon,
body .cm-s-obsidian .is-collapsed~.cm-formatting-list {
	color: var(--text-faint);
}

:is(.style-settings-collapse-indicator, .collapse-icon)>.svg-icon:hover {
	stroke: var(--icon-color-hover);
}

/* ───────────────────────────────────────────────── */
/* <<< Clean Embeds
──────────────────────────────────────────────────── */

.clean-embeds {
	--embed-background: inherit;
	--embed-border-left: 0px solid var(--interactive-accent);
	--embed-border-right: none;
	--embed-border-top: none;
	--embed-border-bottom: none;
	--embed-padding: 0 0 0 0;
	--embed-font-style: inherit;
}

.clean-embeds .markdown-rendered .markdown-embed {
	max-width: 100%;
}

.clean-embeds .markdown-rendered .markdown-embed .markdown-rendered {
	padding-left: 0;
}

.clean-embeds .markdown-embed-link {
	visibility: hidden;
}

/* ───────────────────────────────────────────────── */
/* <<< Active / Inactive Note
──────────────────────────────────────────────────── */
body .mod-root .workspace-tabs:not(.mod-active, :only-of-type) .workspace-leaf-content[data-type="markdown"] {
	opacity: var(--inactive-pane-opacity);
	transition: var(--anim-duration-slow);
}

/* if there is more than one pane, highlight the currently focused one */
.mod-root .workspace-tabs:not(:only-of-type, .mod-stacked).mod-active .workspace-tab-header-container-inner,
.mod-root .workspace-tabs:not(:only-of-type, .mod-stacked).mod-active .workspace-tab-header-container {
	border-bottom-color: var(--color-accent);
}

.mod-root .workspace-tabs:not(.mod-stacked) .workspace-tab-header-container-inner,
.mod-root .workspace-tab-header-container {
	border-bottom: 2px solid transparent;
}

/* ───────────────────────────────────────────────── */
/* <<< Active Line Highlight (Cursorline)
──────────────────────────────────────────────────── */

body:not(.no-active-line-highlight, .active-line-background) .cm-active:not(.HyperMD-quote, .HyperMD-header, .HyperMD-codeblock)::before {
	position: absolute;
	left: -1.125em;
	height: 100%;
	content: "";
	border-left: 3px solid var(--basic-border-color);
}

.theme-dark.active-line-background .cm-active:not(.HyperMD-quote, .HyperMD-codeblock) {
	background-color: var(--bg4);
}

.theme-light.active-line-background .cm-active:not(.HyperMD-quote, .HyperMD-codeblock) {
	background-color: var(--bg3);
}

body.active-line-background .cm-active:not(.HyperMD-quote, .HyperMD-codeblock) {
	border-radius: var(--radius-s);
}

body:not(.no-active-line-highlight) .cm-lineNumbers .cm-active.cm-gutterElement,
body:not(.no-active-line-highlight) .cm-active :is(.cm-formatting-header, .cm-formatting-quote, .cm-formatting-list, .cm-formatting-code-block) {
	color: var(--active-line-color);
}

body:not(.no-active-line-highlight) .is-live-preview .cm-active .list-bullet::after {
	background-color: var(--active-line-color);
}

/* ───────────────────────────────────────────────── */
/* <<< Empty Note / New Tab Page
──────────────────────────────────────────────────── */

.workspace-tab-header[data-type="empty"]:not(:only-child) {
	font-style: italic;
}

.empty-state-action {
	display: none;
}

/* mod-root ensures that "Plugin no longer active" messages
are not targeted by this */
.mod-root .empty-state-title {
	font-size: 0;
}

.mod-root .empty-state-title::after {
	font-size: 8rem;
	font-weight: 500;
	color: var(--text-muted);
	content: var(--signature);
	transition: var(--anim-duration-slow);
}

.mod-root .empty-state-title:hover::after {
	color: var(--text-accent);
}

/* ───────────────────────────────────────────────── */
/* < Vim Mode
──────────────────────────────────────────────────── */
/* ───────────────────────────────────────────────── */
/* << Vim Cursor
──────────────────────────────────────────────────── */
.cm-focused .cm-vimCursorLayer .cm-fat-cursor.cm-fat-cursor.cm-fat-cursor {
	outline: 1px solid;
}

.theme-dark .cm-focused .cm-vimCursorLayer .cm-fat-cursor.cm-fat-cursor.cm-fat-cursor {
	color: hsl(0 0% 70%);
	background-color: hsl(0 0% 0%);
	outline: 1px solid hsl(0 0% 90%);
}

.theme-light .cm-focused .cm-vimCursorLayer .cm-fat-cursor.cm-fat-cursor.cm-fat-cursor {
	color: hsl(0 0% 90%);
	background-color: hsl(0 0% 25%);
	outline: 1.3px solid hsl(220 10% 72%);
}

.cm-editor:not(.cm-focused) .cm-fat-cursor.cm-fat-cursor.cm-fat-cursor {
	color: transparent;
	background-color: transparent;
	outline: 2px solid var(--hover-accent);
}

/* disable blinking */
.disable-vim-cursor-blink .cm-vimCursorLayer {
	/* stylelint-disable-next-line declaration-no-important */
	animation: none !important;
}

/* ───────────────────────────────────────────────── */
/* << Vim: Relative Line Numbers
──────────────────────────────────────────────────── */

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-gutterElement:not(.cm-active) {
	font-size: 0;
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active,
.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *::before {
	font-size: 0.85rem;
}

/* numbers before */
.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ .cm-active)::before {
	content: "1";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ * + .cm-active)::before {
	content: "2";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ * + * + .cm-active)::before {
	content: "3";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ * + * + * + .cm-active)::before {
	content: "4";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ * + * + * + * + .cm-active)::before {
	content: "5";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ * + * + * + * + * + .cm-active)::before {
	content: "6";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ * + * + * + * + * + * + .cm-active)::before {
	content: "7";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ * + * + * + * + * + * + * + .cm-active)::before {
	content: "8";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers *:has(+ * + * + * + * + * + * + * + * + .cm-active)::before {
	content: "9";
}

/* numbers after */
.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*::before {
	content: "1";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*+*::before {
	content: "2";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*+*+*::before {
	content: "3";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*+*+*+*::before {
	content: "4";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*+*+*+*+*::before {
	content: "5";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*+*+*+*+*+*::before {
	content: "6";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*+*+*+*+*+*+*::before {
	content: "7";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*+*+*+*+*+*+*+*::before {
	content: "8";
}

.use-relative-line-numbers:not(.is-mobile) .cm-lineNumbers .cm-active+*+*+*+*+*+*+*+*+*::before {
	content: "9";
}

/* ───────────────────────────────────────────────── */
/* << Vim: Disable Mouse Hovers
──────────────────────────────────────────────────── */

.no-mouse-hovers .is-live-preview .cm-embed-block:not(.cm-table-widget):hover {
	box-shadow: none;
}

.no-mouse-hovers .is-live-preview .cm-embed-block:not(.cm-table-widget):hover .edit-block-button {
	display: none;
}

/* ───────────────────────────────────────────────── */
/* << Vim Panel
──────────────────────────────────────────────────── */

/* the ":" or "/" enlarged */
.cm-vim-panel>div>div>span:first-child {
	/* stylelint-disable-next-line declaration-no-important */
	font-family: Inter, sans-serif !important;
	font-weight: 600;
	font-size: 1.4rem;
}

/* input enlarged */
.cm-vim-panel input {
	font-size: 1.4rem;
}

.cm-panels.cm-panels-bottom {
	border-top: var(--basic-border);
}

.cm-panels.cm-panels .cm-vim-panel input,
.cm-panels.cm-panels-bottom.cm-panels-bottom {
	background-color: var(--bg4);
}

/* remove instruction */
.cm-vim-panel span:nth-child(2):not(.cm-vim-message) {
	display: none;
}

/* ───────────────────────────────────────────────── */
/* < CSS Classes
──────────────────────────────────────────────────── */
/*
- writing cssclass is bundled with the styling for the Longform Editor
- dataview-related css classes are in the dataview section
*/

.list-2-col-cards {
	--card-spacing: 4px;
}

.list-2-col-cards ul:not(.contains-task-list) {
	column-gap: calc(var(--card-spacing) + 2px);
	columns: 2 auto;
	padding-left: 0;
}

.list-2-col-cards ul:not(.contains-task-list) li {
	padding: 1px 10px 4px;
	margin-bottom: var(--card-spacing);
	background-color: var(--bg3);
	border: var(--thin-muted-border);
	border-radius: var(--radius-s);
	page-break-inside: avoid;
}

.list-2-col-cards ul>li:not(.task-list-item)::marker {
	content: "";
}

.list-2-col-cards.list-2-col-cards.list-2-col-cards ul:not(.contains-task-list) li a {
	text-decoration: none;
}

.bibliography-list li {
	margin-left: 1.5em;
	text-indent: -2.2em;
}

.bibliography-list li .list-bullet::after {
	display: none;
}

.full-width {
	--file-line-width: 100%;
}

.larger-table-text {
	--table-text-size: var(--font-text-size);
}

.no-inline-title .inline-title {
	display: none;
}

/* private mode */
/* needs *= to catch "," in the yaml */
.private-mode .data-link-text[data-link-cssclass*="private"],
.private-mode .private.private * {
	font-family: "Flow Circular", sans-serif;
}

/* ───────────────────────────────────────────────── */
/* < Core Plugins
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* << Bookmarks
──────────────────────────────────────────────────── */
.bookmarks-container {
	padding: 0 0 20px;
}

.tree-item-self.bookmark {
	border-radius: 0;
}

/* alternating row colors */
.bookmarks-container>div>.tree-item:nth-child(odd):not(:hover)>.tree-item-self,
.bookmarks-container .tree-item-children .tree-item:nth-child(odd):not(:hover) {
	background-color: var(--a-row);
}

.workspace-leaf-content[data-type="bookmarks"] .nav-header {
	padding-top: 0;
	padding-bottom: 0;
}

/* bookmark icon filled */
.browser-addressbar-suggestion .svg-icon.lucide-bookmark,
.workspace-leaf-content .svg-icon.lucide-bookmark {
	fill: currentcolor;
}

/* ───────────────────────────────────────────────── */
/* << Canvas
──────────────────────────────────────────────────── */
/* moved further down to avoid conflict with canvas controls */
body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content[data-type="canvas"] .view-header-title-container {
	top: 22rem;
}

/* align them properly for canvas controls */
body:not(.normal-header-bar, .is-mobile) .workspace-leaf-content[data-type="canvas"] :is(.view-header .view-actions, .view-header-title-container) {
	margin-right: 0.4rem;
}

body:not(.normal-header-bar, .is-mobile) .canvas-controls {
	top: 3rem;
}

/* move further to the left */
body .canvas-card-menu {
	right: -4rem;
	left: unset;
}

/* TODO add `:not(:has(.canvas-node-label))` to ensure targeting cards but not embedded notes here */
.canvas-node :is(h1, h2, h3, h4, h5, h6, .cm-header) {
	font-family: var(--font-canvas-cards-heading-theme);
	font-style: normal;
	font-weight: 500;
}

/* center everything in canvases */
.centered-canvas-notes .canvas-node-content.markdown-embed {
	text-align: center;
}

/* ───────────────────────────────────────────────── */
/* << Search
──────────────────────────────────────────────────── */
.document-search-container {
	margin-right: 0;
	margin-left: 0;
	border-bottom: var(--thin-border);
	box-shadow: var(--shadow-s);
}

body:not(.show-close-buttons) .document-search-close-button {
	display: none;
}

/* ───────────────────────────────────────────────── */
/* << File Explorer
──────────────────────────────────────────────────── */

.nav-files-container {
	padding: 0 0 var(--size-4-6) 0;
}

/* hide vault title */
body:not(.show-vault-in-file-explorer) .nav-folder.mod-root>.nav-folder-title {
	display: none;
}

.mod-root>.nav-folder-title {
	display: flex;
	background-color: var(--bg2);
	border-bottom: var(--basic-border);
}

.mod-root>.nav-folder-title>.nav-folder-title-content {
	font-size: var(--nav-item-size);
	font-weight: 600;
}

/* alternating row colors */
.nav-folder:nth-child(odd)>.nav-folder-title,
.nav-file:nth-child(odd) {
	background-color: var(--a-row);
}

/* hide navigation buttons */
body:not(.show-file-explorer-navigation) .workspace-leaf-content[data-type="file-explorer"] :is(.nav-buttons-container, .nav-header) {
	display: none;
}

/* optionally hide attachment folders */
.hide-attachment-folders .nav-folder-title:is([data-path$="/attachments" i], [data-path="attachments" i]) {
	display: none;
}

/* bold top-level folders */
.nav-folder.mod-root > .nav-folder-children > .nav-folder > .nav-folder-title {
	font-weight: 600;
}

/* ───────────────────────────────────────────────── */
/* << Outgoing Links & Backlinks
──────────────────────────────────────────────────── */
body :is(.backlink-pane, .outgoing-link-pane) {
	padding: 0 2px;
}

body .backlink-pane .search-result-container {
	padding: 2px;
}

body .outgoing-link-pane .search-result-container {
	padding: 2px 0;
}

body:not(.normal-out-back-links) .tree-item-self.outgoing-link-item .tree-item-inner-subtext {
	display: none;
}

/* hide "links" and "unlinked mentions" */
body:not(.normal-out-back-links) :is(.backlink-pane, .outgoing-link-pane)>.tree-item-self {
	display: none;
}

/* unresolved outgoing links */
.tree-item-self.outgoing-link-item svg.lucide-file-plus,
.tree-item-self.outgoing-link-item[aria-label="Not created yet"] {
	color: var(--link-unresolved-color);
	opacity: var(--link-unresolved-opacity);
}

/* alternating row colors for outgoing links */
.tree-item-self.outgoing-link-item:nth-child(odd) {
	background-color: var(--a-row);
}

/* ───────────────────────────────────────────────── */
/* <<< Inline Backlinks
──────────────────────────────────────────────────── */
:is(.markdown-source-view, .markdown-preview-view) .backlink-pane>.tree-item-self {
	background-color: var(--bg2);
}

.markdown-preview-view .embedded-backlinks {
	margin-top: var(--size-4-18);
}

.embedded-backlinks {
	padding-top: var(--size-4-2);
	border-top: var(--thin-muted-border);
}

/* minimal inline backlinks pane */
body:not(.classic-inline-backlinks) .embedded-backlinks :is(.nav-buttons-container,
	.backlink-pane > .tree-item-self,
	.tree-item-flair,
	.search-result-file-match,
	.tree-item-icon,
	.search-result-file-matches,
	.nav-header,
	.search-empty-state) {
	display: none;
}

body:not(.classic-inline-backlinks) .embedded-backlinks .search-result-container {
	padding: 0;
	margin-left: 0;
}

body:not(.classic-inline-backlinks) .embedded-backlinks .tree-item-self.tree-item-self {
	padding: 0;
	font-weight: 500;
	line-height: var(--line-height-normal);
	background: none;
}

body:not(.classic-inline-backlinks) .embedded-backlinks .tree-item-inner {
	color: var(--link-color);
	text-decoration: underline double 1px;
}

body:not(.classic-inline-backlinks) .embedded-backlinks .tree-item-self:hover .tree-item-inner {
	color: var(--hover-accent);
}

body:not(.classic-inline-backlinks) .embedded-backlinks .tree-item.search-result {
	margin: 0;
}

body:not(.classic-inline-backlinks) .embedded-backlinks .tree-item-self::before {
	margin-right: 6px;
	font-weight: 700;
	color: var(--text-faint);
	content: "•";
}

/* fix for writing/longform notes */
body:not(.classic-inline-backlinks) :is(.writing, .longform-leaf) .search-result-file-title {
	font-size: calc(var(--longform-font-size) * 0.9);
}

body:not(.classic-inline-backlinks) :is(.writing, .longform-leaf) .embedded-backlinks::before {
	font-size: calc(var(--longform-font-size) * 1);
}

/* ───────────────────────────────────────────────── */
/* << Outline
──────────────────────────────────────────────────── */

/* bolden folded headings */
.workspace-leaf-content[data-type="outline"] .tree-item.is-collapsed>.tree-item-self.tree-item-self.tree-item-self {
	font-weight: 700;
}

/* hide fold icons when not hovered or collapsed */
.workspace-leaf-content[data-type="outline"] .tree-item:not(:hover) .tree-item-icon.collapse-icon:not(.is-collapsed) {
	display: none;
}

/* move collapse icon to the right */
.workspace-leaf-content[data-type="outline"] .tree-item-icon.collapse-icon {
	position: absolute;
	right: 0.25em;
	cursor: var(--cursor-link);
}

/* less spacing since collapse icon is to the left */
.workspace-leaf-content[data-type="outline"]>.view-content>div>.tree-item>.tree-item-self {
	padding-left: 0.75em;
}

/* alternating row colors */
/* prevents double-layered row colors */
.workspace-leaf-content[data-type="outline"]>.view-content>div>.tree-item:nth-child(odd),
.workspace-leaf-content[data-type="outline"] .tree-item-children .tree-item:nth-child(odd) {
	background-color: var(--a-row);
}

.workspace-leaf-content[data-type="outline"] .pane-empty {
	display: none;
}

.workspace-leaf-content[data-type="outline"] .tree-item-self.is-active {
	font-weight: 600;
	background-color: transparent;
}

body:not(show-outline-buttons) .workspace-leaf-content[data-type="outline"] .nav-header {
	display: none;
}

/* ───────────────────────────────────────────────── */
/* < Community Plugins
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* << Strange New Worlds
──────────────────────────────────────────────────── */

body:not(.normal-header-bar, .is-mobile) .snw-header-count-wrapper {
	top: 30px;
	margin-right: 18px;
}

/* ───────────────────────────────────────────────── */
/* << Plugin Update Tracker
──────────────────────────────────────────────────── */
/* https://github.com/swar8080/obsidian-plugin-update-tracker#custom-css-snippets */
.status-bar-item.plugin-obsidian-plugin-update-tracker {
	order: 101;
	/* always move to the right */
	filter: grayscale(0.9);
}

.workspace-leaf-content[data-type$="AVAILABLE_PLUGIN_UPDATES"] :is(h2, h3) {
	font-family: var(--font-interface);
}

/* ───────────────────────────────────────────────── */
/* << Cursor Location
──────────────────────────────────────────────────── */
/* move to the left, due to it's resizing issues
 * https://github.com/spslater/obsidian-cursor-location-plugin/issues/14 */
.status-bar-item.plugin-obsidian-cursor-location-plugin:not(:empty) {
	display: unset;
	/* needed for right alignment */
	order: -100;
	min-width: 6.5ch;
	text-align: right;
}

/* ───────────────────────────────────────────────── */
/* << Better Word Count
──────────────────────────────────────────────────── */
/* move the left, next to cursor location */
.status-bar-item.plugin-better-word-count {
	order: -1;
}

/* ───────────────────────────────────────────────── */
/* << Surfing
──────────────────────────────────────────────────── */
.workspace-leaf-content[data-type="surfing-view"] .view-header.view-header {
	padding-right: var(--size-2-2);
	padding-left: var(--size-2-2);
	background-color: var(--bg3);
	border-bottom: 2px solid var(--divider-color);
}

/* ───────────────────────────────────────────────── */
/* << Strange New Worlds
──────────────────────────────────────────────────── */
.snw-header-count-wrapper {
	padding: 1px 3px;
	margin-top: 7px;
	margin-right: 10px;
	background-color: var(--bg3);
	border: var(--basic-border);
	opacity: 1;
}

.snw-header-count {
	color: var(--text-muted);
}

/* ───────────────────────────────────────────────── */
/* << Jump-to-Link
──────────────────────────────────────────────────── */
.jl.popover {
	padding: 0 2px;
	font-family: var(--font-interface);
}

/* ───────────────────────────────────────────────── */
/* << Link Favicon
──────────────────────────────────────────────────── */
img.link-favicon.link-favicon {
	padding-right: 3px;
	border: none;
	border-radius: unset;
}

.theme-light .link-favicon:is([data-host^="github.com"], [data-host^="raw.github"]) {
	filter: invert(0.2);
}

/* no favicons in style settings */
.style-settings-info-text .link-favicon {
	/* stylelint-disable-next-line declaration-no-important */
	display: none !important;
}

/* ───────────────────────────────────────────────── */
/* << Custom Frames
──────────────────────────────────────────────────── */
body:not(.normal-header-bar) .custom-frames-view {
	/* stylelint-disable-next-line declaration-no-important */
	padding-top: 1.8rem !important;
}

/* ───────────────────────────────────────────────── */
/* << Floating ToC
──────────────────────────────────────────────────── */
/* removed since styling overwritten by this theme anyway */
.style-settings-heading[data-id="floating-toc-styles"] {
	display: none;
}

.floating-toc.floating-toc .pin {
	display: none;
}

ul.floating-toc.floating-toc.floating-toc {
	top: 1.5rem;
	background-color: transparent;
}

.floating-toc .heading-list-item:not(.located) .line {
	background-color: var(--bg6);
}

.floating-toc .heading-list-item .text {
	font-size: 0.9rem;
	background-color: var(--bg3);
	border-radius: var(--radius-s);
}

.floating-toc .heading-list-item.located .line {
	background: var(--text-normal);
}

.floating-toc .heading-list-item.heading-list-item .text:hover {
	color: var(--nav-item-color-hover);
}

.floating-toc .heading-list-item .text:not(:hover) {
	color: var(--text-muted);
}

.floating-toc .heading-list-item.located .text:not(:hover) {
	color: var(--nav-item-color-active);
}

.floating-toc .heading-list-item.located .text {
	font-weight: 800;
}

.heading-list-item:not(.located, [data-level="2"]) .text-wrap .text:hover {
	font-weight: 500;
}

.floating-toc .heading-list-item .text::after {
	display: none;
}

.floating-toc {
	--floating-toc-indention: 0.75rem;
}

.floating-toc .heading-list-item[data-level="2"] {
	font-weight: 800;
}

.floating-toc .heading-list-item[data-level="3"] {
	padding-left: calc(2 * var(--floating-toc-indention));
}

.floating-toc .heading-list-item[data-level="4"] {
	padding-left: calc(3 * var(--floating-toc-indention));
}

.floating-toc .heading-list-item[data-level="5"] {
	padding-left: calc(4 * var(--floating-toc-indention));
}

.floating-toc .heading-list-item[data-level="6"] {
	padding-left: calc(5 * var(--floating-toc-indention));
}

ul.floating-toc:hover .heading-list-item>.text-wrap {
	transition-delay: var(--transition-delay-passing-over-protection);
}

/* don't show in sidebar */
:is(.mod-left-split, .mod-right-split) :is(.floating-toc, .floating-toc-div) {
	display: none;
}

/* do not indent */
body .workspace-leaf-content .floating-toc-div.floating-left~.markdown-reading-view .markdown-preview-view,
body .workspace-leaf-content .floating-toc-div.floating-left+.markdown-source-view .cm-editor {
	padding-left: 2px;
}

/* ───────────────────────────────────────────────── */
/* << Highlighted Yank
──────────────────────────────────────────────────── */
/* yank highlighter plugin */
body .yank-deco {
	color: var(--interactive-normal);
	background-color: var(--link-unresolved-color);
}

/* yank highlight plugin -- https://github.com/aleksey-rowan/obsidian-vim-yank-highlight/blob/master/styles.css */
/* stylelint-disable-next-line keyframes-name-pattern */
@keyframes yankedHighlight {
	10% {
		color: var(--interactive-normal);
		background-color: var(--link-unresolved-color);
	}

	90% {
		color: var(--interactive-normal);
		background-color: var(--link-unresolved-color);
	}
}

/* ───────────────────────────────────────────────── */
/* << Various Complements
──────────────────────────────────────────────────── */
/* remove the icon */
.various-complements__suggestion-item.various-complements__suggestion-item::before {
	display: none;
}

body .various-complements__suggestion-item {
	/* stylelint-disable-next-line declaration-no-important */
	padding: var(--size-2-2) var(--size-2-3) !important;
}

/* the alias icon */
.various-complements__suggestion-item__content__alias::before {
	position: relative;
	top: -2px;
}

.various-complements__suggestion-item__description {
	padding-top: 0;
}

.various-complements__suggestion-item__internal-link>div>div::before {
	color: var(--text-faint);
	content: "[[";
}

.various-complements__suggestion-item__internal-link>div>div::after {
	color: var(--text-faint);
	content: "]]";
}

/* ───────────────────────────────────────────────── */
/* << Obsidian Git
──────────────────────────────────────────────────── */
.obsidian-git-statusbar-status>div:nth-child(2) {
	/* stylelint-disable-next-line declaration-no-important */
	margin-left: 0 !important;
}

.obsidian-git-statusbar-status::before {
	padding-right: 4px;
	font-family: var(--icon-font);
	content: "update";
}

.obsidian-git-statusbar-status>div:first-child>svg {
	display: none;
}

/*
TURN OBSIDIAN GIT'S AUTHOR-LINE-INFO INTO GITSIGNS
Obsidian Git settings:
- Enable "Show commit authoring information next to each line"
- Hide Author Name
- Hide Authoring Date

Caveats (in comparison to git signs)
- added & modified lines both are displayed as green
- deleted lines are not displayed
- the signs update with noticeable lag, since it runs git-blame in the background
*/

.git-blame-to-gitsigns .obs-git-blame-gutter>div[data-commit*='"isZeroCommit":false'] {
	display: none;
}

.git-blame-to-gitsigns .obs-git-blame-gutter>div[data-commit*='"isZeroCommit":true'] {
	/* stylelint-disable-next-line declaration-no-important */
	background-color: var(--color-green) !important;
	opacity: 0.4;
}

.git-blame-to-gitsigns .cm-gutterElement.obs-git-blame-gutter {
	width: 4px;
	/* stylelint-disable-next-line declaration-no-important */
	padding-top: 0 !important;
	background-color: transparent;
	border: none;
}

.git-blame-to-gitsigns .markdown-source-view .inline-title {
	margin-left: 0.75em;
}

/* ───────────────────────────────────────────────── */
/* << Dynamic Highlight
──────────────────────────────────────────────────── */

/* current word */
body .app-container :is(.cm-matched-word, .cm-current-word) {
	text-decoration: 2px dashed underline;
	text-decoration-skip-ink: none;
	text-underline-offset: 4px;
}

/* current selection */
body .cm-matched-string {
	text-decoration: none;
	outline: 2.5px solid var(--search-match-color);
}

/* ───────────────────────────────────────────────── */
/* << Another Quick Switcher (AQS)
──────────────────────────────────────────────────── */
/* styling from prompts also apply */

.another-quick-switcher__directory_item::before,
.another-quick-switcher__item__icon,
body .another-quick-switcher__status__search-command,
.another-quick-switcher__item__directory svg {
	display: none;
}

body .another-quick-switcher__status__count-input {
	top: 1rem;
	right: 1rem;
	color: var(--text-gray);
}

.another-quick-switcher__phantom_item::before {
	display: none;
}

.another-quick-switcher__item__description.another-quick-switcher__item__description {
	padding-left: 0;
	margin-left: 0;
}

.another-quick-switcher__item__descriptions {
	padding-top: 1px;
	line-height: 1;
}

.another-quick-switcher__item__description__tag,
.another-quick-switcher__item__description__alias {
	line-height: 1.2;
}

.another-quick-switcher__item__description__alias svg {
	width: 14px;
	margin-right: 4px;
}

.another-quick-switcher__item__description__tag.another-quick-switcher__item__description__tag>svg {
	margin-right: -1px;
	transform: scale(0.9);
}

.suggestion-item .another-quick-switcher__item__directory {
	padding-right: 2px;
	padding-left: 5px;
	font-size: 0.9em;
	letter-spacing: 0.1px;
}

/* selected */
.suggestion-item.is-selected :is(.another-quick-switcher__item__icon,
	.another-quick-switcher__item__directory,
	.another-quick-switcher__item__description) {
	color: var(--text-accent);
	filter: saturate(60%);
}

/* hovered */
.suggestion-item:hover :is(.another-quick-switcher__item__icon,
	.another-quick-switcher__item__directory,
	.another-quick-switcher__item__description) {
	color: var(--text-accent-hover);
	filter: saturate(60%);
}

/* unresolved */
.another-quick-switcher__phantom_item.another-quick-switcher__phantom_item {
	color: var(--link-unresolved-color);
	opacity: 0.85;
}

.another-quick-switcher__phantom_item :is(.another-quick-switcher__item__icon, .another-quick-switcher__item__directory),
.suggestion-item:hover .another-quick-switcher__phantom_item {
	filter: saturate(60%);
}

.suggestion-item:hover .another-quick-switcher__phantom_item :is(.another-quick-switcher__item__icon, .another-quick-switcher__item__directory),
.suggestion-item:hover .another-quick-switcher__phantom_item {
	color: var(--hover-accent);
	filter: saturate(60%);
}

/* starred item bold */
.another-quick-switcher__starred_item::before {
	display: none;
}

.another-quick-switcher__starred_item .another-quick-switcher__item__entry::before {
	padding-right: 5px;
	content: "☆";
}

.another-quick-switcher__starred_item .another-quick-switcher__item__title {
	font-weight: 600;
}

/* Numbered Hotkey tip */
.is-mobile .another-quick-switcher__item__hot-key-guide,
.another-quick-switcher__item__hot-key-guide::before,
.another-quick-switcher__item__hot-key-guide::after {
	display: none;
}

body:not(.is-mobile) .another-quick-switcher__item__hot-key-guide {
	position: absolute;
	right: var(--size-4-1);
	padding: 3px;
	font-size: 80%;
	line-height: 1;
	color: var(--hotkey-color);
	background-color: var(--bg3);
	border: var(--thin-border);
	border-radius: var(--radius-s);
	opacity: 0.9;
}

body .another-quick-switcher__item__directory {
	margin-right: 1rem;
}

body .another-quick-switcher__item {
	padding-left: 0;
}

body .another-quick-switcher__item__description {
	margin-left: var(--size-4-2);
}

/* hide current file title */
.another-quick-switcher__custom-search__navigation-history-header {
	display: none;
}

.another-quick-switcher__status__count-input+.prompt-input {
	width: 99%;
}

/* enlarge floating window */
.prompt.another-quick-switcher__floating-prompt {
	max-height: 88vh;
}

/* GREP SEARCH */
.another-quick-switcher__grep__item__hot-key-guide {
	display: none;
}

.another-quick-switcher__grep__path-input__wrapper+.prompt-results .another-quick-switcher__item__directory {
	margin-right: 0;
}

.another-quick-switcher__grep__path-input__wrapper+.prompt-results .another-quick-switcher__item__directory svg {
	display: unset;
}

.another-quick-switcher__hit_word {
	color: var(--search-match-color);
}

.another-quick-switcher__grep__item__description {
	padding-left: 0;
}

.another-quick-switcher__grep__path-input__wrapper {
	padding: 0 8px;
}

.another-quick-switcher__grep__path-input__wrapper::before {
	padding-right: 8px;
	content: "In ";
}

body .another-quick-switcher__grep__path-input.another-quick-switcher__grep__path-input {
	margin-left: 0;
	background-color: transparent;
	border: none;
}

.another-quick-switcher__grep__path-input__wrapper+.prompt-results {
	border-top: var(--basic-border);
}

.another-quick-switcher__grep__item__title_entry {
	margin-top: 0;
	border-color: var(--basic-border-color);
}

.another-quick-switcher__grep__path-input__wrapper+.prompt-results .another-quick-switcher__item__descriptions {
	font-size: var(--font-ui-medium);
	line-height: calc(var(--line-height-tight) - 0.1);
}

.another-quick-switcher__grep__count-input {
	top: 16px;
	color: var(--text-faint);
}

/* ───────────────────────────────────────────────── */
/* << Recent Files
──────────────────────────────────────────────────── */
/* inherits alternate row colors from file explorer */

.workspace-leaf-content[data-type="recent-files"] .nav-file-title.nav-file-title.nav-file-title {
	padding-right: 0;
	padding-left: var(--size-2-3);
}

/* why would you want to go from the active file to the active file? */
.workspace-leaf-content[data-type="recent-files"] .nav-file-title.is-active {
	display: none;
}

.recent-files-file-delete {
	margin-right: 6px;
}

/* ───────────────────────────────────────────────── */
/* << Pandoc Reference List
──────────────────────────────────────────────────── */

/* PANDOC CITATIONS IN-TEXT */

/* neither resolved nor unresolved = citation loading (or pandoc reference list bug) */
body:not(.no-pandoc-citation-emphasis) .pandoc-citation:not(.is-resolved, .is-unresolved) {
	opacity: 0.6;
}

body:not(.no-pandoc-citation-emphasis) .pandoc-citation.is-resolved.is-resolved.is-resolved.is-resolved {
	color: var(--secondary-accent);
	text-decoration: none;
}

body:not(.no-pandoc-citation-emphasis) .pandoc-citation.pandoc-citation.is-unresolved {
	color: var(--text-error);
	text-decoration: underline 1.5px var(--text-error);
}

.app-container.app-container.app-container :is(.cm-pandoc-citation-formatting,
	.pandoc-citation-formatting,
	.cm-pandoc-citation-extra,
	.pandoc-citation-extra) {
	color: var(--text-faint);
	text-decoration: none;
}

/* HACK not using display:none, since the @ symbol is used to anchor the tooltip */
.markdown-preview-view .pandoc-citation-at {
	font-size: 0;
}

/* Style Settings disabled, since overridden by the theme anyway */
.style-settings-heading[data-id="pandoc-reference-list"] {
	display: none;
}

/* REFERENCE LIST */
.pwc-no-content {
	padding: var(--size-4-2) var(--size-4-3);
}

.pwc-reference-list .csl-entry-wrapper.csl-entry-wrapper {
	padding: 0 2px;
	border: none;
}

.pwc-reference-list {
	--bibliography-indent: 1.1em;
}

.pwc-reference-list.pwc-reference-list.pwc-reference-list.pwc-reference-list .pwc-reference-list__title.pwc-reference-list__title>div {
	padding-left: 2px;
	margin-bottom: 4px;
	font-family: var(--font-heading-theme);
	font-size: var(--h4-size);
	letter-spacing: calc(var(--heading-letter-spacing) * 0.5);
}

body .pwc-reference-list .csl-entry.csl-entry.csl-entry {
	padding-left: calc(var(--bibliography-indent) + 6px);
	line-height: var(--line-height-tight);
	text-indent: calc(var(--bibliography-indent) * -1);
}

.pwc-reference-list.collapsed-links.collapsed-links a::after {
	background-color: var(--text-accent);
}

.pwc-reference-list.collapsed-links.collapsed-links a:hover::after {
	background-color: var(--icon-color-hover);
}

.pwc-reference-list:not(:hover) .pwc-copy-list {
	opacity: 0;
}

.pwc-copy-list svg {
	display: none;
}

.pwc-copy-list::before {
	padding: 3px 3px 3px 5px;
	font-family: var(--icon-font);
	font-size: 0.9rem;
	content: "content_copy";
	background-color: var(--bg3);
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

.pwc-copy-list:hover::before {
	color: var(--icon-color-hover);
}

/* tooltips */
.pwc-tooltip.is-missing em {
	font-style: normal;
	color: var(--text-error);
}

.pwc-tooltip.is-missing em::after {
	content: ".";
}

.pwc-tooltip {
	padding: var(--size-2-2) var(--size-2-3);
	background-color: var(--bg3);
	border: 2px solid var(--secondary-accent);
}

/* ───────────────────────────────────────────────── */
/* << Style Settings
──────────────────────────────────────────────────── */

.style-settings-export {
	margin-right: 0;
}

/* the "download settings" button is not needed for *every single* section */
.style-settings-container .setting-item-heading:not([data-level="0"]) .setting-editor-extra-setting-button:last-child {
	display: none;
}

.style-settings-heading.style-settings-heading.style-settings-heading {
	padding: 0;
	margin-top: 10px;
	border-bottom: var(--muted-border);
}

.style-settings-heading .setting-item-name {
	margin-top: 8px;
	margin-bottom: 3px;
	font-family: var(--font-interface);
	font-size: 1rem;
	line-height: 1em;
	letter-spacing: 0;
}

.style-settings-heading .setting-item-name:hover {
	color: var(--text-accent-hover);
}

.style-settings-heading:not(.is-collapsed) .setting-item-name {
	font-weight: 600;
}

.style-settings-heading.is-collapsed .setting-item-name {
	font-weight: 500;
}

.style-settings-heading :is(.setting-item-title, .setting-item-description) {
	margin-left: 1px;
}

body .style-settings-heading[data-level="0"] {
	margin-bottom: 16px;
}

body .style-settings-heading[data-level="0"] .setting-item-name.setting-item-name.setting-item-name.setting-item-name {
	font-family: var(--font-heading-theme);
	font-size: var(--h2-size);
	letter-spacing: var(--heading-letter-spacing);
}

/* settings tab / general */
.style-settings-heading[data-level="2"]+.style-settings-container,
.style-settings-heading[data-level="2"][data-level="2"] {
	margin-left: 20px;
}

.style-settings-heading+.style-settings-container .style-settings-heading[data-level="2"] .setting-item-name {
	font-size: 1rem;
	letter-spacing: 0;
}

.style-settings-container .setting-editor-extra-setting-button {
	margin-left: 10px;
}

.style-settings-heading[data-level="0"] .setting-item-name.setting-item-name.setting-item-name.setting-item-name {
	margin-bottom: 4px;
	font-size: 1.1em;
}

.style-settings-container .setting-item-description {
	margin-bottom: 4px;
	font-family: var(--font-interface);
	font-size: 0.8rem;
	font-weight: 500;
	line-height: 1.3em;
}

.style-settings-container .setting-item:not(.setting-item-heading) .setting-item-name+.setting-item-description {
	margin-top: 4px;
	margin-bottom: 0;
}

.style-settings-heading:not(.is-collapsed) .setting-item-description {
	display: none;
}

.setting-item-description strong {
	color: var(--text-muted);
}

/* ───────────────────────────────────────────────── */
/* <<< Style Settings: As Tab
──────────────────────────────────────────────────── */

.workspace-leaf-content[data-type="style-settings"] .view-content .setting-item:first-child {
	/* avoid collision with three dots button */
	padding-top: var(--size-4-3);
}

.workspace-leaf-content[data-type="style-settings"] .view-content {
	padding: 40px;
}

/* FIX for https://github.com/mgmeyers/obsidian-style-settings/issues/104 */
body .view-content .style-settings-container .setting-item:not(.setting-item-heading) {
	flex-direction: row;
}

/* ───────────────────────────────────────────────── */
/* <<< Style Settings: Conditionals Settings Display
──────────────────────────────────────────────────── */

/* hide background hue sliders when using macOS look */
.mac-os-native .setting-item:is([data-id="bg-hue-light"], [data-id="bg-hue-dark"], [data-id="longform-bg-hue"]) {
	display: none;
}

/* ───────────────────────────────────────────────── */
/* <<< Style Settings: Infoboxes
──────────────────────────────────────────────────── */

.setting-item[data-id="appendix-info"] {
	display: none;
}

body .setting-item.setting-item.setting-item.setting-item[data-id="author-info"] {
	margin-top: 40px;
}

.style-settings-info-text.setting-item.setting-item.setting-item.setting-item {
	padding: 8px;
	margin-top: 12px;
	margin-bottom: 12px;
	background-color: var(--bg1);
	border: var(--basic-border);
	border-radius: var(--radius-m);
}

.style-settings-info-text ul {
	padding-left: 16px;
}

.style-settings-info-text .setting-item-description.setting-item-description.setting-item-description.setting-item-description {
	padding-top: 0;
	margin-top: 0;
}

.setting-item-description code {
	position: relative;
	bottom: 0;
	padding-bottom: 0;
	font-size: 0.8rem;
	color: var(--inline-code-color);
}

.style-settings-info-text .setting-item-name:not(:empty) {
	margin-bottom: 8px;
}

.workspace-leaf-content[data-type="style-settings"] .style-settings-info-text.setting-item.setting-item {
	background-color: var(--bg4);
}

/* ───────────────────────────────────────────────── */
/* <<< Style Settings: Hue Sliders & Color Demo Boxes
──────────────────────────────────────────────────── */

/* use hue slider */
.style-settings-container {
	--demo-box-size: var(--icon-l);
	--hue-slider-sat: 70%;
	--hue-slider-br: 60%;
	--hue-scale: linear-gradient(to right,
			hsl(0 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(30 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(60 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(90 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(120 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(150 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(180 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(210 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(240 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(270 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(300 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(330 var(--hue-slider-sat) var(--hue-slider-br)),
			hsl(360 var(--hue-slider-sat) var(--hue-slider-br)));
}

.style-settings-container .setting-item:is([data-id="highlight-hue-1"], [data-id^="bg-hue"]) input.slider {
	height: 0.8em;
	background: var(--hue-scale);
	border-radius: var(--radius-xs);
}

.style-settings-container .setting-item:is([data-id="highlight-hue-1"], [data-id^="bg-hue"]) input.slider::-webkit-slider-thumb {
	position: relative;
	top: -0.7em;
	width: 0.4em;
	height: 1.9em;
	background-color: var(--text-muted);
	border-radius: var(--radius-xs);
}

/* disable numbered sliders */
.style-settings-container .setting-item:is([data-id="highlight-hue-1"], [data-id^="bg-hue"]) input::before,
.style-settings-container .setting-item:is([data-id="highlight-hue-1"], [data-id^="bg-hue"]) input::after {
	display: none;
}

/* DEMO COLOR BOX */
.style-settings-container .setting-item:is([data-id="longform-bg-hue"], [data-id="highlight-hue-1"]) .setting-item-control::before {
	position: relative;
	left: -3em;
	width: 1.6em;
	height: 1.6em;
	font-size: 0.7em;
	color: var(--text-normal);
	text-align: center;
	white-space: pre-wrap;
	content: " ";
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

.style-settings-container .setting-item[data-id="longform-bg-hue"] .setting-item-control::before {
	background-color: var(--longform-bg);
	filter: saturate(1.7);
}

.style-settings-container .setting-item[data-id="highlight-hue-1"] .setting-item-control::before {
	background-color: hsl(var(--highlight-hue-1) var(--highlight-sla-values));
}

/* ───────────────────────────────────────────────── */
/* << Dataview
──────────────────────────────────────────────────── */
/* Styling from the "Tables" Section mostly applies */

/* less indentation to save space */
:is(.block-language-dataview, .block-language-dataviewjs) ul.contains-task-list {
	--list-indent: 1.2em;
}

.is-live-preview :is(.block-language-dataview, .block-language-dataviewjs) ul.contains-task-list {
	padding-inline-start: 0;
}

:is(.block-language-dataview, .block-language-dataviewjs) .result-group {
	padding-left: 0;
}

.result-group .dataview.task-list-item-checkbox {
	margin-inline-start: 0.3em;
}

pre.dataview-error::before {
	display: none;
}

pre.dataview-error::first-line {
	color: var(--text-error);
}

/* Result counts */
.dataview.small-text.small-text.small-text {
	padding: 1px var(--size-2-1) 0;
	margin-left: var(--size-4-2);
	font-family: var(--font-monospace-theme);
	font-size: 85%;
	color: var(--text-normal);
	background-color: var(--bg1);
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

.dataview.small-text::before,
.dataview.small-text::after {
	display: none;
}

/* remove table hover, since redundant with hovers from this theme */
body .dataview:not(.task-list-item-checkbox):hover {
	cursor: default;
	background: none;
	box-shadow: none;
}

.dataview.table-view-table small {
	font-size: 70%;
}

.is-live-preview .block-language-dataviewjs :is(h1, h2, h3, h4, h5, h6):first-child {
	margin-top: 4px;
}

/* <<< dataview cssclasses */
.remove-dataview-title :is(.block-language-dataview, .block-language-dataviewjs) h4 {
	display: none;
}

/* ───────────────────────────────────────────────── */
/* << Breadcrumbs
──────────────────────────────────────────────────── */
/* (currently only matrix) */

.BC-Matrix.BC-Matrix.BC-Matrix ol>li {
	padding: var(--size-4-1);
	margin: 0;
	line-height: 1.2;
}

.BC-Matrix ol>li::marker {
	content: none;
}

/* links */
.BC-Matrix.BC-Matrix.BC-Matrix ol>li:hover {
	cursor: var(--cursor-link);
	background-color: var(--nav-item-background-hover);
}

.BC-Matrix.BC-Matrix ol>li .BC-Link {
	font-family: var(--font-interface-theme);
	font-size: var(--nav-item-size);
	color: var(--nav-item-color);
}

.BC-Matrix.BC-Matrix ol>li:hover .BC-Link {
	color: var(--nav-item-color-hover);
}

.BC-Matrix.BC-Matrix.BC-Matrix.BC-Matrix ol>li .BC-Link {
	text-decoration: none;
}

.BC-Link.is-unresolved.is-unresolved.is-unresolved {
	color: var(--link-unresolved-color);
	opacity: var(--link-unresolved-opacity);
}

/* hide headings in Breadcrumbs */
.BC-Matrix-headers.BC-Matrix-headers.BC-Matrix-headers.BC-Matrix-headers {
	display: none;
}

.workspace-leaf-content[data-type="BC-matrix"]>.view-content {
	padding-top: 0;
}

.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square:first-child {
	padding-top: 0;
}

/* overscroll */
.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square:last-child {
	margin-bottom: 20px;
}

.view-content .BC-Matrix .BC-Matrix-square ol {
	padding-left: 0;
	margin: 0;
}

body .app-container .workspace-leaf-content[data-type="BC-matrix"] .view-content {
	padding: 0 0 3px 2px;
}

.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square.BC-Matrix-square {
	border: none;
	border-bottom: var(--thin-muted-border);
}

.BC-Matrix.BC-Matrix.BC-Matrix.BC-Matrix div {
	margin: 0;
	border: none;
}

.BC-Matrix.BC-Matrix.BC-Matrix.BC-Matrix {
	padding: 0;
}

.workspace-leaf-content[data-type="BC-matrix"] .view-content button {
	display: none;
}

.BC-Matrix-square li {
	padding-left: var(--size-2-2);
}

.BC-Matrix-square li:nth-child(even) {
	background-color: var(--a-row);
}

/* ───────────────────────────────────────────────── */
/* << Hider
──────────────────────────────────────────────────── */
/* Hider is actually not needed with this theme,
but the hider CSS for ribbon-hiding and this theme's
CSS are incompatible, requiring this override */

body.hider-ribbon .workspace-ribbon.mod-left {
	display: unset;
}

/* ───────────────────────────────────────────────── */
/* << Longform
──────────────────────────────────────────────────── */

/* ───────────────────────────────────────────────── */
/* <<< Longform Smart Word Count
──────────────────────────────────────────────────── */

/* Show Word Count only on writing cssclass and longform notes.
- Supports Word Count Core Plugin + Better Word Count Community Plugin.
- Caveat: also triggered when such a note is open is in a non-active tab, restricting
this to the active tab qould require nested `:has()` which isn't supported */
.wordcount-only-when-writing:not(.is-mobile) .horizontal-main-container:not(:has(:is(.writing, .longform-leaf)))+.status-bar :is(.plugin-word-count, .plugin-better-word-count) {
	display: none;
}

/* ───────────────────────────────────────────────────
/* <<< Longform Sidebar
─────────────────────────────────────────────────── */

.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] .tab-panel-container {
	padding-right: 0;
	padding-left: 0;
}

/* project picker */
.workspace-leaf-content .view-content div#project-picker-container {
	margin-bottom: 0;
}

#project-picker {
	padding-left: 4px;
	background-color: var(--bg1);
	border-top: var(--thin-border);
	border-bottom: var(--thin-border);
	border-radius: 0;
}

div#select-projects select {
	padding-left: var(--size-2-2);
	overflow: hidden;
	font-size: var(--font-small);
	font-weight: 700;
	color: var(--text-normal);
	text-overflow: ellipsis;
	white-space: nowrap;
	box-shadow: none;
}

#project-picker .right-arrow {
	display: none;
}

#project-picker select:hover {
	color: var(--hover-accent);
	text-decoration: none;
}

/* Drafts Picker */
#select-drafts select {
	height: 25px;
	padding-left: var(--size-2-2);
	color: var(--text-normal);
}

/* Scene List */
body .longform-explorer.longform-explorer #scene-list {
	margin: 0;
}

.scene-container:is(.selected, .selected:hover) {
	font-weight: 700;
}

#scene-list .scene-container {
	width: 100%;
	padding: 4px 6px;
	line-height: 1.2em;
	white-space: normal;
	border: none;
	border-radius: 0;
}

/* FIX fold arrow alignment by hiding it https://github.com/kevboh/longform/issues/140 */
/* (it misaligns the scnee list, and reversing the flex-direction makes it buggy) */
body #scene-list .scene-container>span {
	display: none;
}

body #scene-list .scene-container div {
	margin-right: 4px;
	margin-left: 0;
}

#scene-list .scene-container[data-scene-indent="0"] {
	/* stylelint-disable-next-line declaration-no-important */
	padding-left: 6px !important;
}

/* FIX indented scenes moving longform sidebar incorrectly due to usage of margin
* instead of padding. */
#scene-list .scene-container[data-scene-indent] {
	/* stylelint-disable-next-line declaration-no-important */
	margin-left: 0 !important;
}

#scene-list .scene-container[data-scene-indent="1"] {
	padding-left: 1.75em;
}

#scene-list .scene-container[data-scene-indent="2"] {
	padding-left: 3.5em;
}

#scene-list .scene-container[data-scene-indent="3"] {
	padding-left: 5.25em;
}

#scene-list .scene-container[data-scene-indent="4"] {
	padding-left: 7em;
}

#scene-list .scene-container.selected,
#scene-list .scene-container.selected .longform-scene-number {
	color: var(--color-accent);
}

#scene-list .scene-container.selected {
	background-color: var(--nav-item-background-active);
}

#scene-list .scene-container:hover {
	color: var(--hover-accent);
	background-color: var(--nav-item-background-hover);
}

#scene-list .scene-container:hover .longform-scene-number.longform-scene-number {
	color: var(--hover-accent);
}

/* Scene Number */
#scene-list .scene-container[data-scene-indent="0"] .longform-scene-number::after {
	content: ".";
}

#scene-list .scene-container:not([data-scene-indent="0"]) .longform-scene-number::after {
	display: none;
}

#scene-list .longform-scene-number {
	color: var(--text-gray);
}

/* alternating row colors, factoring in the coloring */
li:nth-child(even) :is(.draft-container, .scene-container) {
	background-color: var(--a-row);
}

/* grayed out scenes */
#scene-list .scene-container:is([data-scene-path*="Acknowledgements" i],
	[data-scene-path*="Appendix" i],
	[data-scene-path*="Supplemental" i],
	[data-scene-path*="Metadata" i],
	[data-scene-path*="References" i],
	[data-scene-path*="Declaration of Conflicting Interests" i]):not(.selected, :hover) :is(div, .longform-scene-number) {
	color: var(--text-faint);
}

/* new scenes */
.tab-panel-container input#new-scene {
	height: var(--size-4-4);
	padding-left: var(--size-2-3);
}

.new-scene-container.new-scene-container.new-scene-container {
	border-top: var(--basic-border);
}

/* Drafts Tab */
.longform-project-section {
	margin-right: 8px;
	margin-left: 8px;
}

.longform-project-section h4 {
	font-family: var(--font-interface);
}

.longform-project-section strong {
	color: var(--text-normal);
}

/* ───────────────────────────────────────────────── */
/* <<< Longform Compile
──────────────────────────────────────────────────── */

.longform-compile-container {
	padding-right: var(--size-4-1);
	padding-left: var(--size-4-1);
}

button.longform-remove-step-button.longform-remove-step-button.longform-remove-step-button,
.longform-compile-container .options-button.options-button.options-button {
	padding: var(--size-2-3);
	background-color: transparent;
	box-shadow: none;
}

body .longform-compile-container.longform-compile-container .longform-workflow-picker-container {
	margin-bottom: var(--size-4-2);
	border-bottom-width: var(--size-2-1);
}

button.longform-remove-step-button.longform-remove-step-button.longform-remove-step-button {
	height: unset;
	padding: var(--size-2-1);
	font-weight: 500;
}

.longform-compile-step h4 {
	font-family: var(--font-interface);
	font-size: 1rem;
	line-height: var(--line-height-tight);
	letter-spacing: 0;
}

.longform-compile-step.longform-compile-step.longform-compile-step.longform-compile-step {
	padding-bottom: 4px;
	margin-bottom: 8px;
}

.longform-compile-step-title-container .longform-step-kind-pill.longform-step-kind-pill.longform-step-kind-pill.longform-step-kind-pill {
	padding: 1px 3px;
	border-radius: var(--radius-s);
}

/* ───────────────────────────────────────────────────
/* <<< Longform Sidebar Icons
─────────────────────────────────────────────────── */
/* container needs to be relative for `.current-draft-path` */
#project-picker-container {
	position: relative;
}

/* turn the draft-path into a home-button */
#project-picker-container .current-draft-path.current-draft-path.current-draft-path.current-draft-path.current-draft-path {
	position: absolute;
	right: -0.3rem;
	bottom: -1.825rem;
	font-size: 0;
}

.current-draft-path::before {
	position: relative;
	left: 8px;
	content: "home";
}

.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] .tabs .tab-list {
	padding: 4px 4px 2px 6px;
	margin: 0;
	border-bottom: var(--basic-border);
}

.current-draft-path::before,
.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] button::before {
	font-family: var(--icon-font);
	font-size: calc(1.2 * var(--font-text-size));
}

.current-draft-path,
.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] .tab-list.tab-list.tab-list button {
	width: 37px;
	height: 25px;
	padding: 4px;
	margin-right: 10px;
	font-size: 0;
	color: var(--text-faint);
	background-color: var(--bg3);
	border: var(--thin-border);
	border-radius: var(--radius-s);
}

.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] .tab-list button:nth-child(1)::before {
	content: "format_list_numbered";
}

.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] .tab-list button:nth-child(2)::before {
	content: "import_contacts";
}

.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] .tab-list button:nth-child(3)::before {
	content: "merge_type";
}

/* selected */
.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] button.selected.selected.selected {
	color: var(--text-normal);
	background-color: var(--nav-item-background-hover);
}

/* hovered */
.current-draft-path.current-draft-path.current-draft-path.current-draft-path:hover,
.workspace-leaf-content[data-type="VIEW_TYPE_LONGFORM_EXPLORER"] .tab-list.tab-list button:hover {
	color: var(--icon-color-hover);
	background-color: var(--nav-item-background-active);
}

/* ───────────────────────────────────────────────────
/* <<< Longform Unknown Files Wizard
─────────────────────────────────────────────────── */

.tab-panel-container.tab-panel-container.tab-panel-container #longform-unknown-files-wizard {
	padding: 0;
	margin-top: 3px;
	border-top: var(--basic-border);
}

.longform-unknown-inner.longform-unknown-inner.longform-unknown-inner.longform-unknown-inner {
	padding-left: 0;
	border: none;
}

.longform-unknown-explanation.longform-unknown-explanation.longform-unknown-explanation.longform-unknown-explanation {
	padding: 4px;
	margin-top: 0;
	margin-bottom: 3px;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.3;
	color: var(--text-muted);
	background-color: var(--bg3);
}

#longform-unknown-files-wizard .longform-unknown-inner.longform-unknown-inner.longform-unknown-inner>ul {
	padding-left: 3px;
	margin: 0;
}

#longform-unknown-files-wizard .longform-unknown-inner.longform-unknown-inner.longform-unknown-inner>ul>li:nth-child(even) {
	background-color: var(--a-row);
}

.longform-unknown-file {
	padding: 1px 0 4px;
	line-height: 1.25;
}

.longform-unknown-file.longform-unknown-file.longform-unknown-file.longform-unknown-file button {
	padding: 1px 3px 3px;
	margin-right: 5px;
	font-size: 0.7em;
	font-weight: 400;
	line-height: 1;
	text-shadow: none;
	border-width: 1px;
	border-radius: var(--radius-s);
}

.longform-unknown-ignore.longform-unknown-ignore.longform-unknown-ignore.longform-unknown-ignore:not(:hover) {
	border-color: var(--text-faint);
}

/* ───────────────────────────────────────────────────
/* <<< Longform Editor
/* <<< Writing cssclass
─────────────────────────────────────────────────── */
/* DOCS https://github.com/kevboh/longform#scene-only-styling */

/* stylelint-disable no-duplicate-selectors */
.theme-light {
	--longform-bg: hsl(var(--longform-bg-hue) calc(var(--bg-sat) * 1.7) 96%);
}

.theme-dark {
	--longform-bg: hsl(var(--longform-bg-hue) var(--bg-sat) 12%);
}

/* stylelint-enable no-duplicate-selectors */

.longform-leaf :is(.markdown-preview-view, .cm-s-obsidian),
.writing:is(.markdown-preview-view, .cm-s-obsidian) {
	background-color: var(--longform-bg);
}

:is(.writing, .longform-leaf) .table-cell-wrapper .cm-s-obsidian {
	background-color: unset;
}

/* font family and size */
.writing.markdown-preview-view,
:is(.writing, .longform-leaf) :is(.markdown-preview-view, .cm-contentContainer) {
	/* for table cells */
	--font-text: var(--longform-font-text-theme);
	font-family: var(--longform-font-text-theme);
	font-size: var(--longform-font-size);
	letter-spacing: var(--longform-letter-spacing);
}

/* keep any code smaller */
.app-container.app-container.app-container.app-container.app-container.app-container :is(.longform-leaf, .writing) :is(.frontmatter-container,
	.cm-hmd-frontmatter,
	.cm-formatting-task,
	.HyperMD-codeblock,
	code,
	.cm-inline-code,
	.HyperMD-table-row) {
	font-family: var(--font-monospace);
	font-size: 0.95rem;
}

/* justify text */
body:not(.longform-left-aligned) :is(.writing, .longform-leaf) {
	hyphens: auto;
	text-align: justify;
}

/* stuff not to justify */
body:not(.longform-left-aligned) :is(.writing, .longform-leaf) :is(.HyperMD-codeblock,
	.HyperMD-header,
	.inline-title,
	.cm-hmd-frontmatter,
	.HyperMD-table-2,
	.table-cell-wrapper) {
	text-align: left;
}

/* headings */
.app-container :is(.writing, .longform-leaf) :is(h1, h2, h3, h4, h5, h6, .cm-header, .inline-title) {
	font-family: var(--longform-font-text-theme);
	letter-spacing: calc(var(--heading-letter-spacing) * 0.5);
}

/* indented-text */
.longform-text-indent.longform-text-indent div:has(> p)+div>p {
	margin-top: 0;
	text-indent: 1.5em;
}

.longform-text-indent.longform-text-indent div:has(+ div > p)>p {
	margin-bottom: 0;
}

/* line height */
/* long selector needed to target only lines outside of a table */
:is(.writing, .longform-leaf) .view-content>.cm-s-obsidian>div>.cm-scroller>.cm-sizer>.cm-contentContainer>.cm-content>.cm-line:not(.HyperMD-header) {
	line-height: calc(var(--longform-base-line-height) + 0.35);
}

:is(.writing, .longform-leaf) :is(table, h1, h2, h3, h4, h5, h6, .inline-title),
:is(.writing, .longform-leaf) .table-wrapper .cm-line,
body:not(.is-popout-window) :is(.writing, .longform-leaf) .cm-line> :is(.cm-header, .cm-hmd-frontmatter) {
	line-height: var(--longform-base-line-height);
}

:is(.writing, .longform-leaf) .cm-header.cm-header {
	position: relative;
	top: -2px;
	line-height: calc(var(--longform-base-line-height) + 0.05);
}

/* emphasized tasks */
body.longform-tasks-different.longform-tasks-different.longform-tasks-different.longform-tasks-different :is(.writing, .longform-leaf) :is(.HyperMD-task-line, ul.contains-task-list) {
	color: var(--text-faint);
}

/* fix for code block header hack */
.app-container :is(.writing, .longform-leaf) pre[class*="language-"]::before {
	line-height: calc(var(--longform-base-line-height) + 0.3);
}

/* ───────────────────────────────────────────────── */
/* << Kanban
──────────────────────────────────────────────────── */

/* background & colors */
.kanban-plugin {
	--dot-color: hsl(0 0% 40% / 25%);
	--dot-spacing: 9px;
	--dot-size: 1px;
	background-color: var(--bg4);
}

.kanban-plugin__board>div {
	padding: var(--size-2-3);
}

.workspace-leaf-content[data-type="kanban"] .view-actions {
	background-color: var(--bg3);
	border: var(--thin-border);
	border-radius: var(--radius-m);
	transition-delay: var(--transition-delay-passing-over-protection);
	transition-duration: var(--anim-duration-moderate);
}

.workspace-leaf-content[data-type="kanban"] .view-actions:not(:hover) {
	opacity: 0;
}

/* dotted background, thanks to @Damian Korcz for this */
.kanban-plugin__board {
	background-image: radial-gradient(circle,
			var(--dot-color) var(--dot-size),
			transparent var(--dot-size));
	background-attachment: local;
	background-size: var(--dot-spacing) var(--dot-spacing);
	border-top: var(--thin-border);
}

.kanban-plugin__item:hover {
	border-color: var(--hover-accent);
}

.kanban-plugin__item {
	border: var(--thin-muted-border);
}

.kanban-plugin__lane-header-wrapper {
	padding: var(--size-4-1);
	background-color: var(--bg1);
	border-bottom: var(--thin-border);
	border-radius: var(--radius-s) var(--radius-s) 0 0;
}

.kanban-plugin__lane-title-text p {
	font-size: 1.1em;
	line-height: 1.4;
	/* needed so there are no mini-scrollbars when dragging a card */
	letter-spacing: calc(var(--heading-letter-spacing) * 0.4);
}

.theme-dark .kanban-plugin__lane-header-wrapper {
	border-bottom-color: var(--muted-border-color);
}

.theme-light .kanban-plugin__lane-header-wrapper {
	background-color: var(--bg6);
}

.kanban-plugin__item-postfix-button-wrapper {
	display: none;
}

.kanban-plugin__lane-settings-button.kanban-plugin__lane-settings-button {
	box-shadow: none;
}

.kanban-plugin__lane-settings-button:hover svg {
	stroke: var(--icon-color-hover);
}

.kanban-plugin__item-button-wrapper {
	padding: 0 var(--size-2-1) var(--size-2-1);
	border-top: none;
	border-radius: 0 0 var(--radius-s) var(--radius-s);
}

.kanban-plugin__lane-items {
	padding-top: 0;
	padding-bottom: 0;
	margin: 0 1px;
}

.kanban-plugin__lane-title-count.kanban-plugin__lane-title-count {
	background-color: var(--bg3);
	border: var(--thin-muted-border);
}

.theme-dark .kanban-plugin__lane {
	background-color: var(--bg5);
	border: 1px solid var(--bg1);
}

.theme-light .kanban-plugin__lane {
	background-color: var(--bg3);
	border: var(--thin-border);
}

.kanban-plugin__new-item-button.kanban-plugin__new-item-button {
	display: block;
	width: 96%;
	height: 1.2rem;
	padding: 0;
	margin: 0 2%;
	font-size: 0;
	text-align: center;
	box-shadow: none;
}

.kanban-plugin__new-item-button:hover {
	color: var(--interactive-normal);
}

.kanban-plugin__item-button-plus {
	font-size: 1.2rem;
}

.kanban-plugin__item-title-wrapper {
	padding-top: var(--size-2-2);
	padding-bottom: var(--size-2-3);
	background: var(--bg1);
}

/* markup in kanban cards */
.kanban-plugin__item-markdown :is(ul, ol, p, img) {
	margin: 0;
	line-height: 1.35;
}

.kanban-plugin__item-tag.kanban-plugin__item-tag {
	padding: 0 1px;
	font-size: 90%;
}

.kanban-plugin__item-metadata.kanban-plugin__item-metadata {
	padding-top: 0;
}

.kanban-plugin__item-markdown :is(ul, ol) {
	padding-inline-start: 1em;
}

.kanban-plugin .contains-task-list {
	padding-inline-start: 1.9em;
}

.kanban-plugin .contains-task-list .task-list-item-checkbox {
	width: calc(var(--checkbox-size) * 0.7);
	height: calc(var(--checkbox-size) * 0.7);
}

.kanban-plugin .is-unresolved {
	color: var(--link-unresolved-color);
	opacity: var(--link-unresolved-opacity);
}

/* ───────────────────────────────────────────────── */
/* < Compatibility Info for the Obsidian Hub
──────────────────────────────────────────────────── */

/* @plugins
core:
- backlink
- command-palette
- file-explorer
- outline
- starred
- search
- switcher

community:
- recent-files-obsidian
- link-favicon
- obsidian-floating-toc-plugin
- various-complements
- obsidian-electron-window-tweaker
- obsidian-another-quick-switcher
- obsidian-dynamic-highlights
- obsidian-kanban
- longform
- oz-image-plugin
- obsidian-style-settings
- breadcrumbs
- obsidian-languagetool-plugin
- dataview
- obsidian-pandoc-reference-list
- obsidian-hider
- obsidian-git
*/

/* ───────────────────────────────────────────────── */
/* < Style Setting (+)
──────────────────────────────────────────────────── */

/* @settings
name: Shimmering Focus
id: shimmering-focus
collapsed: false
settings:
  - id: readme-info
    title: ℹ️ Theme Information
    description: |
      - [Documentation of Features](https://github.com/chrisgrieser/shimmering-focus#shimmering-focus-)
      - [Changelog](https://github.com/chrisgrieser/shimmering-focus/blob/main/Changelog.md)
    markdown: true
    type: info-text
  - # << Show / Hide UI Elements (+)
    id: show-hide-elements
    title: 🙈 Show/Hide UI Elements
    description: Re-enable UI Elements hidden by this theme.
    type: heading
    level: 1
    collapsed: true
  - id: hide-settings-button
    title: Hide Settings Button
    type: class-toggle
    description: Hide the floating Settings button in the bottom left. You can still access the settings by using the hotkey `⌘+,` or `ctrl+,`.
    markdown: true
    default: false
  - id: show-sidebar-header-buttons
    title: Permanently show the Sidebar Header Buttons
    description: By default, the buttons at the top of the sidebar panels are only visible when hovering.
    type: class-toggle
    default: false
  - id: show-ribbon
    title: Re-enable the Ribbon
    type: class-toggle
    description: The ribbon is the thin vertical bar to the very left. Without the ribbon, you can still trigger any action via the Command Palette.
    default: false
  - id: show-urls
    title: Show URLs of Markdown Links
    type: class-toggle
    addCommand: true
    description: |
      By default, the URLs of markdown links are hidden in Source Mode, except for the currently active line.
      ℹ️ This can also be toggled via command palette or hotkey.
    default: false
  - id: show-new-tab-button
    title: Re-enable New Tab Button
    type: class-toggle
    description: You can still open a new tab via `⌘+T` / `ctrl+T`.
    markdown: true
    default: false
  - id: show-tab-list-button
    title: Re-enable Tab List Button
    type: class-toggle
    description: You can still switch to tabs via Quick Switcher, and you can toggle stacked tabs via command palette.
    default: false
  - id: show-sidebar-toggle-buttons
    title: Re-enable Sidebar Toggle Buttons
    type: class-toggle
    description: Note that sidebar buttons of hidden sidebars are going to be inaccessible when also enable the setting to hide the tab bar. You can still toggle the sidebars via command palette.
    default: false
  - id: show-close-buttons
    title: Re-enable Close Buttons
    type: class-toggle
    description: You can still close settings with `Esc`, and tabs/panes by with `ctrl/cmd+W`.
    markdown: true
    default: false
  - # <<< File Explorer (+)
    id: show-hide-file-explorer-elements
    title: File Explorer
    type: heading
    level: 2
    collapsed: true
  - id: hide-attachment-folders
    title: Hide attachments folders
    description: 'Affects folders exactly named "attachments" (case-insensitive).'
    type: class-toggle
    default: false
  - id: show-vault-in-file-explorer
    title: Show Vault Name
    type: class-toggle
    description: Enable this to drag and drop items to the vault root.
    default: false
  - id: show-file-explorer-navigation
    title: Re-enable Navigation Buttons
    type: class-toggle
    description: "The navigation buttons are the buttons for new file, new folder, and sorting. You can do the former two without the buttons via the context menu."
    default: false
  - # <<< Status Bar (+)
    id: show-hide-statusbar-elements
    title: Status Bar Items
    type: heading
    level: 2
    collapsed: true
  - id: hidden-sidebars-hidden-statusbar
    title: Hide the Status bar completely, when both sidebars are hidden
    description: ⚠️ Requires Obsidian installer version 1.1.9 or later.
    type: class-toggle
    default: false
  - id: hide-properties-in-statusbar
    title: Hide Properties Count
    type: class-toggle
    default: false
  - id: hide-backlinks-status-bar
    title: Hide Backlinks Count
    type: class-toggle
    default: false
  - id: hide-pane-relief-focus-lock-status-bar
    title: Hide Pane Relief Focus Lock
    type: class-toggle
    default: false
  - id: hide-languagetool-status-bar
    title: Hide Language Tools
    type: class-toggle
    default: false
  - id: hide-electron-window-tweaker-status-bar
    title: Hide Electron Window Tweaker `Always on top` Icon
    markdown: true
    type: class-toggle
    default: false
  - id: hide-inactive-textgenerator
    title: Hide Icons from the Text Generator Plugin except when Autosuggest is active
    markdown: true
    type: class-toggle
    default: false
  - id: hide-pandoc-reference-list-status-bar
    title: Hide Pandoc Reference List Icon
    type: class-toggle
    default: false
  - id: hide-signature-icon
    title: Hide the Shimmering Focus icon (⟡)
    type: class-toggle
    default: false
  - # << Workspace (+)
    id: user-interface
    title: 🔲 Workspace
    description: Sidebar, Tab Bar & Header Bar
    type: heading
    level: 1
    collapsed: true
  - id: tabbar-when-one-tab
    title: Tab Bar when only one tab (experimental)
    description: By default, this theme turns the Tab Bar into a Header Bar. It turns back into a Tab Bar on hover or when another tab is opened. Alternatively you can also hide the tab bar altogether, when there is only one tab (⚠️ requires Obsidian installer version 1.1.9 or later).
    type: class-select
    allowEmpty: false
    default: tabbar-header-hybrid
    options:
      - label: Tab Bar becomes Header
        value: tabbar-header-hybrid
      - label: Hide Tab Bar (requires installer v1.1.9+)
        value: hide-tabbar-when-one-tab
      - label: Normal Tab Bar
        value: normal-tab-bar
  - id: normal-header-bar
    title: Re-enable the Header Bar (Tab Title Bar)
    description: By default, this theme removes the header bar, except for the "More Options" Button and the Breadcrumbs moved to the right. You can still toggle reading/editing mode, navigate back/forward, and rename your current file with the respective command in the command palette or a hotkey. (This setting has no effect if "Show tab title bar" in the Appearance settings is disabled.)
    type: class-toggle
    default: false
  - id: tab-width
    title: Tab Width
    description: This setting only affects tab width when there is enough space in the tab bar. (Obsidian automatically reduces tab width when there are more open tabs when there is space for them.)
    type: variable-number-slider
    default: 200
    min: 100
    max: 400
    step: 25
    format: px
  - id: trim-long-filenames
    title: "Sidebar: Trim File Names"
    description: When enabled, long file and folder names will be trimmed. When disabled, long names will be wrapped to the next line.
    type: class-toggle
    default: false
  - id: overlaying-right-sidebar
    title: "Sidebar: Overlaying Right Sidebar"
    description: "The right sidebar is placed on top of the editor instead of making the editor more narrow (i.e. the behavior on mobile)."
    type: class-toggle
    default: false
  - id: sidebar-no-animations
    title: "Sidebar: No Animations"
    description: Disable all sidebar-related animations.
    type: class-toggle
    default: false
  - # << Fonts & Headings (+)
    id: font-settings
    title: 🔠 Font
    description: "Headings, MathJax, Code"
    type: heading
    level: 1
    collapsed: true
  - id: font-heading-theme
    title: "Headings: Font Family"
    type: variable-text
    default: '"Optima", "Recursive S"'
  - id: heading-scaling
    title: "Headings: Font Size Scaling"
    description: The font size of all headings is multiplied by this factor.
    type: variable-number-slider
    default: 1
    min: 0.5
    max: 1.5
    step: 0.05
  - id: no-alternating-header-colors
    title: "Headings: No Alternating Colors"
    description: Do not colorize odd heading levels (h1, h3, h5).
    type: class-toggle
    default: false
  - id: no-heading-background
    title: "Headings: Disable background"
    type: class-toggle
    default: false
  - id: no-lp-heading-level-indicator
    title: "Headings: No Level Indicators in Live Preview"
    type: class-toggle
    default: false
  - id: less-heading-letter-spacing
    title: "Headings: Compactness"
    description: Makes Headings more compact by decreasing their letter spacing.
    type: class-toggle
    default: false
  - id: code-block-scaling
    title: "Code Blocks: Font Size Scaling"
    description: The font size of all code blocks is multiplied by this factor. Also affects templater code and YAML frontmatter in source mode.
    type: variable-number-slider
    default: 1
    min: 0.7
    max: 1.3
    step: 0.05
  - id: math-font
    title: "MathJax: Font Family (Source Mode)"
    description: By default, uses the monospace font you have set in the Obsidian core settings or if you have not set one, this theme's monospace font (Ubuntu Mono S).
    type: variable-text
    default: "var(--font-monospace)"
  - id: math-font-size
    title: "MathJax: Font Size"
    type: variable-number-slider
    default: 1
    min: 0.5
    max: 2
    step: 0.1
    format: em
  - id: font-info
    description: "You can change the font used elsewhere by the theme in the Obsidian settings: `Appearance → Font`"
    type: info-text
    markdown: true
  - # << Colors (+)
    id: aesthetics
    title: 🎨 Colors
    description: Native macOS Look, Background Color, Colored Bold/Italics, Highlight Color
    type: heading
    level: 1
    collapsed: true
  - id: mac-os-native
    title: Native macOS Look
    description: Background colors like in a native macOS app.
    type: class-toggle
    default: false
  - id: bg-hue-light
    title: Background Color Tone (Light Mode)
    type: variable-number-slider
    default: 230
    min: 0
    max: 360
    step: 5
  - id: bg-hue-dark
    title: Background Color Tone (Dark Mode)
    type: variable-number-slider
    default: 230
    min: 0
    max: 360
    step: 5
  - id: uncolored-bold
    title: Uncolored Bold
    markdown: true
    description: "**Bold text** will use the standard text color instead of being colored."
    type: class-toggle
    default: false
  - id: uncolored-italic
    title: Uncolored Italic
    markdown: true
    description: "*Italic text* will use the standard text color instead of being colored."
    type: class-toggle
    default: false
  - id: highlight-hue-1
    title: Color Tone of Highlights
    description: Hue of ==highlighted text==
    markdown: true
    type: variable-number-slider
    default: 60
    min: 0
    max: 360
    step: 5
  - id: color-customization-info
    title: More Color Customization
    description: "You can further customize theme colors or even create your own color scheme – without knowledge of CSS! – by using a CSS snippet. [See the theme docs for further information](https://github.com/chrisgrieser/shimmering-focus#create-and-share-your-own-color-scheme)."
    markdown: true
    type: info-text
  - # << Editor Content (+)
    id: content-settings
    title: 📑 Editor Content
    description: Active Lines, Active Table Cells, Dimmed Panes, Clean Embeds, Line Length, Inline Backlinks, Folded Lines
    type: heading
    level: 1
    collapsed: true
  - id: inactive-pane-opacity
    title: Dimmed Inactive Panes
    description: Opacity of inactive panes. Set to 100% to disable dimming.
    type: variable-number-slider
    default: 75
    min: 50
    max: 100
    step: 1
    format: "%"
  - id: active-line-highlight
    title: Active Line Indicator
    type: class-select
    allowEmpty: false
    default: active-line-gutter
    options:
      - label: Line in Gutter
        value: active-line-gutter
      - label: Emphasized Background
        value: active-line-background
      - label: Disable
        value: no-active-line-highlight
  - id: highlight-active-cell
    title: Emphasize the active Table Cell (Live Preview)
    description: ⚠️ Requires Obsidian installer version 1.1.9 or later and Obsidian 1.5 or later.
    type: class-toggle
    default: false
  - id: no-codeblock-line-numbers
    title: Turn Off Line Numbers in Code Blocks (Edit Mode)
    description: By default, this theme adds line numbers to code blocks in Edit Mode.
    type: class-toggle
    default: false
  - id: clean-embeds
    title: "Reading Mode: Clean Embeds"
    type: class-toggle
    description: Embedded Notes integrate seamlessly with the rest of the note content.
    default: false
  - id: file-line-width
    title: Line Length
    description: "The length of the editor content (when the `Readable Line Length` Setting is enabled). You can use the cssclass `full-width` to lift line length restrictions for individual notes."
    markdown: true
    type: variable-number-slider
    default: 700
    min: 300
    max: 2500
    step: 25
    format: px
  - id: folded-line-emphasis
    title: Folded Line Emphasis
    type: class-toggle
    description: ⚠️ Requires Obsidian installer version 1.1.9 or later. Slightly darkens the background of folded lines, similar to folds in vim.
    default: false
  - # << Media (+)
    id: media-settings
    title: 🖼️ Media
    description: Images, Tables, Canvas
    type: heading
    level: 1
    collapsed: true
  - id: unrestricted-line-length-tables
    title: Automatically disable `Readable Line Length` on notes with tables
    markdown: true
    description: ⚠️ Requires Obsidian installer version 1.1.9 or later.
    type: class-toggle
    default: false
  - id: no-image-alttext-caption
    title: "Images: No alt-text as caption"
    description: "By default, the alt-text of images is used as image caption in Reading Mode."
    type: class-toggle
    default: false
  - id: image-size
    title: "Images: Size (Percent)"
    description: "The theme also adds a command `Toggle Max Image Size` which toggles between 100% image size and the reduced image size below. In addition, clicking & holding images will also enlarge an image."
    type: variable-number-slider
    markdown: true
    default: 50
    min: 10
    max: 100
    step: 5
  - id: max-image-size-toggle
    title: between reduced and full Image Size
    description: INFO This is a dummy setting, since this is hidden and only added for the toggle-command
    addCommand: true
    type: class-toggle
    default: false
  - id: font-canvas-cards-heading-theme
    title: "Canvas: Heading Font in Cards and Notes"
    description: Only affects headings in canvas cards/notes. (Some heading fonts look good in notes, but not that good in cards.)
    type: variable-text
    default: '"Recursive S"'
  - id: centered-canvas-notes
    title: "Canvas: Center Text in all Cards and Notes"
    description: The theme also adds a command to toggle this setting
    type: class-toggle
    addCommand: true
    markdown: true
  - # << Markup & Special Syntax (+)
    id: markup-and-special-syntax
    title: ✏️ Markup & Special Syntax
    description: Blockquote Alignment, Trailing Spaces, Pandoc Emphasis, Annotation Tags
    type: heading
    level: 1
    collapsed: true
  - id: blockquotes-left-aligned
    title: Left-aligned Blockquote Text
    description: Use left-aligned text in blockquotes instead of justified text.
    type: class-toggle
    default: false
  - id: hide-trailing-whitespace
    title: Hide Trailing Spaces
    description: 'By default, this theme indicates the presence of trailing spaces when there are more than one with "··↵". This can be useful for the "Two Space Rule" in Markdown, where exactly two spaces at the end of a line force a line break.'
    type: class-toggle
    default: false
  - id: no-pandoc-citation-emphasis
    title: No Emphasis of Pandoc Citations
    markdown: true
    description: "Turn off the coloring of Pandoc Citations [@citekey] in Editing Mode. (Also affects the styling for the Pandoc Reference List Plugin.)"
    type: class-toggle
    default: false
  - id: annotation-tags-off
    title: Disable Annotation Tags
    description: '"Annotation Tags" are tags that are visually emphasized when used inline (i.e., not the YAML frontmatter). They include: #definition, #question, #goal, #todo, #summary, #important, #main, #critique, #gap, #litreview, #quote, #agree, #disagree, #example, #data, #method, #idea, #epistemic-break, and #sidenote.'
    markdown: true
    type: class-toggle
    default: false
  - id: sidenote-callout-width
    title: Width of Sidenote Callouts
    description: "Percentage of the readable line length. Affects callouts with `> [!sidenote]`. "
    markdown: true
    type: variable-number-slider
    default: 34
    min: 10
    max: 60
    step: 2
  - # << Vim Mode (+)
    id: vim-mode
    title: 🏃 Vim Mode
    description: Cursor, Relative Line Numbers
    type: heading
    level: 1
    collapsed: true
  - id: disable-vim-cursor-blink
    title: Disable Blinking for the Vim Cursor
    type: class-toggle
    default: false
  - id: use-relative-line-numbers
    title: Relative Line Numbers
    markdown: true
    description: ⚠️ Requires Obsidian installer version 1.1.9 or later. `Line Numbers` must also be enabled in the Obsidian settings.
    type: class-toggle
    default: false
  - id: no-mouse-hovers
    title: Disable Mouse Hover in Editor (Live Preview)
    markdown: true
    description: Disables the mouse hover in the editor of live preview, indicating an editable code block, dataview block, or table.
    type: class-toggle
    default: false
  - # << Longform & Writing (+)
    id: longform-settings
    title: ✍️ Longform & Writing
    description: Settings for notes in longform projects and notes with the writing cssclass.
    type: heading
    level: 1
    collapsed: true
  - id: longform-font-text-theme
    title: Main Font
    description: Font used in longform/writing notes (Except code, which still use the monospace font.)
    type: variable-text
    default: '"Garamond", "Times New Roman", serif'
  - id: longform-font-size
    title: Font Size in longform/writing notes
    type: variable-number-slider
    default: 1.2
    min: 0.7
    max: 2
    step: 0.05
    format: rem
  - id: longform-base-line-height
    title: Line Height in longform/writing notes
    type: variable-number-slider
    default: 1
    min: 0.8
    max: 1.5
    step: 0.05
  - id: longform-letter-spacing
    title: Letter Spacing in longform/writing notes
    type: variable-number-slider
    default: 0
    min: -0.5
    max: 0.5
    step: 0.05
    format: px
  - id: longform-bg-hue
    title: Background Color Tone (Hue)
    description: Use this setting to visually distinguish your longform and writing notes from the rest of your vault.
    type: variable-number-slider
    default: 200
    min: 0
    max: 360
    step: 5
  - id: wordcount-only-when-writing
    title: "Status Bar: Show Word Count *only* when longform/writing note is open"
    description: ⚠️ Requires Obsidian installer version 1.1.9 or later. Works for the Word Count Core Plugin and the Better Word Count Community Plugin.
    type: class-toggle
    default: false
  - id: hide-longform-status-bar
    title: "Status Bar: Hide Longform Wordcount"
    description: This affects the word count from the Longform plugin, not the other word count plugins.
    type: class-toggle
    default: false
  - id: longform-tasks-different
    title: "Tasks: Use Gray instead of Normal Text Color"
    description: This can help with differentiating tasks from "finished" text.
    type: class-toggle
    default: false
  - id: longform-left-aligned
    title: Left-aligned text
    description: Use left-aligned text instead of justified text.
    type: class-toggle
    default: false
  - id: longform-text-indent
    title: First-Line Indent & No Spacing between Paragraphs (Reading Mode)
    description: ⚠️ Requires Obsidian installer version 1.1.9 or later. Indent the first Line of a paragraph and remove the spacing between paragraphs.
    type: class-toggle
    default: false
  - # << Plugin-Specific Settings (+)
    id: plugin-specific-settings
    title: ⚙️ Plugin-specific Settings
    description: Backlinks, Outgoing Links, Outline, Git Gutter
    type: heading
    level: 1
    collapsed: true
  - id: normal-out-back-links
    title: Normal Outgoing Links and Backlinks
    description: By default, the sidebar for outgoing links and backlinks are reduced to linked mentions only. Enable this setting to restore their original display.
    type: class-toggle
    default: false
  - id: show-outline-buttons
    title: Show Outline Buttons
    description: By default, the outline plugin buttons for collapsing, expanding, and searching headings is hidden. Enable this setting to show them again.
    type: class-toggle
    default: false
  - id: classic-inline-backlinks
    title: Use Normal Inline Backlinks
    description: By default, the inline-backlinks are displayed in a more minimalistic manner. Enable this setting to restore original display of backlinks. This also affects the Influx Plugin.
    type: class-toggle
    default: false
  - id: git-blame-to-gitsigns
    title: "Obsidian Git: Turn Author Line Information into Gitsigns"
    description: 'Repurposes the Author Line Information feature to work like Gitsigns/Git Gutter. Required Plugin Settings: Enable "Show commit authoring information next to each line", hide author name, and hide authoring date.'
    type: class-toggle
    markdown: true
    addCommand: true
    default: false
  - # << Miscellaneous (+)
    id: miscellaneous
    title: 🧊 Miscellaneous
    description: Private Mode
    type: heading
    level: 1
    collapsed: true
  - id: private-mode
    title: Private Mode
    markdown: true
    addCommand: true
    description: |
      When enabled, all notes with the cssclass `private` will be garbled. This setting is meant to be enabled temporarily during screen sharing. Install Supercharged Links and add 'cssclass' as a target attribute to also garble any links and occurrences in the File Explorer and Quick Switcher. Note that note contents can still show up in views and sidebars created from plugins.
      ℹ️ This can also be toggled via command palette or hotkey.
    type: class-toggle
    default: false
  - # << Infos (+)
    id: appendix-info
    title: ℹ️ Info
    type: heading
    level: 1
    collapsed: false
  - id: author-info
    title: 👤 Credits
    description: |
      - Created by [pseudometa aka Chris Grieser](https://chris-grieser.de/).
      - If you like the theme, [you can buy me a coffee](https://ko-fi.com/pseudometa). ☕
    markdown: true
    level: 1
    type: info-text
   */
/* ─────────────────────────────────────────────────── */
