/* schedule.css — 일정 탭(일별 행·월 달력). app.css 에서 주제별로 나눔; layout.html 이 base → … 순서로 전부 링크한다. */
  @media (max-width: 860px) {
    .sched .mon { gap: 6px; }
    .strip { max-width: 100%; }
  }
  .srow3.link { cursor: pointer; }
  .srow3.link:hover { background: #f7f9fc; }
  .srow3.playing.link:hover { background: #dfeafa; }
  .mon { position: relative; display: flex; align-items: center; justify-content: center; gap: 12px; padding: 12px 12px; font-size: 20px; font-weight: 800; }
  .mon > a { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; font-size: 24px; line-height: 1; color: var(--muted); border-radius: var(--r-round); } /* ‹ › : 테두리 없는 글자만 (일별·월별 토글 .vsw 는 .seg 알약) */
  .mon > a:hover { background: var(--surface-2); color: var(--navy); }
  .mon .datebtn { position: relative; display: inline-flex; align-items: center; gap: 5px; cursor: pointer; padding: 2px 6px; border-radius: var(--r-sm); }
  .mon .datebtn:hover { background: var(--surface-2); }
  .mon .datebtn input[type=date] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; border: 0; padding: 0; margin: 0; pointer-events: none; }
  .mon .vsw { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); height: 30px; } /* 일별 | 월별 보기: 랭킹의 시즌|이번 주와 같은 .seg 알약 */
  .mon .vsw a { padding: 0 10px; font-size: 13px; }
  .mon .todaybtn { display: inline-flex; align-items: center; height: 30px; padding: 0 11px; margin-left: 2px; border: 1px solid var(--line-strong); border-radius: var(--r-pill); font-size: 12px; font-weight: 700; color: var(--navy); background: #fff; width: auto; } /* ‹ 2026.09 › 오른쪽: 오늘로 바로 이동 */
  .mon .todaybtn:hover { background: var(--surface-2); }
  .mon .todaybtn.on { color: var(--muted); border-color: var(--line); background: var(--surface); pointer-events: none; } /* 이미 오늘이면 흐리게 */
  .mon .tsel { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); } /* 구단 필터: 왼쪽 끝 (오른쪽 끝의 일별|월별 토글과 대칭) */
  .mon .tsel select { height: 30px; font-size: 13px; }
