html{scroll-behavior:smooth}body{margin:0}a{color:inherit}:root{color:#e8edf7;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--panel:#0c121feb;--panel-border:#7e95c429;--panel-soft:#141f34bd;--text-muted:#97a7c6;--text-faint:#6d7b95;--accent-soft:#6ea8ff1f;--shadow:0 16px 48px #00000047;background:radial-gradient(circle at top,#0c121f,#0000 58%),linear-gradient(#395491 0%,#0c121f 100%);font-family:Roboto,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.4}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button{font:inherit}h1,h2,h3,p,ol{margin:0}#root{min-height:100vh}.app-shell{width:calc(100vw - 26px);margin:0 auto;padding:135px 0 32px}@media (width<=640px){.app-shell{padding-top:100px}}.games-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.status-panel{border:1px solid var(--panel-border);background:var(--panel-soft);color:var(--text-muted);border-radius:18px;margin-top:14px;padding:20px}.status-panel--error{color:#ffb4b4}@media (width<=1220px){.games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.games-grid{grid-template-columns:1fr}}@media (width<=640px){.app-shell{width:min(100vw - 16px,1580px)}}.game-card{border:1px solid var(--panel-border);background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);cursor:pointer;grid-template-rows:140px minmax(0,1fr) auto;transition:border-color .15s;display:grid;overflow:hidden}.game-card:hover{border-color:#6ea8ff66}.game-card:focus-visible{outline-offset:2px;outline:2px solid #6ea8ff}.game-card__header{border-bottom:1px solid #7e95c41f;gap:2px;padding:16px;display:grid}.game-card__meta{color:var(--text-muted);margin:0 0 0 11px;font-size:.82rem}.game-card__meta--full{padding-top:2px}.game-card__meta--dh{margin-bottom:4px}.game-card__dh-badge{color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;background:#7e95c426;border-radius:4px;padding:1px 7px;font-size:.75rem;font-weight:600;display:inline-block}.game-card__body{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0;margin:0 0 4px;padding:14px 16px 12px;display:grid}.game-card__cta{text-align:right;color:var(--text-muted);letter-spacing:.02em;margin:0;padding:10px 16px 14px;font-size:.78rem;font-weight:600;transition:color .15s}@media (width<=640px){.game-card__cta{padding-left:12px;padding-right:12px}}.game-card:hover .game-card__cta{color:#6ea8ff}.split-header__teams{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (width<=640px){.game-card__header,.game-card__body{padding-left:12px;padding-right:12px}}.game-meta{border:1px solid var(--panel-border);background:var(--panel-soft);align-self:end;min-height:130px;margin:0 16px 16px;overflow:hidden}.game-meta span{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-size:.66rem}.game-meta strong{color:#f5f8ff;margin-top:3px;font-size:.82rem;display:block}.game-meta__weather{border-bottom:1px solid #7e95c41f;padding:10px 12px 9px}.game-meta__roof{text-transform:none;letter-spacing:normal;font-style:normal}.game-meta__bottom-row{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.game-meta__bottom-row>div{padding:10px 12px}.game-meta__bottom-row>div+div{border-left:1px solid #7e95c41f}@media (width<=640px){.game-meta{margin:0 12px 12px}}@media (width<=480px){.game-meta{min-height:113px}.game-meta strong{font-size:.72rem}.game-meta__weather{padding:5px 12px 8px}.game-meta__bottom-row>div{padding:5px 12px}}.team-column{border:1px solid var(--panel-border);background:linear-gradient(180deg, #0f192be6, var(--panel-soft));padding:12px}.pitcher-block{padding:6px 0 10px}.pitcher-block__name{color:#f5f8ff;font-size:.95rem;font-weight:600}.pitcher-block__stats{color:var(--text-muted);font-size:.82rem}.lineup-list{color:#e9eef9;gap:8px;margin:0;padding-left:0;font-size:.8rem;list-style:none;display:grid}.lineup-index{color:var(--text-faint);width:1.2rem;display:inline-block}.lineup-position{color:var(--text-muted)}.lineup-note{color:var(--text-muted);margin-top:auto;padding-top:10px;font-size:.82rem}@media (width<=480px){.pitcher-block{padding:6px 0 10px}.pitcher-block__name{font-size:.75rem}.pitcher-block__stats{font-size:.62rem}.lineup-list{gap:6px;font-size:.7rem}}.split-team-header{padding:12px}.split-team-header__top{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-size:.66rem}.split-team-header__row{align-items:center;gap:8px;margin-top:6px;display:flex}.split-team-header__row strong{letter-spacing:-.02em;font-size:1rem}.split-team-header__row span{color:var(--text-muted)}.team-logo-wrap{justify-content:center;align-items:center;width:36px;height:28px;display:flex}.team-logo{object-fit:contain;background:0 0;border:none;width:36px;height:28px;padding:0}.team-logo--fallback{color:#fff;background:#6ea8ff29;place-items:center;padding:0;font-size:.62rem;font-weight:700;display:none}.gd-page{background:var(--panel);color:#e9eef9;width:100%;padding-top:135px;padding-bottom:84px}@media (width<=640px){.gd-page{padding-top:92px;padding-bottom:71px}}.gd-close{border:1px solid var(--panel-border);color:#e9eef9;cursor:pointer;background:0 0;flex-shrink:0;align-items:center;gap:8px;height:36px;padding:0 14px;font-size:.82rem;font-weight:600;line-height:1;transition:background .2s,color .2s;display:inline-flex}.gd-close span{font-size:1rem}.gd-close:hover{color:#6ea8ff;background:#7e95c41f}.gd-close--floating{z-index:90;background:var(--panel);height:44px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);padding:0 18px;transition:background .2s,color .2s,-webkit-backdrop-filter .2s,backdrop-filter .2s;position:fixed;bottom:20px;right:20px}.gd-close--floating:hover{-webkit-backdrop-filter:blur(40px);background:#0c121f8c}@media (width<=640px){.gd-close--floating{bottom:12px;right:12px}}.gd-label{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-size:.66rem;display:block}.gd-matchup{border-bottom:1px solid var(--panel-border);align-items:center;gap:18px;padding:14px 20px 18px;display:flex}.gd-matchup__title{flex-direction:column;gap:4px;min-width:0;display:flex}.gd-matchup__teams{color:#f5f8ff;letter-spacing:-.02em;margin:0;font-size:1.4rem;font-weight:700;line-height:1}@media (width<=640px){.gd-matchup__teams{font-size:1.1rem}}.gd-matchup__at{color:var(--text-faint);margin:0 4px;font-weight:500}.gd-matchup__when{color:var(--text-muted);flex-wrap:wrap;gap:6px;font-size:.82rem;display:flex}.gd-matchup__when strong{color:#f5f8ff;font-weight:600}.gd-matchup__venue{color:var(--text-muted)}@media (width<=640px){.gd-matchup{gap:12px;padding:12px 12px 14px}.gd-matchup__date{display:none}.gd-matchup__when{gap:0}.gd-matchup__venue{flex-basis:100%}}.gd-columns{background:var(--panel-border);border-bottom:1px solid var(--panel-border);grid-template-rows:auto auto auto auto;grid-template-columns:1fr 1fr;column-gap:1px;display:grid}@media (width<=820px){.gd-columns{grid-template-rows:none;grid-template-columns:1fr}}.gd-team{background:linear-gradient(180deg, #0f192be6, var(--panel-soft));grid-template-rows:subgrid;grid-row:1/span 4;row-gap:14px;padding:14px 16px 16px;display:grid}@media (width<=820px){.gd-team{grid-row:auto;grid-template-rows:none}}.gd-team__header{border-bottom:1px solid #7e95c41f;align-items:center;gap:10px;padding-bottom:12px;display:flex}.gd-team__logo{width:36px;height:36px}.gd-team__name{color:#f5f8ff;letter-spacing:-.01em;font-size:1rem;font-weight:600}.gd-team__sub{color:var(--text-muted);font-size:.78rem}.gd-status{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:.9rem}.gd-status--error{color:#ffb4b4}.gd-empty{border:1px solid var(--panel-border);color:var(--text-muted);text-align:center;background:#141f348c;padding:14px;font-size:.82rem}.gd-meta__empty{color:var(--text-faint);font-size:.82rem}.gd-pitcher{grid-template-columns:72px 1fr;align-items:flex-start;gap:12px;display:grid}.gd-pitcher--empty{grid-template-columns:1fr;display:block}.gd-pitcher__tbd{color:var(--text-muted);margin-top:4px;font-size:.9rem;font-weight:600}.gd-pitcher__photo{object-fit:cover;border:1px solid var(--panel-border);background:#7e95c41a;border-radius:50%;width:72px;height:72px}.gd-pitcher__name{color:#f5f8ff;margin-top:4px;font-size:.95rem;font-weight:600;text-decoration:none;transition:color .2s;display:block}.gd-pitcher__name:hover{color:#6ea8ff}.gd-pitcher__photo-link{flex-shrink:0;display:block}.gd-pitcher__meta{color:var(--text-muted);margin-top:2px;font-size:.78rem}.gd-arsenal{gap:3px;margin:8px 0 0;padding:0;font-size:.75rem;list-style:none;display:grid}.gd-arsenal li{gap:8px;display:flex}.gd-arsenal__name{color:#e9eef9}.gd-arsenal__stats{color:var(--text-muted);font-variant-numeric:tabular-nums}.gd-table-wrap{gap:6px;display:grid}.gd-table{border-collapse:collapse;border:1px solid var(--panel-border);background:#141f348c;width:100%;font-size:.78rem}.gd-table th,.gd-table td{text-align:right;font-variant-numeric:tabular-nums;padding:6px 8px}.gd-table th{text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint);border-bottom:1px solid var(--panel-border);background:#7e95c40f;font-size:.66rem;font-weight:600}.gd-table tbody tr{transition:background .2s;position:relative}.gd-table tbody tr+tr td{border-top:1px solid #7e95c414}.gd-table tbody td,.gd-table tbody a,.gd-table .gd-table__pos{transition:color .2s}.gd-table tbody tr:hover{background:#7e95c40f}.gd-table tbody tr:hover td,.gd-table tbody tr:hover a,.gd-table tbody tr:hover .gd-table__pos{color:#6ea8ff}.gd-table__name{text-align:left!important}.gd-table__name a{color:#e9eef9;font-weight:600;text-decoration:none}.gd-table__name a:after{content:"";position:absolute;inset:0}.gd-table__pos{color:var(--text-faint);margin-left:6px;font-size:.7rem;font-weight:500}.gd-meta{background:var(--panel-border);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.gd-meta__cell{background:var(--panel-soft);color:#e9eef9;padding:10px 14px 12px;font-size:.78rem}.gd-meta__cell strong{color:#f5f8ff;margin-top:3px;font-size:.82rem;font-weight:600;display:block}.gd-meta__cell em{color:var(--text-faint);min-width:26px;font-size:.72rem;font-style:normal;font-weight:600;display:inline-block}.gd-meta__cell>div{margin-top:2px}@media (width<=720px){.gd-meta{grid-template-columns:repeat(2,1fr)}}.topbar{border:1px solid var(--panel-border);background:var(--panel);width:100%;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);z-index:99;align-items:flex-end;gap:16px;padding:18px 20px;display:flex;position:fixed;top:0;left:0}@media (width<=860px){.topbar{flex-wrap:wrap}}@media (width<=640px){.topbar{padding-left:12px;padding-right:12px}}.topbar__title{appearance:none;text-align:left;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;flex:1;padding:0}@media (width<=640px){.topbar__title{transform:translateY(-6px)}}.topbar h1{letter-spacing:-.05em;font-size:2.2rem;line-height:.96}@media (width<=640px){.topbar h1{font-size:1.6rem}}.topbar__kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);align-items:center;gap:6px;font-size:.66rem;display:inline-flex}.topbar__mark{width:14px;height:14px;transform:translateY(-2px)}.topbar__summary{max-width:560px;color:var(--text-muted);margin-top:8px;font-size:.92rem}@media (width<=640px){.topbar__summary{display:none}}.topbar__updated{color:var(--text-faint);font-size:.72rem;font-style:italic;position:absolute;top:12px;right:20px}@media (width<=640px){.topbar__updated{display:none}}.topbar__meta{grid-template-columns:auto auto;align-items:stretch;gap:6px;display:grid}.topbar__meta span{text-transform:uppercase;letter-spacing:.14em;color:var(--text-faint);font-size:.6rem}.topbar__meta div{border:1px solid var(--panel-border);background:var(--panel-soft);padding:0 15px 5px}@media (width<=400px){.topbar__meta div{padding:0 5px 5px}}@media (width<=640px){.topbar__meta div:first-child{background:0 0;border-color:#0000;padding-left:0;padding-right:0}}.topbar__meta strong{color:#f5f8ff;margin-top:2px;font-size:.78rem;display:block}
