/* RSM338 Course Notes Styling */

/* Rotman brand colors */
:root {
  --rotman-blue: #1E3765;
  --uoft-teal: #007f9f;
  --uoft-blue: #002a5c;
}

/* Light theme overrides */
body {
  background-color: #fff;
  color: #333;
}

/* Chapter navigation */
.chapter-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem 0;
  margin-top: 3rem;
  border-top: 1px solid #ddd;
}

.chapter-nav a {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.25rem;
  background: var(--rotman-blue);
  color: white !important;
  text-decoration: none;
  border-radius: 6px;
  font-weight: 500;
  transition: background 0.2s;
}

.chapter-nav a:hover {
  background: var(--uoft-teal);
  text-decoration: none;
}

.chapter-nav .prev::before {
  content: "\2190";
  font-size: 1.2em;
}

.chapter-nav .next::after {
  content: "\2192";
  font-size: 1.2em;
}

.chapter-nav .disabled {
  visibility: hidden;
}

/* Section headers */
h1 {
  color: var(--rotman-blue);
  border-bottom: 2px solid var(--rotman-blue);
  padding-bottom: 0.3em;
}

h2, h3, h4 {
  color: var(--rotman-blue);
}

/* Callout boxes */
.callout {
  border-left: 4px solid var(--rotman-blue);
}

.callout-warning {
  border-left-color: #ffc107;
}

.callout-note {
  border-left-color: var(--uoft-teal);
}

/* Code blocks - force light theme */
pre,
div.sourceCode pre,
.cell-code pre {
  border-radius: 6px;
  background-color: #f8f8f8 !important;
  padding: 1rem;
  font-size: 0.95rem;
  line-height: 1.5;
  overflow-x: auto;
  color: #333 !important;
}

pre code,
div.sourceCode pre code,
.sourceCode,
.sourceCode span,
code.sourceCode,
code.sourceCode span {
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
  font-size: inherit;
  background: transparent !important;
  padding: 0;
  color: #333 !important;
}

/* Syntax highlighting - light theme colors (with !important to override) */
.sourceCode .kw, code.sourceCode .kw { color: #007020 !important; font-weight: bold; }
.sourceCode .dt, code.sourceCode .dt { color: #902000 !important; }
.sourceCode .dv, code.sourceCode .dv { color: #40a070 !important; }
.sourceCode .bn, code.sourceCode .bn { color: #40a070 !important; }
.sourceCode .fl, code.sourceCode .fl { color: #40a070 !important; }
.sourceCode .ch, code.sourceCode .ch { color: #4070a0 !important; }
.sourceCode .st, code.sourceCode .st { color: #4070a0 !important; }
.sourceCode .co, code.sourceCode .co { color: #60a0b0 !important; font-style: italic; }
.sourceCode .ot, code.sourceCode .ot { color: #007020 !important; }
.sourceCode .al, code.sourceCode .al { color: #ff0000 !important; font-weight: bold; }
.sourceCode .fu, code.sourceCode .fu { color: #06287e !important; }
.sourceCode .er, code.sourceCode .er { color: #ff0000 !important; font-weight: bold; }
.sourceCode .wa, code.sourceCode .wa { color: #60a0b0 !important; font-weight: bold; font-style: italic; }
.sourceCode .cn, code.sourceCode .cn { color: #880000 !important; }
.sourceCode .sc, code.sourceCode .sc { color: #4070a0 !important; }
.sourceCode .vs, code.sourceCode .vs { color: #4070a0 !important; }
.sourceCode .ss, code.sourceCode .ss { color: #bb6688 !important; }
.sourceCode .im, code.sourceCode .im { color: #007020 !important; font-weight: bold; }
.sourceCode .cf, code.sourceCode .cf { color: #007020 !important; font-weight: bold; }
.sourceCode .op, code.sourceCode .op { color: #666666 !important; }
.sourceCode .bu, code.sourceCode .bu { color: #007020 !important; }
.sourceCode .pp, code.sourceCode .pp { color: #bc7a00 !important; }
.sourceCode .at, code.sourceCode .at { color: #7d9029 !important; }
.sourceCode .do, code.sourceCode .do { color: #ba2121 !important; font-style: italic; }
.sourceCode .an, code.sourceCode .an { color: #60a0b0 !important; font-weight: bold; font-style: italic; }
.sourceCode .cv, code.sourceCode .cv { color: #60a0b0 !important; font-weight: bold; font-style: italic; }
.sourceCode .in, code.sourceCode .in { color: #60a0b0 !important; font-weight: bold; font-style: italic; }

/* Inline code */
code {
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
  font-size: 0.9em;
  background-color: #f6f8fa;
  padding: 0.15em 0.3em;
  border-radius: 3px;
  color: #333;
}

/* Source code in executed cells */
.cell-code {
  margin-bottom: 0.5rem;
}

/* Output from code cells */
.cell-output {
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}

.cell-output pre {
  background-color: #fff !important;
  border: 1px solid #e1e4e8;
  color: #333 !important;
}

/* Table of contents */
.toc-title {
  color: var(--rotman-blue);
  font-weight: 600;
}

/* Footer info */
.notes-footer {
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px solid #ddd;
  font-size: 0.9em;
  color: #666;
}
