/* Galerie-Erweiterung: ausschliesslich Galerie und ihre geschuetzte Verwaltung. */
.galerie-seite {
  min-height:calc(100vh - 260px);
  padding:30px clamp(18px,5.2vw,86px) 48px;
  margin:0 auto;
  max-width:1800px;
}
.galerie-einleitung {max-width:780px;margin:0 0 24px;}
.galerie-uebertitel {margin:0 0 6px;text-transform:uppercase;letter-spacing:1.8px;color:#946743;font-size:12px;font-weight:700;}
.galerie-einleitung h1 {width:auto;height:auto;margin:0 0 9px;font:700 clamp(26px,2.6vw,38px)/1.18 Georgia,'Times New Roman',serif;}
.galerie-einleitung p {margin:0;font-size:clamp(14px,1.3vw,17px);line-height:1.5;}
.galerie-status {color:#775237;margin:0 0 14px;font-size:14px;}
.galerie-raster {display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:14px;}
.galerie-kachel {appearance:none;border:1px solid #dcc19e;padding:0;background:#fff9ee;border-radius:5px;overflow:hidden;aspect-ratio:4/3;display:block;width:100%;min-width:0;cursor:pointer;transition:border-color .15s,transform .15s;}
.galerie-kachel:hover {border-color:#7a4726;transform:translateY(-2px);}
.galerie-kachel img {width:100%;height:100%;display:block;object-fit:cover;}
.galerie-grossbild {position:fixed;inset:0;margin:0;padding:0;border:0;border-radius:0;background:rgba(19,12,9,.97);color:#fff;max-width:none;max-height:none;width:100vw;height:100dvh;}
.galerie-grossbild::backdrop {background:rgba(19,12,9,.92);}
.galerie-grossbild[open] {display:flex;align-items:center;justify-content:center;}
.galerie-grossbild figure {margin:0;width:calc(100% - 144px);height:calc(100% - 80px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;}
.galerie-grossbild img {width:auto;max-width:100%;max-height:calc(100% - 30px);object-fit:contain;box-shadow:0 14px 50px #0007;}
.galerie-grossbild figcaption {font:15px Georgia,serif;color:#faebd4;}
.galerie-pfeil,.galerie-schliessen {position:absolute;display:grid;place-items:center;border:1px solid #ffffff6b;color:#fff;background:#482d1fa8;border-radius:50%;cursor:pointer;}
.galerie-pfeil {top:50%;transform:translateY(-50%);width:46px;height:46px;font-size:23px;}
.galerie-pfeil--links {left:13px;}
.galerie-pfeil--rechts {right:13px;}
.galerie-schliessen {top:15px;right:17px;width:42px;height:42px;font-size:30px;z-index:2;}
.galerie-pfeil:hover,.galerie-schliessen:hover {background:#6d4125;}
/* Admin-Galerie benutzt den bestehenden Administration-Header und dessen Farben. */
.galerie-admin-inhalt {max-width:1550px;margin:0 auto;padding:28px clamp(16px,3vw,48px) 60px;}
.galerie-admin-pfad {margin:0 0 6px;color:#8b5a34;font-size:13px;}
.galerie-admin-kopf {display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:0 0 24px;}
.galerie-admin-kopf h1 {width:auto;height:auto;margin:0 0 8px;font:700 clamp(25px,2.3vw,34px)/1.2 Georgia,serif;}
.galerie-admin-kopf p {max-width:760px;margin:0;color:#715c4c;line-height:1.5;font-size:15px;}
.galerie-upload-box {padding:23px;background:#fff9ed;border:1px solid #dbc4a7;border-radius:7px;margin:0 0 28px;}
.galerie-upload-box h2,.galerie-admin-liste-kopf h2 {margin:0 0 8px;font:700 22px Georgia,serif;}
.galerie-upload-box>p {margin:0 0 15px;color:#786148;font-size:14px;}
.galerie-upload-label {display:inline-flex;padding:11px 16px;border-radius:4px;background:#67391c;color:#fffaf2;cursor:pointer;margin-bottom:10px;font-weight:700;}
.galerie-upload-box input[type="file"] {display:block;width:100%;max-width:580px;font-size:14px;}
#galerie-upload-status {min-height:20px;margin:12px 0 0;color:#654121;line-height:1.45;}
.galerie-admin-liste-kopf {display:flex;align-items:baseline;gap:15px;flex-wrap:wrap;margin:0 0 15px;}
.galerie-admin-liste-kopf h2 {margin:0;}
.galerie-admin-liste-kopf p {margin:0;color:#7a5438;font-size:13px;}
.galerie-admin-raster {display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;}
.galerie-admin-karte {min-width:0;overflow:hidden;border:1px solid #ddc7ad;background:#fffaf2;border-radius:5px;display:flex;flex-direction:column;}
.galerie-admin-karte>img {width:100%;height:155px;object-fit:cover;background:#e6d5bf;}
.galerie-admin-karte-info {display:flex;flex-direction:column;gap:5px;padding:12px 12px 8px;flex:1;}
.galerie-admin-karte-info strong {font-size:14px;overflow-wrap:anywhere;}
.galerie-aktiv,.galerie-inaktiv {font-size:12px;font-weight:700;}
.galerie-aktiv {color:#3f742a;}
.galerie-inaktiv {color:#a04d33;}
.galerie-admin-aktionen {display:flex;gap:8px;padding:9px 12px 12px;}
.galerie-admin-btn {flex:1;padding:8px 7px;min-height:38px;border:1px solid #bc936b;border-radius:4px;background:#f6e7d5;color:#4f2b18;font-weight:bold;font-size:13px;}
.galerie-admin-btn:disabled {opacity:.55;cursor:wait;}
.galerie-admin-btn.galerie-loeschen {background:#fff5f2;border-color:#be8d82;color:#8f382d;}
@media(max-width:900px) {
  .galerie-seite {padding:24px 18px 38px;min-height:50vh;}
  .galerie-raster {grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;}
  .galerie-admin-kopf {flex-direction:column;}
  .galerie-admin-inhalt {padding-top:21px;}
}
@media(max-width:599px) {
  .galerie-raster {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
  .galerie-grossbild figure {width:calc(100% - 88px);height:calc(100% - 70px);}
  .galerie-pfeil {width:35px;height:42px;border-radius:8px;font-size:19px;}
  .galerie-pfeil--links {left:4px;}
  .galerie-pfeil--rechts {right:4px;}
  .galerie-admin-raster {grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
  .galerie-admin-karte>img {height:110px;}
  .galerie-admin-karte-info {padding:9px 7px;}
  .galerie-admin-aktionen {flex-direction:column;padding:5px 7px 9px;}
  .galerie-admin-btn {min-height:34px;}
}
