/* Cooking alone owns layout; the shared content fade owns content opacity. */
body:has(.amf-cooking-wall) .wp-block-inner-page-title { display: none; }
.wp-block-post-content > .amf-cooking-wall.amf-cooking-wall {
  max-width: 1160px;
  width: 100%;
}
.amf-cooking-wall {
  --cooking-serif: 'Playfair Display', Georgia, serif;
  --cooking-mono: 'IBM Plex Mono', 'SF Mono', Consolas, monospace;
  --cooking-muted: var(--amf-muted, #c5c1d5);
  --cooking-rule: color-mix(in srgb, var(--amf-text, #f3eefb) 14%, transparent);
  box-sizing: border-box;
  color: var(--amf-text, #f3eefb);
  margin: 43px auto 0;
  padding: 0 28px 120px;
}
.amf-cooking-wall *, .amf-cooking-wall *::before, .amf-cooking-wall *::after { box-sizing: border-box; }
.amf-cooking-mast { display: grid; grid-template-columns: 1fr .82fr; column-gap: 65px; align-items: end; margin-bottom: 40px; }
.amf-cooking-eyebrow { font: 12px/1.5 var(--cooking-mono); letter-spacing: .16em; color: var(--cooking-muted); margin: 0 0 20px; }
.amf-cooking-title { font: italic 400 80px/1.08 var(--cooking-serif); letter-spacing: -.045em; color: inherit; margin: 0; }
.amf-cooking-subtitle { font: italic 400 23px/1.45 var(--cooking-serif); color: var(--cooking-muted); margin: 12px 0 0; }
.amf-cooking-aside .amf-cooking-note { font: italic 400 20px/1.65 var(--cooking-serif); color: var(--cooking-muted); max-width: 36ch; margin: 0; }
.amf-cooking-aside .amf-hobby-level-badge { margin: 20px 0 0; font-size: 12px; letter-spacing: .06em; }
.amf-cooking-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 27px; }
.amf-cooking-card { margin: 0; min-width: 0; }
.amf-cooking-photo { display: block; position: relative; aspect-ratio: .8; overflow: hidden; border-radius: 3px; cursor: zoom-in; color: inherit; }
.amf-cooking-photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.amf-cooking-zoom { visibility: hidden; position: absolute; right: 18px; bottom: 18px; display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid #ffffff59; border-radius: 50%; background: #1719237d; color: #fff; font: 24px/1 system-ui; }
.amf-cooking-photo:hover .amf-cooking-zoom, .amf-cooking-photo:focus-visible .amf-cooking-zoom { visibility: visible; }
.amf-cooking-card figcaption { display: grid; grid-template-columns: 22px 1fr; gap: 10px; align-items: baseline; margin-top: 16px; }
.amf-cooking-number { font: 12px/1.5 var(--cooking-mono); color: var(--amf-accent, #44d0d8); }
.amf-cooking-name { font: italic 400 24px/1.4 var(--cooking-serif); overflow-wrap: anywhere; }
.amf-cooking-empty { min-height: 260px; display: flex; align-items: center; justify-content: center; border-block: 1px solid var(--cooking-rule); text-align: center; }
.amf-cooking-empty h2 { font: italic 400 30px/1.5 var(--cooking-serif); color: var(--cooking-muted); margin: 0; }
.amf-cooking-footer { display: flex; justify-content: flex-end; align-items: baseline; gap: 30px; margin-top: 54px; padding-top: 25px; border-top: 1px solid var(--cooking-rule); }
.amf-cooking-footer p { font: italic 400 18px/1.5 var(--cooking-serif); color: var(--cooking-muted); margin: 0; }
.amf-cooking-footer > span { font: 12px/1.5 var(--cooking-mono); color: var(--cooking-muted); }
.amf-cooking-pager { display: flex; justify-content: center; flex-wrap: wrap; align-items: center; gap: 24px; margin-top: 40px; font: 12px/1.5 var(--cooking-mono); }
.amf-cooking-pager a { color: inherit; min-height: 44px; display: inline-flex; align-items: center; }
.amf-cooking-wall a:focus-visible, .amf-cooking-wall button:focus-visible { outline: 2px solid var(--amf-accent, #44d0d8); outline-offset: 4px; }
.amf-cooking-dialog { padding: 20px; border: 1px solid var(--cooking-rule); border-radius: 8px; background: var(--amf-bg-1, #171724); color: var(--amf-text, #f3eefb); width: fit-content; max-width: calc(100vw - 32px); max-height: calc(100dvh - 32px); overflow: auto; }
.amf-cooking-dialog::backdrop { background: #12111ae6; }
.amf-cooking-dialog-media img { display: block; max-width: min(900px, calc(100vw - 76px)); max-height: 70dvh; width: auto; height: auto; object-fit: contain; margin: auto; }
.amf-cooking-dialog button { display: grid; place-items: center; width: 44px; height: 44px; border: 1px solid var(--cooking-rule); border-radius: 50%; background: var(--amf-bg-2, #252337); color: inherit; cursor: pointer; font: 24px/1 system-ui; padding: 0; flex: 0 0 auto; }
.amf-cooking-dialog .amf-cooking-close { position: absolute; right: 9px; top: 9px; z-index: 1; }
.amf-cooking-dialog-controls { display: flex; gap: 16px; justify-content: space-between; align-items: center; margin-top: 16px; }
.amf-cooking-dialog-title { font: italic 400 22px/1.4 var(--cooking-serif); margin: 0; overflow-wrap: anywhere; min-width: 0; }
.amf-cooking-dialog button:disabled { color: var(--cooking-muted); cursor: default; }
@media (max-width: 1050px) {
  .amf-cooking-grid { gap: 20px; }
  .amf-cooking-mast { column-gap: 35px; }
}
@media (max-width: 780px) {
  .amf-cooking-wall { margin-top: 28px; padding: 0 24px 110px; }
  .amf-cooking-mast { display: block; margin-bottom: 31px; }
  .amf-cooking-title { font-size: 66px; }
  .amf-cooking-aside { margin-top: 23px; }
  .amf-cooking-aside .amf-cooking-note { font-size: 19px; }
  .amf-cooking-aside .amf-hobby-level-badge { margin-top: 19px; }
  .amf-cooking-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 18px; }
  .amf-cooking-feature { grid-column: 1 / -1; }
  .amf-cooking-feature .amf-cooking-photo { aspect-ratio: 1.55; }
  .amf-cooking-name { font-size: 22px; }
  .amf-cooking-card:not(.amf-cooking-feature) figcaption { grid-template-columns: 1fr; gap: 7px; }
  .amf-cooking-card:not(.amf-cooking-feature) .amf-cooking-name { font-size: 21px; }
  .amf-cooking-empty h2 { font-size: 25px; }
  .amf-cooking-footer { display: block; }
  .amf-cooking-footer > span { display: block; margin-top: 14px; }
  .amf-cooking-dialog { padding: 14px; }
  .amf-cooking-dialog-title { font-size: 19px; }
}
@media (max-width: 380px) {
  .amf-cooking-wall { padding-inline: 20px; }
  .amf-cooking-grid { gap: 27px 15px; }
  .amf-cooking-card:not(.amf-cooking-feature) .amf-cooking-name { font-size: 19px; }
  .amf-cooking-card figcaption { grid-template-columns: 20px 1fr; gap: 8px; }
}
@media (hover: none) { .amf-cooking-zoom { visibility: visible; } }
