/* Artikelgalerie: Bildtexte bleiben im Bild, kein Zuschnitt. */
.p-artikel--galerie .p-artikel__text { grid-template-columns: repeat(2,minmax(0,1fr)); align-items:start; }
.p-artikel--galerie .p-artikel__text > :not(.p-artikel__abb) { grid-column:1 / -1; }
.p-artikel__bildlink { display:block; cursor:zoom-in; }
.p-artikel__gross { cursor:zoom-in; }
.p-artikel__bildlink:focus-visible, .p-artikel__gross:focus-visible { outline:3px solid var(--accent-text); outline-offset:4px; }
@media(max-width:640px) { .p-artikel--galerie .p-artikel__text { grid-template-columns:minmax(0,1fr); } }
html.p-bilder-offen { overflow:hidden; }
.p-bilddialog { box-sizing:border-box; width:min(1200px,96vw); height:min(94vh,1100px); height:min(94dvh,1100px); max-width:96vw; max-height:94vh; max-height:94dvh; padding:12px; border:1px solid #68716a; border-radius:8px; color:#fff; background:#07100a; }
.p-bilddialog[open] { display:flex; flex-direction:column; gap:8px; }
.p-bilddialog::backdrop { background:rgba(0,0,0,.88); }
.p-bilddialog__leiste { display:flex; justify-content:space-between; align-items:center; min-height:44px; flex-shrink:0; }
.p-bilddialog__rahmen { min-height:0; flex:1; display:grid; grid-template-columns:44px minmax(0,1fr) 44px; gap:8px; align-items:center; overflow:hidden; }
.p-bilddialog__rahmen img { display:block; width:100%; height:100%; min-height:0; max-height:100%; object-fit:contain; }
.p-bilddialog button { width:44px; height:44px; display:grid; place-items:center; padding:0; border:1px solid #778177; border-radius:50%; background:#163523; color:#fff; font-size:32px; line-height:1; cursor:pointer; }
.p-bilddialog button:focus-visible { outline:3px solid #f3d779; outline-offset:2px; }
.p-bilddialog__text { margin:0; max-height:15vh; overflow:auto; font-size:14px; line-height:1.45; flex-shrink:0; color:#f5f4e9; }
.p-bilddialog [hidden] { display:none; }
@media(max-width:480px) { .p-bilddialog { padding:8px; } .p-bilddialog__rahmen { grid-template-columns:32px minmax(0,1fr) 32px; gap:4px; } .p-bilddialog__rahmen button { width:32px; height:44px; border-radius:6px; } }
