/* City selection: bounded panels and one shared priority order. */
#citySelectorDialog {
  position: fixed;
  inset: 95px 0 0;
  height: auto;
  max-height: calc(100vh - 95px);
  max-height: calc(100dvh - 95px);
  padding: 24px 40px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  visibility: hidden;
}
.header.domain-select #citySelectorDialog { visibility: visible; }
#citySelectorDialog .header-domain_select-top { flex: 0 0 auto; gap: 16px; }
#citySelectorDialog .header-domain_select-search { max-width: 674px; flex: 1; }
#domainSelectClose { border: 0; padding: 0; background: transparent; flex-shrink: 0; }
#domainSelectClose svg { width: 100%; height: 100%; fill: inherit; }
#citySelectorDialog .header-domain_select-domains {
  columns: auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  margin-top: 20px;
  padding-right: 12px;
  flex: 1 1 auto;
}
#citySelectorDialog .header-domain_select-domains-item { display: block; margin: 0 0 16px; }
#citySelectorDialog .header-domain_select-domains-item-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0 16px;
}
#citySelectorDialog .header-domain_select-domains-item-domain { padding: 10px 4px; overflow-wrap: anywhere; }
#citySelectorDialog .city-priority-group > p,
#nearCityList .city-priority-group > .modal-near-content-select-list-item-letter,
#installationCityList .city-priority-group > .centres-map-select-list-item-letter {
  width: auto;
  height: auto;
  min-height: 0;
  border: 0;
  border-radius: 0;
  display: block;
  margin: 0 0 10px;
  font-weight: 900;
}
#nearCityList .city-priority-group { flex-direction: column; margin-bottom: 16px; }
#nearCityList .modal-near-content-select-list-item-letter { flex-shrink: 0; }
#nearCityList a, #installationCityList a { overflow-wrap: anywhere; }
#citySelectorDialog .hidden { display: none; }
.city-selector-empty { margin: 12px 0; }
.city-selector-empty[hidden] { display: none; }
#citySelectorDialog a:focus-visible, #citySelectorDialog button:focus-visible,
.city-navigation a:focus-visible { outline: 2px solid #0054a6; outline-offset: 2px; }
.header-desktop-bottom-nav-item-children.city-navigation {
  max-height: calc(100vh - 180px);
  max-height: calc(100dvh - 180px);
  overflow-y: auto;
  overscroll-behavior: contain;
  width: 520px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 24px;
  padding: 20px 24px;
}
.header-desktop-bottom-nav-item:focus-within > .city-navigation { opacity: 1; pointer-events: auto; }
@media (max-width: 1170px) {
  .header.domain-select #citySelectorDialog, #citySelectorDialog {
    inset: 0;
    max-height: 100vh;
    max-height: 100dvh;
    padding: 20px;
  }
  #citySelectorDialog .header-domain_select-domains-item-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
  #citySelectorDialog .header-domain_select-domains-item-list { grid-template-columns: 1fr; }
  #citySelectorDialog .header-domain_select-search__input { padding-left: 12px; padding-right: 36px; }
  #citySelectorDialog .header-domain_select-search-button { width: 36px; }
}
