/* =========================================================
   /blog/ お役立ち記事ハブ（仮デザイン・構造優先。後でブラッシュアップ）
   hero/section/h2 は support.css を流用。ここはカードグリッド等の追加分のみ。
   ========================================================= */
.bloomy-hub-hero__cta { margin: 14px 0 0; }
.bloomy-hub-btn { display: inline-block; background: #1677F2; color: #fff; font-weight: 700; text-decoration: none; padding: 11px 20px; border-radius: 999px; line-height: 1.4; }
.bloomy-hub-btn:hover { background: #1a5fe0; color: #fff; }

.bloomy-hub-cat__intro { color: #5d6f96; font-size: .92rem; line-height: 1.7; margin: .2em 0 1em; }

/* トピック・クイックナビ（ハブ冒頭。各セクションへページ内ジャンプ） */
.bloomy-hub-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 0; }
.bloomy-hub-nav__chip { display: inline-block; padding: 7px 14px; background: #f3f8fd; border: 1px solid #e1ecf8; border-radius: 999px; color: #243b63; font-weight: 700; font-size: .84rem; line-height: 1.3; text-decoration: none; transition: background .15s ease, border-color .15s ease; }
.bloomy-hub-nav__chip:hover { background: #e8f2fe; border-color: #cfe2fb; color: #1677F2; }
/* アンカー先がサイト固定ヘッダーに隠れないように */
.bloomy-hub-cat[id] { scroll-margin-top: 84px; }

.bloomy-hub-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.bloomy-hub-card { margin: 0; }
.bloomy-hub-card__link { display: flex; flex-direction: column; height: 100%; background: #fff; border: 1px solid #e6edf6; border-radius: 14px; overflow: hidden; text-decoration: none; color: inherit; transition: box-shadow .2s ease, transform .2s ease; }
.bloomy-hub-card__link:hover { box-shadow: 0 6px 18px rgba(34, 59, 99, .10); transform: translateY(-2px); }
.bloomy-hub-card__thumb { display: block; aspect-ratio: 16 / 9; background: #eef3fb; }
.bloomy-hub-card__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bloomy-hub-card__body { padding: 12px 14px 14px; display: flex; flex-direction: column; gap: 6px; }
.bloomy-hub-card__title { font-weight: 700; font-size: .95rem; line-height: 1.45; color: #243b63; }
.bloomy-hub-card__excerpt { font-size: .8rem; line-height: 1.6; color: #6b7a99; }

.bloomy-hub-cat__more { margin: 14px 0 0; }
.bloomy-hub-cat__more a { color: #1677F2; font-weight: 700; text-decoration: none; }
.bloomy-hub-cat__more a:hover { text-decoration: underline; }

.bloomy-hub-countries { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 8px; }
.bloomy-hub-countries a { display: block; text-align: center; padding: 10px 8px; background: #f3f8fd; border: 1px solid #e1ecf8; border-radius: 10px; color: #243b63; font-weight: 700; font-size: .86rem; text-decoration: none; }
.bloomy-hub-countries a:hover { background: #e8f2fe; }

.bloomy-hub-meta__links { text-align: center; color: #8a97bb; font-size: .85rem; }
.bloomy-hub-meta__links a { color: #5d6f96; font-weight: 700; text-decoration: none; }
.bloomy-hub-meta__links a:hover { text-decoration: underline; }

@media (max-width: 600px) {
	.bloomy-hub-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
	.bloomy-hub-card__title { font-size: .85rem; }
	.bloomy-hub-card__excerpt { display: none; }
	.bloomy-hub-countries { grid-template-columns: repeat(3, 1fr); }
}

/* /changelog/ /updates/ : 全更新履歴の時系列リスト */
.bloomy-logpage__body { font-size: .92rem; line-height: 1.8; color: #3a4763; }
.bloomy-loglist { list-style: none; margin: 0; padding: 0; }
.bloomy-loglist__item { display: flex; align-items: baseline; gap: 12px; padding: 11px 2px; border-bottom: 1px solid #eef2f8; }
.bloomy-loglist__item:last-child { border-bottom: 0; }
.bloomy-loglist__link { flex: 1 1 auto; color: #243b63; font-weight: 700; text-decoration: none; line-height: 1.5; }
.bloomy-loglist__link:hover { color: #1677F2; text-decoration: underline; }
.bloomy-loglist__date { flex: 0 0 auto; color: #9aa6bd; font-size: .8rem; font-variant-numeric: tabular-nums; }
