/* The connector's pages on mcp.442ball.com: the site's tokens (apps/web/src/app/tokens.css), its two typefaces served
   from this host, no script, no cookie, no third party. */
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('/fonts/newsreader-latin.woff2') format('woff2');
}
@font-face {
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url('/fonts/ibm-plex-sans-latin.woff2') format('woff2');
}
:root {
  --charcoal: #16181d;
  --surface-dk: #1f232a;
  --line-dk: #2a2f37;
  --paper: #f7f5f1;
  --muted-dk: #9aa0a8;
  --red: #c8102e;
  --red-lift: #f25c66;
  --font-display: 'Newsreader', Georgia, 'Times New Roman', serif;
  --font-text: 'IBM Plex Sans', -apple-system, 'Segoe UI', Arial, sans-serif;
}
* { box-sizing: border-box; }
html { background: var(--charcoal); color: var(--paper); }
body {
  margin: 0;
  font-family: var(--font-text);
  font-size: 1rem;
  line-height: 1.65;
}
main { max-width: 760px; margin: 0 auto; padding: 32px 16px 64px; }
header.top { display: flex; align-items: center; gap: 14px; padding-bottom: 24px; border-bottom: 1px solid var(--line-dk); }
header.top img { width: 40px; height: auto; }
header.top a.brand { color: var(--paper); text-decoration: none; font-family: var(--font-display); font-weight: 700; font-size: 1.5rem; }
nav.links { margin-left: auto; display: flex; gap: 16px; font-size: 0.9375rem; }
nav.links a { color: var(--muted-dk); text-decoration: none; }
nav.links a:hover, nav.links a[aria-current='page'] { color: var(--paper); }
h1 { font-family: var(--font-display); font-weight: 700; font-size: clamp(2rem, 5vw, 3rem); line-height: 1.12; margin: 40px 0 12px; }
h2 { font-family: var(--font-display); font-weight: 700; font-size: 1.5rem; line-height: 1.3; margin: 44px 0 8px; }
h3 { font-size: 1rem; font-weight: 600; margin: 24px 0 4px; }
p.lede { color: var(--muted-dk); font-size: 1.125rem; margin: 0 0 8px; }
a { color: var(--red-lift); }
code, .url {
  font-family: 'IBM Plex Mono', ui-monospace, monospace;
  background: var(--surface-dk);
  border: 1px solid var(--line-dk);
  border-radius: 6px;
  padding: 2px 6px;
  font-size: 0.9375rem;
  overflow-wrap: anywhere;
}
.url { display: block; padding: 12px 14px; margin: 8px 0; }
table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 0.9375rem; }
th, td { text-align: left; vertical-align: top; padding: 10px 8px; border-bottom: 1px solid var(--line-dk); }
th { color: var(--muted-dk); font-weight: 600; }
td:first-child { white-space: nowrap; }
ul, ol { padding-left: 22px; }
li { margin: 4px 0; }
.card { background: var(--surface-dk); border: 1px solid var(--line-dk); border-radius: 12px; padding: 4px 20px 12px; margin: 16px 0; }
.mark { display: inline-block; width: 10px; height: 10px; border-radius: 2px; background: var(--red); margin-right: 8px; }
footer { margin-top: 56px; padding-top: 20px; border-top: 1px solid var(--line-dk); color: var(--muted-dk); font-size: 0.875rem; }
@media (max-width: 560px) {
  td:first-child { white-space: normal; }
  nav.links { gap: 12px; }
}
