/*
Claude Warm for Obsidian
Inspired by a warm ivory and charcoal Claude-style palette.
*/

body {
  --cw-black-soft: #2a2b2a;
  --cw-white-soft: #f8f7f2;
  --cw-shadow-soft: 0 10px 34px -24px rgba(0, 0, 0, 0.38);

  --font-interface-theme: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-text-theme: ui-serif, Georgia, Cambria, "Times New Roman", serif;
  --font-monospace-theme: "SFMono-Regular", Consolas, "Liberation Mono", monospace;

  --radius-s: 6px;
  --radius-m: 8px;
  --radius-l: 12px;
  --radius-xl: 16px;
  --input-radius: 8px;
  --tab-radius-active: 8px 8px 0 0;
  --checkbox-radius: 4px;
}

.theme-dark {
  color-scheme: dark;

  --color-base-00: #1f201f;
  --color-base-05: #242524;
  --color-base-10: #282928;
  --color-base-20: #2a2b2a;
  --color-base-25: #2d2e2d;
  --color-base-30: #343533;
  --color-base-35: #3d3d3a;
  --color-base-40: #55544f;
  --color-base-50: #6c6a63;
  --color-base-60: #8c887e;
  --color-base-70: #bbb6a8;
  --color-base-100: #e9e6dc;

  --background-primary: #2d2e2d;
  --background-primary-alt: #303030;
  --background-secondary: #2a2b2a;
  --background-secondary-alt: #282c34;
  --background-modifier-hover: rgba(229, 229, 226, 0.06);
  --background-modifier-active-hover: rgba(229, 229, 226, 0.1);
  --background-modifier-border: rgba(203, 199, 187, 0.14);
  --background-modifier-border-hover: rgba(203, 199, 187, 0.22);
  --background-modifier-border-focus: rgba(234, 146, 138, 0.42);
  --background-modifier-form-field: #3d3d3a;
  --background-modifier-form-field-highlighted: #42433f;
  --background-modifier-box-shadow: rgba(0, 0, 0, 0.26);

  --text-normal: hsl(50, 14%, 91%);
  --text-muted: hsl(48, 10%, 72%);
  --text-faint: hsl(48, 7%, 58%);
  --text-on-accent: #2a1e1b;
  --text-on-accent-inverted: #f8f7f2;
  --text-error: #f2a29a;
  --text-warning: #e6bf7a;
  --text-success: #a9c79a;
  --text-selection: rgba(234, 146, 138, 0.22);
  --text-highlight-bg: rgba(220, 174, 94, 0.26);
  --text-accent: #f0a097;
  --text-accent-hover: #f7b5ae;

  --color-accent: #ea928a;
  --color-accent-1: #f1a59e;
  --color-accent-2: #d47d76;
  --interactive-accent-rgb: 234, 146, 138;
  --interactive-accent-hsl: 5, 68%, 72%;
  --interactive-normal: #343533;
  --interactive-hover: #3b3c39;
  --interactive-accent: #ea928a;
  --interactive-accent-hover: #f1a59e;
  --interactive-success: #9ab889;
  --input-focus-border-color: rgba(234, 146, 138, 0.42);
  --input-focus-ring-color: rgba(234, 146, 138, 0.16);

  --link-color: #f0a097;
  --link-color-hover: #f7b5ae;
  --link-external-color: #d9b77a;
  --link-external-color-hover: #e9c98e;

  --tag-color: #f0b5ae;
  --tag-background: rgba(234, 146, 138, 0.12);
  --tag-background-hover: rgba(234, 146, 138, 0.2);
  --cw-tag-border-color: rgba(240, 181, 174, 0.22);

  --titlebar-background: #2a2b2a;
  --titlebar-background-focused: #2a2b2a;
  --ribbon-background: #2a2b2a;
  --tab-container-background: #2a2b2a;
  --tab-outline-color: rgba(203, 199, 187, 0.14);
  --tab-text-color: hsl(48, 9%, 72%);
  --tab-text-color-active: hsl(50, 14%, 91%);
  --tab-background-active: #2d2e2d;

  --nav-item-color: hsl(48, 10%, 72%);
  --nav-item-color-hover: hsl(50, 14%, 91%);
  --nav-item-color-active: hsl(50, 14%, 91%);
  --nav-item-background-hover: rgba(229, 229, 226, 0.06);
  --nav-item-background-active: rgba(234, 146, 138, 0.12);

  --blockquote-border-color: #736b5d;
  --blockquote-color: hsl(48, 12%, 80%);
  --code-background: rgba(229, 229, 226, 0.06);
  --code-normal: #abb2bf;
  --code-comment: #7f857c;
  --code-function: #e5c07b;
  --code-important: #ea928a;
  --code-keyword: #c891d9;
  --code-operator: #d6cbc0;
  --code-property: #98c379;
  --code-punctuation: #b8b2a8;
  --code-string: #b5c88d;
  --code-tag: #ea928a;
  --code-value: #d19a66;

  --table-header-background: #343533;
  --table-header-background-hover: #393a37;
  --table-row-background-hover: rgba(229, 229, 226, 0.04);
  --hr-color: rgba(203, 199, 187, 0.18);
  --background-modifier-error-rgb: 124, 27, 19;
  --background-modifier-error: rgba(124, 27, 19, 0.22);
  --background-modifier-error-hover: rgba(124, 27, 19, 0.3);
  --background-modifier-success-rgb: 154, 184, 137;
  --background-modifier-success: rgba(154, 184, 137, 0.18);

  --color-red-rgb: 234, 146, 138;
  --color-orange-rgb: 209, 154, 102;
  --color-yellow-rgb: 229, 192, 123;
  --color-green-rgb: 152, 195, 121;
  --color-cyan-rgb: 117, 181, 188;
  --color-blue-rgb: 137, 168, 206;
  --color-purple-rgb: 198, 145, 217;
  --color-pink-rgb: 229, 151, 192;
}

