
/* gwernish dark theme for chriswest.io */
:root{
  --bg:#0d0d0d;
  --fg:#e6e6e6;
  --muted:#b3b3b3;
  --link:#c8d8ff;
  --hair:#333;
  --maxw:62rem;
}

*{box-sizing:border-box}
html{font-size:16px;-webkit-text-size-adjust:100%}
body{
  margin:0 auto;
  padding:1.5rem 1rem 4rem 1rem;
  max-width:var(--maxw);
  background:var(--bg);
  color:var(--fg);
  font-family: "Charter", "Georgia", serif;
  line-height:1.65;
  text-rendering:optimizeLegibility;
}

/* Header / Nav */
header.site{
  display:flex; align-items:center; justify-content:space-between;
  border-bottom:1px solid var(--hair);
  padding-bottom:0.75rem; margin-bottom:1.25rem;
}
header.site .brand{
  font-size:1.75rem; font-weight:700; letter-spacing:0.03em;
}
header.site nav a{
  display:inline-block; margin-left:0.5rem; padding:0.35rem 0.75rem;
  border:1px solid var(--hair); color:var(--fg); text-decoration:none;
  background:transparent;
}
header.site nav a:hover{ background:#151515; }

/* Typography */
h1,h2,h3,h4{font-weight:700; line-height:1.25; margin:1.4rem 0 0.6rem}
h1{font-size:2rem}
h2{font-size:1.35rem}
h3{font-size:1.1rem}
.smallcaps{font-variant-caps: small-caps; letter-spacing:0.06em}

p, ul, ol, blockquote, figure{margin:0.9rem 0}
blockquote{
  margin-left:0; padding-left:1rem; border-left:3px solid var(--hair);
  color:var(--muted); font-style:italic;
}

/* Links */
a{color:var(--link); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:2px}
a:hover{ color:#fff; }

/* Section rules & headings */
.section{
  margin-top:2rem;
}
.section h2{
  padding-top:0.6rem; border-top:1px solid var(--hair);
  font-variant-caps: small-caps; letter-spacing:0.06em;
}

/* Post lists styled like gwern: star/arrow bullets + columns */
ul.linklist{ list-style:none; padding-left:0; margin:0.75rem 0 0}
ul.linklist li{ padding:0.35rem 0; border-bottom:1px dotted var(--hair) }
ul.linklist li:before{
  content:"✦"; display:inline-block; width:1.25rem; color:#8a8a8a;
}
.cols{ column-gap:2rem }
@media (min-width: 900px){
  .cols{ column-count:3 }
  .cols .column{ break-inside: avoid }
}

/* Helpers */
.post-meta{ color:var(--muted); font-size:0.95rem }
hr{ border:0; border-top:1px solid var(--hair); margin:1.75rem 0 }

/* Footnotes popover box (from existing js) */
.note-pop{
  position:absolute; max-width:24rem; background:#0f0f0f; border:1px solid var(--hair);
  box-shadow: 0 4px 24px rgba(0,0,0,.45); padding:0.8rem 0.9rem; border-radius:6px;
  z-index:9999; display:none; font-size:0.95rem;
}

/* Code blocks */
pre, code{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }
pre{ background:#111; border:1px solid var(--hair); padding:1rem; border-radius:4px; overflow:auto }

/* Footer */
footer.site{
  margin-top:2.5rem; padding-top:1rem; border-top:1px solid var(--hair);
  color:var(--muted); font-size:0.95rem;
}

/* Table of contents if used */
.toc{ background:#0f0f0f; border:1px solid var(--hair); border-radius:6px; padding:1rem; }
.toc h2{ margin-top:0; border:0; font-size:1rem; font-variant-caps: normal }

@media print{
  body{ background:white; color:black }
  header.site, footer.site, .toc{ display:none }
  a[href^="http"]::after{ content:" (" attr(href) ")"; font-size:0.85em }
}
