/* Central city picker: fixed portal works inside modal/dialog overflow containers. */
input[data-city-suggest] { min-width: 0; background-image: none; }
input[data-city-suggest]:focus { outline-offset: 2px; }
.hm-city-hint-v170 { display:block; margin-top:6px; font-size:.76rem; line-height:1.65; color:#60728a; font-weight:500; }
.hm-city-hint-v170.hm-city-error-v170 { color:#ad3444; }
.hm-city-options-v170 {
  position:fixed; z-index:2147482000; overflow-y:auto; overscroll-behavior:contain;
  background:#fff; border:1px solid #d7e2f0; border-radius:16px;
  box-shadow:0 16px 46px rgba(23,45,78,.19), 0 4px 10px rgba(23,45,78,.07);
  padding:6px; text-align:right; color:#21364e; box-sizing:border-box;
  -webkit-overflow-scrolling:touch;
}
.hm-city-options-v170[hidden] { display:none !important; }
.hm-city-option-v170 {
  display:flex; flex-direction:row; justify-content:space-between; align-items:center;
  gap:12px; width:100%; min-height:44px; padding:9px 12px; border:0; border-radius:10px;
  background:transparent; color:#263e56; cursor:pointer; font:inherit; text-align:right;
  -webkit-tap-highlight-color:transparent;
}
.hm-city-option-v170 strong { font-size:.94rem; font-weight:750; }
.hm-city-option-v170 span { font-size:.81rem; white-space:nowrap; color:#637d9b; }
.hm-city-option-v170:is(:hover,:focus-visible,.is-active) { background:#eaf3ff; outline:none; }
.hm-city-option-v170.is-active strong { color:#2057ad; }
.hm-city-empty-v170 {padding:16px 10px;line-height:1.8;color:#65778c;font-size:.9rem;}
@media(max-width:650px){
  .hm-city-options-v170 { border-radius:13px; }
  .hm-city-option-v170 { min-height:48px; }
  .hm-city-option-v170 span { font-size:.76rem; }
}

/* Stable grid width independent of content and hint length. */
.app-shell .form-grid.owner-fields,
.app-shell .owner-form-grid.owner-fields {
  width:100%;
  max-width:100%;
  min-width:0;
}
/* v171 — Stable, intrinsic-content-independent owner form columns.
   The late .form-grid/.owner-form-grid selector in app-bundle-v44.css
   otherwise overwrites .owner-fields and creates an implicit auto column. */
@media (min-width: 901px) {
  .app-shell .form-grid.owner-fields,
  .app-shell .owner-form-grid.owner-fields,
  .app-shell .owner-fields.form-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .app-shell .form-grid.owner-fields > .span-3,
  .app-shell .owner-form-grid.owner-fields > .span-3 {grid-column:1/-1 !important;}
  .app-shell .form-grid.owner-fields > .span-2,
  .app-shell .owner-form-grid.owner-fields > .span-2 {grid-column:span 2 !important;}
}
.app-shell .form-grid.owner-fields > *,
.app-shell .owner-form-grid.owner-fields > *,
.app-shell .form-grid.owner-fields label,
.app-shell .form-grid.owner-fields input,
.app-shell .form-grid.owner-fields select,
.app-shell .form-grid.owner-fields textarea,
.app-shell .form-grid.owner-fields .hm-city-hint-v170 {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.app-shell .form-grid.owner-fields .hm-city-hint-v170 {
  width: 100%;
  overflow-wrap: anywhere;
}
@media (max-width: 900px) {
  .app-shell .form-grid.owner-fields,
  .app-shell .owner-form-grid.owner-fields {
    display: grid;
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .app-shell .form-grid.owner-fields > .span-2,
  .app-shell .form-grid.owner-fields > .span-3 {
    grid-column: auto;
  }
}
