/* MEDIA 掲載アーカイブ — サイト共通の白黒・明朝見出しのトーン（andlocal-recipes と同じ）に合わせる */
.almd, .almd-single { --ink: #1a1a1a; --sub: #666; --line: #ddd; --sea: #1f4e6b; --paper: #f5f3ef; color: var(--ink); }
.almd *, .almd-single * { box-sizing: border-box; }
.almd-label { font-size: 12px; letter-spacing: .12em; color: var(--sub); display: block; margin: 0 0 6px; }
.almd-muted { color: #888; font-size: 14px; }

/* 種別・媒体名・掲載日の行 */
.almd-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; font-size: 13px; color: var(--sub); margin: 0 0 8px; padding: 0; line-height: 1.6; }
.almd-type { display: inline-block; border: 1px solid var(--ink); color: var(--ink); font-size: 11px; letter-spacing: .08em; padding: 1px 8px; text-decoration: none; }
a.almd-type:hover { background: var(--ink); color: #fff; }
.almd-outlet { color: var(--ink); }

/* 一覧 */
.almd-types { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 24px; }
.almd-types a { border: 1px solid var(--line); background: #fff; color: var(--ink); font-size: 14px; padding: 6px 14px; text-decoration: none; line-height: 1.4; }
.almd-types a:hover { border-color: var(--ink); }
.almd-types a.is-on { background: var(--ink); border-color: var(--ink); color: #fff; }
.almd-filter { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px 20px; border-top: 1px solid var(--ink); padding-top: 20px; }
.almd-filter label { display: block; min-width: 160px; }
.almd-filter select { width: 100%; border: 1px solid var(--line); border-radius: 0; padding: 10px 12px; font-size: 15px; background: #fff; color: var(--ink); font-family: inherit; }
.almd-filter button { border: 1px solid var(--ink); background: var(--ink); color: #fff; font-size: 14px; padding: 10px 20px; cursor: pointer; border-radius: 0; font-family: inherit; }
.almd.is-js .almd-filter button { display: none; }
.almd-result { margin: 36px 0 0; padding-bottom: 12px; border-bottom: 1px solid var(--ink); font-family: "Noto Serif JP", "Yu Mincho", YuMincho, serif; font-size: 18px; }
.almd-result a { font-family: inherit; font-size: 13px; margin-left: 12px; color: var(--sub); }
.almd-list { list-style: none; margin: 0; padding: 0; }
.almd-item { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0 24px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.almd-item.has-thumb { grid-template-columns: minmax(0, 1fr) 160px; }
.almd-item.has-thumb > :not(.almd-thumb) { grid-column: 1; }
.almd-thumb { grid-column: 2; grid-row: 1 / span 3; align-self: start; display: block; background: var(--paper); }
.almd-thumb img { display: block; width: 100%; height: 120px; object-fit: cover; }
.almd-title { font-family: "Noto Serif JP", "Yu Mincho", YuMincho, serif; font-size: 20px; font-weight: 600; line-height: 1.5; margin: 0 0 6px; padding: 0; }
.almd-title a { color: var(--ink); text-decoration: none; }
.almd-title a:hover { text-decoration: underline; }
.almd-lead { font-size: 14px; line-height: 1.8; color: #444; margin: 0; padding: 0; }
.almd-pager { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 32px 0 0; }
.almd-pager a, .almd-pager span { min-width: 40px; text-align: center; border: 1px solid var(--line); padding: 8px 10px; font-size: 14px; color: var(--ink); text-decoration: none; }
.almd-pager span { background: var(--ink); border-color: var(--ink); color: #fff; }
@media (max-width: 600px) {
  .almd-item.has-thumb { grid-template-columns: minmax(0, 1fr) 96px; gap: 0 14px; }
  .almd-thumb img { height: 72px; }
  .almd-title { font-size: 17px; }
  .almd-filter label { flex: 1 1 100%; }
}

/* 個別ページ */
.almd-single { max-width: 760px; }
.almd-summary { font-size: 16px; line-height: 2; margin: 16px 0 32px; padding: 20px 24px; background: var(--paper); }
.almd-summary p:last-child { padding-bottom: 0; margin-bottom: 0; }
.almd-body { margin: 0 0 32px; }
.almd-images ul { list-style: none; margin: 0 0 32px; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
.almd-images li { margin: 0; padding: 0; }
.almd-images a { display: block; border: 1px solid var(--line); background: #fff; cursor: zoom-in; }
.almd-images img { display: block; width: 100%; height: auto; }
.almd-cap { display: block; font-size: 12px; color: var(--sub); margin-top: 6px; line-height: 1.6; }
.almd-link a { display: inline-block; border: 1px solid var(--ink); color: var(--ink); padding: 10px 20px; text-decoration: none; font-size: 14px; }
.almd-link a:hover { background: var(--ink); color: #fff; }
.almd-themes { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 24px 0; }
.almd-themes .almd-label { margin: 0 6px 0 0; display: inline; }
.almd-themes a { font-size: 13px; color: var(--sea); }
.almd-related { border-top: 1px solid var(--ink); margin-top: 40px; padding-top: 20px; }
.almd-related h2 { font-family: "Noto Serif JP", "Yu Mincho", YuMincho, serif; font-size: 18px; margin: 0 0 12px; padding: 0; }
.almd-related ul { list-style: none; margin: 0; padding: 0; }
.almd-related li { padding: 12px 0; border-bottom: 1px solid var(--line); }
.almd-related li > a { font-size: 15px; color: var(--ink); }
.almd-related .almd-meta { margin: 4px 0 0; }
.almd-back { margin-top: 32px; font-size: 14px; }

/* 画像の拡大表示 */
.almd-box { position: fixed; inset: 0; z-index: 100000; background: rgba(0, 0, 0, .88); display: flex; align-items: center; justify-content: center; padding: 48px 16px; }
.almd-box[hidden] { display: none; }
.almd-box img { max-width: 100%; max-height: 100%; object-fit: contain; background: #fff; }
.almd-box button { position: absolute; background: none; border: 0; color: #fff; font-size: 32px; line-height: 1; padding: 12px; cursor: pointer; }
.almd-box .almd-box-close { top: 4px; right: 8px; }
.almd-box .almd-box-prev { left: 4px; top: 50%; transform: translateY(-50%); }
.almd-box .almd-box-next { right: 4px; top: 50%; transform: translateY(-50%); }
.almd-draft { display: inline-block; font-family: sans-serif; font-size: 10px; font-weight: normal; border: 1px solid #c33; color: #c33; padding: 0 4px; margin-left: 8px; vertical-align: 3px; letter-spacing: 0; }
