
.ao-header .ao-menu { margin: 0 0 var(--space-3); }

/* ---------- 展示ページ・催し・同人誌（site.css だけの追加） ---------- */
:root, [data-theme="light"] { --ao-plate-dim: 1; }
[data-theme="dark"] { --ao-plate-dim: 0.86; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --ao-plate-dim: 0.86; } }

/* 扉の特設窓 */
.ao-section--window { padding-block: var(--space-6); }
.ao-window { display: grid; gap: var(--space-5); padding: var(--space-5); border: var(--rule) solid var(--ai); background: var(--paper-raised); }
.ao-window__poster { display: block; }
.ao-window__poster img { display: block; width: 100%; height: auto; max-width: 100%; filter: brightness(var(--ao-plate-dim, 1)); }
.ao-window__copy { display: grid; gap: var(--space-3); align-content: start; }
.ao-window__eyebrow { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-4); }
.ao-window__date { font-family: var(--font-mono); font-size: 12px; line-height: 1.6; letter-spacing: 0.02em; color: var(--ink-muted); }
.ao-window__title { font-family: var(--font-serif); font-size: 24px; line-height: 1.5; font-weight: 600; letter-spacing: 0.01em; font-feature-settings: "palt"; }
.ao-window__title a { color: var(--ink); text-decoration: none; }
.ao-window__title a:hover { color: var(--ai); text-decoration: underline; }
.ao-window__lead { font-size: 15px; line-height: 1.85; max-width: var(--measure); }
.ao-window__meta { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-4); font-family: var(--font-mono); font-size: 12px; line-height: 1.6; letter-spacing: 0.02em; color: var(--ink-muted); }
.ao-window .ao-actions { margin-top: var(--space-2); }
@media (min-width: 900px) {
  .ao-section--window { padding-block: var(--space-7); }
  .ao-window { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--space-7); padding: var(--space-6); align-items: center; }
}
/* 扉の特設窓：同人誌（展示の窓の従。表紙は縦長なので細い列、枠は罫線） */
.ao-window + .ao-window { margin-top: var(--space-5); }
.ao-window--book { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); padding: var(--space-5); border: var(--hairline) solid var(--line-strong); align-items: start; }
.ao-window--book .ao-window__title { font-size: 20px; }
.ao-window--book .ao-window__poster { width: 88px; }
@media (min-width: 900px) { .ao-window--book .ao-window__poster { width: auto; } }
.ao-window--book .ao-page__pre { font-size: 13px; }
@media (min-width: 900px) {
  .ao-window--book { grid-template-columns: 132px minmax(0, 1fr); gap: var(--space-6); padding: var(--space-5) var(--space-6); align-items: center; }
}
.ao-hero__notice { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-3); margin-top: var(--space-5); font-size: 14px; line-height: 1.6; }
.ao-page__pre { display: block; font-family: var(--font-sans); font-size: 15px; line-height: 1.6; font-weight: 500; letter-spacing: 0.02em; color: var(--ink-muted); margin-bottom: var(--space-1); }
.ao-plate__img { margin: 0; }
.ao-plate__img a { display: block; }
.ao-plate__img img { display: block; width: 100%; height: auto; max-width: 100%; filter: brightness(var(--ao-plate-dim, 1)); }
.ao-plate__links { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-5); margin-top: var(--space-3); font-size: 14px; }
.ao-plates { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--space-8); }
.ao-plate { display: grid; gap: var(--space-4); align-content: start; }
.ao-plate__head { display: grid; gap: var(--space-2); }
.ao-plate__title { font-family: var(--font-serif); font-size: 20px; line-height: 1.6; font-weight: 600; letter-spacing: 0.01em; font-feature-settings: "palt"; }
.ao-plate__desc { font-size: 15px; line-height: 1.85; max-width: var(--measure); }
.ao-plate--offline { align-self: start; padding: var(--space-5); border: var(--hairline) dashed var(--line-strong); }
@media (min-width: 900px) {
  .ao-plates--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-8) var(--space-7); }
}
.ao-book { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: var(--space-5); align-items: start; padding-block: var(--space-6); border-top: var(--hairline) solid var(--line); border-bottom: var(--hairline) solid var(--line); }
.ao-book__cover { margin: 0; }
.ao-book__cover a { display: block; }
.ao-book__cover img { display: block; width: 100%; height: auto; filter: brightness(var(--ao-plate-dim, 1)); }
.ao-book .ao-entry { padding-block: 0; border-bottom: 0; }
@media (min-width: 640px) { .ao-book { grid-template-columns: 160px minmax(0, 1fr); gap: var(--space-6); } }
.ao-cover { float: right; width: 150px; margin: 0 0 var(--space-4) var(--space-5); }
.ao-cover img { display: block; width: 100%; height: auto; filter: brightness(var(--ao-plate-dim, 1)); }
@media (min-width: 640px) { .ao-cover { width: 220px; } }
.ao-prose ol.ao-toc { list-style: none; padding: 0; margin-top: var(--space-4); display: grid; gap: var(--space-4); }
.ao-toc > li { display: grid; gap: var(--space-1); }
.ao-toc__chapter { display: flex; gap: var(--space-3); align-items: baseline; font-family: var(--font-serif); font-size: 17px; font-weight: 600; font-feature-settings: "palt"; }
.ao-toc__num { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.04em; color: var(--ink-muted); flex: none; }
.ao-toc__page { margin-left: auto; padding-left: var(--space-3); font-family: var(--font-mono); font-size: 12px; color: var(--ink-muted); flex: none; }
.ao-prose ul.ao-toc__items { list-style: none; padding: 0 0 0 2.2em; margin: 0; display: grid; gap: 2px; font-size: 15px; line-height: 1.8; }
.ao-toc__items li { display: flex; gap: var(--space-2); align-items: baseline; }
