/* Galeria zdjęć – realizacje, blog, strony (Claude, 9.10.2026, prośba Piotra).
   Działa na galeriach przeniesionych z WordPressa (.wp-block-gallery) – bez zmian w treści stron.
   Równa siatka 4:3, zaokrąglone rogi, pierwsze zdjęcie większe (gdy zdjęć ≥ 5), delikatny ruch po najechaniu,
   podgląd na cały ekran (js/galeria.js). */
.wp-block-gallery{margin:24px 0 !important;padding:0 !important;display:block !important}
.wp-block-gallery .blocks-gallery-grid,
.wp-block-gallery.has-nested-images{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:12px !important;list-style:none !important;margin:24px 0 !important;padding:0 !important;grid-auto-flow:dense}
.wp-block-gallery .blocks-gallery-grid{margin:0 !important}
/* nowszy rodzaj galerii WordPressa: zdjęcia (figure.wp-block-image) bezpośrednio w galerii, bez listy i odnośników */
.wp-block-gallery.has-nested-images > figure.wp-block-image{margin:0 !important;width:auto !important;max-width:none !important;flex:none !important}
.wp-block-gallery.has-nested-images > figure.wp-block-image,
.wp-block-gallery .blocks-gallery-item figure{position:relative;height:auto;aspect-ratio:4/3;border-radius:14px;overflow:hidden;
  background:#f2ece3;box-shadow:0 1px 3px rgba(35,28,23,.10);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
.wp-block-gallery.has-nested-images > figure.wp-block-image img{display:block;width:100% !important;height:100% !important;max-width:none !important;
  object-fit:cover;margin:0 !important;border-radius:0 !important;cursor:zoom-in;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
@media (hover:hover){
  .wp-block-gallery.has-nested-images > figure.wp-block-image:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(35,28,23,.22)}
  .wp-block-gallery.has-nested-images > figure.wp-block-image:hover img{transform:scale(1.06)}
}
.wp-block-gallery.galeria-duza.has-nested-images > figure.wp-block-image:first-child{grid-column:span 2;grid-row:span 2}
.wp-block-gallery img[tabindex]:focus-visible{outline:3px solid #e2401c;outline-offset:-3px}
.wp-block-gallery .blocks-gallery-item{margin:0 !important;padding:0 !important;width:auto !important;flex:none !important;list-style:none !important}
.wp-block-gallery .blocks-gallery-item::before{display:none !important}
.wp-block-gallery .blocks-gallery-item figure{position:relative;margin:0 !important;width:100%;height:100%;aspect-ratio:4/3;
  border-radius:14px;overflow:hidden;background:#f2ece3;box-shadow:0 1px 3px rgba(35,28,23,.10);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease}
.wp-block-gallery .blocks-gallery-item a{display:block;width:100%;height:100%;cursor:zoom-in}
.wp-block-gallery .blocks-gallery-item img{display:block;width:100% !important;height:100% !important;max-width:none !important;
  object-fit:cover;margin:0 !important;border-radius:0 !important;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
/* podpis zdjęcia (jeśli jest) – na dole, na przyciemnieniu */
.wp-block-gallery .blocks-gallery-item figcaption{position:absolute;left:0;right:0;bottom:0;margin:0 !important;padding:22px 12px 8px !important;
  color:#fff !important;font-size:13px;line-height:1.3;text-align:left;background:linear-gradient(transparent,rgba(0,0,0,.6)) !important;pointer-events:none}
/* ikona lupy w rogu – pokazuje się po najechaniu */
.wp-block-gallery .blocks-gallery-item a::after{content:"";position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:50%;
  background:rgba(255,255,255,.92) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23231c17' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='M16 16l4.5 4.5M11 8.5v5M8.5 11h5'/%3E%3C/svg%3E") center/18px no-repeat;
  opacity:0;transform:scale(.8);transition:opacity .25s,transform .25s}
/* pierwsze zdjęcie większe (klasa nadawana przez js/galeria.js, gdy zdjęć ≥ 5) */
.wp-block-gallery.galeria-duza .blocks-gallery-item:first-child{grid-column:span 2;grid-row:span 2}

@media (hover:hover){
  .wp-block-gallery .blocks-gallery-item figure:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(35,28,23,.22)}
  .wp-block-gallery .blocks-gallery-item figure:hover img{transform:scale(1.06)}
  .wp-block-gallery .blocks-gallery-item a:hover::after{opacity:1;transform:scale(1)}
}
.wp-block-gallery .blocks-gallery-item a:focus-visible{outline:3px solid #e2401c;outline-offset:-3px}
@media (max-width:600px){
  .wp-block-gallery .blocks-gallery-grid,.wp-block-gallery.has-nested-images{grid-template-columns:repeat(2,1fr);gap:8px !important}
  .wp-block-gallery .blocks-gallery-item figure,.wp-block-gallery.has-nested-images > figure.wp-block-image{border-radius:10px}
}
@media (prefers-reduced-motion:reduce){
  .wp-block-gallery .blocks-gallery-item figure,.wp-block-gallery .blocks-gallery-item img{transition:none}
}
/* pojedyncze zdjęcia z odnośnikiem do większej wersji – też otwierają podgląd */
a.galeria-pojedyncze{cursor:zoom-in}
a.galeria-pojedyncze img{border-radius:12px;transition:transform .35s ease,box-shadow .35s ease}
@media (hover:hover){a.galeria-pojedyncze:hover img{transform:translateY(-3px);box-shadow:0 12px 26px rgba(35,28,23,.2)}}

/* ===== podgląd na cały ekran ===== */
.galeria-podglad{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;
  background:rgba(20,16,13,.94);opacity:0;transition:opacity .25s;touch-action:pan-y}
.galeria-podglad.otwarty{opacity:1}
.galeria-podglad figure{margin:0;max-width:92vw;max-height:86vh;display:flex;flex-direction:column;align-items:center}
.galeria-podglad img{max-width:92vw;max-height:80vh;width:auto;height:auto;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.5);
  user-select:none;-webkit-user-drag:none;transition:opacity .2s}
.galeria-podglad img.laduje{opacity:.25}
.galeria-podglad figcaption{color:#eee;font:14px/1.4 'Open Sans',Arial,sans-serif;margin-top:10px;text-align:center;max-width:80vw}
.galeria-podglad button{position:absolute;border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer;border-radius:50%;
  width:52px;height:52px;font-size:28px;line-height:52px;padding:0;transition:background .2s}
.galeria-podglad button:hover,.galeria-podglad button:focus-visible{background:#e2401c;outline:none}
.galeria-podglad .gp-zamknij{top:16px;right:16px;font-size:30px}
.galeria-podglad .gp-wstecz{left:16px;top:50%;margin-top:-26px}
.galeria-podglad .gp-dalej{right:16px;top:50%;margin-top:-26px}
.galeria-podglad .gp-licznik{position:absolute;top:26px;left:24px;color:#ddd;font:600 15px 'Open Sans',Arial,sans-serif}
@media (max-width:600px){
  .galeria-podglad .gp-wstecz,.galeria-podglad .gp-dalej{top:auto;bottom:18px;margin-top:0}
  .galeria-podglad .gp-wstecz{left:calc(50% - 64px)} .galeria-podglad .gp-dalej{right:calc(50% - 64px)}
  .galeria-podglad img{max-height:72vh;max-width:96vw}
}
