/*===============================================================
                     AnuPpuccin - Everforest Edition
                           ----------
        Personal theme for Obsidian - Adapted for Everforest soft colors

Based on AnuPpuccin theme with official Everforest soft color palette
Original theme: https://github.com/AnubisNekhet/AnuPpuccin
Everforest: https://github.com/sainnhe/everforest
*===============================================================*/

/*------------------Defining Everforest Soft Colorschemes-------------------*/
.theme-light.ctp-latte, .ctp-latte .themed-color-wrapper > .theme-light {
  /* Everforest Light Soft - Official Colors */
  --ctp-rosewater: 223, 102, 82;      /* #df6652 - derived from red */
  --ctp-flamingo: 230, 152, 117;      /* #E69875 - orange for italic */
  --ctp-pink: 211, 198, 170;          /* Changed to match text color - warm cream */
  --ctp-mauve: 153, 153, 186;         /* derived purple */
  --ctp-red: 248, 85, 82;             /* #f85552 - red */
  --ctp-maroon: 210, 75, 72;          /* darker red */
  --ctp-peach: 248, 120, 82;          /* orange derived from red */
  --ctp-yellow: 223, 160, 0;          /* #dfa000 - yellow */
  --ctp-green: 141, 161, 1;           /* #8da101 - green */
  --ctp-teal: 53, 167, 124;           /* #35a77c - cyan */
  --ctp-sky: 58, 148, 197;            /* #3a94c5 - blue */
  --ctp-sapphire: 53, 167, 124;       /* #35a77c - cyan */
  --ctp-blue: 127, 187, 179;          /* #7FBBB3 - blue for links */
  --ctp-lavender: 108, 132, 160;      /* derived from blue */
  --ctp-text: 92, 106, 114;           /* #5c6a72 - foreground - warm dark gray */
  --ctp-subtext1: 108, 120, 128;      /* lighter text */
  --ctp-subtext0: 124, 138, 146;      /* even lighter text */
  --ctp-overlay2: 140, 154, 162;      /* overlay colors */
  --ctp-overlay1: 156, 170, 178;      /* overlay colors */
  --ctp-overlay0: 172, 186, 194;      /* overlay colors */
  --ctp-surface2: 200, 214, 222;      /* surface colors */
  --ctp-surface1: 216, 211, 186;      /* #d8d3ba - white/bright white */
  --ctp-surface0: 232, 229, 213;      /* lighter surface */
  --ctp-base: 243, 234, 211;          /* #f3ead3 - background (soft) */
  --ctp-mantle: 248, 239, 216;        /* lighter background */
  --ctp-crust: 253, 249, 226;         /* lightest background */
}

.theme-dark.ctp-mocha, .ctp-mocha .themed-color-wrapper > .theme-dark {
  /* Everforest Dark Soft - Official Colors */
  --ctp-rosewater: 230, 126, 128;     /* derived from red */
  --ctp-flamingo: 230, 152, 117;      /* #E69875 - orange for italic */
  --ctp-pink: 211, 198, 170;          /* Changed to match text color - warm cream */
  --ctp-mauve: 181, 165, 213;         /* derived purple */
  --ctp-red: 230, 152, 117;           /* Changed to orange #E69875 - same as H2 */
  --ctp-maroon: 204, 114, 118;        /* darker red */
  --ctp-peach: 230, 152, 117;         /* #E69875 - orange for h2 */
  --ctp-yellow: 219, 188, 127;        /* #DBBC7F - yellow for h3 */
  --ctp-green: 167, 192, 128;         /* #a7c080 - green */
  --ctp-teal: 131, 192, 146;          /* #83c092 - cyan */
  --ctp-sky: 127, 187, 179;           /* #7fbbb3 - blue */
  --ctp-sapphire: 131, 192, 146;      /* #83c092 - cyan */
  --ctp-blue: 127, 187, 179;          /* #7FBBB3 - blue for links */
  --ctp-lavender: 147, 167, 199;      /* derived from blue */
  --ctp-text: 211, 198, 170;          /* #d3c6aa - foreground - warm cream */
  --ctp-subtext1: 193, 178, 150;      /* dimmer text */
  --ctp-subtext0: 175, 158, 130;      /* even dimmer text */
  --ctp-overlay2: 157, 138, 110;      /* overlay colors */
  --ctp-overlay1: 139, 118, 90;       /* overlay colors */
  --ctp-overlay0: 121, 98, 70;        /* overlay colors */
  --ctp-surface2: 103, 78, 50;        /* surface colors */
  --ctp-surface1: 77, 89, 96;         /* #4d5960 - black/bright black */
  --ctp-surface0: 65, 77, 88;         /* darker surface */
  --ctp-base: 28, 37, 47;             /* #1C252F - background (more blue) */
  --ctp-mantle: 45, 54, 61;           /* darker background */
  --ctp-crust: 39, 48, 55;            /* darkest background */
}