.theme-light {
  color-scheme: light;

  --color-base-00: #ffffff;
  --color-base-05: #fbfaf5;
  --color-base-10: #f8f7f2;
  --color-base-20: #f0eee6;
  --color-base-25: #e9e4d6;
  --color-base-30: #ddd7c6;
  --color-base-35: #cdc5b2;
  --color-base-40: #b9af99;
  --color-base-50: #9b927f;
  --color-base-60: #7d7566;
  --color-base-70: #5f584d;
  --color-base-100: #29271d;

  --background-primary: hsl(51, 24%, 95%);
  --background-primary-alt: hsl(40, 23%, 98%);
  --background-secondary: #f8f7f2;
  --background-secondary-alt: hsl(51, 16%, 85%);
  --background-modifier-hover: rgba(61, 57, 41, 0.06);
  --background-modifier-active-hover: rgba(61, 57, 41, 0.09);
  --background-modifier-border: rgba(88, 83, 66, 0.18);
  --background-modifier-border-hover: rgba(88, 83, 66, 0.28);
  --background-modifier-border-focus: rgba(124, 27, 19, 0.34);
  --background-modifier-form-field: #ffffff;
  --background-modifier-form-field-highlighted: #fffdf8;
  --background-modifier-box-shadow: rgba(68, 57, 32, 0.14);

  --text-normal: hsl(47, 15%, 25%);
  --text-muted: hsl(45, 10%, 42%);
  --text-faint: hsl(45, 8%, 56%);
  --text-on-accent: #fff8f3;
  --text-on-accent-inverted: hsl(49, 19.6%, 13.3%);
  --text-error: #7c1b13;
  --text-warning: #795313;
  --text-success: #4b6f3d;
  --text-selection: rgba(124, 27, 19, 0.14);
  --text-highlight-bg: rgba(226, 188, 103, 0.34);
  --text-accent: #7c1b13;
  --text-accent-hover: #9b3328;

  --color-accent: #7c1b13;
  --color-accent-1: #963025;
  --color-accent-2: #63130e;
  --interactive-accent-rgb: 124, 27, 19;
  --interactive-accent-hsl: 5, 74%, 28%;
  --interactive-normal: #ffffff;
  --interactive-hover: #f0eee6;
  --interactive-accent: #7c1b13;
  --interactive-accent-hover: #963025;
  --interactive-success: #5f7f4b;
  --input-focus-border-color: rgba(124, 27, 19, 0.34);
  --input-focus-ring-color: rgba(124, 27, 19, 0.14);

  --link-color: #7c1b13;
  --link-color-hover: #9b3328;
  --link-external-color: #795313;
  --link-external-color-hover: #966a20;

  --tag-color: #7c1b13;
  --tag-background: rgba(124, 27, 19, 0.08);
  --tag-background-hover: rgba(124, 27, 19, 0.13);
  --cw-tag-border-color: rgba(124, 27, 19, 0.18);

  --titlebar-background: #f8f7f2;
  --titlebar-background-focused: #f8f7f2;
  --ribbon-background: #f8f7f2;
  --tab-container-background: #f8f7f2;
  --tab-outline-color: rgba(88, 83, 66, 0.18);
  --tab-text-color: hsl(45, 10%, 42%);
  --tab-text-color-active: hsl(47, 15%, 25%);
  --tab-background-active: hsl(51, 24%, 95%);

  --nav-item-color: hsl(45, 10%, 42%);
  --nav-item-color-hover: hsl(47, 15%, 25%);
  --nav-item-color-active: hsl(47, 15%, 25%);
  --nav-item-background-hover: rgba(61, 57, 41, 0.06);
  --nav-item-background-active: rgba(124, 27, 19, 0.08);

  --blockquote-border-color: #c7b893;
  --blockquote-color: hsl(45, 12%, 34%);
  --code-background: rgba(61, 57, 41, 0.06);
  --code-normal: #2f3440;
  --code-comment: #80796c;
  --code-function: #825e15;
  --code-important: #7c1b13;
  --code-keyword: #6f3f82;
  --code-operator: #4c463b;
  --code-property: #4f6f2b;
  --code-punctuation: #5b554b;
  --code-string: #536b2c;
  --code-tag: #7c1b13;
  --code-value: #8a4f18;

  --table-header-background: hsl(51, 19%, 87%);
  --table-header-background-hover: hsl(51, 19%, 84%);
  --table-row-background-hover: rgba(61, 57, 41, 0.04);
  --hr-color: rgba(88, 83, 66, 0.18);
  --background-modifier-error-rgb: 124, 27, 19;
  --background-modifier-error: rgba(124, 27, 19, 0.12);
  --background-modifier-error-hover: rgba(124, 27, 19, 0.18);
  --background-modifier-success-rgb: 75, 111, 61;
  --background-modifier-success: rgba(75, 111, 61, 0.12);

  --color-red-rgb: 124, 27, 19;
  --color-orange-rgb: 138, 79, 24;
  --color-yellow-rgb: 130, 94, 21;
  --color-green-rgb: 79, 111, 43;
  --color-cyan-rgb: 44, 111, 117;
  --color-blue-rgb: 55, 91, 135;
  --color-purple-rgb: 111, 63, 130;
  --color-pink-rgb: 143, 57, 101;
}

