@charset "utf-8";
/* ----------------------------------------------------
   1. リスト全体のレイアウト
---------------------------------------------------- */
.news-item {
  display: flex;
  align-items: flex-start;
  gap: 4px;
  margin-bottom: 6px;
  font-size: 0.95em;
}

#news-list {
  max-height: 136px; /* 初期表示：5件ぶん */
  overflow-y: auto;
}

#news-list.show-all {
  max-height: 300px; /* カテゴリ選択時 */
  overflow-y: auto;
}

/* ----------------------------------------------------
   2. 各要素（日時・カテゴリ・タイトル）
---------------------------------------------------- */
.news-date {
  width: 80px;
  flex-shrink: 0;
  color: #555;
}

.news-cat {
  display: inline-block;
  width: 60px;
  flex-shrink: 0;
  text-align: left;
  padding: 2px 4px;
  border-radius: 4px;
  color: #fff;
  font-weight: bold;
  font-size: 0.85em;
  line-height: 1.4;
  margin: 1px 0;
}

.news-title {
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #000;
  text-decoration: none;
}

.news-title:hover {
  text-decoration: underline;
}

/* ----------------------------------------------------
   3. カテゴリ色
---------------------------------------------------- */
.cat-status { background: #d9534f; } /* 運行：赤 */
.cat-group  { background: #f0ad4e; } /* グループ：オレンジ */
.cat-travel { background: #0275d8; } /* 旅行：青 */
.cat-other  { background: #5bc0de; } /* その他：水色 */
.cat-news   { background: #5cb85c; } /* お知らせ：緑 */

/* ----------------------------------------------------
   4. タブ（カテゴリ切替）
---------------------------------------------------- */
.news-tabs {
  display: flex;
  margin-bottom: 10px;
  gap: 6px;
}

.news-tabs button {
  flex: 1;
  padding: 2px 0;
  border-radius: 6px;
  background: #f5f5f7;
  border: 1px solid #d0d0d5;
  font-size: 0.85rem;
  font-weight: 600;
  color: #333;
  cursor: pointer;
  transition: all 0.2s ease;
}

.news-tabs button:hover {
  background: #e8e8ec;
  border-color: #b8b8c0;
}

.news-tabs button.active {
  background: #4a90e2;
  color: #fff;
  border-color: #4a90e2;
}

.news-tabs button.active:hover {
  background: #3a78c0;
  border-color: #3a78c0;
}

/* タブの NEW バッジ */
.tab-new {
  color: #ff4d4d;
  font-weight: bold;
  margin-left: 4px;
  font-size: 0.75em;
}

/* ----------------------------------------------------
   5. 固定記事（非表示 → JSで使用）
---------------------------------------------------- */
#fixed-kifu,
#fixed-unko {
  display: none;
}

/* 固定記事の📌マーク */
.news-pin {
  color: #d9534f;
  font-weight: bold;
  margin-right: 4px;
}

/* ----------------------------------------------------
   6. NEW バッジ（ベル付き）
---------------------------------------------------- */
.news-new {
  color: #ff4d4d;
  font-weight: bold;
  margin-right: 6px;
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 0.8em;
}

.news-new::before {
  content: "🔔";
  font-size: 1em;
  line-height: 1;
}

/* ----------------------------------------------------
   7. 「もっと見る」ボタン
---------------------------------------------------- */
.news-more {
  text-align: right;
  margin-top: 10px;
}

.news-more-btn {
  display: inline-block;
  padding: 3px 12px;
  background: #eee;
  border-radius: 4px;
  text-decoration: none;
  color: #333;
}

