/* WordPress固有の補正。共通デザインはstyle.cssで管理します。 */
.hero picture {
  display: block;
  width: 100%;
  height: 100%;
}
.section-body > img {
  max-width: 100%;
  height: auto;
}
.empty-content {
  width: 100%;
  padding: 60px 0;
  text-align: center;
  font-family: "Tomorrow", sans-serif;
  font-weight: 800;
}
.slide-price {
  font-weight: 800;
}
.modal-content p,
.slide-stage > p {
  white-space: pre-line;
}
body.admin-bar {
  --admin-height: 32px;
}
@media (min-width: 769px) {
  body.admin-bar .side-inner {
    top: max(
      calc(24px + var(--admin-height)),
      calc((100vh - var(--side-height)) / 2 + var(--admin-height) / 2)
    );
    max-height: calc(100vh - 48px - var(--admin-height));
  }
}
@media (max-width: 768px) {
  body.admin-bar .menu-toggle,
  body.admin-bar .menu-close {
    top: calc(18px + var(--admin-height));
  }
}
@media (max-width: 782px) {
  body.admin-bar {
    --admin-height: 46px;
  }
}

/* 会場ごとの複数経路を読みやすく表示。 */
.access-route + .access-route { margin-top: 20px; }
.access-route h4 { margin: 0 0 8px; font-size: inherit; font-weight: 800; }
.access-route h4::before { content: "▸ "; }
.access-route p { margin: 0; line-height: 1.8; overflow-wrap: anywhere; }
.access-guide-link { text-decoration: underline; text-underline-offset: 3px; }

/* PCのパートナー枠は右ナビと一緒に追従します。 */
@media (min-width: 769px) {
  .contents-side .match-partner h3 {
    color: var(--yellow);
    font-family: "Reddit Sans", "M PLUS 1p", sans-serif;
  }
  .contents-side .match-partner > img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
}

/* JS実行前も非表示状態を反映し、見出しやメニューの一瞬の表示を防ぎます。 */
body[data-hidden-sections~="preview"] main > #preview,
body[data-hidden-sections~="preview"] nav a[href="#preview"],
body[data-hidden-sections~="partner"] main > #partner,
body[data-hidden-sections~="partner"] nav a[href="#partner"],
body[data-hidden-sections~="special"] main > #special,
body[data-hidden-sections~="special"] nav a[href="#special"],
body[data-hidden-sections~="event"] main > #event,
body[data-hidden-sections~="event"] nav a[href="#event"],
body[data-hidden-sections~="map"] main > #map,
body[data-hidden-sections~="map"] nav a[href="#map"],
body[data-hidden-sections~="gourmet"] main > #gourmet,
body[data-hidden-sections~="gourmet"] nav a[href="#gourmet"],
body[data-hidden-sections~="goods"] main > #goods,
body[data-hidden-sections~="goods"] nav a[href="#goods"],
body[data-hidden-sections~="timeline"] main > #timeline,
body[data-hidden-sections~="timeline"] nav a[href="#timeline"],
body[data-hidden-sections~="players"] main > #players,
body[data-hidden-sections~="players"] nav a[href="#players"],
body[data-hidden-sections~="ticket"] main > #ticket,
body[data-hidden-sections~="ticket"] nav a[href="#ticket"],
body[data-hidden-sections~="access"] main > #access,
body[data-hidden-sections~="access"] nav a[href="#access"],
body[data-hidden-sections~="guide"] main > #guide,
body[data-hidden-sections~="guide"] nav a[href="#guide"],
body[data-hidden-sections~="snap"] main > #snap,
body[data-hidden-sections~="snap"] nav a[href="#snap"],
body[data-hidden-sections~="partner"] .match-partner {
  display: none !important;
}

/* 同時刻に開く先頭3項目は、共通見出しで時刻を1回だけ表示します。 */
.timeline-opening-note {
  margin: 28px 0 0;
  text-align: center;
  line-height: 1.5;
}
.timeline-opening-note strong {
  display: block;
  background: var(--ink);
  color: var(--yellow);
  font-family: "Reddit Sans", "M PLUS 1p", sans-serif;
  font-size: 24px;
  font-weight: 900;
}
.timeline-opening-note span { display: block; margin-top: 6px; font-size: 12px; font-weight: 700; }
.timeline-icons.has-shared-opening { margin-top: 20px; }
.timeline-icon.has-shared-time time,
.timeline-icon.has-shared-time .timeline-time-break { display: none; }

/* 閲覧権限のあるログイン利用者だけに渡す非公開イベントの目印。 */
.event-private-note {
  margin: 10px 0 6px;
  color: #9b3600;
  font-size: 12px;
  font-weight: 800;
  text-align: center;
}

/* 2026-11-06 長いクラブ名も全文を表示します。 */
.match-side .match-team p,
.versus strong {
  white-space: pre-line;
  overflow-wrap: anywhere;
  word-break: normal;
  overflow: visible;
  text-overflow: clip;
  text-align: center;
  height: auto;
}
.versus > div { min-width: 0; }
.panel-preview .section-body > p:last-child { margin-bottom: 0; }

/* スペシャルイベントは通常イベントと共通のカード・詳細ダイアログを使用。 */
.special-event-grid.is-single { grid-template-columns: minmax(0, 1fr); width: 90%; margin-inline: auto; }
.special-event-grid .event-card h3 { margin: 10px 0; }

/* 同時刻の先頭3項目は順路を示す矢印と接続線を外します。 */
.timeline-icons.has-shared-opening .timeline-icon:nth-child(1)::after,
.timeline-icons.has-shared-opening .timeline-icon:nth-child(2)::after,
.timeline-icons.has-shared-opening .timeline-icon:nth-child(1) .timeline-picture::before,
.timeline-icons.has-shared-opening .timeline-icon:nth-child(2) .timeline-picture::before { display: none; }

/* 入力した改行をタイムラインの項目名・タイトルに反映。 */
.timeline-item-label, .timeline-opening-note > span, .panel-timeline .slide-stage > strong, .panel-timeline .slide-stage > h3 { white-space: pre-line; }

/* マッチデーパートナーの説明文。 */
.panel-partner .section-body > p { text-align: center; }

/* グッズの表示用タイトルに入力した改行を保持。 */
[data-slider="goods"] .slide-stage > h3 { white-space: pre-line; }
