@import url('/city-gallery.css?v=20261011-2');
/* Compact gallery; scope changes to this page, not the shared design system. */
#cityGallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
#cityGallery .place-copy{padding:12px;gap:0}
#cityGallery .place-copy h3{font-size:17px;line-height:1.4;margin:4px 0}
#cityGallery .place-ru{font-size:11px;line-height:1.5}
#cityGallery .place-intro{font-size:12px;line-height:1.65;margin:9px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#cityGallery .place-location{padding-top:9px;font-size:11px;line-height:1.55}
#cityGallery .place-address{font-size:11px}
#cityGallery .place-photo{aspect-ratio:4/3}
#cityGallery .copy-place{margin-top:12px;width:100%;min-height:42px;padding:8px 4px;border:1px solid #b6c9e5;background:var(--brand-wash,#E9EFFC);color:#194880;font:600 12px/1.4 inherit;cursor:pointer}
#cityGallery .copy-place:hover{background:var(--brand-wash,#E9EFFC)}
.copy-toast{position:fixed;z-index:2147483647;left:50%;bottom:28px;transform:translateX(-50%);width:max-content;max-width:90vw;padding:12px 18px;background:#132a47;color:#fff!important;border-radius:6px;box-shadow:0 5px 24px #142b4733;font-size:14px;pointer-events:none}
/* Bounded geometry also works when opened inside an auto-height iframe. */
html body #photoDialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(980px,calc(100% - 24px));height:fit-content;max-width:980px;max-height:min(820px,calc(100dvh - 24px));min-height:0;padding:0;overflow:auto;border:1px solid #a5b6cc;background:#fff;color:#10243d;border-radius:8px}
html body #photoDialog:not([open]){display:none!important}
html body #photoDialog[open]{display:block!important}
#photoDialog::backdrop{background:rgba(7,17,32,.78)}
#photoDialog .photo-toolbar{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:14px;min-height:50px;padding:4px 10px 4px 16px;background:#14243a;color:#fff}
#photoDialog .photo-toolbar span{color:#fff!important;font-size:13px}
#photoDialog .photo-help{opacity:.72;flex:1;text-align:right;font-size:11px!important}
#photoDialog #closePhoto{position:static;float:none;display:grid;place-items:center;flex:none;width:44px;height:44px;margin:0;padding:0;border:0;background:transparent;color:#fff!important;font:30px/1 sans-serif;cursor:pointer}
#photoDialog .photo-stage{position:relative;display:flex;align-items:center;justify-content:center;height:clamp(220px,40vw,440px);min-height:0;overflow:hidden;background:#101b2b;touch-action:pan-y}
#photoDialog #dialogPhoto{position:static;display:block;float:none;clear:none;margin:0;padding:0;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;object-fit:contain;background:none;transform:none}
#photoDialog .photo-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:54px;padding:0;border:1px solid #ffffff66;border-radius:6px;background:#14243acc;color:#fff!important;font:38px/1 sans-serif;cursor:pointer;z-index:2}
#photoDialog .photo-arrow:disabled{opacity:.28;cursor:default}
#photoDialog .previous{left:10px}#photoDialog .next{right:10px}
#photoLoadStatus{position:absolute;inset:auto 12px 12px;text-align:center;background:#14243a;color:#fff!important;font-size:12px;padding:8px}
#photoDialog .dialog-copy{padding:18px 24px 22px}
#photoDialog .dialog-copy h2{font-size:24px;line-height:1.4;margin:5px 0}
#photoDialog .dialog-copy p{font-size:13px;margin:8px 0}
#photoDialog .dialog-address{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:12px;font-size:13px}
#photoDialog #copyAddress{min-height:44px;padding:10px 14px;font-size:13px;white-space:nowrap}
#photoDialog #copyStatus{min-height:0;color:#194880;font-size:12px;margin-top:6px}
#photoDialog #dialogCredit{margin-top:12px;font-size:11px}
@media(max-width:1199px){#cityGallery{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:959px){#cityGallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:619px){#cityGallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#cityGallery .place-copy{padding:10px}#cityGallery .place-copy h3{font-size:15px}#cityGallery .place-intro{display:none}#cityGallery .place-ru{margin-bottom:9px}#cityGallery .place-location{font-size:11px}#photoDialog .dialog-copy{padding:14px 16px 18px}#photoDialog .dialog-copy h2{font-size:20px}#photoDialog .dialog-address{align-items:flex-start;flex-direction:column}#photoDialog #copyAddress{width:100%}#photoDialog .photo-toolbar{gap:6px}#photoDialog .photo-help{font-size:10px!important}}
@media(max-height:500px){#photoDialog .photo-stage{height:180px}}
