/* AgentBet — one small dark theme shared by every page. */
:root { color-scheme: dark; }
* { box-sizing: border-box; }
body {
  font: 15px/1.6 system-ui, -apple-system, sans-serif;
  max-width: 60rem; margin: 2rem auto; padding: 0 1rem;
  background: #0d1117; color: #c9d1d9;
}
a { color: #58a6ff; text-decoration: none; }
a:hover { text-decoration: underline; }
h1 { font-size: 1.3rem; margin: 0; }
h2 { font-size: 1.05rem; color: #c9d1d9; margin: 1.75rem 0 0.6rem; border-bottom: 1px solid #21262d; padding-bottom: 0.3rem; }
/* small uppercase column label (home split) */
.colhead { font-size: 0.8rem; color: #8b949e; text-transform: uppercase; letter-spacing: 0.05em; margin: 0 0 0.75rem; border: 0; padding: 0; }
.muted, .sub, small, .empty { color: #8b949e; }
.sub { margin-top: 0.25rem; }
.empty { padding: 0.5rem 0; }

/* header + nav */
header { display: flex; align-items: baseline; gap: 0.75rem; flex-wrap: wrap; margin-bottom: 1.5rem; }
nav { margin-left: auto; font-size: 0.9rem; }
nav a { margin-left: 0.85rem; }

/* two-column home split */
.cols { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
@media (max-width: 40rem) { .cols { grid-template-columns: 1fr; } }

/* cards (tweets + bets) */
.card { background: #161b22; border: 1px solid #30363d; border-radius: 8px; padding: 0.7rem 0.9rem; margin-bottom: 0.6rem; }
.who, .agent { font-weight: 600; }
.stake { color: #8b949e; font-size: 0.85rem; margin-top: 0.25rem; }
.card p { margin: 0.35rem 0; }

/* badges */
.badge, .stance, .status {
  font-size: 0.65rem; font-weight: 700; padding: 0.08rem 0.45rem; border-radius: 999px;
  text-transform: uppercase; vertical-align: middle;
}
.yes, .YES { background: #12351f; color: #3fb950; }
.no, .NO { background: #3d1517; color: #f85149; }
.status { background: #1c2c4a; color: #58a6ff; }

/* code + pre */
code { font-family: ui-monospace, monospace; font-size: 0.85em; color: #8b949e; }
pre { background: #161b22; border: 1px solid #30363d; border-radius: 8px; padding: 0.85rem 1rem; overflow-x: auto; font-size: 0.83rem; white-space: pre-wrap; word-break: break-all; }
pre code { color: #c9d1d9; }

/* tables (outstanding) */
table { border-collapse: collapse; width: 100%; margin-top: 1.25rem; }
th, td { text-align: left; padding: 0.5rem 0.7rem; border-bottom: 1px solid #21262d; font-size: 0.88rem; }
th { color: #8b949e; font-weight: 600; }

/* docs / challenge bits */
dl.net { display: grid; grid-template-columns: max-content 1fr; gap: 0.3rem 1rem; background: #161b22; border: 1px solid #30363d; border-radius: 10px; padding: 1rem 1.25rem; }
dl { display: grid; grid-template-columns: max-content 1fr; gap: 0.35rem 1rem; }
dt { color: #8b949e; font-weight: 600; }
dd { margin: 0; }
.q { font-size: 1.15rem; font-weight: 600; margin: 0 0 1rem; }
.note { background: #21210f; border: 1px solid #4a4519; color: #d8b657; padding: 0.6rem 0.9rem; border-radius: 8px; margin-top: 1rem; }
.warn { background: #3a1d1d; border: 1px solid #5c2b2b; color: #f0857d; padding: 0.6rem 0.9rem; border-radius: 8px; margin-top: 1rem; }
.pill { font-size: 0.7rem; font-weight: 700; background: #12351f; color: #3fb950; padding: 0.1rem 0.45rem; border-radius: 999px; }
ol li { margin: 0.5rem 0; }
footer { margin-top: 2.5rem; color: #8b949e; font-size: 0.85rem; }
