:root {
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #e8edf8;
  background: #0c1424;
  line-height: 1.6;
  color-scheme: dark;
  --muted: #b4c1d7;
  --accent: #8ddcf1;
}
* { box-sizing: border-box; }
body { margin: 0; background: radial-gradient(ellipse at 90% 0%, #173e53 0%, transparent 55%); }
main { max-width: 1100px; margin: auto; padding: 4rem 1.5rem 2rem; }
header { max-width: 820px; margin-bottom: 2.5rem; }
.eyebrow, .step { font-size: .76rem; font-weight: 700; letter-spacing: .13em; color: var(--accent); }
h1 { font-size: clamp(2.3rem, 6vw, 4rem); line-height: 1.15; letter-spacing: -.04em; margin: 1rem 0; }
h1 span { color: var(--accent); }
h2 { font-size: 1.2rem; line-height: 1.35; }
p { margin: .8rem 0; }
.intro { color: var(--muted); font-size: 1.1rem; }
.endpoint, article { background: #132137ed; border: 1px solid #30455f; border-radius: 1rem; padding: 1.5rem; }
.section-heading { display: flex; gap: 1rem; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.section-heading h2 { margin: 0; }
.badge { border: 1px solid #4f879d; padding: .15rem .8rem; border-radius: 2rem; color: #abedff; font-size: .9rem; }
.facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.3rem 2rem; }
.facts dt { font-size: .8rem; color: var(--muted); }
.facts dd { margin: .15rem 0 0; font-size: 1.12rem; overflow-wrap: anywhere; font-family: ui-monospace, monospace; }
.wide { grid-column: 1 / -1; }
.muted, footer { color: var(--muted); font-size: .88rem; }
.signals { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0; }
article p { font-size: .92rem; color: var(--muted); }
a { color: var(--accent); text-underline-offset: .2em; }
a:hover { color: white; }
a:focus-visible { outline: 3px solid #e9cc76; outline-offset: 4px; border-radius: .15rem; }
.table-scroll { overflow-x: auto; }
table { border-collapse: collapse; width: 100%; text-align: left; font-size: .9rem; }
th, td { border-bottom: 1px solid #30455f; padding: .7rem; }
thead { color: var(--accent); }
tbody th { font-weight: 500; }
nav { display: flex; flex-wrap: wrap; gap: .8rem 1.5rem; margin: 1.8rem 0; }
footer { border-top: 1px solid #30455f; padding-top: 1.3rem; }
.warning { color: #ffd089; }
@media (max-width: 740px) {
  main { padding-top: 2rem; }
  .signals { grid-template-columns: 1fr; }
}
@media (max-width: 430px) {
  .facts { grid-template-columns: 1fr; }
  .endpoint, article { padding: 1rem; }
}