/* 구단 보기(.cal.team): PC 는 전체 보기와 같은 '홈 vs 원정' 줄(.cg)에 점수 색만 그 구단 승/패로, 모바일은 .tg(상대 로고·홈/원정·점수)로 7열에 맞춤 */
  .cal-d .cg.tw { background: #e6f5ea; }
  .cal-d .cg.tl { background: var(--red-bg); }
  .cal-d .cg.tw .m b { color: var(--green); }
  .cal-d .cg.tl .m b { color: var(--red); }
  .cal.team .cal-d .cg.playing { background: #eaf2fd; }
  .cal.team .cal-d .tg { display: none; }
  .cal-d .tg { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 4px; margin: 2px 0 0; padding: 4px 5px; border-radius: 6px; line-height: 1.25; background: #f4f6f9; }
  .cal-d .tg.w { background: #e6f5ea; }
  .cal-d .tg.l { background: var(--red-bg); }
  .cal-d .tg.playing { background: #eaf2fd; }
  .cal-d .tg.cancelled { background: var(--surface); color: var(--muted); }
  .cal-d .tg.cancelled .opp { text-decoration: line-through; }
  .cal-d .tg .opp { display: flex; align-items: center; gap: 4px; min-width: 0; white-space: nowrap; overflow: hidden; font-weight: 700; font-size: 12px; }
  .cal-d .tg .opp .on { overflow: hidden; text-overflow: ellipsis; }
  .cal-d .tg .ha { flex: none; font-style: normal; font-size: 10px; line-height: 1.3; color: var(--muted); border: 1px solid var(--line-strong); border-radius: var(--r-sm); padding: 0 3px; }
  .cal-d .tg .ha.home { color: var(--blue); border-color: var(--blue); }
  .cal-d .tg .logo { width: 20px; height: 20px; flex: 0 0 20px; font-size: 7px; }
  .cal-d .tg .m { font-size: 11px; color: var(--muted); font-variant-numeric: tabular-nums; white-space: nowrap; }
  .cal-d .tg .m b { color: var(--text); font-size: 13px; }
  .cal-d .tg.w .m b { color: var(--green); }
  .cal-d .tg.l .m b { color: var(--red); }
  .cal-d .tg .m em { font-style: normal; }
  .cal-d .tg .m .live { color: var(--red); }
  .cal-d .tg .m i { color: var(--red); font-style: normal; font-size: 10px; }
  .sched .remain { padding: 8px 14px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: #f8fafd; font-size: 13px; color: var(--text); line-height: 1.5; } /* 구단 보기: 잔여 경기 요약 */
  .sched .remain a { color: var(--blue); font-weight: 700; }
  .sched .remain .nx { white-space: nowrap; } /* '다음 경기: …' 는 한 덩어리로 (중간에서 안 끊김) */
  @media (max-width: 700px) {
    .sched .remain { padding: 7px 10px; font-size: 12px; }
    .sched .remain .nx { display: block; margin-top: 2px; } /* 모바일: 다음 경기는 둘째 줄에 */
    .sched .remain .nx .sep { display: none; }
  }
/* 월별 달력 */
/* 월별 달력: 경기마다 상자 테두리를 두르지 않고 한 줄(홈 · 점수/시각 · 원정)로, 적중/실패는 점수 색으로만. 오늘은 날짜 숫자를 남색 원, 고른 날은 남색 테두리 */
  .cal { padding: 8px 10px 4px; }
  .cal-h { display: grid; grid-template-columns: repeat(7, 1fr); text-align: center; font-size: 12px; font-weight: 700; color: var(--muted); padding: 6px 0; border-bottom: 1px solid var(--line); }
  .cal-h .sun { color: var(--red); }
  .cal-h .sat { color: var(--blue); }
  .cal-w { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); border-bottom: 1px solid var(--line); }
  .cal-d { display: block; min-height: 108px; padding: 6px 5px 8px; border-right: 1px solid var(--line); color: var(--text); font-size: 12px; min-width: 0; overflow: hidden; }
  .cal-d:last-child { border-right: none; }
  .cal-d.empty { background: var(--surface); }
  .cal-d .dn { display: flex; align-items: center; gap: 4px; margin: 0 0 4px; }
  .cal-d .dn b { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; padding: 0 4px; border-radius: 11px; font-weight: 700; font-size: 13px; }
  .cal-d .dn small { font-size: 10px; color: var(--navy); font-weight: 700; }
  .cal-d.sun .dn b { color: var(--red); }
  .cal-d.sat .dn b { color: var(--blue); }
  .cal-d.today .dn b { background: var(--navy); color: #fff; }
  .cal-d.today { background: #f3f7fd; }
  .cal-d.on { box-shadow: inset 0 0 0 2px var(--navy); }
  .cal-d:hover { background: var(--surface-2); }
  .cal-d .cg { display: grid; grid-template-columns: 1fr 44px 1fr; align-items: center; gap: 3px; margin: 1px 0; padding: 2px 3px; border-radius: 4px; line-height: 1.25; }
  .cal-d .cg .a, .cal-d .cg .h { display: flex; align-items: center; gap: 3px; min-width: 0; white-space: nowrap; overflow: hidden; font-weight: 600; font-size: 12px; }
  .cal-d .cg .a { justify-content: flex-end; }
  .cal-d .cg .logo { width: 18px; height: 18px; flex: 0 0 18px; font-size: 7px; }
  .cal-d .cg .m { text-align: center; font-size: 11px; color: var(--muted); font-variant-numeric: tabular-nums; }
  .cal-d .cg .m b { color: var(--text); font-size: 12px; }
  .cal-d .cg .m em { font-style: normal; }
  .cal-d .cg .m .pk { display: block; font-size: 10px; line-height: 1.1; color: var(--muted); font-weight: 500; }   /* 구단 보기: 시각 밑 구장 (10/14) */
  .cal-d .cg .m .live { color: var(--red); }
  .cal-d .cg .m i { color: var(--red); font-style: normal; font-size: 10px; }
  .cal-d .cg.hit .m b { color: var(--green); }
  .cal-d .cg.miss .m b { color: var(--red); }
  .cal-d .cg.cancelled { color: var(--muted); }
  .cal-d .cg.cancelled .a, .cal-d .cg.cancelled .h { text-decoration: line-through; }
  .cal-d .cnt { display: none; }
  /* 전체 보기 한 줄 (10/15): 구장 | 홈 | 점수 | 원정 — 로고 없이 이름만 */
  .cal-d .cg.ln { grid-template-columns: 26px minmax(0, 1fr) 40px minmax(0, 1fr); gap: 4px; margin: 0; padding: 3px 2px; border-radius: 0; }
  .cal-d .cg.ln + .cg.ln { border-top: 1px solid #eef1f5; }
  .cal-d .cg.ln .pk { font-size: 11px; color: var(--muted); white-space: nowrap; overflow: hidden; }
  .cal-d .cg.ln .a, .cal-d .cg.ln .h { font-size: 13px; font-weight: 600; color: var(--text); }
  .cal-d .cg.ln .w { font-weight: 800; }
  .cal-d .cg.ln .lo { color: #7d8492; font-weight: 500; }
  .cal-d .cg.ln .m, .cal-d .cg.ln .m b { font-size: 13px; }
  .cal-d .cg.ln .m b { font-weight: 800; }
  .cal-d .cg .m b.w, .cal-d .pg .pw b.w { color: var(--blue); }   /* 이긴 팀 점수만 파랑 */
  .cal-d .cg.ln.cancelled .a, .cal-d .cg.ln.cancelled .h { color: var(--muted); }
  /* 포스트시즌 칸 (10/15): 단계 칩 옆 차전, 팀 크게, 점수·시각 · 구장 한 줄, 미정 팀은 점선 상자 */
  .cal-d .dn .sno { font-style: normal; font-size: 12px; font-weight: 700; color: var(--navy); white-space: nowrap; }
  .cal-d .pg { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; column-gap: 8px; padding: 6px 4px 2px; line-height: 1.3; }   /* 왼쪽 시각·구장 | 오른쪽 대진 (10/15) */
  .cal-d .pg .pt { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 3px 6px; font-size: 15px; font-weight: 800; color: var(--text); }
  .cal-d .pg .pt em { font-style: normal; font-size: 12px; font-weight: 500; color: var(--muted); }
  .cal-d .pg .pt .lo { color: #7d8492; font-weight: 600; }
  .cal-d .pg .pt .tbd { font-size: 12.5px; font-weight: 700; color: var(--muted); border: 1.5px dashed var(--line-strong); border-radius: 6px; padding: 0 6px; white-space: nowrap; }
  .cal-d .pg .pw { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; padding-right: 8px; border-right: 1px solid var(--line); font-size: 13px; color: var(--text); font-variant-numeric: tabular-nums; white-space: nowrap; }
  .cal-d .pg .pw small { font-size: 11.5px; color: var(--muted); font-weight: 500; }
  .cal-d .pg .pw b { color: var(--text); font-weight: 800; }
  .cal-d .pg .pw .tt { color: var(--blue); } .cal-d .pg .pw .live, .cal-d .pg .pw i { color: var(--red); font-style: normal; font-weight: 700; }
  .cal-d .pg.cancelled .pt { color: var(--muted); text-decoration: line-through; }
  @media (max-width: 700px) {
    .sched .mon { gap: 4px; }
    .sched .mon { flex-wrap: wrap; row-gap: 6px; }
    .sched .mon::after { content: ""; flex-basis: 100%; height: 0; order: 1; } /* 줄바꿈: 토글은 다음 줄 가운데 (제목 줄과 안 겹치게) */
    .sched .mon .vsw { position: static; transform: none; order: 2; height: 28px; }
    .sched .mon .vsw a { padding: 0 9px; font-size: 12px; }
    .cal { padding: 6px 2px 2px; }
    .cal-d { min-height: 60px; padding: 3px 1px 4px; }
    .cal-d .dn { margin: 0 0 2px; gap: 2px; }
    .cal-d .dn b { min-width: 18px; height: 18px; font-size: 12px; padding: 0 3px; }
    .cal-d .dn small { display: none; }
    .cal-d { min-height: 52px; display: flex; flex-direction: column; align-items: center; } /* 모바일: 7열엔 팀 이름이 안 들어가므로 날짜 + 경기 수만 (누르면 그날 일별) */
    .cal-d .cg, .cal-d .pg, .cal-d .dn .sno { display: none; }
    .cal-d .cnt { display: inline-block; margin-top: 2px; padding: 2px 5px; border-radius: 9px; font-size: 10px; font-weight: 700; background: var(--blue-light); color: var(--blue); white-space: nowrap; }
    .cal-d .cnt.done { background: var(--hover); color: var(--muted); }
    .cal-d .cnt.live { background: var(--red); color: #fff; }
    .sched .mon .tsel { position: relative; left: auto; top: auto; transform: none; order: 2; margin-right: auto; } /* 모바일 둘째 줄: 구단은 왼쪽 끝 (relative 유지 — ▾ 가 셀렉트 안에 붙게) */
    .sched .mon .vsw { order: 3; margin-left: auto; } /* 일별|월별은 오른쪽 끝 */
    .sched .mon .todaybtn { height: 28px; padding: 0 9px; font-size: 12px; }
    .sched .mon .tsel select { height: 28px; font-size: 12px; padding: 0 22px 0 9px; }
    .sched .mon .tsel::after { right: 9px; }
    .cal.team .cal-d { min-height: 64px; align-items: stretch; padding: 3px 2px 4px; }
    .cal.team .cal-d .cg { display: none; }
    .cal.team .cal-d .tg { display: flex; }
    .cal.team .cal-d .dn { justify-content: center; }
    .cal-d .tg { display: flex; flex-direction: column; align-items: center; gap: 1px; padding: 3px 1px; margin-top: 1px; }
    .cal-d .tg .opp { flex-direction: column; gap: 1px; font-size: 10px; white-space: nowrap; }
    .cal-d .tg .opp .on { display: none; } /* 7열엔 이름이 안 들어가 로고로만 (로고에 약칭) */
    .cal-d .tg .ha { font-size: 9px; padding: 0 2px; }
    .cal-d .tg .logo { width: 22px; height: 22px; flex-basis: 22px; font-size: 8px; }
    .cal-d .tg .m { font-size: 10px; }
    .cal-d .tg .m b { font-size: 12px; }
  }
/* 날짜 띠: 스크롤바는 숨기고(양 끝 흐림으로 더 있음을 표시) 고른 날은 남색 알약, 오늘은 숫자 아래 점 */
  .strip { display: flex; gap: 2px; overflow-x: auto; border-bottom: 1px solid var(--line); padding: 6px 10px 8px; scrollbar-width: none; -webkit-mask-image: linear-gradient(to right, transparent, #000 18px, #000 calc(100% - 18px), transparent); mask-image: linear-gradient(to right, transparent, #000 18px, #000 calc(100% - 18px), transparent); }
  .strip::-webkit-scrollbar { display: none; }
  .strip a { flex: 0 0 48px; text-align: center; padding: 6px 0 5px; color: var(--muted); border-radius: 8px; transition: background .12s; }
  .strip a:hover { background: var(--surface-2); }
  .strip a .wd { font-size: 11px; display: block; line-height: 1.2; }
  .strip a .dn { font-size: 16px; font-weight: 700; display: block; color: var(--text); line-height: 1.3; }
  .strip a.sun .wd, .strip a.sun .dn { color: var(--red); }
  .strip a.sat .wd, .strip a.sat .dn { color: var(--blue); }
  .strip a.off .dn { color: #c3c9d3; }
  .strip a.today .dn { position: relative; }
  .strip a.today .dn::after { content: ""; position: absolute; left: 50%; bottom: -4px; width: 4px; height: 4px; margin-left: -2px; border-radius: 50%; background: var(--blue); }
  .strip a.on { background: var(--navy); }
  .strip a.on .wd, .strip a.on .dn, .strip a.on.sun .wd, .strip a.on.sun .dn, .strip a.on.sat .wd, .strip a.on.sat .dn, .strip a.on.off .dn { color: #fff; }
  .strip a.on.today .dn::after { background: #fff; }
  .strip a.on .wd { color: #c9d8f5; font-weight: 700; }
  .strip a.today .wd { font-size: 0; } .strip a.today .wd::before { content: "오늘"; font-size: 11px; font-weight: 700; color: var(--blue); }   /* 오늘 칸은 요일 대신 '오늘' (좁은 칸에 '오늘 월'이 꽉 차던 문제) */
  .strip a.on.today .wd::before { color: #fff; }
  .strip a.today { display: block; padding: 6px 0 5px; margin-top: 0; margin-bottom: 0; }   /* 공통 탭 영역 넓히기(a.today, 예측판 '오늘' 링크용)가 날짜 칸까지 8px 키우던 것 되돌림 */
  .sched { max-width: 980px; width: 100%; box-sizing: border-box; margin: 0 auto; justify-self: center; } /* margin:auto인 grid 항목은 fit-content가 되어 모바일에서 넘치므로 width 지정 */
  .sched.wide { max-width: 1320px; }
/* 일정 행(경기 상세 머리 줄 #ghead 도 같은 구조): 시각·구장 | 홈 팀명·투수 [로고] 점수 | 상태 | 점수 [로고] 원정 팀명·투수 | 링크 — 예측판처럼 상태 배지를 가운데 둔 거울 배치 — 로고·팀명 칸이 양쪽 같은 폭이라 가운데까지 거리가 홈·원정 같다. 남는 폭은 바깥쪽(1fr) */
  .srow3 { display: grid; grid-template-columns: 110px 1fr 130px 34px 40px 64px 40px 34px 130px 1fr 110px; align-items: center; gap: 10px; padding: 12px 14px; border-bottom: 1px solid var(--line); }
  .srow3 > * { grid-row: 1; }
  .srow3 .when { grid-column: 1; }
  .srow3 .sd.home { grid-column: 3; }
  .srow3 .lg.home { grid-column: 4; }
  .srow3 .sd.home + .sc { grid-column: 5; }
  .srow3 .st { grid-column: 6; }
  .srow3 .st + .sc { grid-column: 7; }
  .srow3 .lg:not(.home) { grid-column: 8; }
  .srow3 .sd.away { grid-column: 9; }
  .srow3 .act { grid-column: 11; }
  .srow3 .act { text-align: right; }
  .srow3 .act a { display: inline-block; font-size: 13px; color: var(--blue); border: 1px solid var(--line-strong); border-radius: var(--r-sm); padding: 4px 10px; }
  .srow3 .when { display: flex; flex-wrap: wrap; align-items: baseline; column-gap: 12px; } /* 포스트시즌 배지는 다음 줄로 (110px 칸 밖으로 넘치고 구장명이 세로로 접히던 것) */
  .srow3 .when small { white-space: nowrap; }
  .srow3 .when b { font-size: 14px; }
  .srow3 .when small { color: var(--muted); font-size: 13px; }
  .srow3 .sd { display: flex; flex-direction: column; gap: 2px; min-width: 0; align-items: flex-start; text-align: left; }
  .srow3 .sd.home { align-items: flex-end; text-align: right; } /* 홈은 로고 쪽(오른쪽)으로 붙여 정렬 — 원정의 거울 */
  .srow3 .sd .nm .home-tag { margin-right: 5px; vertical-align: 2px; }
  .srow3 .sd .nm { font-weight: 800; font-size: 15px; white-space: nowrap; }
  .srow3 .sd .pit { font-size: 13px; color: var(--muted); white-space: normal; max-width: 100%; line-height: 1.3; }
  .srow3 .sd .pit .p { white-space: nowrap; } /* 선발 · 현재 투수: 칸이 모자라면 투수 사이에서만 줄바꿈 (이름은 안 잘림) */
  .srow3 .sd .pit .p.w { color: var(--text); font-weight: 700; }
  .srow3 .sd .pit .p.cur { color: var(--red); }
  .srow3 .sd .pit .p + .p::before { content: " · "; color: var(--muted); font-weight: 400; }
  .srow3 .home-tag, .gpage .home-tag { font-style: normal; font-size: 11px; color: var(--blue); border: 1px solid var(--blue); border-radius: var(--r-sm); padding: 0 4px; vertical-align: 1px; font-weight: 700; } /* 경기 상세(박스스코어·라인업)도 같은 '홈' 배지 */
  .srow3 .lg { display: flex; justify-content: center; }
  .srow3 .lg .logo { width: 34px; height: 34px; flex-basis: 34px; }
  .srow3 .sc { text-align: center; font-size: 20px; font-weight: 800; color: var(--muted-2); font-variant-numeric: tabular-nums; }   /* 진 팀 점수는 흐리게 — 다만 테두리색(1.62:1)은 숫자가 안 읽혔다 (10/11 전수 검수) */
  .srow3 .sc.won { color: var(--text); }
  .srow3.scheduled .sc, .srow3.playing .sc { color: var(--text); }
  .srow3 .st { text-align: center; }
  .srow3 .st .sb { display: inline-block; font-size: 12px; padding: 2px 8px; border-radius: var(--r-sm); background: var(--hover); color: var(--muted); font-weight: 700; white-space: nowrap; }
  .srow3 .st .sb.live { background: var(--red); color: #fff; }
  .srow3 .st .sb.pre { background: var(--blue-light); color: var(--blue); }
  .srow3 .st .sb.cancel { background: var(--red-bg); color: var(--red); }
/* 행 배경 = 경기 상태 (경기 탭 카드와 같은 규칙): 예정 흰색 · 진행 중 연한 파랑 + 파란 띠 · 연장 진한 파랑 + 남색 띠 · 종료 옅은 회색. 상태 배지는 그대로 */
  .srow3.playing { background: #eaf2fd; box-shadow: inset 4px 0 0 var(--blue); }
  .srow3.playing.extra { background: #d9e6fb; box-shadow: inset 4px 0 0 var(--navy); } /* 연장(10회~): 같은 파랑을 한 단계 진하게 */
  .srow3.playing.extra.link:hover { background: #cfdff9; }
  .srow3.finished, .srow3.cancelled { background: #f1f3f6; }   /* 취소도 끝난 경기와 같은 회색 바탕 */
  .srow3.finished.link:hover, .srow3.cancelled.link:hover { background: #e8ebf0; }
/* 모바일: '홈' 배지가 없으므로 홈 쪽을 거울로 — [팀명·선발][로고] 점수 예정 점수 [로고][팀명·선발]. 양쪽 여백(1fr)이 같아 상태 배지를 가운데 두고 대칭 */
  @media (max-width: 700px) {
    .srow3 { grid-template-columns: 36px 0 minmax(0, 1fr) 26px 22px 42px 22px 26px minmax(0, 1fr) 36px; gap: 2px; padding: 9px 6px; } /* 오른쪽 끝 36px = 왼쪽 시간 칸과 같은 폭(빈 칸) — 점수·상태가 화면 가운데 (전엔 오른쪽으로 치우침) */ /* 팀 칸은 남는 폭을 나눠 가짐(고정 64px 이면 360px 에서 원정 투수명이 잘림) */
    .srow3 .act { display: none; }
    .srow3 .lg.home { grid-column: 4; justify-content: flex-end; } /* 로고 칸 26px: 팀명 쪽으로 4px 띄워 홈·원정 모두 팀명–로고 6px */
    .srow3 .lg:not(.home) { grid-column: 8; justify-content: flex-start; }
    .srow3 .when { flex-direction: column; gap: 0; }
    .srow3 .when b { font-size: 13px; }
    .srow3 .when small { font-size: 11px; }
    .srow3 .sd .nm { font-size: 14px; }
    .srow3 .sd .pit { font-size: 11px; letter-spacing: -.2px; white-space: normal; overflow: visible; line-height: 1.25; }
    .srow3 .sd .pit .p { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
    .srow3 .sd .pit .p + .p::before { content: ""; }
    .srow3 .lg .logo { width: 22px; height: 22px; flex-basis: 22px; font-size: 8px; }
    .srow3 .sc { font-size: 17px; }
    .srow3 .st .sb { font-size: 11px; padding: 2px 5px; }
    .srow3 .home-tag { display: none; }
    .srow3 .lg.home { gap: 0; }
  }
  @media (max-width: 700px) {
    .sched .mon { font-size: 17px; padding: 10px 8px; }
  }
  .cal-d .dn .stg { font-style: normal; margin-left: 4px; padding: 0 4px; border-radius: 4px; font-size: 10px; font-weight: 800; color: #fff; background: #2c4a7c; vertical-align: 1px; }   /* 포스트시즌 경기 날 (10/7) */
  .cal-d .dn .stg.ks { background: #c4921b; }   /* 포스트시즌 띠(.psb)와 같은 색: 남색, 한국시리즈만 금색 */
  .cal-d .dn .stg { white-space: nowrap; }
  .cal-d .dn .stg.live { background: var(--red); }
  .cal-d .dn .stg.cx { background: #b8bfcc; }   /* 미개최(시리즈 종료)·취소만 있는 날 */
  .cal-d .dn .stg.plan { background: none; color: #2c4a7c; box-shadow: inset 0 0 0 1px currentColor; } .cal-d .dn .stg.plan.ks { color: #c4921b; }   /* 공식 일정(대진 확정 전) — 테두리만 (10/14) */
  
  .srow3.plan { cursor: default; } .srow3.plan .nm.tbd { font-size: 14px; font-weight: 700; color: var(--muted); border: 1.5px dashed var(--line-strong); border-radius: 6px; padding: 1px 8px; white-space: nowrap; }
  @media (max-width: 700px) {   /* 7열 달력: 배지를 날짜 옆에 두면 칸 밖으로 삐져나오거나('WC') '준/PO'로 꺾였다 → 날짜 아래 '경기 수' 자리에 (10/13) */
    .cal-d.ps .dn { flex-direction: column; align-items: center; gap: 2px; }
    .cal-d.ps .dn .stg { margin: 0; padding: 0 5px; font-size: 10px; line-height: 16px; border-radius: 8px; }
    .cal-d.ps .cnt { display: none; }   /* 포스트시즌 날은 하루 한 경기 — 배지가 그 자리를 대신 */
  }

/* 모바일: 오른쪽 빈 칸에 이동 표시 — 진행 중은 빨간 '중계 ›', 나머지는 회색 '›' (PC 는 오른쪽 버튼이 있어 숨김, 10/8) */
  .srow3 > .go { display: none; }
  @media (max-width: 700px) {
    .srow3 > .go { display: flex; grid-row: 1; grid-column: 10; align-items: center; justify-content: flex-end; gap: 0; font-size: 11.5px; font-weight: 800; color: var(--line-strong); white-space: nowrap; letter-spacing: -.3px; }
    .srow3 > .go i { font-style: normal; font-size: 15px; line-height: 1; font-weight: 700; margin-left: 1px; }
    .srow3 > .go.live { color: var(--red); }
  }
