/* Feature captures extend each existing theme's panels and typography. */
.source-note { margin-top: 1.4rem; max-width: 52ch; font-size: .875rem; line-height: 1.7; }
.source-note a, .release-note a { color: inherit; text-decoration: underline; text-underline-offset: .22em; }
.preview-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 2rem; }
.preview-gallery .capability-shot { min-width: 0; margin: 0; padding: .6rem; overflow: hidden; }
.preview-gallery .capability-shot > a { display: block; border-radius: 4px; overflow: hidden; }
.preview-gallery .capability-shot img { display: block; width: 100%; height: auto; border: 0; }
.preview-gallery .capability-shot figcaption { display: block; padding: 1.4rem; border: 0; font-family: var(--sans); }
.preview-gallery .capture-heading { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; color: var(--amber); font: 700 .875rem/1.5 var(--mono); }
.preview-gallery .capture-heading > span { margin-right: auto; }
.preview-gallery .capability-shot h3 { margin: .8rem 0; font-size: 1.8rem; line-height: 1.15; }
.preview-gallery .capability-shot p { margin: 0; font-size: 1rem; line-height: 1.8; }
.preview-gallery .capability-shot:last-child { grid-column: 1 / -1; display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; }
body[data-theme="archive"] .preview-gallery .capability-shot { background: #101416; color: #edf3fc; }
body:is([data-theme="night-city"],[data-theme="cyberpunk"],[data-theme="pro"]) .preview-gallery .capability-shot p { color: #d5ddef; }
body:is([data-theme="night-city"],[data-theme="cyberpunk"],[data-theme="pro"]) .preview-gallery .capability-shot h3 { color: #f5f5ff; }
@media (max-width: 800px) {
  .preview-gallery { grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
  .preview-gallery .capability-shot figcaption { padding: 1rem .6rem; }
  .preview-gallery .capability-shot:last-child { display: block; }
}
