/* Bull Pit world: the app's own "Trading Floor". Midnight terminal, gold for the leader,
   green and coral for up and down. Space Grotesk headlines, JetBrains Mono for every number. */
body.world-bullpit {
  --ink: #0b0f17; --night: #0e1420; --plate: #141b28; --plate-2: #111827;
  --line: #263044; --line-2: #2f3a52;
  --paper: #e8eaf0; --dim: #9aa3b5; --mute: #6b7488; --ivory: #e8eaf0;
  --accent: #f5b700; --accent-hi: #ffd54a; --brass: #f5b700; --brass-hi: #ffd54a; --brass-lo: #b38600;
  --up: #3ddc97; --down: #ff8a65;
  --serif: "Space Grotesk", system-ui, sans-serif;
  --sans: "Space Grotesk", system-ui, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
  --radius: 10px;
  background-color: #0b0f17;
  background-image: linear-gradient(rgba(38, 48, 68, .35) 1px, transparent 1px), linear-gradient(90deg, rgba(38, 48, 68, .35) 1px, transparent 1px);
  background-size: 80px 80px;
}
.world-bullpit .display { font-weight: 700; letter-spacing: -.045em; line-height: .9; font-size: clamp(46px, 8.6vw, 124px); text-transform: uppercase; }
.world-bullpit .h2 { font-weight: 700; letter-spacing: -.04em; line-height: .95; }
.world-bullpit em { font-style: normal; color: var(--accent); }
.world-bullpit .h3, .world-bullpit .shot h3, .world-bullpit .chron h3 { font-weight: 700; letter-spacing: -.02em; }
.world-bullpit .eyebrow { color: var(--up); letter-spacing: .12em; }
.world-bullpit .eyebrow::before { content: "\25B2"; width: auto; height: auto; background: none; font-size: 9px; opacity: 1; }
.world-bullpit .btn { border-radius: 8px; font-weight: 700; letter-spacing: .01em; }
.world-bullpit .btn-key { color: #1a1300; background: linear-gradient(180deg, #ffd54a, #f5b700); box-shadow: 0 0 0 1px #ffd54a inset, 0 10px 30px -10px rgba(245, 183, 0, .7); }
.world-bullpit .btn-glass { background: #141b28; border: 1px solid #2f3a52; }
.world-bullpit .card, .world-bullpit .shot { background: #141b28; border-color: #263044; }
.world-bullpit .shot .tag { color: var(--accent); }
.world-bullpit .chip { border-radius: 6px; font-family: var(--mono); font-size: 12px; background: #111827; }
.world-bullpit .chip .dot { background: var(--up); box-shadow: 0 0 10px var(--up); }
.world-bullpit .hero::after { background: linear-gradient(180deg, rgba(11, 15, 23, .55) 0%, transparent 30%, rgba(11, 15, 23, .2) 55%, #0b0f17 100%), linear-gradient(90deg, rgba(11, 15, 23, .8) 0%, transparent 62%); }
.world-bullpit .ticker { display: flex; gap: 0; overflow: hidden; border-block: 1px solid #263044; background: #0e1420; font-family: var(--mono); font-size: 13px; white-space: nowrap; }
.world-bullpit .ticker > div { display: flex; gap: 42px; padding: 12px 21px; animation: tape 34s linear infinite; flex: none; }
.world-bullpit .ticker b { color: #e8eaf0; font-weight: 700; } .world-bullpit .ticker .u { color: var(--up); } .world-bullpit .ticker .d { color: var(--down); }
@keyframes tape { to { transform: translateX(-100%); } }
html[data-calm] .world-bullpit .ticker > div { animation: none; }
/* Chronicle as an order book: each stage is a filled order. */
.world-bullpit .chron::before { left: 23px; background: #2f3a52; }
.world-bullpit .chron::after { left: 23px; background: linear-gradient(var(--up), var(--accent)); box-shadow: 0 0 10px var(--up); }
.world-bullpit .chron .node { border-radius: 8px; font-family: var(--mono); font-weight: 700; background: #111827; border-color: #2f3a52; }
.world-bullpit .chron li.lit .node { background: var(--up); border-color: var(--up); color: #062016; box-shadow: 0 0 0 5px rgba(61, 220, 151, .14), 0 0 24px rgba(61, 220, 151, .45); }
.world-bullpit .chron li.next .node { background: #111827; color: var(--accent); border-color: var(--accent); }
.world-bullpit .chron .stage { font-family: var(--mono); color: var(--up); }
.world-bullpit .cta-band { background: linear-gradient(135deg, rgba(245, 183, 0, .12), transparent 50%), #111827; border: 1px solid #263044; border-radius: 12px; }
.world-bullpit .next-app { border-color: #263044; }
.world-bullpit .dev { box-shadow: 0 0 0 1px rgba(255, 255, 255, .06) inset, 0 40px 90px -30px rgba(0, 0, 0, .8), 0 0 80px -30px rgba(245, 183, 0, .5); }
