/* Sheltie for mdBook, matching sheltie.dev and the dashboard: a Shetland palette (the flag's sky
   blue, the North Atlantic, aurora, heather) and Geist. The fonts are served by the site at
   /assets/fonts; without them (mdbook serve) the system font is used. */
@font-face { font-family: "Geist"; src: url("/assets/fonts/Geist-Variable.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("/assets/fonts/GeistMono-Variable.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
:root {
  --sheltie-atlantic: #0b2440;
  --sheltie-flag: #1f6fd1;
  --sheltie-aurora: #2bd4a8;
  --content-max-width: 820px;
  --mono-font: "Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;
}

.light, .rust {
  --bg: #ffffff;
  --fg: #0f2236;
  --sidebar-bg: #f3f6f8;
  --sidebar-fg: #33475b;
  --sidebar-non-existant: #9aa8b6;
  --sidebar-active: #1a63bf;
  --sidebar-header-border-color: #2bd4a8;
  --sidebar-spacer: #e0e7ee;
  --links: #1a63bf;
  --inline-code-color: #0b2440;
  --theme-popup-bg: #ffffff;
  --theme-hover: #eaf1f8;
  --quote-bg: #f1f7fb;
  --quote-border: #cfe0f0;
  --table-header-bg: #edf2f6;
  --table-alternate-bg: #f8fafc;
  --searchbar-border-color: #e0e7ee;
}

.navy, .coal, .ayu {
  --bg: #050d17;
  --fg: #e3ecf4;
  --sidebar-bg: #08121f;
  --sidebar-fg: #b9c8d6;
  --sidebar-active: #74b3ff;
  --sidebar-header-border-color: #36e0b0;
  --sidebar-spacer: #172a40;
  --links: #74b3ff;
  --inline-code-color: #c6e4ff;
  --theme-popup-bg: #0b1726;
  --theme-hover: #112235;
  --quote-bg: #0a1625;
  --quote-border: #172a40;
  --table-header-bg: #0b1726;
  --table-alternate-bg: #08131f;
  --searchbar-bg: #0a1625;
}

html { font-family: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; letter-spacing: -0.006em; }
.content { font-size: 1.65rem; line-height: 1.65; }
.content h1, .content h2, .content h3 { letter-spacing: -0.03em; font-weight: 650; }
.light .content h1, .light .content h2, .rust .content h1, .rust .content h2 { color: var(--sheltie-atlantic); }
.content h1 { font-size: 2.6em; margin-top: 0.6em; }
.content h2 { margin-top: 1.8em; padding-bottom: 0.3em; border-bottom: 1px solid var(--sidebar-spacer); }
.content pre { border-radius: 12px; }
.content code { font-family: var(--mono-font); }
.content table { border-radius: 10px; overflow: hidden; }
.content img { border-radius: 12px; box-shadow: 0 1px 2px rgb(11 36 64 / .06), 0 12px 32px -10px rgb(11 36 64 / .2); }
#menu-bar { border-bottom: 1px solid var(--sidebar-spacer); }
#menu-bar::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; opacity: .55;
  background: linear-gradient(90deg, transparent, var(--sheltie-flag) 30%, var(--sheltie-aurora) 50%, var(--sheltie-flag) 70%, transparent); }
::selection { background: rgb(43 212 168 / .3); }

/* Logo before the book title in the top bar. */
.light .menu-title, .rust .menu-title { color: var(--sheltie-atlantic); }
.menu-title {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  font-weight: 700;
  letter-spacing: -0.01em;
}
.menu-title::before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url("data:image/png;base64,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") center / contain no-repeat;
}

/* Research reports (real-world.md): key figures, findings, highlighted columns, verdict pills.
   Green is a gain, amber a cost or caveat, red something we found or could not prove. */
.content { --rw-good: #13865c; --rw-warn: #b86e12; --rw-bad: #cf2b4f; --rw-info: #1f6fd1; }
.navy .content, .coal .content, .ayu .content { --rw-good: #3fd49a; --rw-warn: #e7a65a; --rw-bad: #ff6b88; --rw-info: #74b3ff; }
.content .rw-pdf a { display: inline-flex; align-items: center; gap: .5em; padding: .45em 1.1em; border-radius: 999px;
  font-weight: 600; font-size: .9em; color: #fff; text-decoration: none;
  background: linear-gradient(135deg, var(--sheltie-atlantic), var(--sheltie-flag)); box-shadow: 0 8px 22px -10px rgb(31 111 209 / .7); }
.content .rw-pdf a::before { content: "↓"; }
.rw-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; margin: 1.6em 0 2em; }
.rw-kpi { --c: var(--rw-info); position: relative; overflow: hidden; padding: 14px 16px 15px; border-radius: 14px;
  border: 1px solid color-mix(in srgb, var(--c) 28%, transparent); background: color-mix(in srgb, var(--c) 7%, transparent); }
.rw-kpi::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--c); }
.rw-kpi b { display: block; font-size: 1.75em; font-weight: 700; line-height: 1.15; letter-spacing: -0.03em; color: var(--c); font-variant-numeric: tabular-nums; }
.rw-kpi span { display: block; margin-top: 4px; font-size: .82em; line-height: 1.45; }
.rw-kpi.good, .rw-callout.good { --c: var(--rw-good); }
.rw-kpi.warn, .rw-callout.warn { --c: var(--rw-warn); }
.rw-kpi.bad, .rw-callout.bad { --c: var(--rw-bad); }
.rw-callout { --c: var(--rw-info); margin: 1.1em 0; padding: .2em 1.1em; border-radius: 12px; border-left: 4px solid var(--c);
  background: color-mix(in srgb, var(--c) 7%, transparent); }
.rw-callout > p:first-child strong:first-child { color: var(--c); }
.rw-table.rw-hl-last td:last-child, .rw-table.rw-hl-ci td:nth-child(4) { font-weight: 700; color: var(--rw-good); }
.rw-table.rw-hl-ci td:nth-child(5) { font-weight: 700; color: var(--rw-warn); }
.rw-table td em { font-style: normal; font-weight: 400; opacity: .65; }
.rw-table { overflow-x: auto; }
.rw-pill { display: inline-block; padding: .05em .65em; border-radius: 999px; font-size: .82em; font-weight: 700; white-space: nowrap;
  color: var(--c); background: color-mix(in srgb, var(--c) 13%, transparent); border: 1px solid color-mix(in srgb, var(--c) 35%, transparent); }
.rw-pill.yes { --c: var(--rw-good); }
.rw-pill.partly { --c: var(--rw-warn); }
.rw-pill.no { --c: var(--rw-bad); }