.theme-dark,
.theme-light {
  --accent-h: 5;
  --accent-s: 68%;
  --accent-l: 72%;
  --bold-color: var(--text-normal);
  --italic-color: var(--text-normal);
  --h1-color: var(--text-normal);
  --h2-color: var(--text-normal);
  --h3-color: var(--text-normal);
  --h4-color: var(--text-muted);
  --h5-color: var(--text-muted);
  --h6-color: var(--text-muted);
  --h1-size: 1.85em;
  --h2-size: 1.45em;
  --h3-size: 1.2em;
  --heading-spacing: 1.25rem;
  --file-line-width: 760px;
  --line-height-normal: 1.65;
  --line-height-tight: 1.35;
}

.theme-light {
  --accent-h: 5;
  --accent-s: 74%;
  --accent-l: 28%;
}

.workspace,
.workspace-leaf,
.workspace-leaf-content,
.markdown-source-view,
.markdown-reading-view,
.empty-state {
  background-color: var(--background-primary);
}

.workspace-split.mod-left-split,
.workspace-split.mod-right-split,
.mod-sidedock .workspace-leaf-content,
.workspace-ribbon,
.status-bar,
.titlebar,
.view-header,
.workspace-tab-header-container {
  background-color: var(--background-secondary);
  border-color: var(--background-modifier-border);
}

.workspace-leaf-content {
  border-radius: 0;
}

.view-header {
  box-shadow: 0 1px 0 var(--background-modifier-border);
}

.view-header-title {
  color: var(--text-muted);
  font-weight: 600;
}

.workspace-tab-header.is-active {
  background-color: var(--tab-background-active);
  border-color: var(--tab-outline-color);
}

.workspace-tab-header.is-active .workspace-tab-header-inner-title {
  color: var(--tab-text-color-active);
}

.workspace-tab-header-inner-title,
.workspace-tab-header-inner-icon {
  color: var(--tab-text-color);
}

.nav-folder-title,
.nav-file-title {
  border-radius: var(--radius-m);
  margin: 1px 6px;
}

.nav-folder-title:hover,
.nav-file-title:hover {
  background-color: var(--nav-item-background-hover);
  color: var(--nav-item-color-hover);
}

.nav-file-title.is-active {
  background-color: var(--nav-item-background-active);
  color: var(--nav-item-color-active);
  font-weight: 600;
}

.markdown-source-view.mod-cm6 .cm-scroller,
.markdown-preview-view {
  color: var(--text-normal);
  font-family: var(--font-text-theme);
}

.markdown-source-view.mod-cm6 .cm-content,
.markdown-preview-view {
  padding-top: 24px;
}

.markdown-source-view.mod-cm6 .cm-line {
  caret-color: var(--interactive-accent);
}

