body {
  background-color: #f5f6f8;
}

/* 選択中メニューを強調（白文字＋太字＋下線バー） */
.navbar .nav-link.active {
  font-weight: 600;
  box-shadow: inset 0 -3px 0 #0d6efd;
}

table td, table th {
  vertical-align: middle;
}

.badge-seat-full {
  background-color: #dc3545;
}

/* 削除済み行の表示 */
tr.row-deleted td {
  background-color: #f1f3f5;
  color: #868e96;
  text-decoration: line-through;
}
tr.row-deleted td .btn,
tr.row-deleted td .badge {
  text-decoration: none;
}

/* 取り込み時データ / 編集データ 比較レイアウト */
.compare-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.compare-header {
  padding: 1rem 1.25rem;
  border-bottom: 2px solid #dee2e6;
}

.compare-cell {
  padding: 0.65rem 1.25rem;
  border-bottom: 1px solid #eee;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.compare-col-left {
  border-right: 1px solid #dee2e6;
}

/* 読み取り専用値: 入力欄(.form-control)と見た目が混同されないよう、枠線なし・淡いグレー背景にする */
.import-value {
  background-color: #eef0f2;
  color: #495057;
  border-radius: 0.375rem;
  padding: 0.375rem 0.75rem;
  min-height: calc(1.5em + 0.75rem + 2px);
}

.field-diff-value {
  background-color: #fff3cd;
  color: #664d03;
}

.field-diff-input {
  border-color: #f0ad4e !important;
  box-shadow: 0 0 0 0.15rem rgba(240, 173, 78, 0.25);
}

/* 必須チェックエラーの入力欄（薄いピンク。フォーカスアウトで解除される） */
.field-required-error {
  background-color: #fde2e6 !important;
}
