/* baseball-stealth shared styles */
:root {
  --bg:#0a0e14; --panel:#111721; --border:#1e2633; --accent:#5eead4;
  --accent2:#f4a261; --red:#f87171; --text:#dbe4ee; --muted:#7d8ca0;
}
* { margin:0; padding:0; box-sizing:border-box; }
body { background:var(--bg); color:var(--text);
  font-family:'SF Mono',ui-monospace,'Cascadia Code',Menlo,monospace; font-size:14px;
  -webkit-font-smoothing:antialiased; }
a { color:var(--accent); text-decoration:none; }
a:hover { text-decoration:underline; }
.wrap { max-width:1100px; margin:0 auto; padding:0 20px; }

/* nav */
nav { border-bottom:1px solid var(--border); position:sticky; top:0; background:rgba(10,14,20,.92);
      backdrop-filter:blur(6px); z-index:10; }
nav .wrap { display:flex; align-items:center; justify-content:space-between; height:56px; }
.logo { font-weight:700; font-size:1.05rem; color:var(--text); }
.logo em { color:var(--accent); font-style:normal; }
nav .links { display:flex; gap:22px; font-size:.85rem; }
nav .links a { color:var(--muted); }
nav .links a:hover, nav .links a.active { color:var(--accent); text-decoration:none; }

/* buttons + forms */
.btn { display:inline-block; padding:11px 22px; border-radius:8px; background:var(--accent);
       color:#06251f!important; font-weight:700; border:none; cursor:pointer; font-family:inherit; font-size:.95rem; }
.btn:hover { filter:brightness(1.12); text-decoration:none; }
.btn.ghost { background:transparent; color:var(--accent)!important; border:1px solid var(--accent); }
input[type=email] { padding:12px 16px; border-radius:8px; border:1px solid #30363d;
  background:#0d1117; color:var(--text); font-family:inherit; font-size:.95rem; width:min(320px,70vw); }
form.inline { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.form-msg { margin-top:10px; min-height:1.3em; font-size:.85rem; }
.ok-msg { color:var(--accent); } .err-msg { color:var(--red); }

/* tables */
table { width:100%; border-collapse:collapse; font-size:.82rem; }
th { text-align:left; color:var(--muted); font-weight:500; padding:8px 10px;
     border-bottom:1px solid var(--border); font-size:.68rem; letter-spacing:.08em; }
td { padding:7px 10px; border-bottom:1px solid #151c27; }
tr:last-child td { border-bottom:none; }
td.num, th.num { text-align:right; font-variant-numeric:tabular-nums; }
.pos { color:var(--accent); } .neg { color:var(--red); }

footer { border-top:1px solid var(--border); margin-top:64px; padding:28px 0 40px;
         color:var(--muted); font-size:.78rem; line-height:1.8; }

@media (max-width:720px){ nav .links{gap:14px;font-size:.75rem;} }