.cm-s-obsidian span.cm-inline-code,
.markdown-rendered code {
  background-color: var(--code-background);
  color: var(--code-important);
  border-radius: var(--radius-s);
  padding: 0.12em 0.35em;
}

.markdown-rendered pre,
.HyperMD-codeblock,
.cm-line.HyperMD-codeblock {
  background-color: var(--background-secondary-alt);
}

.markdown-rendered pre {
  border: 1px solid var(--background-modifier-border);
  border-radius: var(--radius-l);
  box-shadow: var(--cw-shadow-soft);
  padding: 14px 16px;
}

.markdown-rendered pre code {
  background: transparent;
  color: var(--code-normal);
  padding: 0;
}

.markdown-rendered blockquote,
.cm-quote {
  color: var(--blockquote-color);
  border-color: var(--blockquote-border-color);
}

.markdown-rendered table {
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--background-modifier-border);
  border-radius: var(--radius-l);
  overflow: hidden;
}

.markdown-rendered th {
  background-color: var(--table-header-background);
  color: var(--text-normal);
}

.markdown-rendered th,
.markdown-rendered td {
  border-color: var(--background-modifier-border);
}

.markdown-rendered tr:hover {
  background-color: var(--table-row-background-hover);
}

.callout {
  border: 1px solid rgba(var(--callout-color), 0.22);
  border-radius: var(--radius-xl);
  background-color: rgba(var(--callout-color), 0.08);
  box-shadow: var(--cw-shadow-soft);
}

.callout-title {
  color: var(--text-normal);
}

.metadata-container,
.properties-container {
  background-color: var(--background-primary-alt);
  border: 1px solid var(--background-modifier-border);
  border-radius: var(--radius-xl);
  box-shadow: var(--cw-shadow-soft);
  padding: 8px 10px;
}

.modal,
.prompt,
.menu {
  background-color: var(--background-primary-alt);
  border: 1px solid var(--background-modifier-border);
  border-radius: var(--radius-xl);
  box-shadow: 0 18px 60px -30px var(--background-modifier-box-shadow);
}

.suggestion-item,
.menu-item {
  border-radius: var(--radius-m);
}

.suggestion-item.is-selected,
.menu-item:hover {
  background-color: var(--background-modifier-hover);
}

input[type="text"],
input[type="search"],
input[type="email"],
input[type="password"],
input[type="number"],
textarea,
select,
.dropdown {
  background-color: var(--background-modifier-form-field);
  border: 1px solid var(--background-modifier-border);
  border-radius: var(--input-radius);
  color: var(--text-normal);
}

input[type="text"]:focus,
input[type="search"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus,
.dropdown:focus {
  border-color: var(--background-modifier-border-focus);
  box-shadow: 0 0 0 3px var(--input-focus-ring-color);
}

button,
.clickable-icon {
  border-radius: var(--radius-m);
}

button.mod-cta,
.mod-cta {
  background-color: var(--interactive-accent);
  color: var(--text-on-accent);
}

button.mod-cta:hover,
.mod-cta:hover {
  background-color: var(--interactive-accent-hover);
}

.checkbox-container,
input[type="checkbox"] {
  --checkbox-color: var(--interactive-accent);
  --checkbox-color-hover: var(--interactive-accent-hover);
  --checkbox-border-color: var(--background-modifier-border-hover);
  --checkbox-border-color-hover: var(--interactive-accent);
}

.tag,
a.tag {
  background-color: var(--tag-background);
  border: 1px solid var(--cw-tag-border-color);
  border-radius: 999px;
  color: var(--tag-color);
  padding: 0.05em 0.45em;
  text-decoration: none;
}

.tag:hover,
a.tag:hover {
  background-color: var(--tag-background-hover);
  color: var(--tag-color);
}

.graph-view.color-fill,
.graph-view.color-fill-highlight,
.graph-view.color-line-highlight {
  color: var(--interactive-accent);
}

.graph-view.color-fill-tag {
  color: rgb(var(--color-yellow-rgb));
}

.graph-view.color-fill-attachment {
  color: rgb(var(--color-green-rgb));
}

.graph-view.color-fill-unresolved {
  color: var(--text-faint);
}

.theme-dark ::selection,
.theme-light ::selection {
  background-color: var(--text-selection);
}

.theme-dark ::-webkit-scrollbar-thumb {
  background-color: rgba(203, 199, 187, 0.16);
}

.theme-light ::-webkit-scrollbar-thumb {
  background-color: rgba(88, 83, 66, 0.18);
}

::-webkit-scrollbar-thumb:hover {
  background-color: var(--background-modifier-border-hover);
}
