/* ============================================================
   月次ダイジェスト（一覧 /digest/ と 個別ページ）
   ============================================================ */

.digest-back { margin: 0 0 16px; }
.digest-back a { color: #00a63e; text-decoration: none; font-size: 14px; }
.digest-back a:hover { text-decoration: underline; }

.digest-intro { color: #4b5563; margin: 0 0 8px; }

/* 個別ページ: 動画 */
.digest-video {
  margin: 0 0 24px;
  background: #000;
  border-radius: 10px;
  overflow: hidden;
}
.digest-video video { width: 100%; max-height: 70vh; display: block; }

/* 個別ページ: 旧サイトの全景パノラマ（静止画フォールバック・動画と同じくトップ表示） */
.digest-pano { margin: 0 0 24px; }
.digest-pano img { width: 100%; height: auto; display: block; border-radius: 10px; }

/* 個別ページ: 旧サイトの360度パノラマ（3Dカメラ）ビューア。トップにドラッグ操作で表示 */
/* Pannellumが内側divに .pnlm-container(height:100%) を付与するため、外側wrapで高さを確保する */
.digest-pano360-wrap {
  width: 100%;
  height: 380px;
  margin: 0 0 6px;
  border-radius: 10px;
  overflow: hidden;
  background: #000;
}
.digest-pano360 { width: 100%; height: 100%; }
.digest-pano360__help { color: #6b7280; font-size: 12px; margin: 0 0 24px; }
@media (max-width: 600px) {
  .digest-pano360-wrap { height: 240px; }
}

.digest-count { font-weight: 700; margin: 0 0 16px; color: #374151; }

/* 個別ページ: 商品グリッド（写真・No.・商品名） */
.digest-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 16px;
}
.digest-card {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.digest-card__img {
  aspect-ratio: 1 / 1;
  background: #f3f4f6;
  display: flex;
  align-items: center;
  justify-content: center;
}
.digest-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.digest-card__noimg { color: #9ca3af; font-size: 13px; }
.digest-card__no { padding: 8px 10px 0; font-size: 13px; font-weight: 700; color: #00a63e; }
.digest-card__name { padding: 2px 10px 10px; font-size: 14px; line-height: 1.4; word-break: break-word; }

/* 旧サイトへのリンク */
.digest-oldlink {
  margin-top: 32px;
  padding-top: 16px;
  border-top: 1px solid #e5e7eb;
  font-size: 14px;
  color: #4b5563;
}
.digest-oldlink a { color: #00a63e; }

/* 一覧ページ（カード） */
.digest-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 20px;
  margin: 24px 0;
}
.digest-list__item {
  display: block;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.2s, transform 0.2s;
}
.digest-list__item:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.10); transform: translateY(-2px); }
.digest-list__thumb { position: relative; aspect-ratio: 16 / 10; background: #f3f4f6; }
.digest-list__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.digest-list__videobadge {
  position: absolute; top: 8px; left: 8px;
  background: rgba(0,166,62,0.92); color: #fff;
  font-size: 12px; padding: 3px 8px; border-radius: 4px;
}
.digest-list__meta { padding: 12px 14px; }
.digest-list__title { display: block; font-weight: 700; font-size: 15px; }
.digest-list__date { display: block; font-size: 13px; color: #374151; margin-top: 2px; }
.digest-list__count { display: block; color: #6b7280; font-size: 13px; margin-top: 4px; }

/* 旧サイトから移行したダイジェスト: シート画像（1枚=約15商品）を上下余白0で縦に連続表示 */
.digest-sheets {
  display: flex;
  flex-direction: column;
  gap: 0;          /* 上下の余白0＝続けて見える */
  align-items: center;
  line-height: 0;  /* 画像間の隙間防止 */
}
.digest-sheet {
  width: 100%;
  max-width: 960px; /* 元サイズ以内＝引き伸ばさないのでボケない */
  height: auto;
  display: block;
  vertical-align: bottom;
  margin: 0;
  border: 0;
  border-radius: 0;
}

@media (max-width: 600px) {
  .digest-grid { grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 10px; }
  .digest-card__name { font-size: 13px; }
  .digest-list { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 14px; }
}

/* ダイジェスト一覧のページ送り（10年分たまっても各ページを軽く保つ） */
.page-content .pagination { margin: 36px 0 8px; }
.page-content .pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.page-content .pagination .page-numbers {
  display: inline-block; min-width: 40px; padding: 9px 14px; text-align: center;
  border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; color: #374151;
  text-decoration: none; font-size: 14px; line-height: 1;
}
.page-content .pagination a.page-numbers:hover { background: #f3f4f6; }
.page-content .pagination .page-numbers.current { background: #00a63e; border-color: #00a63e; color: #fff; font-weight: 700; }
.page-content .pagination .page-numbers.dots { border: 0; background: transparent; padding: 9px 4px; }
