@charset "utf-8";

/* ===== 共通 ===== */
.if-post{
  --bg:#f5f7fb;
  --panel:#fff;
  --text:#111827;
  --muted:#6b7280;
  --line:rgba(17,24,39,.12);
  --shadow:0 10px 30px rgba(17,24,39,.08);
  --win:#16a34a;
  --lose:#dc2626;
  --draw:#7c3aed;
  --canceled:#d97706;
  --radius:16px;
  color:var(--text);
}

/* 全体ラッパー */
.if-post .wrap{
  width:min(1100px, calc(100% - 24px));
  margin:18px auto 60px;
}

/* トップバー */
.if-post .topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:12px;
}
.if-post .back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--line);
  background: var(--panel);
  box-shadow: var(--shadow);
  font-size:12px;
}
.if-post .hint{
  color:var(--muted);
  font-size:12px;
}

/* カード本体 */
.if-post .card{
  border:1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
  box-shadow: var(--shadow);
  overflow:hidden;
  margin-bottom:12px;
}

/* band：試合結果の帯（勝ち負け） */
.if-post .band{
  height:6px;
  background: linear-gradient(
    90deg,
    var(--win) 0%,
    var(--win) 50%,
    var(--lose) 50%,
    var(--lose) 100%
  );
}
.if-post .card.away-win .band{
  background: linear-gradient(
    90deg,
    var(--lose) 0%,
    var(--lose) 50%,
    var(--win) 50%,
    var(--win) 100%
  );
}
.if-post .card.draw .band{
  background: linear-gradient(
    90deg,
    var(--draw) 0%,
    var(--draw) 100%
  );
}
.if-post .card.canceled .band{
  background: repeating-linear-gradient(
    45deg,
    rgba(217,119,6,.9),
    rgba(217,119,6,.9) 6px,
    rgba(217,119,6,.3) 6px,
    rgba(217,119,6,.3) 12px
  );
}

/* ヘッダー（対戦カード・スコア） */
.if-post .head{
  padding:14px 16px;
}
.if-post h1{
  margin:0;
  font-size:20px;
  letter-spacing:.02em;
}
.if-post .sub{
  margin-top:6px;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}
.if-post .scoreRow{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
  margin-top:8px;
}
.if-post .score{
  font-weight:900;
  font-size:30px;
  letter-spacing:.02em;
}
.if-post .status{
  font-size:11px;
  color:var(--muted);
  padding:4px 8px;
  border:1px solid var(--line);
  border-radius:999px;
  background: rgba(17,24,39,.02);
  white-space:nowrap;
}

/* 操作プレイヤー表示 */
.if-post .ops{
  margin-top:8px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  color:var(--muted);
  font-size:12px;
}
.if-post .op{
  padding:4px 8px;
  border-radius:999px;
  border:1px solid var(--line);
  background: rgba(17,24,39,.02);
  color: var(--text);
  font-weight:800;
}

/* 結果画像（1280x720想定） */
.if-post .resultImage{
  display:flex;
  justify-content:center;
  padding: 0 16px 14px;
}
.if-post .resultImage img{
  width:100%;
  max-width: 960px;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  border-radius:14px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow: 0 12px 24px rgba(0,0,0,.10);
}

/* セクション共通 */
.if-post .section{
  padding:14px 16px 16px;
  border-top:1px solid var(--line);
}
.if-post .sectionHead{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.if-post .section h2{
  margin:0;
  font-size:14px;
}
.if-post .small{
  color:var(--muted);
  font-size:12px;
}

/* テーブル（横スクロール対応） */
.if-post .tableWrap{
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  border-radius: 12px;
  border:1px solid var(--line);
  background:#fff;
}
.if-post table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
}
.if-post th,
.if-post td{
  padding:10px 10px;
  border-bottom:1px solid var(--line);
  font-size:12px;
  text-align:right;
  white-space:nowrap;
}
.if-post th{
  position: sticky;
  top: 0;
  background: rgba(17,24,39,.02);
  color: var(--muted);
  font-weight:900;
  z-index:1;
}
.if-post td:first-child,
.if-post th:first-child{
  text-align:left;
}
.if-post tr:hover td{
  background: rgba(17,24,39,.02);
}

/* 継投・配信共通の2カラムレイアウト */
.if-post .relay{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:12px;
}
@media(max-width:900px){
  .if-post .relay{
    grid-template-columns:1fr;
  }
}
.if-post .relayBox{
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}
.if-post .relayHead{
  padding:10px 12px;
  border-bottom:1px solid var(--line);
  background: rgba(17,24,39,.02);
  font-weight:900;
}
.if-post .relayList{
  padding:10px 12px 12px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.if-post .relItem{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}
.if-post .relLeft{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}
.if-post .relName{
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width: 520px;
}
.if-post .relMeta{
  color:var(--muted);
  font-size:12px;
}
.if-post .relRight{
  color:var(--muted);
  font-size:12px;
  white-space:nowrap;
}

/* 選手成績：チームごとボックス表示（縦並び） */
.if-post .memGrid{
  display:flex; flex-direction:column; gap:12px;
  margin-top: 1rem;
}
.if-post .memBox{
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}
.if-post .memHead{
  padding:10px 12px;
  border-bottom:1px solid var(--line);
  background: rgba(17,24,39,.02);
  font-weight:900;
}
.if-post .memBox .tableWrap{
  border-radius:0;
  border:none;
}

/* 投手成績：チームごとボックス表示（縦並び） */
.if-post .pitchGrid{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.if-post .pitchBox{
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}
.if-post .pitchHead{
  padding:10px 12px;
  border-bottom:1px solid var(--line);
  background: rgba(17,24,39,.02);
  font-weight:900;
}
.if-post .pitchBox .tableWrap{
  border-radius:0;
  border:none;
}

/* 打撃成績：チームごとボックス表示（縦並び） */
.if-post .batGrid{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.if-post .batBox{
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}
.if-post .batHead{
  padding:10px 12px;
  border-bottom:1px solid var(--line);
  background: rgba(17,24,39,.02);
  font-weight:900;
}
.if-post .batBox .tableWrap{
  border-radius:0;
  border:none;
}

/* ===== 投手オフ ===== */
.if-post .offTable{
  width:100%;
  border-collapse:collapse;
  font-size:12px;
}
.if-post .offTable th,
.if-post .offTable td{
  padding:6px 8px;
  border-bottom:1px solid var(--line);
  text-align:left;
}
.if-post .offTable thead th{
  background:rgba(17,24,39,.02);
  color:var(--muted);
  font-weight:900;
}

.button06 {
  display: inline-block;
  background-color: #ececec;
  border: solid 2px #c0c0c0;
  width: 100px;
  border-radius: 10px;
  text-align: center;
  font-size: 1em;
  text-decoration: none;
}
.button06:hover {
  background-color: #c0c0c0;
  color: #000000;
}

