/* 予約受付終了ページ専用スタイル。Go版 templates/reservation_closed.html の
   インライン <style> を実ファイルへ出したもの。 */
body { background: var(--bg-sunken); }

.kch-page { max-width: 560px; margin: 0 auto; padding: 40px 20px; text-align: center; }

.kch-event-org {
  display: inline-block; font-size: 11.5px; font-weight: 600;
  color: var(--accent); letter-spacing: 0.04em;
  margin-bottom: 10px;
}
.kch-event-title {
  font-size: 22px; font-weight: 800; letter-spacing: -0.01em;
  color: var(--fg); margin-bottom: 28px; line-height: 1.4;
}

.kch-card {
  background: var(--bg-card, #fff);
  border: 1px solid var(--border);
  border-radius: var(--kch-radius-lg, 10px);
  padding: 40px 28px;
  margin-bottom: 24px;
}

.kch-icon-wrap { display: flex; justify-content: center; margin-bottom: 18px; }
.kch-icon-circle {
  width: 56px; height: 56px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; font-weight: 700;
}
.kch-icon-circle.warning { background: oklch(96% 0.05 80); color: oklch(50% 0.15 60); }

.kch-state-title {
  font-size: 20px; font-weight: 700; color: var(--fg); margin-bottom: 12px;
}
.kch-state-desc { font-size: 14px; color: var(--fg-muted); line-height: 1.7; }
.kch-state-desc a { color: var(--accent); font-weight: 600; }

.kch-back-link {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 14px; color: var(--fg-muted); text-decoration: none;
  margin-top: 8px; transition: color .15s;
}
.kch-back-link:hover { color: var(--accent); text-decoration: none; }

@media (max-width: 640px) {
  .kch-page { padding: 20px 12px; }
}
