/* v72: separate hotel and selected-room galleries; existing v68 styles stay intact. */
#marko-ux-gallery-panel {
  width: 100%;
  min-width: 0;
  margin: 0 0 20px;
  color: #332a22;
}
#marko-ux-gallery-panel[hidden] { display: none !important; }
#marko-ux-gallery-panel .marko-gallery-tiles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
#marko-ux-gallery-panel .marko-gallery-tile {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d5bea0;
  border-radius: 16px;
  background: #fffaf2;
  color: #332a22;
  font: inherit;
  text-align: left;
  text-transform: none;
  letter-spacing: normal;
  box-shadow: 0 4px 14px #4d34140a;
}
#marko-ux-gallery-panel button.marko-gallery-tile { cursor: pointer; }
#marko-ux-gallery-panel button.marko-gallery-tile:hover { border-color: #78501e; }
#marko-ux-gallery-panel .marko-gallery-tile__image {
  display: block;
  width: 100%;
  height: clamp(118px, 18vw, 190px);
  overflow: hidden;
  background: #e9e0d4;
}
#marko-ux-gallery-panel .marko-gallery-tile__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#marko-ux-gallery-panel img[hidden] { display: none !important; }
#marko-ux-gallery-panel [data-marko-photo-error="true"] { display: grid; place-items: center; }
#marko-ux-gallery-panel [data-marko-photo-error="true"]::after { content: "Фото не загрузилось"; padding: 12px; color: #665442; font-size: 13px; text-align: center; }
#marko-ux-gallery-panel .marko-gallery-tile__copy {
  display: grid;
  gap: 6px;
  padding: 16px 18px;
}
#marko-ux-gallery-panel .marko-gallery-tile strong { color: #332a22; font-size: 18px; line-height: 1.3; }
#marko-ux-gallery-panel .marko-gallery-tile__copy > span,
#marko-ux-gallery-panel .marko-gallery-tile--empty > span { color: #665442; font-size: 13px; line-height: 1.45; overflow-wrap: anywhere; }
#marko-ux-gallery-panel .marko-gallery-tile b { color: #78501e; font-size: 13px; line-height: 1.5; }
#marko-ux-gallery-panel .marko-gallery-tile--empty {
  justify-content: center;
  gap: 8px;
  padding: 22px;
  min-height: 165px;
  background: #f4ede2;
}
#marko-ux-gallery-panel .marko-gallery-tile--empty p { max-width: 38ch; margin: 8px 0 0; color: #665442; font-size: 14px; line-height: 1.5; }
.marko-ux-offer-active:has(#marko-ux-gallery-panel) [class*="__roomGallery"] { display: none !important; }
#marko-ux-gallery-panel button:focus-visible { outline: 3px solid #78501e; outline-offset: 3px; }
html[data-marko-gallery-open="true"], html[data-marko-gallery-open="true"] body { overflow: hidden !important; }
#marko-ux-lightbox {
  height: 100dvh;
  box-sizing: border-box;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  background: #171410;
  padding: max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));
}
#marko-ux-lightbox .marko-gallery-lightbox-header { gap: 12px; }
#marko-ux-lightbox .marko-gallery-lightbox-header strong { color: #fff7e9; font-size: 20px; line-height: 1.35; overflow-wrap: anywhere; }
#marko-ux-lightbox .marko-gallery-categories {
  display: flex;
  gap: 8px;
  width: min(1500px, 100%);
  margin: 0 auto;
}
#marko-ux-lightbox .marko-gallery-categories button {
  min-height: 44px;
  padding: 10px 18px;
  border: 1px solid #827461;
  border-radius: 999px;
  background: transparent;
  color: #fff7e9;
  font: 600 14px/1.3 var(--marko-ux-sans, sans-serif);
  cursor: pointer;
}
#marko-ux-lightbox .marko-gallery-categories button[aria-pressed="true"] { background: #f0d2a0; border-color: #f0d2a0; color: #302419; }
#marko-ux-lightbox .marko-gallery-categories button:disabled { color: #b8ac9e; border-color: #5f574c; cursor: default; }
#marko-ux-lightbox .marko-gallery-stage { height: 100%; grid-template-columns: 48px minmax(0, 1fr) 48px; }
#marko-ux-lightbox .marko-gallery-stage > img { min-height: 0; max-height: 100%; }
#marko-ux-lightbox button:focus-visible { outline: 3px solid #f0d2a0; outline-offset: 3px; }
#marko-ux-lightbox .marko-gallery-strip button { min-width: 64px; }
@media (max-width: 600px) {
  #marko-ux-gallery-panel { margin-bottom: 16px; }
  #marko-ux-gallery-panel .marko-gallery-tiles { gap: 10px; }
  #marko-ux-gallery-panel .marko-gallery-tile { border-radius: 12px; }
  #marko-ux-gallery-panel .marko-gallery-tile__copy { gap: 6px; padding: 12px; }
  #marko-ux-gallery-panel .marko-gallery-tile strong { font-size: 15px; }
  #marko-ux-gallery-panel .marko-gallery-tile__copy > span { font-size: 12px; }
  #marko-ux-gallery-panel .marko-gallery-tile b { font-size: 12px; }
  #marko-ux-gallery-panel .marko-gallery-tile--empty { padding: 14px; }
  #marko-ux-gallery-panel .marko-gallery-tile--empty p { font-size: 13px; }
  #marko-ux-lightbox { gap: 10px; padding: max(12px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)); }
  #marko-ux-lightbox .marko-gallery-lightbox-header strong { font-size: 17px; }
  #marko-ux-lightbox .marko-gallery-categories button { padding: 10px 13px; font-size: 13px; }
  #marko-ux-lightbox .marko-gallery-stage { grid-template-columns: 44px minmax(0, 1fr) 44px; gap: 5px; }
  #marko-ux-lightbox .marko-gallery-strip button { flex-basis: 72px; height: 52px; }
}
