/* ライブカメラページ（style.css に追加で読み込む） */

.prose { max-width: 46em; }
.plain-list { margin: 0 0 1em; padding-left: 1.2em; }
.plain-list li { margin-bottom: .45em; }
.notes li { color: var(--muted); font-size: .9rem; }

/* ---------- ライブ配信 ---------- */
.live-player { padding-block: 8px clamp(16px, 3vw, 32px); }
.video-frame {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: var(--night);
  border-radius: var(--radius-lg);
}
.video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.video-sub { margin: 10px 0 0; font-size: .9rem; }

/* ---------- 表 ---------- */
.table-wrap { overflow-x: auto; margin: 0 0 1em; }
.data-table {
  width: 100%;
  min-width: 520px;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--card);
  border: 1px solid var(--hairline);
  border-radius: var(--radius);
  overflow: hidden;
  font-variant-numeric: tabular-nums;
}
.data-table caption {
  padding: 0 0 8px;
  color: var(--muted);
  font-size: .9rem;
  text-align: left;
}
.data-table th, .data-table td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--hairline);
  text-align: center;
}
.data-table thead th { background: var(--paper-2); font-size: .9rem; }
.data-table tbody th { text-align: left; white-space: nowrap; }
.data-table tbody tr:last-child th, .data-table tbody tr:last-child td { border-bottom: 0; }

/* ---------- 撮影画像（夜空色の帯） ---------- */
.photo-layout {
  display: grid;
  grid-template-columns: minmax(0, 420px) minmax(0, 1fr);
  gap: clamp(24px, 5vw, 56px);
  align-items: center;
}
.photo-link img { width: 100%; border-radius: var(--radius-lg); }
.section--night a:not(.photo-link) { color: var(--night-link); }
.section--night p { color: var(--night-ink); }

@media (max-width: 760px) {
  .photo-layout { grid-template-columns: 1fr; }
}

