/* ===== Cyber-Goth palette (matched to jeepjohn.com home / ai-vitals) =====
   neon green #39ff14 · acid lime #b6ff00 · cyan #00e5ff · violet #b388ff
   magenta #c026d3 · amber #ffab00 · deep black #050507 / #0b0d12        */
:root{
  --green:#39ff14; --lime:#b6ff00; --cyan:#00e5ff; --violet:#b388ff;
  --magenta:#c026d3; --amber:#ffab00; --ink:#d8ffe8; --dim:#9bb8a8;
  --bg:#050507; --panel:rgba(0,0,0,.7); --line:rgba(57,255,20,.18);
  --red:#ff7b6b;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:"Orbitron","Rajdhani","Eurostile","Consolas","Courier New",monospace;
  color:var(--ink); background:var(--bg); min-height:100vh; position:relative; isolation:isolate;
}
body::before{
  content:""; position:fixed; inset:0;
  background-image:url("/cathedral.jpg");
  background-size:cover; background-position:center; background-repeat:no-repeat;
  z-index:-2;
}
body::after{ /* dim wash so text stays legible over the cathedral */
  content:""; position:fixed; inset:0; background:rgba(5,5,7,.72); z-index:-1;
}
header{padding:18px 24px 10px;border-bottom:1px solid var(--line);text-align:center}
.glyph{color:var(--green);letter-spacing:.35em;font-weight:700;
  text-shadow:0 0 8px rgba(57,255,20,.7),0 0 24px rgba(57,255,20,.35)}
nav{margin-top:8px;font-size:.8rem}
nav a{color:var(--cyan);text-decoration:none}
nav a:hover{color:var(--lime);text-shadow:0 0 8px rgba(182,255,0,.6)}
main{max-width:1100px;margin:0 auto;padding:20px 16px 40px;text-align:left}
.ticker{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px}
.ticker .cell{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:10px 12px;
  box-shadow:0 0 12px rgba(57,255,20,.07) inset}
.ticker .k{color:var(--violet);font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}
.ticker .v{font-size:1.25rem;margin-top:2px;color:var(--green);text-shadow:0 0 8px rgba(57,255,20,.45)}
.ticker .d{font-size:.72rem;margin-top:2px}
.up{color:var(--red)} .down{color:var(--lime)} .flat{color:var(--dim)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:16px 18px;margin:14px 0}
h2{margin:0 0 12px;font-size:1rem;color:var(--amber);letter-spacing:.08em}
h3{margin:0 0 8px;font-size:.85rem;color:var(--ink)}
.src,.asof{color:var(--dim);font-weight:400;font-size:.7rem}
table{width:100%;border-collapse:collapse;font-size:.85rem}
td,th{padding:5px 8px;text-align:left;border-bottom:1px solid rgba(57,255,20,.1)}
th{color:var(--violet);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em}
tr:hover td{background:rgba(57,255,20,.05)}
.stations .best td{color:var(--lime)}
.note{color:var(--dim);font-size:.72rem}
.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:800px){.chart-grid{grid-template-columns:1fr}}
.chart-box canvas{width:100%;height:240px}
.footnotes ul{margin:0;padding-left:18px;color:var(--ink);opacity:.85;font-size:.75rem;line-height:1.5}
footer{max-width:1100px;margin:0 auto;text-align:center;color:var(--dim);font-size:.72rem;padding:14px;border-top:1px solid var(--line);background:var(--panel)}
