.live-state{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted);text-align:center;padding:24px}.live-state small{max-width:420px}.live-state button{border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:8px;padding:8px 14px;cursor:pointer}.live-state.is-error{color:#c43b4d}.live-batting-team,.live-pitching-team{margin-top:20px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.live-batting-row{display:grid;grid-template-columns:minmax(82px,1.4fr) repeat(var(--innings),minmax(24px,.55fr)) repeat(4,minmax(28px,.5fr));align-items:stretch;border-top:1px solid var(--line);font-size:10px}.live-batting-row>span,.live-batting-row>strong{display:flex;align-items:center;justify-content:center;min-width:0;padding:8px 2px;text-align:center;overflow-wrap:anywhere}.live-batting-row .live-player{align-items:flex-start;justify-content:center;flex-direction:column;padding-left:9px;text-align:left}.live-player small{color:var(--muted);font-size:8px}.live-batting-head,.live-pitching-head{background:var(--soft);color:var(--muted);font-weight:700}.live-pitching-team{margin-bottom:18px}.live-pitching-row{display:grid;grid-template-columns:minmax(90px,1.5fr) repeat(11,minmax(30px,.52fr));border-top:1px solid var(--line);font-size:10px}.live-pitching-row>span,.live-pitching-row>strong{display:flex;align-items:center;justify-content:center;padding:9px 2px;min-width:0}.live-pitching-row .live-player{align-items:flex-start;flex-direction:column;padding-left:9px}.live-summary{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.live-summary span{background:var(--soft);border-radius:8px;padding:12px 16px;color:var(--muted)}.live-summary b{color:var(--text);margin-left:8px}
.live-records-pager{align-items:center;gap:12px}.live-records-pager span{font-size:11px;color:var(--muted)}.live-records-pager button:disabled{opacity:.35;cursor:not-allowed}
.records-toolbar-right{display:flex;align-items:center;gap:18px}.records-season{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;font-weight:700}.records-season select{min-width:92px;padding:8px 28px 8px 10px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--ink);font:inherit;font-weight:700}[data-theme="dark"] .records-season select{background:#17212d;color:var(--ink)}
.records-filter{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;font-weight:700}.records-filter select{min-width:150px;max-width:210px;padding:8px 28px 8px 10px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--ink);font:inherit;font-weight:700}[data-theme="dark"] .records-filter select{background:#17212d;color:var(--ink)}
.record-sort{display:inline-flex;align-items:center;justify-content:center;gap:4px;width:100%;border:0;background:transparent;color:inherit;padding:0;font:inherit;font-weight:inherit;white-space:nowrap;cursor:pointer}.record-sort:hover,.record-sort.active{color:var(--blue)}.record-sort i{font-style:normal;font-size:10px;color:var(--blue)}
.live-game-summary{display:grid;gap:26px}.live-game-summary section>h3{margin:0 0 12px;font-size:15px}.summary-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.summary-highlight-grid>div{display:flex;min-width:0;flex-direction:column;gap:5px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.summary-highlight-grid span{color:var(--muted);font-size:9px;font-weight:700}.summary-highlight-grid b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.summary-highlight-grid small{color:var(--muted);font-size:10px}.summary-scoring{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:0;border:1px solid var(--line);border-radius:9px;overflow:hidden;list-style:none}.summary-scoring li{display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:42px;padding:0 13px;border-bottom:1px solid var(--line)}.summary-scoring li:nth-child(odd){border-right:1px solid var(--line)}.summary-scoring span{color:var(--muted);font-size:10px}.summary-scoring b{font-size:11px}.summary-scoring strong{color:var(--blue);font-size:11px}.summary-scoring .is-empty{display:flex;color:var(--muted)}[data-theme="dark"] .summary-highlight-grid>div{background:#1b2633}
.records-live-hero{padding:34px max(24px,calc((100vw - 1120px)/2)) 62px}.records-live-hero:after{display:none}.records-live-hero h1{font-size:32px;margin:10px 0 0}.records-live-hero p{margin-top:9px}.records-live-content{max-width:1120px;margin:-34px auto 80px;padding:0 24px}
.records-live-content .table-wrap{position:relative;overflow-x:auto;isolation:isolate;-webkit-overflow-scrolling:touch}.records-live-content table{border-collapse:separate;border-spacing:0}.records-live-content table th:nth-child(2),.records-live-content table td.player-cell{width:128px;min-width:128px;max-width:128px}.records-live-content table td.player-cell{display:table-cell}.records-player-lock{display:flex;align-items:center;gap:8px;min-width:0}.records-player-lock .avatar{width:32px;height:32px}.records-player-lock>span:last-child{min-width:0;max-width:80px}.records-player-lock b,.records-player-lock .player-sub{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.records-live-content table th:first-child,.records-live-content table td:first-child{position:sticky;left:0;z-index:4;width:48px;min-width:48px;max-width:48px;background:var(--white)}.records-live-content table th:nth-child(2),.records-live-content table td:nth-child(2){position:sticky;left:48px;z-index:4;background:var(--white);box-shadow:7px 0 9px -8px #101c2dcc}.records-live-content table th:first-child,.records-live-content table th:nth-child(2){z-index:6;background:#f8f9fa}.records-live-content tbody tr:hover td:first-child,.records-live-content tbody tr:hover td:nth-child(2){background:#f6f9fd}[data-theme="dark"] .records-live-content table th:first-child,[data-theme="dark"] .records-live-content table th:nth-child(2){background:#1b2633}[data-theme="dark"] .records-live-content table td:first-child,[data-theme="dark"] .records-live-content table td:nth-child(2){background:#17212d}
[data-theme="dark"] .records-live-content table,[data-theme="dark"] .records-live-content tbody,[data-theme="dark"] .records-live-content tbody tr{background:#17212d;color:#e7edf5}
[data-theme="dark"] .records-live-content tbody td,[data-theme="dark"] .records-live-content tbody td:first-child,[data-theme="dark"] .records-live-content tbody td:nth-child(2){background:#17212d;color:#e7edf5}
[data-theme="dark"] .records-live-content tbody td.rank,[data-theme="dark"] .records-live-content .player-sub{color:#97a4b3}
[data-theme="dark"] .records-live-content thead th,[data-theme="dark"] .records-live-content thead th:first-child,[data-theme="dark"] .records-live-content thead th:nth-child(2){background:#1b2633;color:#aeb8c5}
[data-theme="dark"] .records-live-content tbody tr:hover,[data-theme="dark"] .records-live-content tbody tr:hover td,[data-theme="dark"] .records-live-content tbody tr:hover td:first-child,[data-theme="dark"] .records-live-content tbody tr:hover td:nth-child(2){background:#1c2835;color:#f1f5f9}
@media(max-width:700px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  #app,.games-hero,.games-content,.game-layout,.game-list,.game-list-items,.scorecard{width:100%;max-width:100%;min-width:0}
  .games-content{padding-inline:10px}
  .records-live-hero{padding:28px 18px 55px}.records-live-hero h1{font-size:27px}.records-live-hero p{font-size:12px;line-height:1.5}
  .records-live-content{width:100%;max-width:100%;margin:-32px auto 80px;padding:0 10px}

  /* Keep the current date-strip design but constrain all seven days to the viewport. */
  .date-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;overflow:hidden}
  .date-nav button{min-width:0!important;width:auto;padding:10px 1px}
  .date-day b{font-size:16px}.date-day span{font-size:10px}

  /* Game cards intentionally use horizontal swipe on mobile. */
  .game-list-items{display:flex;overflow-x:auto;overflow-y:hidden;gap:9px;padding:0 0 8px;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
  .game-tile{width:82vw;max-width:290px;min-width:250px;flex:0 0 auto;margin-bottom:0;padding:13px;scroll-snap-align:start}
  .matchup{grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr)}
  .matchup>div{min-width:0}.matchup b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
  .game-meta{gap:8px;font-size:12px}.game-meta span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}
  .game-tile .score{display:flex;align-items:center;justify-content:center;min-width:58px;font-size:25px;line-height:1;white-space:nowrap;word-break:keep-all;flex-wrap:nowrap;font-variant-numeric:tabular-nums}

  .scorecard{overflow:hidden}.scorecard-top{gap:8px}.scorecard-top>div{min-width:0}.scorecard-top p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .score-summary{width:100%;padding:20px 8px;gap:4px}.score-team{width:min(30%,92px);min-width:0}.score-team b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.score-team .club-mark{width:42px;height:42px}.big-score{font-size:34px;white-space:nowrap}.big-score span{padding-inline:5px}

  .box-tabs{display:flex;align-items:stretch;gap:18px;padding:0 12px;width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .box-tabs button{flex:0 0 auto;min-width:max-content;white-space:nowrap;padding:13px 1px;font-size:12px;scroll-snap-align:start}

  .restored-line-score{width:100%;max-width:100%;overflow:hidden}.restored-line-score table{width:100%;min-width:0!important;table-layout:fixed}.restored-line-score th,.restored-line-score td{padding:9px 0;font-size:10px;line-height:1.15}.restored-line-score th:first-child,.restored-line-score td:first-child{width:72px;padding:5px 3px;font-size:9px;line-height:1.25;white-space:normal;word-break:keep-all}

  .box-section,.live-batting,.live-pitching{width:100%;max-width:100%;min-width:0;overflow:hidden;padding-inline:7px}
  .live-batting-team,.live-pitching-team{width:100%;max-width:100%;min-width:0}

  /* Batter sheet: player and totals stay fixed; only inning columns scroll. */
  .live-batting-team{position:relative;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .live-batting-team>.inning-team-head{position:sticky;left:0;z-index:8;width:100%}
  .live-batting-row{width:max-content;min-width:100%;grid-template-columns:60px repeat(var(--innings),64px) 34px 34px 38px 44px;font-size:11px}
  .live-batting-row>span,.live-batting-row>strong{min-width:0;padding:10px 2px;overflow:hidden;background:var(--white)}
  .live-batting-row .pa-result{min-height:38px;padding:5px 3px;font-size:13px;line-height:1.2;letter-spacing:-.04em;white-space:normal;overflow-wrap:anywhere}
  .live-batting-row.live-batting-head>span{font-size:10.5px;white-space:nowrap}
  .live-batting-row>strong{font-size:11px}
  .live-batting-row.live-batting-head>span{background:#f7f9fb}
  .live-batting-row>:first-child{position:sticky;left:0;z-index:5;box-shadow:5px 0 7px -7px #101c2d99}
  .live-batting-row>:nth-last-child(4){position:sticky;right:116px;z-index:4}
  .live-batting-row>:nth-last-child(3){position:sticky;right:82px;z-index:4}
  .live-batting-row>:nth-last-child(2){position:sticky;right:44px;z-index:4}
  .live-batting-row>:last-child{position:sticky;right:0;z-index:4;box-shadow:-5px 0 7px -7px #101c2d99}
  .live-batting-row.live-batting-head>:first-child,.live-batting-row.live-batting-head>:nth-last-child(-n+4){z-index:7;background:#f7f9fb}
  .live-batting-row .live-player{padding-left:5px}.live-batting-row .live-player b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.live-batting-row .live-player small{font-size:8px}
  /* Player and decision span both rows; the remaining 10 metrics flow 5 by 5. */
  .live-pitching-row{width:100%;grid-template-columns:64px 34px repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(32px,auto));font-size:11px}
  .live-pitching-row>span,.live-pitching-row>strong{min-width:0;padding:7px 1px;overflow:hidden;border-left:1px solid color-mix(in srgb,var(--line) 55%,transparent)}
  .live-pitching-row>:first-child{grid-column:1;grid-row:1/3}.live-pitching-row>:nth-child(2){grid-column:2;grid-row:1/3}
  .live-pitching-row .live-player{padding-left:5px;border-left:0}.live-pitching-row .live-player b{font-size:11px}.live-pitching-row .live-player small{font-size:8px}
  .live-pitching-row>strong:nth-child(n+8),.live-pitching-head>span:nth-child(n+8){border-top:1px dashed var(--line)}
  .live-batting-row .inning-avg{font-size:11.5px}.live-pitching-row .season-era{font-size:11px}
  .pitching-legend,.inning-legend,.line-score-legend{font-size:9px;line-height:1.5}
  .inning-team-head b,.live-batting-team .inning-team-head b,.live-pitching-team .inning-team-head b{font-size:12px}
  [data-theme="dark"] .live-batting-row>span,[data-theme="dark"] .live-batting-row>strong{background:#17212d}
  [data-theme="dark"] .live-batting-row.live-batting-head>span,[data-theme="dark"] .live-batting-row.live-batting-head>:first-child,[data-theme="dark"] .live-batting-row.live-batting-head>:nth-last-child(-n+4){background:#1b2633}
}
.team-logo-mark{overflow:hidden;background:transparent!important}.team-logo-mark img{display:none;width:100%;height:100%;object-fit:contain}.team-logo-mark.has-image img{display:block}.team-logo-mark.has-image i{display:none}.team-logo-mark i{display:grid;place-items:center;width:100%;height:100%;border-radius:inherit;color:#fff;font-style:normal;font-size:inherit;font-weight:800}
.game-tile .score{display:block;min-width:70px;white-space:nowrap;word-break:keep-all;font-variant-numeric:tabular-nums;letter-spacing:-.045em}
.game-tile .matchup{grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr)}
.live-batting-row .pa-result.pa-hit{background:#e5f0ff;color:#0759b8;font-weight:800;box-shadow:inset 0 -4px 0 #1672d4}
.live-batting-row .pa-result.pa-walk{background:repeating-linear-gradient(135deg,#fff4dd 0,#fff4dd 6px,#ffe6b5 6px,#ffe6b5 10px);color:#7a4700;font-weight:800;box-shadow:inset 0 0 0 1px #d68a16}
.live-batting-row .pa-result.pa-out{background:#f1f3f5;color:#4d5966;font-weight:650;outline:1px dashed #9aa4af;outline-offset:-3px}
[data-theme="dark"] .live-batting-row .pa-result.pa-hit{background:#163b68;color:#a9d2ff;box-shadow:inset 0 -4px 0 #4fa1ff}
[data-theme="dark"] .live-batting-row .pa-result.pa-walk{background:repeating-linear-gradient(135deg,#4b3513 0,#4b3513 6px,#62491e 6px,#62491e 10px);color:#ffd68a;box-shadow:inset 0 0 0 1px #e3a23d}
[data-theme="dark"] .live-batting-row .pa-result.pa-out{background:#28323d;color:#c5cbd2;outline-color:#778391}

@media(max-width:380px){
  .records-live-content table th:nth-child(2),.records-live-content table td.player-cell{width:116px;min-width:116px;max-width:116px}.records-player-lock .avatar{width:28px;height:28px}.records-player-lock>span:last-child{max-width:72px}
  .games-content{padding-inline:7px}.game-tile{width:84vw;min-width:238px;padding:11px}.club-mark{width:34px;height:34px}.game-tile .score{min-width:54px;font-size:23px}
  .game-meta{font-size:11px}.matchup b{font-size:12px}
  .score-summary{padding-inline:4px}.big-score{font-size:31px}.score-team b{font-size:12px}.score-team .club-mark{width:38px;height:38px}
  .box-tabs{gap:15px;padding-inline:10px}.box-tabs button{font-size:11px}
  .restored-line-score th,.restored-line-score td,.restored-line-score th:first-child,.restored-line-score td:first-child{font-size:9px}
  .live-pitching-row{font-size:10px;grid-template-columns:56px 30px repeat(5,minmax(0,1fr));grid-template-rows:repeat(2,minmax(31px,auto))}.live-pitching-row .live-player b{font-size:10px}.live-pitching-row .live-player small{font-size:7.5px}
  .live-batting-row{grid-template-columns:56px repeat(var(--innings),58px) 32px 32px 36px 42px;font-size:10.5px}
  .live-batting-row .pa-result{min-height:36px;font-size:12.5px;padding:5px 2px}
  .live-batting-row.live-batting-head>span{font-size:10px}
  .live-batting-row>:nth-last-child(4){right:110px}.live-batting-row>:nth-last-child(3){right:78px}.live-batting-row>:nth-last-child(2){right:42px}
  .live-batting-row .live-player b{font-size:10.5px}.live-batting-row .live-player small{font-size:8px}.live-batting-row .inning-avg{font-size:11px}.live-pitching-row .season-era{font-size:10px}
}
