/* cellreportR pkgdown — monochrome theme aligned with the package figures */

:root {
  --cr-fg:    #212121;
  --cr-bg:    #fafafa;
  --cr-line:  #e0e0e0;
  --cr-mute:  #666666;
  --cr-card:  #ffffff;
  --cr-cap:   #f0f0f0;
}

body, .navbar, .container, .container-xxl, .container-xl,
.container-lg, .container-md, .container-sm {
  font-family: system-ui, -apple-system, BlinkMacSystemFont,
               "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  color: var(--cr-fg);
  background: var(--cr-bg);
}

code, pre, kbd, samp, .pre {
  font-family: "SF Mono", Consolas, "Liberation Mono", Menlo, monospace;
}

h1, h2, h3, h4, h5, h6 {
  letter-spacing: 0.02em;
  font-weight: 600;
}

a, a:visited {
  color: var(--cr-fg);
  text-decoration: underline;
  text-underline-offset: 0.18em;
}
a:hover { color: #000000; text-decoration-thickness: 2px; }

.navbar {
  background: var(--cr-card) !important;
  border-bottom: 1px solid var(--cr-line);
}
.navbar .nav-link, .navbar .navbar-brand { color: var(--cr-fg) !important; }

.btn, .btn-primary, .btn-outline-primary {
  border-radius: 2px;
  border: 1px solid var(--cr-fg);
  background: var(--cr-card);
  color: var(--cr-fg);
}
.btn:hover, .btn-primary:hover, .btn-outline-primary:hover {
  background: var(--cr-fg);
  color: var(--cr-card);
}

pre, code {
  background: var(--cr-cap);
  border: 1px solid var(--cr-line);
  border-radius: 2px;
}
pre { padding: 0.75rem; overflow-x: auto; }
pre code { border: 0; padding: 0; background: transparent; }

table {
  border-collapse: collapse;
  width: 100%;
  display: block;
  overflow-x: auto;
}
table th {
  border-bottom: 2px solid var(--cr-fg);
  text-align: left;
  font-weight: 600;
}
table td, table th { padding: 0.4rem 0.6rem; }
table tr { border-bottom: 1px solid var(--cr-line); }
table tr:hover { background: var(--cr-cap); }

blockquote {
  border-left: 3px solid var(--cr-line);
  padding-left: 1rem;
  color: var(--cr-mute);
}

/* dark mode (pkgdown 2.x sets data-bs-theme on <html>) */
[data-bs-theme="dark"] {
  --cr-fg:    #e8e8e8;
  --cr-bg:    #121212;
  --cr-line:  #333333;
  --cr-mute:  #9e9e9e;
  --cr-card:  #1c1c1c;
  --cr-cap:   #242424;
}

[data-bs-theme="dark"] body {
  color: var(--cr-fg);
  background: var(--cr-bg);
}
[data-bs-theme="dark"] .navbar {
  background: var(--cr-card) !important;
  border-bottom: 1px solid var(--cr-line);
}
[data-bs-theme="dark"] .navbar .nav-link,
[data-bs-theme="dark"] .navbar .navbar-brand { color: var(--cr-fg) !important; }
[data-bs-theme="dark"] a, [data-bs-theme="dark"] a:visited { color: var(--cr-fg); }
[data-bs-theme="dark"] a:hover { color: #ffffff; }
[data-bs-theme="dark"] .btn,
[data-bs-theme="dark"] .btn-primary,
[data-bs-theme="dark"] .btn-outline-primary {
  border-color: var(--cr-fg);
  background: var(--cr-card);
  color: var(--cr-fg);
}
[data-bs-theme="dark"] .btn:hover,
[data-bs-theme="dark"] .btn-primary:hover,
[data-bs-theme="dark"] .btn-outline-primary:hover {
  background: var(--cr-fg);
  color: var(--cr-bg);
}
[data-bs-theme="dark"] pre,
[data-bs-theme="dark"] code {
  background: var(--cr-cap);
  border-color: var(--cr-line);
  color: var(--cr-fg);
}
[data-bs-theme="dark"] table th { border-bottom-color: var(--cr-fg); }
[data-bs-theme="dark"] table tr { border-bottom-color: var(--cr-line); }
[data-bs-theme="dark"] table tr:hover { background: var(--cr-cap); }
