/**
 * TraceBase — shared Palantir Gotham–style tokens + base surface.
 * Used by: body.regional-portal (with regional/common/css/portal.css)
 *           body.tb-gotham-home (with css/home-gotham.css)
 */
html {
  -webkit-text-size-adjust: 100%;
}
body.regional-portal,
body.tb-gotham-home,
body.tb-tokyo-matrix,
body.tb-glossary {
  --gotham-void: #0a0c10;
  --gotham-surface: #161b22;
  --gotham-line: #30363d;
  --gotham-cyber: #00d4ff;
  --gotham-lime: #39ff14;
  --gotham-text: #c9d1d9;
  --gotham-text-dim: #8b949e;
  --gotham-glow-cyan: rgba(0, 212, 255, 0.45);
  --gotham-glow-lime: rgba(57, 255, 20, 0.35);
  --gotham-font-mono: "JetBrains Mono", "Roboto Mono", ui-monospace, monospace;
  --gotham-font-jp: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI",
    "Meiryo", "Noto Sans JP", sans-serif;
}

body.regional-portal,
body.tb-gotham-home,
body.tb-tokyo-matrix,
body.tb-glossary,
body.tb-logs {
  margin: 0;
  min-height: 100vh;
  font-family: var(--gotham-font-jp);
  font-size: 15px;
  color: var(--gotham-text);
  background-color: var(--gotham-void);
  background-image:
    linear-gradient(rgba(0, 212, 255, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 212, 255, 0.05) 1px, transparent 1px),
    radial-gradient(ellipse 120% 70% at 50% -15%, rgba(0, 212, 255, 0.06), transparent 50%);
  background-size: 24px 24px, 24px 24px, 100% 100%;
  background-attachment: fixed;
  -webkit-font-smoothing: antialiased;
}

body.regional-portal .visually-hidden,
body.tb-gotham-home .visually-hidden,
body.tb-tokyo-matrix .visually-hidden,
body.tb-glossary .visually-hidden,
body.tb-logs .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