/* Default dark theme - using Everforest dark soft */
.theme-dark {
  --ctp-rosewater: var(--ctp-custom-rosewater, var(--ctp-ext-rosewater, 230, 126, 128));
  --ctp-flamingo: var(--ctp-custom-flamingo, var(--ctp-ext-flamingo, 230, 152, 117));
  --ctp-pink: var(--ctp-custom-pink, var(--ctp-ext-pink, 214, 153, 182));
  --ctp-mauve: var(--ctp-custom-mauve, var(--ctp-ext-mauve, 181, 165, 213));
  --ctp-red: var(--ctp-custom-red, var(--ctp-ext-red, 230, 126, 128));
  --ctp-maroon: var(--ctp-custom-maroon, var(--ctp-ext-maroon, 204, 114, 118));
  --ctp-peach: var(--ctp-custom-peach, var(--ctp-ext-peach, 230, 152, 117));
  --ctp-yellow: var(--ctp-custom-yellow, var(--ctp-ext-yellow, 219, 188, 127));
  --ctp-green: var(--ctp-custom-green, var(--ctp-ext-green, 167, 192, 128));
  --ctp-teal: var(--ctp-custom-teal, var(--ctp-ext-teal, 131, 192, 146));
  --ctp-sky: var(--ctp-custom-sky, var(--ctp-ext-sky, 127, 187, 179));
  --ctp-sapphire: var(--ctp-custom-sapphire, var(--ctp-ext-sapphire, 131, 192, 146));
  --ctp-blue: var(--ctp-custom-blue, var(--ctp-ext-blue, 127, 187, 179));
  --ctp-lavender: var(--ctp-custom-lavender, var(--ctp-ext-lavender, 147, 167, 199));
  --ctp-text: var(--ctp-custom-text, var(--ctp-ext-text, 211, 198, 170));
  --ctp-subtext1: var(--ctp-custom-subtext1, var(--ctp-ext-subtext1, 193, 178, 150));
  --ctp-subtext0: var(--ctp-custom-subtext0, var(--ctp-ext-subtext0, 175, 158, 130));
  --ctp-overlay2: var(--ctp-custom-overlay2, var(--ctp-ext-overlay2, 157, 138, 110));
  --ctp-overlay1: var(--ctp-custom-overlay1, var(--ctp-ext-overlay1, 139, 118, 90));
  --ctp-overlay0: var(--ctp-custom-overlay0, var(--ctp-ext-overlay0, 121, 98, 70));
  --ctp-surface2: var(--ctp-custom-surface2, var(--ctp-ext-surface2, 103, 78, 50));
  --ctp-surface1: var(--ctp-custom-surface1, var(--ctp-ext-surface1, 77, 89, 96));
  --ctp-surface0: var(--ctp-custom-surface0, var(--ctp-ext-surface0, 65, 77, 88));
  --ctp-base: var(--ctp-custom-base, var(--ctp-ext-base, 35, 42, 46));
  --ctp-mantle: var(--ctp-custom-mantle, var(--ctp-ext-mantle, 45, 54, 61));
  --ctp-crust: var(--ctp-custom-crust, var(--ctp-ext-crust, 39, 48, 55));
}

/* Default light theme - using Everforest light soft */
.theme-light {
  --ctp-rosewater: var(--ctp-custom-rosewater, var(--ctp-ext-rosewater, 223, 102, 82));
  --ctp-flamingo: var(--ctp-custom-flamingo, var(--ctp-ext-flamingo, 230, 152, 117));
  --ctp-pink: var(--ctp-custom-pink, var(--ctp-ext-pink, 214, 153, 182));
  --ctp-mauve: var(--ctp-custom-mauve, var(--ctp-ext-mauve, 153, 153, 186));
  --ctp-red: var(--ctp-custom-red, var(--ctp-ext-red, 248, 85, 82));
  --ctp-maroon: var(--ctp-custom-maroon, var(--ctp-ext-maroon, 210, 75, 72));
  --ctp-peach: var(--ctp-custom-peach, var(--ctp-ext-peach, 248, 120, 82));
  --ctp-yellow: var(--ctp-custom-yellow, var(--ctp-ext-yellow, 223, 160, 0));
  --ctp-green: var(--ctp-custom-green, var(--ctp-ext-green, 141, 161, 1));
  --ctp-teal: var(--ctp-custom-teal, var(--ctp-ext-teal, 53, 167, 124));
  --ctp-sky: var(--ctp-custom-sky, var(--ctp-ext-sky, 58, 148, 197));
  --ctp-sapphire: var(--ctp-custom-sapphire, var(--ctp-ext-sapphire, 53, 167, 124));
  --ctp-blue: var(--ctp-custom-blue, var(--ctp-ext-blue, 127, 187, 179));
  --ctp-lavender: var(--ctp-custom-lavender, var(--ctp-ext-lavender, 108, 132, 160));
  --ctp-text: var(--ctp-custom-text, var(--ctp-ext-text, 92, 106, 114));
  --ctp-subtext1: var(--ctp-custom-subtext1, var(--ctp-ext-subtext1, 108, 120, 128));
  --ctp-subtext0: var(--ctp-custom-subtext0, var(--ctp-ext-subtext0, 124, 138, 146));
  --ctp-overlay2: var(--ctp-custom-overlay2, var(--ctp-ext-overlay2, 140, 154, 162));
  --ctp-overlay1: var(--ctp-custom-overlay1, var(--ctp-ext-overlay1, 156, 170, 178));
  --ctp-overlay0: var(--ctp-custom-overlay0, var(--ctp-ext-overlay0, 172, 186, 194));
  --ctp-surface2: var(--ctp-custom-surface2, var(--ctp-ext-surface2, 200, 214, 222));
  --ctp-surface1: var(--ctp-custom-surface1, var(--ctp-ext-surface1, 216, 211, 186));
  --ctp-surface0: var(--ctp-custom-surface0, var(--ctp-ext-surface0, 232, 229, 213));
  --ctp-base: var(--ctp-custom-base, var(--ctp-ext-base, 243, 234, 211));
  --ctp-mantle: var(--ctp-custom-mantle, var(--ctp-ext-mantle, 248, 239, 216));
  --ctp-crust: var(--ctp-custom-crust, var(--ctp-ext-crust, 253, 249, 226));
}

