/* jholm.co v3 — shared retheme for content pages (loads after each page's inline CSS) */
:root {
  color-scheme: light;
  --bg: #ffffff; --bg-alt: #ffffff; --surface: #ffffff;
  --ink: #0a0a0a; --ink-soft: #222222; --muted: #333333; --muted-dark: #333333;
  --faint: #555555; --line: #0a0a0a; --line-dark: #0a0a0a; --line-ink: #0a0a0a;
  --accent: #0a0a0a; --accent-bright: #0a0a0a; --accent-deep: #0a0a0a;
  --accent-soft: transparent; --good: #2f9e44;
  --shadow: none; --shadow-hover: none; --radius: 0;
  --v3-accent: #d9ea5a; --v3-accent-deep: #c4d63e;
}
body {
  background: #ffffff !important; color: #0a0a0a !important;
  font-family: 'Space Grotesk', -apple-system, sans-serif !important;
}
::selection { background: #0a0a0a; color: #ffffff; }
h1, h2, h3 { font-family: 'Archivo', sans-serif !important; font-weight: 800 !important; letter-spacing: -0.03em !important; }
h1 { text-transform: lowercase; font-size: clamp(2.4rem, 6.5vw, 4rem) !important; line-height: 1.02 !important; }
h2 { text-transform: lowercase; }
a { color: #0a0a0a !important; text-decoration: underline; text-underline-offset: 3px; }
p { color: #333333 !important; }
p b, p strong, .lede b { color: #0a0a0a !important; }
.lede { color: #333333 !important; }
li { color: #333333 !important; }
li::before { color: #0a0a0a !important; }

nav {
  background: rgba(255,255,255,0.85) !important;
  border-bottom: 1px solid #0a0a0a !important;
  backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
}
.wordmark { color: #0a0a0a !important; font-family: 'Archivo', sans-serif !important; font-weight: 900 !important; }
.nav-back { color: #0a0a0a !important; font-family: 'Geist Mono', monospace !important; font-size: 0.78rem !important; }

.kicker, .tagline, .meta, .pill, .badge {
  font-family: 'Geist Mono', monospace !important; color: #0a0a0a !important;
  background: transparent !important; border-radius: 0 !important;
}
.kicker { border: 1.5px solid #0a0a0a; padding: 0.3rem 0.8rem !important; letter-spacing: 0.05em !important; }
.pill, .badge { border: 1.5px solid #0a0a0a !important; padding: 0.22rem 0.6rem !important; font-size: 0.72rem !important; }
.meta { border-top-color: #0a0a0a !important; }
.meta b { color: #0a0a0a !important; }
section { border-top-color: #0a0a0a !important; }

.cta, .btn, .btn-primary, .btn-repo {
  background: var(--v3-accent) !important; color: #0a0a0a !important;
  border: 2px solid #0a0a0a !important; border-radius: 0 !important;
  box-shadow: 4px 4px 0 #0a0a0a !important; font-weight: 700 !important;
  text-decoration: none !important;
  transition: transform 0.15s, box-shadow 0.15s, background 0.15s !important;
}
.cta:hover, .btn:hover, .btn-primary:hover, .btn-repo:hover {
  background: var(--v3-accent-deep) !important; color: #0a0a0a !important;
  transform: translate(-2px, -2px); box-shadow: 7px 7px 0 #0a0a0a !important;
}

pre {
  background: #ffffff !important; color: #0a0a0a !important;
  border: 2px solid #0a0a0a !important; border-radius: 0 !important;
  box-shadow: 4px 4px 0 #0a0a0a !important;
  font-family: 'Geist Mono', monospace !important;
}
code { font-family: 'Geist Mono', monospace !important; }
p code, li code { background: #ffffff !important; border: 1.5px solid #0a0a0a !important; border-radius: 0 !important; color: #0a0a0a !important; }
.tok-key { color: #c2410c !important; }
.tok-str { color: #2f9e44 !important; }
.tok-com { color: #777777 !important; font-style: italic; }
.ok { color: #2f9e44 !important; }

.callout {
  background: #ffffff !important; border: none !important;
  border-left: 4px solid #0a0a0a !important; border-radius: 0 !important;
  box-shadow: none !important;
}
.card, .stat {
  background: #ffffff !important; border: 2px solid #0a0a0a !important;
  border-radius: 0 !important; box-shadow: 4px 4px 0 #0a0a0a !important;
}
.glyph { border-radius: 0 !important; border: 2px solid #0a0a0a; box-shadow: 4px 4px 0 #0a0a0a !important; }
footer { color: #555555 !important; }
footer a { color: #0a0a0a !important; }
