Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*------------------------------------------------------------------------------
- Obsidian Colored Sidebar Items by CyanVoxel v2.0.0
- A colored sidebar CSS snippet inspired by
- the "Coloured Folders" snippet by Lithou.
- This snippet targets folders beginning with numbered prefixes, and applies full
- color formatting based on the root colors listed below. The prefixes are both
- customizable and extensible; feel free to change, add, and remove them based on
- your own titles and vault structure! By default I have a range of 8+1 colors,
- however I've provided some other common colors as a starting point for your own
- customization. Just swap out the color variable names in the prefix groups.
- ------------------------------------------------------------------------------*/
- :root {
- /* ================================ Colors ================================ */
- --color-sb-: #e22c3c; /* red Default Prefix: None */
- --color-sb-: #e9404b; /* red-orange Default Prefix: None */
- --color-sb-: #ee6748; /* orange Default Prefix: None */
- --color-sb-: #fa9f50; /* amber Default Prefix: None */
- --color-sb-: #ffd85e; /* yellow Default Prefix: None */
- --color-sb-: #97e768; /* lime Default Prefix: None */
- --color-sb0: #52eea3; /* mint Default Prefix: 0 */
- --color-sb1: #51e1e9; /* cyan Default Prefix: 1 */
- --color-sb-: #43cfea; /* cool-cyan Default Prefix: None */
- --color-sb2: #54b6f8; /* light-blue Default Prefix: 2 */
- --color-sb-: #437cf3; /* blue Default Prefix: 3 */
- --color-sb-: #6f51f4; /* blue-violet Default Prefix: None */
- --color-sbx: #9446f8; /* violet Default Prefix: 4 */
- --color-sb-: #c952ed; /* purple Default Prefix: 5 */
- --color-sb3: #e54f9b; /* magenta Default Prefix: 6 */
- --color-sb4: #e3365e; /* hot-red Default Prefix: 7 */
- --color-sb-: #515768; /* cool-gray Default Prefix: x */
- --color-sb-: #515768; /* cool-gray Default Prefix: x */
- --default-text-color: #d0d0d0;
- --highlight: #fff;
- --shadow: #0b0c2c;
- --nav-item-weight-hover: bold;
- }
- /* Light Theme Specific Properties */
- .theme-light {
- --contrast-color: var(--shadow);
- --default-text-color: var(--shadow);
- --bg-contrast-amount: 70%;
- --fg-contrast-amount: 30%;
- --medium-contrast-amount: 60%;
- --active-contrast-amount: 30%;
- /* Darker Versions of Bright Colors for Light Theme */
- --yellow: color-mix(in srgb, #ffd85e 90%, var(--shadow));
- --lime: color-mix(in srgb, #97e768 90%, var(--shadow));
- --color-sb0: color-mix(in srgb, #52eea3 85%, var(--shadow));
- --color-sb1: color-mix(in srgb, #51e1e9 85%, var(--shadow));
- --cool-cyan: color-mix(in srgb, #43cfea 85%, var(--shadow));
- --color-sb2: color-mix(in srgb, #54b6f8 90%, var(--shadow));
- }
- /* Dark Theme Specific Properties */
- .theme-dark {
- --contrast-color: var(--highlight);
- --bg-contrast-amount: 15%;
- --fg-contrast-amount: 40%;
- --medium-contrast-amount: 30%;
- --active-contrast-amount: 20%;
- }
- /* All Folder Titles */
- .nav-folder-title {
- font-weight: bold;
- border-radius: 5px;
- }
- /* Narrower Padding on Desktop*/
- @media only screen and (min-width: 768px) {
- .nav-file-title,
- .nav-folder-title {
- /* padding: 3px 5px 2px 4px !important; */
- padding-top: 3px !important;
- padding-right: 5px !important;
- padding-bottom: 2px !important;
- padding-left: 15px;
- }
- }
- /*
- ============================ Folder Title Prefixes =============================
- The following groups of prefixes are divided by the numbering prefix that they
- target. For example, prefix '0' targets any folder titles beginning with '0',
- such as '0 - Maps of Content'. The only other piece of information that changes
- between the prefix groups are the color variables. Change or expand on any of
- these to suit your own folder structure and vault theme!
- */
- /* ------------------------------- 0 Prefix -------------------------------- */
- .nav-folder-title[data-path^="0"] {
- color: var(--color-sb0);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sb0) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sb0) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb0) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(in srgb, var(--color-sb0) 60%, transparent);
- }
- .nav-folder-title[data-path^="0"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb0) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="0"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sb0) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="0"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sb0) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sb0) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb0) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sb0) var(--active-contrast-amount),
- transparent
- );
- }
- /* ------------------------------- 1 Prefix -------------------------------- */
- .nav-folder-title[data-path^="1"] {
- color: var(--color-sb1);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sb1) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sb1) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb1) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(in srgb, var(--color-sb1) 60%, transparent);
- }
- .nav-folder-title[data-path^="1"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb1) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="1"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sb1) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="1"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sb1) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sb1) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb1) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sb1) var(--active-contrast-amount),
- transparent
- );
- }
- /* ------------------------------- 2 Prefix -------------------------------- */
- .nav-folder-title[data-path^="2"] {
- color: var(--color-sb2);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sb2) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sb2) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb2) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb2) 60%,
- transparent
- );
- }
- .nav-folder-title[data-path^="2"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb2) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="2"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sb2) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="2"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sb2) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sb2) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb2) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sb2) var(--active-contrast-amount),
- transparent
- );
- }
- /* ------------------------------- 3 Prefix -------------------------------- */
- .nav-folder-title[data-path^="3"] {
- color: var(--color-sb3);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sb3) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sb3) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb3) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(in srgb, var(--color-sb3) 60%, transparent);
- }
- .nav-folder-title[data-path^="3"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb3) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="3"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sb3) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="3"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sb3) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sb3) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb3) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sb3) var(--active-contrast-amount),
- transparent
- );
- }
- /* ------------------------------- 4 Prefix -------------------------------- */
- .nav-folder-title[data-path^="4"] {
- color: var(--color-sb4);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sb4) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sb4) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb4) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(in srgb, var(--color-sb4) 60%, transparent);
- }
- .nav-folder-title[data-path^="4"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb4) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="4"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sb4) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="4"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sb4) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sb4) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb4) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sb4) var(--active-contrast-amount),
- transparent
- );
- }
- /* ------------------------------- 5 Prefix -------------------------------- */
- .nav-folder-title[data-path^="5"] {
- color: var(--color-sb5);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sb5) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sb5) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb5) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(in srgb, var(--color-sb5) 60%, transparent);
- }
- .nav-folder-title[data-path^="5"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb5) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="5"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sb5) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="5"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sb5) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sb5) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb5) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sb5) var(--active-contrast-amount),
- transparent
- );
- }
- /* ------------------------------- 6 Prefix -------------------------------- */
- .nav-folder-title[data-path^="6"] {
- color: var(--color-sb6);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sb6) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sb6) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb6) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb6) 60%,
- transparent
- );
- }
- .nav-folder-title[data-path^="6"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb6) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="6"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sb6) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="6"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sb6) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sb6) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb6) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sb6) var(--active-contrast-amount),
- transparent
- );
- }
- /* ------------------------------- 7 Prefix -------------------------------- */
- .nav-folder-title[data-path^="7"] {
- color: var(--color-sb7);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sb7) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sb7) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb7) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb7) 60%,
- transparent
- );
- }
- .nav-folder-title[data-path^="7"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sb7) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="7"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sb7) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="7"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sb7) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sb7) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sb7) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sb7) var(--active-contrast-amount),
- transparent
- );
- }
- /* ------------------------------- x Prefix -------------------------------- */
- .nav-folder-title[data-path^="x"] {
- color: var(--color-sbx);
- --nav-item-color-hover: color-mix(
- in srgb,
- var(--color-sbx) var(--fg-contrast-amount),
- var(--contrast-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- var(--color-sbx) var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sbx) 40%,
- transparent
- );
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sbx) 60%,
- transparent
- );
- }
- .nav-folder-title[data-path^="x"]:hover {
- --nav-collapse-icon-color: color-mix(
- in srgb,
- var(--color-sbx) 60%,
- var(--contrast-color)
- );
- }
- .tree-item-children .nav-folder:has(.nav-folder-title[data-path^="x"]) {
- --nav-indentation-guide-color: color-mix(
- in srgb,
- var(--color-sbx) var(--medium-contrast-amount),
- transparent
- );
- }
- .tree-item-children
- .nav-folder:has(.nav-folder-title[data-path^="x"])
- .nav-file-title {
- color: color-mix(
- in srgb,
- var(--color-sbx) var(--medium-contrast-amount),
- var(--default-text-color)
- );
- --nav-item-background-hover: color-mix(
- in srgb,
- color-mix(in srgb, var(--color-sbx) 50%, var(--highlight))
- var(--bg-contrast-amount),
- transparent
- );
- --background-modifier-border-focus: color-mix(
- in srgb,
- var(--color-sbx) 40%,
- transparent
- );
- --nav-item-background-active: color-mix(
- in srgb,
- var(--color-sbx) var(--active-contrast-amount),
- transparent
- );
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement