:root{--bg:#0f1216;--card:#171b21;--border:#262c35;--text:#e6e9ee;--muted:#9aa4b2;--accent:#4f9cf9;--good:#46c88a;--warn:#e0b341;--bad:#f2777a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}a{color:var(--accent)}.container{max-width:860px;margin:0 auto;padding:24px 16px 64px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px 18px;margin-bottom:14px}.row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.matchup{font-size:1.15rem;font-weight:650;white-space:nowrap}.matchup-group{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.first-pitch{font-size:.85rem;white-space:nowrap}.first-pitch,.probs{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.probs{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap}.probs b{color:var(--text)}.probs-row{margin-top:6px}.probs-label{color:var(--muted);font-size:.85rem;letter-spacing:.01em}.market-meta{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.edge,.ev{color:var(--muted);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.ev{border-left:1px solid var(--border);padding-left:14px}.result{font-size:.85rem;font-weight:600;white-space:nowrap}.result.hit{color:var(--good)}.result.miss{color:var(--muted)}.stale{opacity:.45;transition:opacity .12s ease-out}.page-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.page-header h1{margin:0;white-space:nowrap}.page-nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.page-nav a.current{color:var(--text);text-decoration:none;font-weight:600;border-bottom:2px solid var(--accent)}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}.toolbar input{width:auto;margin:0}.toolbar button{padding:8px 12px}.muted{font-size:.9rem}.factor,.muted{color:var(--muted)}.factor{display:grid;grid-template-columns:minmax(8rem,14rem) 1fr auto;align-items:center;grid-gap:10px;gap:10px;font-size:.92rem;margin:4px 0}.factor-label{color:var(--text)}.factor-bar{height:6px;background:#232a33;overflow:hidden}.factor-bar,.factor-bar .fill{display:block;border-radius:3px}.factor-bar .fill{height:100%}.factor-bar .fill.home{background:var(--accent)}.factor-bar .fill.away{background:#b98bdd}.factor-side{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.factor-weight{color:#6d7787;font-size:.82rem;margin-left:4px}button{background:var(--accent);color:#06101f;border:0;border-radius:8px;padding:8px 14px;font-weight:600;cursor:pointer}button.ghost{background:transparent;color:var(--accent);border:1px solid var(--border)}button:disabled{opacity:.5;cursor:default}button.linklike{background:none;border:0;padding:0;color:var(--accent);font:inherit;font-weight:inherit;text-decoration:underline;cursor:pointer}input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:#0c0f13;color:var(--text);margin:6px 0 12px}input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover{-webkit-box-shadow:inset 0 0 0 1000px #0c0f13;-webkit-text-fill-color:var(--text);caret-color:var(--text);border:1px solid var(--border)}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.error{color:var(--bad)}.error,.notice{font-size:.9rem}.notice{color:var(--warn);border-left:3px solid var(--warn);padding:2px 0 2px 12px}.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}.card:has(.metrics){overflow-x:auto}.metrics{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:10px 0}.metrics th{color:var(--muted);font-weight:500;font-size:.85rem;text-align:left;padding:4px 10px 6px 0}.metrics td{padding:5px 10px 5px 0;border-top:1px solid var(--border);white-space:nowrap}.metrics .num{text-align:right}.metrics caption{caption-side:top;text-align:left;padding-bottom:6px;font-size:.85rem}.metrics caption b{color:var(--text);font-weight:600}.den{color:#6d7787;font-size:.8rem}.summary .matchup{font-size:1.05rem}.summary.is-muted{opacity:.75}.tag{margin-left:8px;padding:1px 6px;border:1px solid var(--border);border-radius:999px;font-size:.7rem;color:var(--muted);vertical-align:middle;white-space:nowrap}.legend{margin:10px 0 0;line-height:1.7}.legend .tag{margin-left:0}.ahead,.ahead td{color:var(--good);font-weight:600}.disclaimer{margin-top:40px;padding-top:16px;border-top:1px solid var(--border);color:var(--muted);font-size:.8rem;line-height:1.55}.disclaimer p{margin:0 0 8px}.disclaimer p:last-child{margin-bottom:0}.disclaimer b{color:var(--text)}.explanation{margin-top:12px;padding:12px 14px;border-left:3px solid var(--good);background:#12181d;border-radius:6px}@media (max-width:430px){.container{padding:20px 12px 48px}h1{font-size:1.6rem}.card{padding:14px}.probs{gap:12px}.factor{grid-template-columns:1fr;gap:3px;margin:10px 0}.factor-bar{width:100%}.toolbar input{flex:1 1 auto}}@media (prefers-reduced-motion:reduce){.stale{transition:none}}