/*------------------Selecting Accents (Everforest Green as Default)-------------------*/
.anuppuccin-accent-toggle.ctp-accent-green {
  --ctp-accent: var(--ctp-green);
}

.anuppuccin-accent-toggle.ctp-accent-rosewater {
  --ctp-accent: var(--ctp-rosewater);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-rosewater {
  --ctp-accent: var(--ctp-rosewater);
}

.anp-bold-rosewater {
  --anp-bold-color: var(--ctp-rosewater);
}

.anp-italic-rosewater {
  --anp-italic-color: var(--ctp-rosewater);
}

.anp-highlight-rosewater {
  --anp-highlight-color: var(--ctp-rosewater);
}

.anuppuccin-accent-toggle.ctp-accent-flamingo {
  --ctp-accent: var(--ctp-flamingo);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-flamingo {
  --ctp-accent: var(--ctp-flamingo);
}

.anp-bold-flamingo {
  --anp-bold-color: var(--ctp-flamingo);
}

.anp-italic-flamingo {
  --anp-italic-color: var(--ctp-flamingo);
}

.anp-highlight-flamingo {
  --anp-highlight-color: var(--ctp-flamingo);
}

.anuppuccin-accent-toggle.ctp-accent-pink {
  --ctp-accent: var(--ctp-pink);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-pink {
  --ctp-accent: var(--ctp-pink);
}

.anp-bold-pink {
  --anp-bold-color: var(--ctp-pink);
}

.anp-italic-pink {
  --anp-italic-color: var(--ctp-pink);
}

.anp-highlight-pink {
  --anp-highlight-color: var(--ctp-pink);
}

.anuppuccin-accent-toggle.ctp-accent-mauve {
  --ctp-accent: var(--ctp-mauve);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-mauve {
  --ctp-accent: var(--ctp-mauve);
}

.anp-bold-mauve {
  --anp-bold-color: var(--ctp-mauve);
}

.anp-italic-mauve {
  --anp-italic-color: var(--ctp-mauve);
}

.anp-highlight-mauve {
  --anp-highlight-color: var(--ctp-mauve);
}

.anuppuccin-accent-toggle.ctp-accent-red {
  --ctp-accent: var(--ctp-red);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-red {
  --ctp-accent: var(--ctp-red);
}

.anp-bold-red {
  --anp-bold-color: var(--ctp-red);
}

.anp-italic-red {
  --anp-italic-color: var(--ctp-red);
}

.anp-highlight-red {
  --anp-highlight-color: var(--ctp-red);
}

.anuppuccin-accent-toggle.ctp-accent-maroon {
  --ctp-accent: var(--ctp-maroon);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-maroon {
  --ctp-accent: var(--ctp-maroon);
}

.anp-bold-maroon {
  --anp-bold-color: var(--ctp-maroon);
}

.anp-italic-maroon {
  --anp-italic-color: var(--ctp-maroon);
}

.anp-highlight-maroon {
  --anp-highlight-color: var(--ctp-maroon);
}

.anuppuccin-accent-toggle.ctp-accent-peach {
  --ctp-accent: var(--ctp-peach);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-peach {
  --ctp-accent: var(--ctp-peach);
}

.anp-bold-peach {
  --anp-bold-color: var(--ctp-peach);
}

.anp-italic-peach {
  --anp-italic-color: var(--ctp-peach);
}

.anp-highlight-peach {
  --anp-highlight-color: var(--ctp-peach);
}

.anuppuccin-accent-toggle.ctp-accent-yellow {
  --ctp-accent: var(--ctp-yellow);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-yellow {
  --ctp-accent: var(--ctp-yellow);
}

.anp-bold-yellow {
  --anp-bold-color: var(--ctp-yellow);
}

.anp-italic-yellow {
  --anp-italic-color: var(--ctp-yellow);
}

.anp-highlight-yellow {
  --anp-highlight-color: var(--ctp-yellow);
}

/* Default green accent - characteristic of Everforest */
.anuppuccin-accent-toggle.ctp-accent-green {
  --ctp-accent: var(--ctp-green);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-green {
  --ctp-accent: var(--ctp-green);
}

.anp-bold-green {
  --anp-bold-color: var(--ctp-green);
}

.anp-italic-green {
  --anp-italic-color: var(--ctp-green);
}

.anp-highlight-green {
  --anp-highlight-color: var(--ctp-green);
}

.anuppuccin-accent-toggle.ctp-accent-teal {
  --ctp-accent: var(--ctp-teal);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-teal {
  --ctp-accent: var(--ctp-teal);
}

.anp-bold-teal {
  --anp-bold-color: var(--ctp-teal);
}

.anp-italic-teal {
  --anp-italic-color: var(--ctp-teal);
}

.anp-highlight-teal {
  --anp-highlight-color: var(--ctp-teal);
}

.anuppuccin-accent-toggle.ctp-accent-sky {
  --ctp-accent: var(--ctp-sky);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-sky {
  --ctp-accent: var(--ctp-sky);
}

.anp-bold-sky {
  --anp-bold-color: var(--ctp-sky);
}

.anp-italic-sky {
  --anp-italic-color: var(--ctp-sky);
}

.anp-highlight-sky {
  --anp-highlight-color: var(--ctp-sky);
}

.anuppuccin-accent-toggle.ctp-accent-sapphire {
  --ctp-accent: var(--ctp-sapphire);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-sapphire {
  --ctp-accent: var(--ctp-sapphire);
}

.anp-bold-sapphire {
  --anp-bold-color: var(--ctp-sapphire);
}

.anp-italic-sapphire {
  --anp-italic-color: var(--ctp-sapphire);
}

.anp-highlight-sapphire {
  --anp-highlight-color: var(--ctp-sapphire);
}

.anuppuccin-accent-toggle.ctp-accent-blue {
  --ctp-accent: var(--ctp-blue);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-blue {
  --ctp-accent: var(--ctp-blue);
}

.anp-bold-blue {
  --anp-bold-color: var(--ctp-blue);
}

.anp-italic-blue {
  --anp-italic-color: var(--ctp-blue);
}

.anp-highlight-blue {
  --anp-highlight-color: var(--ctp-blue);
}

.anuppuccin-accent-toggle.ctp-accent-lavender {
  --ctp-accent: var(--ctp-lavender);
}

.theme-light.anuppuccin-accent-toggle.ctp-accent-light-lavender {
  --ctp-accent: var(--ctp-lavender);
}

.anp-bold-lavender {
  --anp-bold-color: var(--ctp-lavender);
}

.anp-italic-lavender {
  --anp-italic-color: var(--ctp-lavender);
}

.anp-highlight-lavender {
  --anp-highlight-color: var(--ctp-lavender);
}

/*------------------Actual Configs--------------------*/
.anuppuccin-accent-toggle {
  --color-accent: rgb(var(--ctp-accent));
  --color-accent-1: rgb(var(--ctp-accent));
  --color-accent-2: rgba(var(--ctp-accent), 0.9);
  --text-normal: rgb(var(--ctp-text));
  --text-muted: rgb(var(--ctp-overlay2));
  --text-muted-rgb: var(--ctp-overlay2);
  --text-faint: rgb(var(--ctp-subtext0));
  --text-error: rgb(var(--ctp-red));
  --text-error-hover: rgba(var(--ctp-red), 0.8);
  --text-success: rgb(var(--ctp-green));
  --text-on-accent: rgb(var(--ctp-base));
  --interactive-normal: rgb(var(--ctp-surface0));
  --interactive-hover: rgb(var(--ctp-surface1));
  --interactive-success: rgb(var(--ctp-green));
  --workspace-background-translucent: rgba(var(--ctp-crust), 0.6);
  --blockquote-background-color: rgba(var(--ctp-crust), 0.5);
  --width-image-gallery: 200px;
  --min-width-image: 50%;
  --max-width-image: 90%;
  --drag-ghost-background: rgb(var(--ctp-text));
  --drag-ghost-text-color: rgb(var(--ctp-crust));
  --nav-indentation-guide-color: rgb(var(--ctp-overlay0));
  --titlebar-text-color-focused: var(--color-accent);
  --callout-title-padding: var(--size-4-2);
  --table-border-width: var(--anp-table-thickness, 1px);
  --icon-color-focused: var(--color-accent);
  --embed-block-shadow-hover: none;
}

.theme-dark {
  color-scheme: dark;
  --highlight-mix-blend-mode: none;
  --background-modifier-border: rgb(var(--ctp-surface0));
  --background-modifier-border-hover: rgb(var(--ctp-surface1));
  --background-modifier-border-focus: rgb(var(--ctp-surface2));
  --anp-speech-bubble-opacity: var(--anp-sp-op-dark, 0.9);
  --background-modifier-cover: rgba(var(--ctp-mantle), 0.4);
}
.theme-dark.theme-dark {
  --canvas-color: var(--ctp-overlay0);
}

.theme-light {
  color-scheme: light;
  --highlight-mix-blend-mode: none;
  --background-modifier-border: rgb(var(--ctp-surface1));
  --background-modifier-border-hover: rgb(var(--ctp-surface2));
  --background-modifier-border-focus: rgb(var(--ctp-overlay0));
  --anp-speech-bubble-opacity: var(--anp-sp-op-light, 0.5);
  --background-modifier-cover: #00000022;
}
.theme-light.theme-light {
  --canvas-color: var(--ctp-overlay0);
}

body {
  --anp-rainbow-folder-bg-opacity: 1;
  --anp-rainbow-folder-border-opacity: 1;
  --anp-rainbow-folder-collapse-border-custom: #00000044;
  --anp-preview-width-pct: 95%;
  --anp-preview-width-max: 800px;
  --anp-header-margin-value: 15px;
  --anp-header-font: "Noto Serif";
  --tab-stacked-pane-width: calc(var(--anp-tab-stacked-pane-width, 1) * var(--file-line-width));
  --anp-table-width-pct: 100%;
  --code-background: var(--anp-code-bg-color, var(--background-secondary-alt));
  --canvas-color: var(--ctp-overlay2);
  --card-background-color: rgb(var(--ctp-crust));
  --card-foreground-color: rgb(var(--ctp-base));
  --tab-inactive-color: rgb(var(--ctp-mantle));
  --code-normal: var(--anp-code-text-color, var(--text-normal));
  --callout-padding: 0;
  --callout-title-padding: var(--size-4-2);
  --callout-content-padding: var(--size-4-2);
  --background-modifier-active: hsla(var(--color-accent-hsl), 0.1);
  --pdf-background: var(--background-primary);
  --pdf-dark-opacity: 1;
  --pdf-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15), 0 2px 8px transparent;
  --pdf-sidebar-background: var(--background-primary);
  --pdf-thumbnail-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15), 0 2px 8px transparent;
}

/* Default to green accent - the signature color of Everforest */
body {
  --ctp-accent: var(--ctp-green);
}

body.theme-light {
  --anp-background-image: var(--anp-background-image-light);
  --anp-custom-bg-brightness: var(--anp-custom-bg-brightness-light);
  --anp-custom-bg-blur: var(--anp-custom-bg-blur-light);
  --anp-custom-bg-card-fg-opacity: var(--anp-custom-bg-card-fg-opacity-light);
}

body.theme-dark {
  --anp-background-image: var(--anp-background-image-dark);
  --anp-custom-bg-brightness: var(--anp-custom-bg-brightness-dark);
  --anp-custom-bg-blur: var(--anp-custom-bg-blur-dark);
  --anp-custom-bg-card-fg-opacity: var(--anp-custom-bg-card-fg-opacity-dark);
}

/*===============================================================
* BASIC STYLES - Everforest optimized
*===============================================================*/

/* Ensure we get the warm, soft feeling of Everforest */
body {
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Headings with Everforest color hierarchy - warmer tones with higher specificity */
h1, .markdown-preview-view h1, .markdown-rendered h1 {
  color: rgb(230, 152, 117) !important;           /* Same as H2 - warm orange #E69875 */
  font-weight: 700;
  border-bottom: 2px solid rgba(230, 152, 117, 0.3);
  padding-bottom: 0.25rem;
}

h2, .markdown-preview-view h2, .markdown-rendered h2 {
  color: rgb(230, 152, 117) !important;           /* Warm orange #E69875 */
  font-weight: 650;
}

h3, .markdown-preview-view h3, .markdown-rendered h3 {
  color: rgb(219, 188, 127) !important;           /* Warm yellow #DBBC7F */
  font-weight: 600;
}

h4, .markdown-preview-view h4, .markdown-rendered h4 {
  color: rgb(131, 192, 146) !important;           /* Warm teal #83C092 */
  font-weight: 550;
}

h5, .markdown-preview-view h5, .markdown-rendered h5 {
  color: rgb(127, 187, 179) !important;           /* Soft blue #7FBBB3 */
  font-weight: 500;
}

h6, .markdown-preview-view h6, .markdown-rendered h6 {
  color: rgb(214, 153, 182) !important;           /* Warm mauve #D699B6 */
  font-weight: 450;
  font-style: italic;
}

/* Body text with warm color */
body, .markdown-preview-view, .markdown-rendered {
  color: rgb(211, 198, 170) !important;          /* Warm cream #d3c6aa */
}

p, .markdown-preview-view p, .markdown-rendered p {
  color: rgb(211, 198, 170) !important;          /* Warm cream #d3c6aa */
}

/* Custom styling for bold and italic text */
strong, b, .markdown-preview-view strong, .markdown-rendered strong {
  color: rgb(211, 198, 170) !important;        /* Same as text color - warm cream */
  font-weight: 700;
  text-shadow: 0 0 1px rgba(211, 198, 170, 0.3);
}

em, i, .markdown-preview-view em, .markdown-rendered em {
  color: rgb(230, 152, 117) !important;        /* #E69875 - orange for italic */
  font-style: italic;
  font-weight: 500;
}

/* Combined bold and italic */
strong em, b i, em strong, i b {
  color: rgb(var(--ctp-mauve));        /* Keep mauve for combined */
  font-weight: 700;
  font-style: italic;
  text-shadow: 0 0 1px rgba(var(--ctp-mauve), 0.4);
}

/* Special styling for markdown formatting in edit mode */
.cm-strong {
  color: rgb(211, 198, 170) !important;  /* Same as text color for bold */
  font-weight: 700;
}

.cm-em {
  color: rgb(230, 152, 117) !important;  /* #E69875 for italic */
  font-style: italic;
  font-weight: 500;
}

/* Header formatting symbols in edit mode - warmer tones */
.cm-header-1 {
  color: rgb(230, 126, 128) !important;  /* Warm red */
  font-weight: 700;
}

.cm-header-2 {
  color: rgb(230, 152, 117) !important;  /* Warm orange */
  font-weight: 650;
}

.cm-header-3 {
  color: rgb(219, 188, 127) !important;  /* Warm yellow */
  font-weight: 600;
}

.cm-header-4 {
  color: rgb(131, 192, 146) !important;  /* Warm teal */
  font-weight: 550;
}

.cm-header-5 {
  color: rgb(127, 187, 179) !important;  /* Soft blue */
  font-weight: 500;
}

.cm-header-6 {
  color: rgb(214, 153, 182) !important;  /* Warm mauve */
  font-weight: 450;
}

/* Formatting marks (**, *, #, etc.) */
.cm-formatting-header {
  color: rgba(var(--ctp-overlay1), 0.7) !important;
  font-weight: 400;
}

.cm-formatting-strong {
  color: rgba(var(--ctp-pink), 0.6) !important;     /* Pink for bold formatting */
}

.cm-formatting-em {
  color: rgba(var(--ctp-flamingo), 0.6) !important;  /* Orange for italic formatting */
}

/* Links in different contexts */
a {
  color: rgb(var(--ctp-blue));        /* #7FBBB3 - aqua blue for links */
  text-decoration: none;
  transition: color 0.2s ease;
}

a:hover {
  color: rgb(var(--ctp-teal));        /* Slightly different blue on hover */
  text-decoration: underline;
}

/* Internal links */
.internal-link {
  color: rgb(var(--ctp-blue));        /* #7FBBB3 for internal links */
  text-decoration: none;
}

.internal-link:hover {
  color: rgb(var(--ctp-sky));
  text-decoration: underline;
}

/* Unresolved links */
.internal-link.is-unresolved {
  color: rgb(var(--ctp-overlay2));
  opacity: 0.7;
}

.internal-link.is-unresolved:hover {
  color: rgb(var(--ctp-red));
}

/* External links */
.external-link {
  color: rgb(var(--ctp-mauve));
}

.external-link:hover {
  color: rgb(var(--ctp-flamingo));
}

/* Code blocks with earthy background */
code {
  background-color: rgba(var(--ctp-surface1), 0.6);
  color: rgb(var(--ctp-text));
  padding: 2px 4px;
  border-radius: 3px;
  font-family: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;
}

pre {
  background-color: rgba(var(--ctp-surface0), 0.8);
  border-radius: 6px;
  padding: 1rem;
  overflow-x: auto;
}

pre code {
  background: none;
  padding: 0;
}

/* Blockquotes with forest accent */
blockquote {
  border-left: 4px solid rgb(var(--ctp-green));
  background-color: rgba(var(--ctp-surface1), 0.3);
  padding: 0.5rem 1rem;
  margin: 1rem 0;
  border-radius: 0 4px 4px 0;
}

/* Enhanced table styling with header colors */
table {
  border-collapse: collapse;
  width: 100%;
  margin: 1rem 0;
  box-shadow: 0 2px 8px rgba(var(--ctp-crust), 0.1);
  border-radius: 6px;
  overflow: hidden;
}

th, td {
  border: 1px solid rgba(var(--ctp-overlay0), 0.3);
  padding: 0.75rem;
  text-align: left;
}

th {
  background: linear-gradient(135deg, 
    rgba(var(--ctp-green), 0.1), 
    rgba(var(--ctp-teal), 0.1)
  );
  font-weight: 600;
  color: rgb(var(--ctp-green));
  border-bottom: 2px solid rgba(var(--ctp-green), 0.3);
}

/* Alternating row colors */
tbody tr:nth-child(even) {
  background-color: rgba(var(--ctp-surface0), 0.3);
}

tbody tr:hover {
  background-color: rgba(var(--ctp-green), 0.08);
  transition: background-color 0.2s ease;
}

/* Tags with forest styling */
.tag {
  background-color: rgba(var(--ctp-green), 0.15);
  color: rgb(var(--ctp-green));
  border: 1px solid rgba(var(--ctp-green), 0.3);
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 0.85em;
  text-decoration: none;
}

.tag:hover {
  background-color: rgba(var(--ctp-green), 0.25);
  text-decoration: none;
}

/* Task lists */
.task-list-item {
  list-style: none;
}

.task-list-item input[type="checkbox"] {
  accent-color: rgb(var(--ctp-green));
  margin-right: 0.5rem;
}

/* Highlights with yellow */
mark {
  background-color: rgba(var(--ctp-yellow), 0.4);
  color: rgb(var(--ctp-text));
  padding: 0 2px;
  border-radius: 2px;
}

/* Selection color */
::selection {
  background-color: rgba(var(--ctp-green), 0.3);
  color: rgb(var(--ctp-text));
}

/* Scrollbars with forest theme */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: rgba(var(--ctp-surface0), 0.3);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb {
  background: rgba(var(--ctp-overlay1), 0.6);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(var(--ctp-overlay2), 0.8);
}

/* Search highlighting */
.search-hit {
  background-color: rgba(var(--ctp-yellow), 0.4);
  border-radius: 2px;
}

/* Footnotes */
.footnote {
  color: rgb(var(--ctp-subtext0));
  font-size: 0.9em;
}

/* Horizontal rules */
hr {
  border: none;
  height: 2px;
  background: linear-gradient(to right, 
    rgba(var(--ctp-green), 0.2), 
    rgba(var(--ctp-green), 0.6), 
    rgba(var(--ctp-green), 0.2)
  );
  margin: 2rem 0;
}

/* Math/LaTeX */
.math {
  color: rgb(var(--ctp-blue));
}

.math-block {
  background-color: rgba(var(--ctp-surface1), 0.3);
  border-radius: 4px;
  padding: 1rem;
  margin: 1rem 0;
  overflow-x: auto;
}

/* Navigation and outline styling */
.mod-left-split {
  background-color: rgba(var(--ctp-mantle), 0.95);
  border-right: 1px solid rgba(var(--ctp-surface1), 0.5);
}

.nav-file-title {
  color: rgb(var(--ctp-subtext0));
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  transition: all 0.2s ease;
}

.nav-file-title:hover {
  background-color: rgba(var(--ctp-surface1), 0.5);
  color: rgb(var(--ctp-text));
}

.nav-file-title.is-active {
  background-color: rgba(var(--ctp-green), 0.2);
  color: rgb(var(--ctp-green));
}

/* Enhanced callouts with better typography */
.callout {
  border-radius: 8px;
  margin: 1rem 0;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(var(--ctp-crust), 0.15);
  transition: box-shadow 0.2s ease;
}

.callout:hover {
  box-shadow: 0 4px 12px rgba(var(--ctp-crust), 0.2);
}

.callout[data-callout="note"] {
  --callout-color: var(--ctp-blue);
  background-color: rgba(var(--ctp-blue), 0.05);
  border-left: 4px solid rgb(var(--ctp-blue));
}

.callout[data-callout="tip"] {
  --callout-color: var(--ctp-teal);
  background-color: rgba(var(--ctp-teal), 0.05);
  border-left: 4px solid rgb(var(--ctp-teal));
}

.callout[data-callout="important"] {
  --callout-color: var(--ctp-peach);
  background-color: rgba(var(--ctp-peach), 0.05);
  border-left: 4px solid rgb(var(--ctp-peach));
}

.callout[data-callout="warning"] {
  --callout-color: var(--ctp-yellow);
  background-color: rgba(var(--ctp-yellow), 0.05);
  border-left: 4px solid rgb(var(--ctp-yellow));
}

.callout[data-callout="caution"] {
  --callout-color: var(--ctp-red);
  background-color: rgba(var(--ctp-red), 0.05);
  border-left: 4px solid rgb(var(--ctp-red));
}

.callout[data-callout="success"] {
  --callout-color: var(--ctp-green);
  background-color: rgba(var(--ctp-green), 0.05);
  border-left: 4px solid rgb(var(--ctp-green));
}

.callout[data-callout="question"] {
  --callout-color: var(--ctp-mauve);
  background-color: rgba(var(--ctp-mauve), 0.05);
  border-left: 4px solid rgb(var(--ctp-mauve));
}

.callout-title {
  font-weight: 600;
  color: rgb(var(--callout-color));
  padding: 0.75rem 1rem 0.5rem;
  background: linear-gradient(135deg, 
    rgba(var(--callout-color), 0.1), 
    rgba(var(--callout-color), 0.05)
  );
}

.callout-content {
  padding: 0.5rem 1rem 0.75rem;
}

/* Special styling for bold and italic within callouts */
.callout strong {
  color: rgb(var(--callout-color));
  filter: brightness(1.2);
}

.callout em {
  color: rgb(var(--callout-color));
  filter: brightness(0.9);
}

/* Print styles */
@media print {
  body {
    background: white;
    color: #2d3748;
  }
  
  .mod-left-split,
  .mod-right-split {
    display: none;
  }
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  body {
    font-size: 16px;
    line-height: 1.6;
  }
  
  pre {
    padding: 0.75rem;
  }
  
  .callout {
    margin: 0.75rem 0;
  }
}

/* FINAL OVERRIDES - These should take highest priority */
* {
  /* Force background color */
  --background-primary: rgb(28, 37, 47) !important;
  --background-secondary: rgb(28, 37, 47) !important;
}

/* Force header colors */
h1, h1 *, .markdown-preview-view h1, .markdown-rendered h1 {
  color: rgb(230, 152, 117) !important;  /* Orange like H2 */
}

h2, h2 *, .markdown-preview-view h2, .markdown-rendered h2 {
  color: rgb(230, 152, 117) !important;  /* Orange */
}

/* Force bold to match text color */
strong, b, .cm-strong, strong *, b *, 
.markdown-preview-view strong, .markdown-rendered strong {
  color: rgb(211, 198, 170) !important;  /* Same as text */
}

/* Force background */
body, .app-container, .workspace {
  background-color: rgb(28, 37, 47) !important;
}-selection: rgba(var(--ctp-accent), 0.25);
  --interactive-accent: rgb(var(--ctp-accent));
  --interactive-accent-hover: rgba(var(--ctp-accent), 0.9);
  --text-accent: rgb(var(--ctp-accent));
  --text-accent-hover: rgb(var(--ctp-accent));
  --text-highlight-bg: rgba(var(--ctp-accent), 0.4);
  --text-highlight-bg-active: rgba(var(--ctp-accent), 0.6);
  --interactive-accent: rgb(var(--ctp-accent));
  --interactive-accent-rgb: var(--ctp-accent);
  --interactive-accent-hover: rgb(var(--ctp-accent));
  --blockquote-border-color: rgb(var(--ctp-accent));
  --background-modifier-active: rgba(var(--ctp-accent), 0.1);
  --background-modifier-active-hover: rgba(var(--ctp-accent), 0.15);
  --link-unresolved-decoration-color: rgba(var(--ctp-accent), 0.3);
  --tag-background: rgba(var(--ctp-accent), 0.1);
  --tag-background-hover: rgba(var(--ctp-accent), 0.2);
  --tag-border-color: rgba(var(--ctp-accent), 0.15);
  --tag-border-color-hover: rgba(var(--ctp-accent), 0.15);
  --nav-item-background-selected: rgba(var(--ctp-accent), 0.2);
  --heading-formatting: rgb(var(--ctp-accent));
  --icon-color-focused: rgb(var(--ctp-accent));
}

.theme-dark,
.theme-light {
  --mono-rgb-0: var(--ctp-crust);
  --mono-rgb-100: var(--ctp-text);
  --color-red-rgb: var(--ctp-red);
  --color-red: rgb(var(--ctp-red));
  --color-green-rgb: var(--ctp-green);
  --color-green: rgb(var(--ctp-green));
  --color-orange-rgb: var(--ctp-peach);
  --color-orange: rgb(var(--ctp-peach));
  --color-yellow-rgb: var(--ctp-yellow);
  --color-yellow: rgb(var(--ctp-yellow));
  --color-cyan-rgb: var(--ctp-sky);
  --color-cyan: rgb(var(--ctp-sky));
  --color-blue-rgb: var(--ctp-blue);
  --color-blue: rgb(var(--ctp-blue));
  --color-purple-rgb: var(--ctp-lavender);
  --color-purple: rgb(var(--ctp-lavender));
  --color-pink-rgb: var(--ctp-pink);
  --color-pink: rgb(var(--ctp-pink));
  --color-base-00: rgb(var(--ctp-crust));
  --color-base-10: rgb(var(--ctp-mantle));
  --color-base-20: rgb(var(--ctp-base));
  --color-base-25: rgb(var(--ctp-surface0));
  --color-base-30: rgb(var(--ctp-surface1));
  --color-base-35: rgb(var(--ctp-surface2));
  --color-base-40: rgb(var(--ctp-overlay0));
  --color-base-50: rgb(var(--ctp-overlay1));
  --color-base-60: rgb(var(--ctp-overlay2));
  --color-base-70: rgb(var(--ctp-subtext0));
  --color-base-100: rgb(var(--ctp-text));
  --text-highlight-bg: rgba(var(--ctp-yellow), 0.2);
  --text-highlight-bg-active: rgba(var(--ctp-yellow), 0.4);
  --input-shadow: inset 0 0.5px 0.5px 0.5px rgba(var(255, 255, 255), 0.09),
      0 2px 4px 0 rgba(var(--ctp-crust), 0.15),
      0 1px 1.5px 0 rgba(var(--ctp-crust), 0.1),
      0 1px 2px 0 rgba(var(--ctp-crust), 0.2), 0 0 0 0 transparent;
  --input-shadow-hover: inset 0 0.5px 1px 0.5px rgba(var(255, 255, 255), 0.16),
      0 2px 3px 0 rgba(var(--ctp-crust), 0.3),
      0 1px 1.5px 0 rgba(var(--ctp-crust), 0.2),
      0 1px 2px 0 rgba(var(--ctp-crust), 0.4), 0 0 0 0 transparent;
  --shadow-s: 0px 1px 2px rgba(var(--ctp-crust), 0.121),
      0px 3.4px 6.7px rgba(var(--ctp-crust), 0.179),
      0px 15px 30px rgba(var(--ctp-crust), 0.3);
  --shadow-l: 0px 1.8px 7.3px rgba(var(--ctp-crust), 0.071),
      0px 6.3px 24.7px rgba(var(--ctp-crust), 0.112),
      0px 30px 90px rgba(var(--ctp-crust), 0.2);
  --background-primary: rgb(var(--ctp-base));
  --background-primary-alt: rgb(var(--ctp-mantle));
  --background-secondary: rgb(var(--ctp-mantle));
  --background-secondary-alt: rgb(var(--ctp-crust));
  --background-modifier-hover: rgba(var(--ctp-text), 0.075);
  --background-modifier-form-field: rgba(var(--ctp-crust), 0.3);
  --background-modifier-success: rgba(var(--ctp-green), 1);
  --background-modifier-success-hover: rgba(var(--ctp-green), 0.9);
  --background-modifier-success-rgb: var(--ctp-green);
  --background-modifier-error: rgba(var(--ctp-red), 1);
  --background-modifier-error-rgb: var(--ctp-red);
  --background-modifier-error-hover: rgba(var(--ctp-red), 0.9);
  --background-modifier-message: rgba(var(--ctp-crust), 0.9);
  --modal-border-color: rgb(var(--ctp-surface0));
  --text