/* ADS-2 listings chrome. Beat public_apply_product.css button !important. */
html:has(body.ny-listings) {
    height: 100%;
    height: 100dvh;
    max-height: 100dvh;
    overflow: hidden !important;
    overscroll-behavior: none;
}
body.ny-listings {
    margin: 0;
    height: 100%;
    height: 100dvh;
    max-height: 100dvh;
    overflow: hidden !important;
    overscroll-behavior: none;
    display: flex;
    flex-direction: column;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    background: #f4f4f5;
    color: #18181b;
}
body.ny-listings button:not([class*="tox-"]):not(.ny-pin-tag):not(.ny-see-btn):not(.ny-alert-btn):not(.ny-theme-btn):not(.ny-lang-toggle):not(.ny-more-btn):not(.ny-lead-opt):not(.ny-lb-close):not(.ny-lb-nav):not(.ny-hero-hit):not(.ny-3d-switch):not(.ny-3d-btn):not(.ny-north-btn):not(.ny-copy-link):not(.ny-hood-map):not(.ny-place-chip):not(.ny-places-x):not(.ny-share):not(.ny-nav-btn):not(.ny-tab):not(.ny-unit-chip):not(.ny-tour):not(.ny-apply):not(.ny-signin-card):not(.ny-check):not(.ny-card):not(.ny-back):not(.ny-page):not(.ny-z-pill):not(.ny-z-chip):not(.ny-z-apply):not(.ny-z-save):not(.ny-z-opt):not(.ny-more-x):not(.ny-reset):not(.ny-energy-btn):not(.ny-heart),
body.ny-listings button:not([class*="tox-"]):not(.ny-pin-tag):not(.ny-see-btn):not(.ny-alert-btn):not(.ny-theme-btn):not(.ny-lang-toggle):not(.ny-more-btn):not(.ny-lead-opt):not(.ny-lb-close):not(.ny-lb-nav):not(.ny-hero-hit):not(.ny-3d-switch):not(.ny-3d-btn):not(.ny-north-btn):not(.ny-copy-link):not(.ny-hood-map):not(.ny-place-chip):not(.ny-places-x):not(.ny-share):not(.ny-nav-btn):not(.ny-tab):not(.ny-unit-chip):not(.ny-tour):not(.ny-apply):not(.ny-signin-card):not(.ny-check):not(.ny-card):not(.ny-back):not(.ny-page):not(.ny-z-pill):not(.ny-z-chip):not(.ny-z-apply):not(.ny-z-save):not(.ny-z-opt):not(.ny-more-x):not(.ny-reset):not(.ny-energy-btn):not(.ny-heart):hover {
    background: transparent !important;
    color: inherit !important;
    border-radius: 0 !important;
    font-weight: inherit !important;
    box-shadow: none !important;
    filter: none !important;
    border: 0 !important;
}
.ny-listings-app {
    flex: 1 1 auto;
    height: 100%;
    max-height: 100dvh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-height: 0;
}
.ny-bar { height: 52px; min-height: 52px; flex-shrink: 0; display: flex; align-items: center; gap: 12px; padding: 0 14px; background: #fff; border-bottom: 1px solid #ececec; }
.ny-top-intent { display: flex; gap: 4px; }
.ny-top-right { display: flex; align-items: center; gap: 8px; margin-left: auto; }
body.ny-listings .ny-nav-btn {
    border: 0 !important;
    background: transparent !important;
    color: #18181b !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    padding: 8px 10px !important;
    border-radius: 8px !important;
    cursor: pointer;
}
body.ny-listings .ny-nav-btn.is-on { background: #f4f4f5 !important; }
.ny-search-top {
    display: flex;
    gap: 8px;
    align-items: center;
    padding: 10px 16px;
    background: #fff;
    border-bottom: 1px solid #ececec;
    z-index: 8;
    min-height: 60px;
    flex-shrink: 0;
    box-sizing: border-box;
    position: relative;
}
body.ny-listings label.ny-z-search {
    flex: 1 1 220px;
    min-width: 180px;
    display: flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    margin: 0;
    padding: 0 12px;
    border: 1px solid #d4d4d8;
    border-radius: 8px;
    background: #fff;
    box-sizing: border-box;
    overflow: hidden;
    font-weight: 400 !important;
    font-size: 14px !important;
    color: #18181b !important;
    cursor: text;
}
.ny-z-search-ic { width: 18px; height: 18px; color: #71717a; flex: 0 0 18px; }
/* Beat public_apply_product.css global input { border/radius/background !important }. One box. */
body.ny-listings .ny-z-search input,
body.ny-listings .ny-z-search input[type="search"],
body.ny-listings .ny-z-search input:hover,
body.ny-listings .ny-z-search input:focus,
body.ny-listings .ny-z-search input:focus-visible {
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: none !important;
    background: transparent !important;
    box-shadow: none !important;
    font: inherit !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: inherit !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}
body.ny-listings .ny-z-search input[type="search"]::-webkit-search-decoration,
body.ny-listings .ny-z-search input[type="search"]::-webkit-search-cancel-button,
body.ny-listings .ny-z-search input[type="search"]::-webkit-search-results-button,
body.ny-listings .ny-z-search input[type="search"]::-webkit-search-results-decoration {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}
body.ny-listings .ny-z-search:focus-within {
    border-color: #006aff !important;
    box-shadow: 0 0 0 1px #006aff !important;
}
.ny-z-dd { position: relative; flex: 0 0 auto; }
body.ny-listings .ny-search-top .ny-basics-h,
body.ny-listings .ny-search-top h3,
body.ny-listings .ny-search-top .ny-basics-block {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}
@media (min-width: 841px) {
    .ny-basics-h,
    .ny-basics-block > h3 {
        display: none !important;
    }
}
body.ny-listings .ny-z-pill {
    height: 40px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    border: 1px solid #d4d4d8 !important;
    background: #fff !important;
    color: #18181b !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer;
    white-space: nowrap;
    box-shadow: none !important;
}
body.ny-listings .ny-z-pill svg { width: 12px; height: 12px; }
body.ny-listings .ny-z-pill .ny-z-sliders { width: 16px; height: 16px; }
body.ny-listings .ny-z-dd.is-open .ny-z-pill,
body.ny-listings .ny-z-pill.is-on {
    border-color: #006aff !important;
    box-shadow: 0 0 0 1px #006aff !important;
    color: #006aff !important;
}
.ny-z-panel {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 280px;
    background: #fff;
    border: 1px solid #e4e4e7;
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(15, 23, 42, 0.18);
    padding: 16px;
    z-index: 30;
}
.ny-z-panel[hidden] { display: none !important; }
.ny-z-panel-price { width: 340px; }
.ny-z-panel-beds { width: 360px; }
.ny-z-panel-type { width: 300px; }
.ny-z-panel-filters {
    width: min(440px, calc(100vw - 32px));
    max-height: min(70vh, 640px);
    overflow: auto;
    right: 0;
    left: auto;
}
.ny-z-h { display: block; font-size: 16px; font-weight: 700; margin: 0 0 10px; color: #18181b; }
.ny-z-sub { margin: 0 0 8px; font-size: 13px; color: #3f3f46; font-weight: 600; }
.ny-z-hint { margin: 0 0 12px; font-size: 13px; color: #71717a; }
body.ny-listings .ny-z-opt {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    border: 0 !important;
    background: #fff !important;
    color: #18181b !important;
    padding: 10px 8px !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer;
}
body.ny-listings .ny-z-opt:hover { background: #f4f4f5 !important; }
body.ny-listings .ny-z-opt.is-on { background: #eff6ff !important; color: #006aff !important; }
.ny-z-hist {
    display: flex;
    align-items: flex-end;
    gap: 2px;
    height: 56px;
    margin: 4px 0 4px;
}
.ny-z-hist b {
    flex: 1;
    min-width: 0;
    background: #3b82f6;
    border-radius: 2px 2px 0 0;
    display: block;
}
.ny-z-hist-axis {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: #71717a;
    margin-bottom: 12px;
}
.ny-z-minmax { display: flex; align-items: end; gap: 10px; margin: 0 0 14px; }
.ny-z-minmax label { flex: 1; display: grid; gap: 4px; font-size: 12px; font-weight: 600; color: #3f3f46; }
.ny-z-minmax input {
    width: 100%;
    height: 40px;
    border: 1px solid #d4d4d8;
    border-radius: 8px;
    padding: 0 10px;
    font: inherit;
    font-size: 14px;
    box-sizing: border-box;
}
.ny-z-dash { padding-bottom: 10px; color: #a1a1aa; font-weight: 700; }
.ny-z-seg { display: flex; gap: 0; margin: 0 0 12px; }
body.ny-listings .ny-z-chip {
    flex: 1 1 0;
    height: 36px !important;
    border: 1px solid #d4d4d8 !important;
    background: #fff !important;
    color: #18181b !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer;
    margin: 0 -1px 0 0;
}
body.ny-listings .ny-z-chip:first-child { border-radius: 8px 0 0 8px !important; }
body.ny-listings .ny-z-chip:last-child { border-radius: 0 8px 8px 0 !important; margin-right: 0; }
body.ny-listings .ny-z-chip.is-on {
    background: #eff6ff !important;
    color: #006aff !important;
    border-color: #006aff !important;
    z-index: 1;
    position: relative;
}
.ny-z-check {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    margin: 0 0 16px;
    color: #18181b;
}
.ny-z-check input { width: 16px; height: 16px; }
.ny-z-types { display: grid; gap: 8px; margin: 0 0 14px; }
.ny-z-types .ny-chip-row { display: grid; gap: 8px; }
.ny-z-types label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 500;
}
body.ny-listings .ny-z-apply {
    width: 100% !important;
    height: 44px !important;
    border: 0 !important;
    background: #006aff !important;
    color: #fff !important;
    border-radius: 8px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    cursor: pointer;
    margin-top: 8px;
}
body.ny-listings .ny-z-save {
    flex: 0 0 auto;
    height: 40px !important;
    padding: 0 16px !important;
    border: 0 !important;
    background: #006aff !important;
    color: #fff !important;
    border-radius: 8px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer;
    white-space: nowrap;
}
.ny-search-pane .ny-chips,
.ny-search-pane .ny-budget,
.ny-search-pane .ny-rooms,
.ny-search-pane .ny-filter-more { display: none; }
html.ny-sheet-lock,
html.ny-sheet-lock body.ny-listings {
    overflow: hidden !important;
    overscroll-behavior: none;
}
.ny-more {
    position: fixed;
    inset: 0;
    background: rgba(15, 23, 42, 0.45);
    z-index: 40;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 24px 12px 12px;
    overflow: hidden;
    overscroll-behavior: none;
    touch-action: pan-y;
    min-width: 0;
    max-width: 100%;
    width: 100%;
    box-sizing: border-box;
}
.ny-more[hidden] { display: none !important; }
.ny-more-card {
    width: min(720px, 100%);
    max-width: 100%;
    min-width: 0;
    max-height: calc(100vh - 36px);
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 64px rgba(0,0,0,.28);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    touch-action: pan-y;
    box-sizing: border-box;
}
.ny-more-head {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 16px 48px;
    border-bottom: 1px solid #ececec;
    font-size: 18px;
    flex: 0 0 auto;
}
body.ny-listings .ny-more-x {
    position: absolute;
    right: 12px;
    top: 10px;
    width: 36px !important;
    height: 36px !important;
    border: 0 !important;
    background: transparent !important;
    color: #18181b !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    cursor: pointer;
    border-radius: 8px !important;
}
.ny-more-body {
    overflow-x: hidden;
    overflow-y: auto;
    padding: 18px 22px 12px;
    overflow-anchor: none;
    flex: 1 1 auto;
    min-height: 0;
    min-width: 0;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    overscroll-behavior-x: none;
    touch-action: pan-y;
    box-sizing: border-box;
}
.ny-more-body h3 { margin: 8px 0 12px; font-size: 20px; }
.ny-more-label { display: block; font-size: 13px; font-weight: 700; margin: 10px 0 6px; }
.ny-asset-filters { margin: 0 0 16px; }
.ny-asset-filters select {
    width: 100%;
    max-width: 420px;
    padding: 8px 10px;
    border: 1px solid #d4d4d8;
    border-radius: 8px;
    font: inherit;
    background: #fff;
}
.ny-asset-filters .ny-more-label input {
    display: block;
    width: 100%;
    max-width: 220px;
    margin-top: 4px;
    padding: 6px 8px;
    border: 1px solid #d4d4d8;
    border-radius: 8px;
}
.ny-more-body input[type="date"],
.ny-more-body input[type="search"],
.ny-more-body select {
    width: 100%;
    height: 44px;
    border: 1px solid #d4d4d8;
    border-radius: 8px;
    padding: 0 12px;
    font: inherit;
    box-sizing: border-box;
    margin-bottom: 10px;
}
.ny-amen-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; margin: 0 0 14px; }
.ny-amen-tile {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 72px;
    border: 1px solid #d4d4d8;
    border-radius: 12px;
    padding: 10px 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    background: #fff;
    overflow: hidden;
}
.ny-amen-tile input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    pointer-events: none;
}
.ny-amen-tile span { position: relative; z-index: 0; }
.ny-amen-tile:has(input:checked) { border-color: #006aff; box-shadow: 0 0 0 1px #006aff; color: #006aff; background: #eff6ff; }
.ny-more-chips { margin: 0 0 14px; }
.ny-more-checks { margin: 0 0 16px; }
.ny-radio-col { display: grid; gap: 8px; margin: 0 0 16px; font-size: 14px; }
.ny-more-foot {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 12px 18px 16px;
    border-top: 1px solid #ececec;
    background: #fff;
    flex: 0 0 auto;
}
body.ny-listings .ny-reset {
    border: 0 !important;
    background: transparent !important;
    color: #006aff !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    cursor: pointer;
    padding: 8px !important;
}
.ny-more-foot .ny-z-apply { flex: 1; margin-top: 0; }
.ny-signin {
    position: absolute;
    top: 110px;
    right: 16px;
    width: 360px;
    background: #fff;
    border: 1px solid #e4e4e7;
    border-radius: 12px;
    padding: 16px;
    z-index: 20;
    display: grid;
    gap: 10px;
    box-shadow: 0 8px 24px rgba(0,0,0,.12);
}
.ny-signin[hidden] { display: none !important; }
.ny-signin-card {
    border: 1px solid #e4e4e7;
    border-radius: 10px;
    padding: 12px;
    cursor: default;
}
.ny-signin-note { font-size: 12px; color: #52525b; margin: 0; }
.ny-results { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 4px; }
body.ny-listings .ny-card-body .ny-card-badge {
    display: inline-flex !important;
    width: auto !important;
    max-width: max-content;
    align-items: center;
    background: #18181b !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    border-radius: 999px !important;
    padding: 3px 10px !important;
    margin: 8px 0 0 !important;
    line-height: 1.2;
}
.ny-bed-chips { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 8px; }
body.ny-listings .ny-card-body .ny-bed-chips span {
    display: inline-block !important;
    width: auto !important;
    background: #f4f4f5 !important;
    color: #18181b !important;
    border-radius: 999px !important;
    padding: 2px 8px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
}
.ny-tabs {
    display: flex;
    gap: 6px;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 10px -18px 0;
    padding: 8px 18px;
    position: sticky;
    top: 0;
    z-index: 4;
    background: #fff;
    border-bottom: 1px solid #f0f0f0;
}
body.ny-listings .ny-tabs button.ny-tab,
body.ny-listings .ny-tab {
    -webkit-appearance: none !important;
    appearance: none !important;
    border: 0 !important;
    background: #f4f4f5 !important;
    color: #18181b !important;
    border-radius: 999px !important;
    padding: 6px 10px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    cursor: pointer;
    white-space: nowrap;
    flex: 0 0 auto;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
}
body.ny-listings .ny-tabs button.ny-tab.is-on,
body.ny-listings .ny-tab.is-on { background: #18181b !important; color: #fff !important; }
.ny-empty { color: #6b7280; font-size: 13px; margin: 8px 0; }
.ny-sec { scroll-margin-top: 52px; padding: 16px 0 8px; border-bottom: 1px solid #f4f4f5; }
.ny-sec .ny-ad-h { margin: 0 0 10px; }
.ny-fact-grid { display: grid; gap: 16px; }
.ny-fact-col h4 { margin: 0 0 8px; font-size: 14px; }
.ny-fact-chips, .ny-policy-grid { display: flex; flex-wrap: wrap; gap: 8px; }
.ny-fact-chip, .ny-policy-card {
    display: inline-block;
    background: #f4f4f5;
    color: #18181b;
    border-radius: 12px;
    padding: 8px 12px;
    font-size: 13px;
    font-weight: 600;
}
.ny-policy-card { min-width: 140px; flex: 1 1 140px; }
.ny-policy-card p { margin: 4px 0 0; font-weight: 400; color: #52525b; font-size: 12px; }
.ny-score-row { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 12px 0; }
.ny-score-tile {
    background: #f4f4f5;
    border-radius: 14px;
    padding: 12px;
    display: grid;
    gap: 2px;
}
.ny-score-tile span { font-size: 12px; color: #52525b; font-weight: 600; }
.ny-score-tile strong { font-size: 28px; line-height: 1.1; }
.ny-score-tile small { color: #71717a; font-size: 11px; }
.ny-school-row { margin: 8px 0; }
.ny-school-row p { margin: 2px 0 0; color: #52525b; font-size: 13px; }
.ny-faq { margin: 8px 0; background: #fafafa; border-radius: 10px; padding: 8px 12px; }
.ny-faq summary { cursor: pointer; font-weight: 700; font-size: 13px; }
.ny-faq p { margin: 6px 0 0; color: #52525b; }
.ny-legal { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0; }
.ny-units-table {
    width: 100%;
    max-width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    font-size: 12px;
    letter-spacing: 0;
    text-transform: none;
    font-weight: 500;
    color: #3f3f46;
}
.ny-units-table th, .ny-units-table td {
    text-align: left;
    padding: 8px 8px 8px 0;
    border-bottom: 1px solid #ececec;
    vertical-align: middle;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ny-units-table th {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #8b8b93;
}
.ny-units-table th:nth-child(1),
.ny-units-table td:nth-child(1) { width: 32%; }
.ny-units-table th:nth-child(2),
.ny-units-table td:nth-child(2) { width: 10%; }
.ny-units-table th:nth-child(3),
.ny-units-table td:nth-child(3) { width: 14%; }
.ny-units-table th:nth-child(4),
.ny-units-table td:nth-child(4) { width: 16%; }
.ny-units-table th:nth-child(5),
.ny-units-table td:nth-child(5) { width: 28%; }
.ny-units-table td:last-child { padding-right: 0; text-align: right; }
.ny-units-table tr.ny-unit-row { cursor: pointer; }
.ny-units-table tr.ny-unit-row:hover td { background: #f8fafc; }
.ny-unit-id {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    max-width: 100%;
}
.ny-unit-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    max-width: 100%;
}
body.ny-listings button.ny-unit-open {
    appearance: none !important;
    border: 0 !important;
    background: transparent !important;
    color: #2563eb !important;
    font: 700 12px/1.2 inherit !important;
    padding: 0 !important;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left;
}
body.ny-listings .ny-units-table .ny-tour {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    padding: 4px 10px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: nowrap;
}
.ny-energy-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    margin-left: 8px;
    padding: 0 8px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 800;
    color: #18181b;
    vertical-align: middle;
}
.ny-energy-pill.is-A { background: #4ade80; }
.ny-energy-pill.is-B { background: #a3e635; }
.ny-energy-pill.is-C { background: #facc15; }
.ny-energy-pill.is-D { background: #fbbf24; }
.ny-energy-pill.is-F { background: #f87171; }
.ny-energy-pill.is-N { background: #d4d4d8; }
body.ny-listings .ny-tour, body.ny-listings .ny-apply {
    border: 1px solid #2563eb !important;
    background: #fff !important;
    color: #2563eb !important;
    border-radius: 999px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer;
    flex: 1 1 0;
}
body.ny-listings .ny-apply { background: #2563eb !important; color: #fff !important; }
.ny-cta-row { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
body.ny-listings .ny-unit-chip {
    border: 1px solid #d4d4d8 !important;
    background: #fff !important;
    color: #18181b !important;
    border-radius: 999px !important;
    padding: 6px 10px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    cursor: pointer;
}
body.ny-listings .ny-unit-chip.is-on {
    background: #18181b !important;
    color: #fff !important;
    border-color: #18181b !important;
}
.ny-cost-out { margin: 12px 0; }
.ny-cost-total {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin: 10px 0 4px;
    font-size: 14px;
}
.ny-cost-total strong { font-size: 22px; }
.ny-cost-lines { list-style: none; margin: 0 0 12px; padding: 0; }
.ny-cost-lines li { display: flex; justify-content: space-between; font-size: 13px; color: #52525b; padding: 4px 0; }
#ny-pet-fields { display: grid; gap: 8px; margin: 8px 0; }
#ny-pet-fields[hidden],
#ny-bulk-n[hidden],
.ny-lead label[hidden],
.ny-lead #ny-bulk-n[hidden] {
    display: none !important;
}
.ny-split {
    flex: 1 1 0%;
    min-height: 0;
    height: auto;
    max-height: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 560px;
    grid-template-rows: minmax(0, 1fr);
    align-items: stretch;
    overflow: hidden;
}
@media (min-width: 1100px) {
    body.ny-listings:has(#ny-overlay-pane:not([hidden])) .ny-split {
        grid-template-columns: minmax(0, 1.2fr) minmax(580px, min(44vw, 740px));
    }
}
.ny-bar-brand { display: flex; align-items: center; gap: 8px; color: inherit; text-decoration: none; }
.ny-bar-brand img { height: 32px; width: auto; }
.ny-lang { display: flex; gap: 6px; margin-left: auto; }
.ny-lang a {
    font-size: 12px;
    font-weight: 700;
    color: #52525b;
    text-decoration: none;
    padding: 4px 7px;
    border-radius: 6px;
}
.ny-lang a.is-on { background: #18181b; color: #fff; }
.ny-lang-dd {
    position: relative;
    margin-left: auto;
}
body.ny-listings .ny-lang-toggle {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    height: 32px !important;
    min-width: auto !important;
    max-width: 11rem;
    padding: 0 10px !important;
    border: 1px solid #e4e4e7 !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: #18181b !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    cursor: pointer;
    white-space: nowrap;
}
body.ny-listings .ny-lang-toggle svg {
    width: 12px;
    height: 12px;
    flex: 0 0 auto;
    opacity: 0.65;
}
.ny-lang-menu {
    position: absolute;
    top: calc(100% + 4px);
    inset-inline-end: 0;
    z-index: 80;
    min-width: 10rem;
    padding: 6px 0;
    background: #fff;
    border: 1px solid #e4e4e7;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}
.ny-lang-menu[hidden] { display: none !important; }
.ny-lang-item {
    display: block;
    padding: 8px 12px;
    font-size: 13px;
    font-weight: 500;
    color: #18181b;
    text-decoration: none;
}
.ny-lang-item:hover,
.ny-lang-item.is-on {
    background: #f4f4f5;
}
body.ny-listings .ny-theme-btn {
    width: 32px !important;
    height: 32px !important;
    padding: 0 !important;
    border: 1px solid #e4e4e7 !important;
    background: #fff !important;
    color: #18181b !important;
    border-radius: 999px !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    cursor: pointer;
    display: grid !important;
    place-items: center;
}
.ny-mode select, .ny-place input, .ny-range input, .ny-search-pane select {
    border: 1px solid #e4e4e7; border-radius: 8px; padding: 8px 10px; font: inherit; background: #fff;
}
.ny-place { flex: 1; }
.ny-place input { width: 100%; }
.ny-sr { position: absolute; left: -9999px; }
.ny-map-col {
    position: relative;
    min-height: 0;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
    background: #dce3ea;
}
.ny-listings-map {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    z-index: 1;
}
.ny-listings-map .maplibregl-map,
.ny-listings-map .maplibregl-canvas-container,
.ny-listings-map .maplibregl-canvas {
    width: 100% !important;
    height: 100% !important;
}
.ny-map-tools { position: absolute; left: 12px; right: auto; bottom: 14px; z-index: 5; display: flex; flex-wrap: wrap; gap: 6px; align-items: center; background: #fff; border-radius: 18px; padding: 7px 10px; box-shadow: 0 8px 28px rgba(0,0,0,.14); max-width: calc(100% - 24px); }
body.ny-listings .ny-tool {
    border: 0 !important;
    background: transparent !important;
    color: #18181b !important;
    font: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer;
    padding: 7px 10px !important;
    border-radius: 10px !important;
}
body.ny-listings .ny-tool:hover,
body.ny-listings .ny-tool.is-on {
    background: #f4f4f5 !important;
}
.ny-tool-check { font-size: 12px; font-weight: 500; display: flex; gap: 6px; align-items: center; color: #3f3f46; }
.ny-map-3d { position: absolute; top: 12px; right: 12px; z-index: 6; display: flex; align-items: center; gap: 8px; }
body.ny-listings button.ny-north-btn {
    min-width: 40px !important;
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    border: 1px solid #e8eaed !important;
    border-radius: 50% !important;
    background: #fff !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.18), 0 0 0 1px rgba(0,0,0,.04) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer;
}
body.ny-listings button.ny-north-btn:hover {
    background: #fff !important;
    box-shadow: 0 2px 8px rgba(0,0,0,.22) !important;
}
.ny-compass {
    width: 28px;
    height: 28px;
    display: block;
    overflow: visible;
}
.ny-compass-needle {
    transform-origin: 20px 20px;
    transform-box: view-box;
    transition: transform 80ms linear;
}
.ny-listings-map.is-spin .maplibregl-canvas,
.ny-listings-map.is-spin .maplibregl-canvas-container {
    cursor: grab !important;
    touch-action: none;
}
.ny-listings-map.is-spinning .maplibregl-canvas,
.ny-listings-map.is-spinning .maplibregl-canvas-container {
    cursor: grabbing !important;
}
.ny-listings-map.is-spin .maplibregl-marker {
    pointer-events: none;
}
body.ny-listings button.ny-3d-switch,
body.ny-listings button.ny-3d-btn {
    display: flex !important;
    align-items: stretch !important;
    gap: 0 !important;
    min-width: 118px !important;
    padding: 3px !important;
    border: 1px solid #d4d4d8 !important;
    background: #fff !important;
    color: #18181b !important;
    border-radius: 999px !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.22) !important;
    font-weight: 800 !important;
    font-size: 13px !important;
    cursor: pointer;
}
body.ny-listings .ny-3d-switch .ny-3d-side {
    flex: 1 1 0;
    text-align: center;
    padding: 8px 14px;
    border-radius: 999px;
    line-height: 1;
    font-weight: 800;
    font-size: 13px;
    color: #52525b;
    background: transparent;
}
body.ny-listings button.ny-3d-switch[aria-pressed="false"] .ny-3d-side[data-mode="2d"],
body.ny-listings button.ny-3d-switch[aria-pressed="true"] .ny-3d-side[data-mode="3d"] {
    background: #18181b !important;
    color: #fff !important;
}
.ny-places-box[hidden],
.ny-travel-box[hidden],
.ny-draw-hint[hidden] {
    display: none !important;
}
.ny-travel-box {
    position: absolute;
    left: 12px;
    bottom: 70px;
    z-index: 8;
    width: min(360px, calc(100% - 24px));
    background: #fff;
    border: 2px solid #2f3a44;
    border-radius: 14px;
    padding: 12px;
    box-shadow: 0 12px 32px rgba(0,0,0,.18);
    display: grid;
    gap: 8px;
}
.ny-travel-row { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.ny-travel-box select {
    border: 1px solid #c4c4cc;
    border-radius: 10px;
    padding: 8px 10px;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    background: #fff;
    color: #1f2937;
}
.ny-listings-map.is-travel .maplibregl-canvas,
.ny-listings-map.is-travel .maplibregl-canvas-container {
    cursor: crosshair !important;
}
.ny-listings-map.is-travel .maplibregl-marker {
    pointer-events: none;
}
.ny-stub { margin: 0; font-size: 12px; color: #71717a; max-width: 240px; }
.ny-draw-hint {
    position: absolute;
    left: 50%;
    top: 12px;
    transform: translateX(-50%);
    z-index: 6;
    background: #18181b;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    padding: 8px 12px;
    border-radius: 999px;
}
.ny-places-box {
    position: absolute;
    left: 12px;
    bottom: 70px;
    z-index: 7;
    width: min(360px, calc(100% - 24px));
    background: #fff;
    border: 2px solid #2f3a44;
    border-radius: 14px;
    padding: 12px;
    box-shadow: 0 12px 32px rgba(0,0,0,.18);
}
.ny-places-head { display: flex; align-items: center; justify-content: space-between; margin: 0 0 8px; }
.ny-places-head strong, .ny-places-sub { display: block; font-size: 15px; color: #1f2937; margin: 8px 0 8px; }
.ny-places-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 10px; }
body.ny-listings button.ny-place-chip {
    border: 1px solid #c4c4cc !important;
    background: #fff !important;
    color: #1f2937 !important;
    border-radius: 10px !important;
    padding: 8px 12px !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    cursor: pointer;
}
body.ny-listings button.ny-place-chip.is-on {
    background: #e0f2fe !important;
    border-color: #0284c7 !important;
    color: #0c4a6e !important;
}
body.ny-listings button.ny-places-x {
    border: 0 !important;
    background: #2f3a44 !important;
    color: #fff !important;
    width: 32px !important;
    height: 32px !important;
    border-radius: 8px !important;
    font-weight: 800 !important;
    cursor: pointer;
}
.ny-pane {
    background: #fff;
    border-left: 1px solid #ececec;
    min-height: 0;
    min-width: 0;
    height: 100%;
    max-height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.ny-search-pane, .ny-overlay-pane { padding: 0 18px 24px; }
.ny-overlay-pane { padding-bottom: 32px; }
.ny-view-tabs {
    display: flex;
    justify-content: flex-end;
    gap: 20px;
    margin: 0 -18px 8px;
    padding: 4px 18px 0;
    border-bottom: 1px solid #f0f0f0;
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 2;
}
body.ny-listings .ny-view-tabs button {
    background: none !important;
    color: #8b8b93 !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    padding: 12px 2px 9px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    cursor: pointer;
    letter-spacing: 0.01em;
}
body.ny-listings .ny-view-tabs button.is-on {
    color: #0f766e !important;
    font-weight: 700 !important;
    border-bottom-color: #0f766e !important;
}
.ny-sec { margin: 0; }
.ny-chip-row { display: flex; flex-wrap: wrap; gap: 8px; }
.ny-chip-row label,
.ny-chip {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: 1px solid #e4e4e7;
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 13px;
    cursor: pointer;
    background: #fff;
    user-select: none;
    overflow: hidden;
}
.ny-chip-row label:has(input:checked),
.ny-chip:has(input:checked) {
    background: #18181b;
    color: #fff !important;
    border-color: #18181b;
}
.ny-chip-row input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    pointer-events: none;
}
.ny-chip-row span { position: relative; z-index: 0; color: #71717a; font-size: 12px; font-variant-numeric: tabular-nums; font-weight: 700; }
.ny-chip-row label:has(input:checked) span { color: #fff !important; }
body.ny-listings #ny-beds button {
    border: 1px solid #e4e4e7 !important;
    background: #fff !important;
    color: #18181b !important;
    border-radius: 999px !important;
    padding: 6px 14px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer;
    box-shadow: none !important;
}
body.ny-listings #ny-beds button.is-on {
    background: #18181b !important;
    color: #fff !important;
    border-color: #18181b !important;
}
.ny-checks {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px 14px;
}
.ny-checks label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    cursor: pointer;
    line-height: 1.25;
    min-height: 22px;
}
.ny-checks input {
    appearance: auto;
    -webkit-appearance: checkbox;
    width: 18px;
    height: 18px;
    margin: 0;
    flex: 0 0 18px;
    accent-color: #18181b;
    cursor: pointer;
}
.ny-checks span {
    margin-left: auto;
    color: #a1a1aa;
    font-size: 12px;
    font-variant-numeric: tabular-nums;
}
.ny-range { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 8px; }
.ny-all { border-top: 1px solid #f4f4f5; margin-top: 10px; }
.ny-all summary { cursor: pointer; font-weight: 700; padding: 12px 0; font-size: 14px; list-style: none; }
.ny-all summary::-webkit-details-marker { display: none; }
.ny-energy-strip { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
body.ny-listings .ny-energy-strip button.ny-energy-btn {
    border: 1px solid #e4e4e7 !important;
    background: #fafafa !important;
    color: #18181b !important;
    padding: 9px 0 !important;
    cursor: pointer;
    font-weight: 800 !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    outline: none !important;
}
body.ny-listings .ny-energy-strip button.ny-energy-btn.is-on {
    background: #18181b !important;
    color: #fff !important;
    border-color: #18181b !important;
}
.ny-see { position: sticky; bottom: 0; background: linear-gradient(transparent, #fff 28%); padding: 18px 0 12px; }
body.ny-listings .ny-see-btn {
    width: 100%;
    border: 0 !important;
    background: #e8b923 !important;
    color: #18181b !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    border-radius: 10px !important;
    padding: 14px !important;
    cursor: pointer;
}
body.ny-listings .ny-alert-btn {
    border: 0 !important;
    background: #e23d48 !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    cursor: pointer;
    font-weight: 700 !important;
    font-size: 13px !important;
    white-space: nowrap;
}
.ny-filter-more { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 14px 0 12px; flex-wrap: wrap; }
body.ny-listings .ny-more-btn {
    display: inline-flex !important;
    align-items: center;
    border: 2px solid #0f766e !important;
    background: #ecfdf5 !important;
    color: #0f766e !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    cursor: pointer;
    padding: 11px 16px !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}
.ny-pager { display: flex; flex-wrap: wrap; gap: 4px; margin: 12px 0 20px; }
body.ny-listings .ny-page {
    min-width: 36px;
    border: 1px solid #e4e4e7 !important;
    background: #fff !important;
    color: #18181b !important;
    border-radius: 6px !important;
    padding: 8px !important;
    font-weight: 700 !important;
    cursor: pointer;
}
body.ny-listings .ny-page.is-on { background: #18181b !important; color: #fff !important; border-color: #18181b !important; }
.ny-overlay-foot {
    position: sticky;
    bottom: 0;
    background: linear-gradient(transparent, #fff 30%);
    padding: 16px 0 10px;
}
.ny-ad-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin: 0 0 10px;
}
body.ny-listings a.ny-share,
body.ny-listings button.ny-share,
body.ny-listings button.ny-copy-link {
    display: grid !important;
    place-items: center !important;
    width: 40px !important;
    height: 40px !important;
    padding: 0 !important;
    border: 0 !important;
    background: #e8eaed !important;
    color: #3c4043 !important;
    border-radius: 50% !important;
    cursor: pointer;
    text-decoration: none !important;
}
body.ny-listings a.ny-share svg,
body.ny-listings button.ny-share svg {
    width: 18px;
    height: 18px;
    display: block;
    overflow: visible;
    flex: 0 0 auto;
}
body.ny-listings a.ny-share:hover,
body.ny-listings button.ny-share:hover,
body.ny-listings button.ny-share.is-on {
    background: #dadce0 !important;
    color: #111113 !important;
}
.ny-ad-meta { font-size: 13px; color: #71717a; margin: 0 0 12px; }
.ny-ad-h, .ny-descript h3, .ny-lead h3 {
    color: #c9a227;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: uppercase;
    margin: 22px 0 10px;
}
.ny-video-badge {
    position: absolute;
    left: 10px;
    top: 10px;
    background: #18181b;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
    padding: 4px 8px;
    border-radius: 4px;
}
.ny-energy-arrow {
    display: flex;
    align-items: stretch;
    border: 2px solid #18181b;
    margin: 0 0 8px;
    overflow: hidden;
    background: #fff;
}
.ny-energy-score {
    min-width: 92px;
    padding: 10px 12px;
    font-size: 26px;
    font-weight: 800;
    border-right: 2px solid #18181b;
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}
.ny-energy-score small { font-size: 10px; font-weight: 700; color: #52525b; margin-top: 4px; }
.ny-energy-arrow.is-score-only .ny-energy-score { border-right: 0; flex: 1; }
.ny-energy-letter {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 10px 18px 10px 14px;
    font-size: 32px;
    font-weight: 800;
    color: #18181b;
    clip-path: polygon(0 0, calc(100% - 16px) 0, 100% 50%, calc(100% - 16px) 100%, 0 100%);
}
.ny-energy-letter.is-A { background: #4ade80; }
.ny-energy-letter.is-B { background: #a3e635; }
.ny-energy-letter.is-C { background: #facc15; }
.ny-energy-letter.is-D { background: #fbbf24; }
.ny-energy-letter.is-F { background: #f87171; }
.ny-energy-letter.is-N { background: #d4d4d8; }
.ny-hood-card { background: #f4f4f5; padding: 16px; border-radius: 10px; position: relative; }
.ny-hood-card h4 { margin: 0 80px 8px 0; font-size: 16px; }
body.ny-listings button.ny-hood-map {
    position: absolute;
    top: 12px;
    right: 12px;
    border: 1px solid #d4d4d8 !important;
    background: #fff !important;
    color: #18181b !important;
    border-radius: 8px !important;
    padding: 7px 10px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    cursor: pointer;
    max-width: 46%;
}
.ny-agency-card { padding: 4px 0 12px; }
.ny-agency-card p { margin: 4px 0 0; color: #52525b; }
.ny-sticky-agency {
    position: sticky;
    bottom: 0;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: #3d4a55;
    color: #fff;
    padding: 12px 18px;
    margin: 20px -18px 0;
}
.ny-sticky-agency p { margin: 2px 0 0; font-size: 12px; color: #d4d4d8; }
.ny-agency { background: #2f3a44; color: #fff; padding: 16px; border-radius: 12px 12px 0 0; position: relative; }
.ny-agency p { margin: 4px 0 0; color: #d4d4d8; font-size: 13px; }
body.ny-listings .ny-contact-x {
    position: absolute;
    right: 10px;
    top: 10px;
    border: 0 !important;
    background: none !important;
    color: #fff !important;
    font-size: 16px !important;
    cursor: pointer;
}
.ny-contact-panel .ny-lead { border-radius: 0 0 12px 12px; margin: 0; }
.ny-result-count { font-size: 13px; font-weight: 700; color: #52525b; margin: 10px 0 8px; }
.ny-results { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 4px; }
body.ny-listings .ny-card {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    border: 1px solid #e5e7eb !important;
    border-radius: 16px !important;
    overflow: hidden;
    cursor: pointer;
    background: #fff !important;
    color: #111827 !important;
    text-align: left;
    padding: 0 !important;
    font: inherit !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}
body.ny-listings .ny-card:hover { box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12); }
.ny-card-media { position: relative; }
body.ny-listings .ny-heart {
    width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: #18181b !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.28) !important;
    cursor: pointer;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    z-index: 2;
}
body.ny-listings .ny-heart svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}
body.ny-listings .ny-heart.is-on {
    background: #fff !important;
    color: #e11d48 !important;
}
body.ny-listings .ny-heart.is-on svg {
    fill: currentColor;
    stroke: currentColor;
}
.ny-card-media .ny-heart {
    position: absolute;
    top: 10px;
    right: 10px;
}
.ny-overlay-head .ny-heart {
    margin-left: auto;
    background: #fff !important;
    border: 1px solid #e4e4e7 !important;
}
.ny-units-table .ny-heart {
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px;
    box-shadow: none !important;
    background: #fff !important;
    border: 1px solid #e4e4e7 !important;
}
.ny-units-table .ny-heart svg {
    width: 13px;
    height: 13px;
}
html[data-theme="dark"] body.ny-listings .ny-heart {
    background: rgba(24, 24, 27, 0.88) !important;
    color: #fafafa !important;
    border-color: #3f3f46 !important;
}
html[data-theme="dark"] body.ny-listings .ny-heart.is-on {
    color: #fb7185 !important;
}
.ny-card img, .ny-card .ny-ph {
    width: 100%;
    height: 176px;
    object-fit: cover;
    background: #e5e7eb !important;
    display: block;
}
.ny-card .ny-ph {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #6b7280;
    font-size: 12px;
    font-weight: 600;
}
.ny-units-pill {
    position: absolute;
    left: 10px;
    top: 10px;
    background: #1d4ed8;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    border-radius: 999px;
    padding: 5px 10px;
    box-shadow: 0 1px 2px rgba(0,0,0,.2);
}
.ny-owner-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.02em;
    border-radius: 999px;
    padding: 5px 10px;
    line-height: 1.2;
    width: auto;
    max-width: max-content;
    vertical-align: middle;
}
.ny-card-media .ny-owner-pill {
    position: absolute;
    left: 10px;
    bottom: 10px;
    font-size: 12px;
    padding: 6px 12px;
    box-shadow: 0 8px 18px rgba(17, 24, 39, 0.28);
}
.ny-owner-foundation {
    background: linear-gradient(180deg, #8b1e2d 0%, #5c101c 100%);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.16);
    text-transform: none;
}
.ny-units-table .ny-owner-pill {
    flex: 0 0 auto;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0;
    padding: 2px 8px;
    gap: 4px;
    max-width: 46%;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ny-headline + .ny-owner-pill,
.ny-overlay-head + .ny-owner-pill {
    margin: 6px 0 10px;
    font-size: 13px;
}
.ny-owner-third { background: #fff; color: #111827; border: 1px solid #e5e7eb; padding-left: 10px; }
html[data-theme="dark"] .ny-owner-third { background: #18181b; color: #f5f5f7; border-color: #3f3f46; }
.ny-card-body { padding: 12px 14px 14px; display: grid; gap: 6px; }
.ny-card-price-row { display: flex; align-items: baseline; gap: 8px; }
.ny-card-price-row strong { font-size: 22px; font-weight: 800; color: #111827; }
.ny-fees { color: #6b7280; font-size: 13px; font-weight: 500; }
.ny-card-title { font-weight: 600; font-size: 14px; color: #111827 !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ny-card-addr { color: #6b7280; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ny-bed-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
body.ny-listings .ny-card-body .ny-bed-chip {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    width: auto !important;
    border: 1px solid #e5e7eb !important;
    background: #fff !important;
    color: #111827 !important;
    border-radius: 999px !important;
    padding: 7px 12px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}
.ny-bed-chip b { font-weight: 800; }
.ny-card-amenity { font-size: 13px; color: #374151; font-weight: 600; }
body.ny-listings .ny-check {
    margin-top: 6px;
    width: 100%;
    border: 0 !important;
    background: #2563eb !important;
    color: #fff !important;
    border-radius: 10px !important;
    padding: 11px 12px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer;
}
body.ny-listings .ny-check:hover { background: #1d4ed8 !important; }
.ny-bldg-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    pointer-events: auto;
}
.ny-bldg-bubble {
    display: flex;
    align-items: center;
    gap: 6px;
    background: #047857 !important;
    color: #fff !important;
    border: 2px solid #fff;
    border-radius: 999px;
    padding: 7px 12px 7px 8px;
    font-weight: 800;
    font-size: 13px;
    box-shadow: 0 4px 16px rgba(0,0,0,.32);
    cursor: pointer;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    white-space: nowrap;
    line-height: 1.1;
}
.ny-bldg-bubble b {
    min-width: 22px;
    height: 22px;
    padding: 0 4px;
    border-radius: 999px;
    background: rgba(255,255,255,.22);
    display: grid;
    place-items: center;
    font-size: 12px;
}
.ny-bldg-bubble.ny-pin-rent { background: #047857 !important; color: #fff !important; }
.ny-bldg-bubble.ny-pin-rent_soon { background: #e8b923 !important; color: #18181b !important; }
.ny-bldg-bubble.ny-pin-sale { background: #6d28d9 !important; color: #fff !important; }
.ny-bldg-bubble.ny-pin-presale { background: #1d4ed8 !important; color: #fff !important; }
.ny-bldg-popup .maplibregl-popup-content {
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 12px;
}
.ny-bldg-popup .maplibregl-popup-tip { display: none; }
.ny-bldg-card {
    min-width: 148px;
    max-width: 200px;
    background: #fff !important;
    color: #18181b !important;
    border: 1px solid rgba(24,24,27,.12);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0,0,0,.28);
    padding: 8px 8px 6px;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    pointer-events: auto;
}
.ny-bldg-card-name {
    font-size: 11px;
    font-weight: 700;
    color: #52525b !important;
    letter-spacing: 0.02em;
    margin: 0 2px 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ny-bldg-price {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    border-radius: 8px;
    padding: 7px 8px;
    margin: 0 0 4px;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.15;
    cursor: pointer;
    border: 0;
    color: #fff !important;
}
.ny-bldg-price.ny-pin-rent { background: #047857 !important; color: #fff !important; }
.ny-bldg-price.ny-pin-rent_soon { background: #e8b923 !important; color: #18181b !important; }
.ny-bldg-price.ny-pin-sale { background: #6d28d9 !important; color: #fff !important; }
.ny-bldg-price.ny-pin-presale { background: #1d4ed8 !important; color: #fff !important; }
.ny-bldg-price.is-on { outline: 2px solid #18181b; outline-offset: 1px; }
.ny-pin-stem {
    display: block;
    width: 3px;
    height: 14px;
    margin: 2px auto 0;
    background: #18181b;
}
.ny-pin-anchor {
    width: 16px;
    height: 16px;
    background: #18181b;
    border: 3px solid #fff;
    border-radius: 50%;
    box-shadow: 0 2px 8px rgba(0,0,0,.45);
}
.ny-legend {
    position: absolute;
    top: 12px;
    left: 52px;
    z-index: 5;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    background: rgba(255,255,255,.92);
    border-radius: 12px;
    padding: 6px 8px;
    box-shadow: 0 4px 16px rgba(0,0,0,.12);
}
.ny-lg {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 5px 10px;
    font-size: 12px;
    font-weight: 800;
    color: #fff !important;
}
.ny-lg.ny-pin-rent { background: #047857 !important; color: #fff !important; }
.ny-lg.ny-pin-rent_soon { background: #e8b923 !important; color: #18181b !important; }
.ny-lg.ny-pin-sale { background: #6d28d9 !important; color: #fff !important; }
.ny-lg.ny-pin-presale { background: #1d4ed8 !important; color: #fff !important; }
.ny-overlay-head { display: flex; align-items: center; gap: 8px; margin: 12px 0 10px; }
body.ny-listings .ny-back { border: 0 !important; background: none !important; font-size: 16px !important; font-weight: 700 !important; cursor: pointer; line-height: 1; color: #18181b !important; padding: 0 6px 0 0 !important; }
.ny-crumb { color: #71717a; font-size: 13px; }
.ny-headline { margin: 0 0 4px; font-size: 26px; line-height: 1.2; }
.ny-price { font-size: 32px; font-weight: 800; margin: 0; color: #0f766e; }
.ny-price-sub { margin: 0 0 12px; color: #52525b; }
.ny-place-line { color: #52525b; margin: 0 0 10px; font-size: 16px; }
.ny-gallery { display: grid; gap: 6px; margin: 0 0 16px; position: relative; }
.ny-gallery img, .ny-ph-hero { width: 100%; height: 280px; object-fit: cover; border-radius: 10px; background: #e4e4e7; }
.ny-photo-n { position: absolute; right: 10px; top: 10px; background: rgba(24,24,27,.72); color: #fff; font-size: 12px; padding: 3px 8px; border-radius: 999px; }
.ny-thumbs { display: flex; gap: 6px; overflow: auto; }
body.ny-listings .ny-thumb {
    padding: 0 !important;
    border: 2px solid transparent !important;
    background: none !important;
    border-radius: 8px !important;
    cursor: pointer;
}
body.ny-listings .ny-thumb.is-on { border-color: #e8b923 !important; }
.ny-thumbs img { height: 56px; width: 72px; object-fit: cover; border-radius: 6px; display: block; }
.ny-specs { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; background: transparent; border-radius: 0; overflow: visible; margin: 0 0 14px; }
.ny-spec { background: #f3f4f6; padding: 14px 16px; font-size: 14px; color: #3f3f46; line-height: 1.35; }
.ny-spec span { font-size: 12px; color: #71717a; }
.ny-feat { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; }
.ny-feat span { background: #f4f4f5; border-radius: 999px; padding: 4px 8px; font-size: 12px; }
.ny-dpe-block { margin: 0 0 16px; }
.ny-dpe-row { display: flex; align-items: center; gap: 10px; margin: 0 0 8px; }
.ny-dpe-letter { width: 48px; height: 48px; display: grid; place-items: center; background: #e8b923; border-radius: 8px; font-size: 22px; }
.ny-dpe-strip { display: grid; grid-template-columns: repeat(6, 1fr); gap: 4px; flex: 1; }
.ny-dpe { display: grid; place-items: center; border: 1px solid #e4e4e7; border-radius: 6px; padding: 8px 0; font-weight: 800; background: #fff; }
.ny-dpe.is-on { background: #18181b; color: #fff; border-color: #18181b; }
.ny-dpe-block p { font-size: 13px; color: #52525b; margin: 0; }
.ny-lead { display: grid; gap: 10px; background: #f4f4f5; padding: 18px 16px 16px; border-radius: 12px; margin: 8px 0 18px; }
.ny-lead-ask { margin: 0 0 8px; font-size: 13px; font-weight: 700; color: #3f3f46; }
.ny-lead-tabs { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; }
body.ny-listings .ny-lead-opt {
    flex: 1;
    border: 2px solid #d4d4d8 !important;
    background: #fff !important;
    color: #18181b !important;
    border-radius: 10px !important;
    padding: 10px 8px !important;
    cursor: pointer;
    font-weight: 800 !important;
    font-size: 13px !important;
    box-shadow: none !important;
}
body.ny-listings .ny-lead-opt.is-on {
    background: #18181b !important;
    color: #fff !important;
    border-color: #18181b !important;
}
.ny-lead-hint { margin: 0; font-size: 13px; color: #52525b; }
.ny-lead-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.ny-lead label { display: grid; gap: 4px; font-size: 12px; font-weight: 600; color: #3f3f46; }
.ny-lead input, .ny-lead textarea { border: 1px solid #d4d4d8; border-radius: 8px; padding: 10px 12px; font: inherit; font-weight: 400; background: #fff; }
.ny-lead-note { margin: 0; font-size: 12px; color: #71717a; }
.ny-hp { position: absolute; left: -9999px; }
.ny-listings-ok { background: #ecfdf3; color: #166534; padding: 10px 12px; border-radius: 8px; }
.ny-listings-err { background: #fef2f2; color: #b91c1c; padding: 10px 12px; border-radius: 8px; }
html[data-theme="dark"] .ny-listings-ok {
    background: #14532d !important;
    color: #bbf7d0 !important;
}
html[data-theme="dark"] .ny-listings-err {
    background: #7f1d1d !important;
    color: #fecaca !important;
}
.ny-similar { display: grid; gap: 8px; }
.ny-hood { font-size: 14px; color: #3f3f46; line-height: 1.45; }
.ny-split.is-list .ny-map-col, .ny-split.is-gallery .ny-map-col { display: none; }
.ny-split.is-list, .ny-split.is-gallery { grid-template-columns: 1fr; grid-template-rows: minmax(0, 1fr); }
.ny-split:not(.is-list) .ny-card-desc { display: none; }
.ny-split.is-list .ny-pane,
.ny-split.is-gallery .ny-pane { max-width: none; }
.ny-split.is-list .ny-search-pane,
.ny-split.is-gallery .ny-search-pane {
    max-width: 1120px;
    margin: 0 auto;
}
.ny-split.is-list .ny-budget .ny-range,
.ny-split.is-gallery .ny-budget .ny-range,
.ny-split.is-list .ny-rooms .ny-range,
.ny-split.is-gallery .ny-rooms .ny-range { max-width: 420px; }
.ny-split.is-list .ny-results { gap: 16px; }
.ny-split.is-list .ny-card {
    grid-template-columns: 240px 1fr;
    align-items: stretch;
}
.ny-split.is-list .ny-card-media,
.ny-split.is-list .ny-card img,
.ny-split.is-list .ny-card .ny-ph { width: 240px; height: 180px; }
.ny-split.is-list .ny-card-desc { display: block; margin-top: 8px; color: #3f3f46; line-height: 1.4; }
.ny-split.is-gallery .ny-results { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.ny-split.is-gallery .ny-card { grid-template-columns: 1fr; }
.ny-split.is-gallery .ny-card img, .ny-split.is-gallery .ny-card .ny-ph { width: 100%; height: 160px; }
.ny-all { display: block; border-top: 1px solid #ececec; padding-top: 8px; }
.maplibregl-ctrl-attrib { font-size: 10px; }
@media (max-width: 840px) {
    html:has(body.ny-listings),
    body.ny-listings,
    .ny-listings-app {
        height: 100dvh;
        max-height: 100dvh;
        overflow: hidden !important;
    }
    .ny-bar {
        height: auto;
        min-height: 48px;
        flex-wrap: wrap;
        gap: 6px;
        padding: 8px 10px;
    }
    .ny-bar-brand img { height: 26px; }
    .ny-top-intent {
        order: 3;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .ny-top-right { gap: 4px; }
    #ny-manage-rentals,
    #ny-advertise,
    #ny-help { display: none !important; }
    .ny-search-top {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 8px;
        align-items: center;
        overflow: visible;
        padding: 8px 10px;
        min-height: 0;
    }
    body.ny-listings label.ny-z-search {
        grid-column: 1;
        min-width: 0;
        width: 100%;
        flex: none;
        height: 44px;
    }
    body.ny-listings .ny-z-search input,
    body.ny-listings .ny-z-search input[type="search"] {
        min-width: 0 !important;
        width: 100% !important;
        height: 100% !important;
        font-size: 16px !important;
        text-overflow: ellipsis;
    }
    .ny-search-top .ny-z-dd:not([data-dd="filters"]),
    .ny-z-save { display: none; }
    .ny-z-dd[data-dd="filters"] { grid-column: 2; }
    body.ny-listings .ny-z-dd[data-dd="filters"] .ny-z-pill {
        height: 44px !important;
        background: #18181b !important;
        color: #fff !important;
        border-color: #18181b !important;
        padding: 0 14px !important;
    }
    .ny-more {
        padding: 0;
        align-items: stretch;
        justify-content: stretch;
        background: #fff;
        overflow: hidden;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        touch-action: pan-y;
    }
    .ny-more-card {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        height: 100dvh;
        max-height: 100dvh;
        min-height: 0;
        border-radius: 0;
        box-shadow: none;
        overflow: hidden;
        touch-action: pan-y;
    }
    .ny-more-body {
        flex: 1 1 auto;
        min-height: 0;
        min-width: 0;
        max-width: 100%;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: none;
        touch-action: pan-y;
    }
    .ny-more-head,
    .ny-more-foot {
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }
    .ny-more-foot {
        padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px));
    }
    .ny-amen-grid {
        grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    }
    .ny-more-basics .ny-basics-block { display: block; width: 100%; margin: 0 0 18px; }
    .ny-more-basics .ny-z-dd { display: block; width: 100%; margin: 0; }
    body.ny-listings .ny-more-basics .ny-z-pill {
        display: none !important;
    }
    .ny-more-basics .ny-basics-h {
        display: block !important;
        margin: 0 0 8px;
        font-size: 18px;
        font-weight: 700;
    }
    .ny-search-top .ny-basics-h,
    .ny-search-top h3 { display: none !important; }
    body.ny-listings .ny-more-basics .ny-z-panel,
    body.ny-listings .ny-more-basics .ny-z-panel-price,
    body.ny-listings .ny-more-basics .ny-z-panel-beds,
    body.ny-listings .ny-more-basics .ny-z-panel-type,
    body.ny-listings .ny-more-basics .ny-z-panel[hidden] {
        position: static !important;
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-shadow: none;
        border: 0;
        padding: 0;
        left: auto !important;
        right: auto !important;
        max-height: none;
        overflow: visible;
        box-sizing: border-box;
    }
    .ny-more-body .ny-z-seg,
    .ny-more-body .ny-z-minmax,
    .ny-more-body .ny-z-hist,
    .ny-more-body .ny-amen-grid,
    .ny-more-body .ny-chip-row,
    .ny-more-body .ny-range,
    .ny-more-body .ny-all,
    .ny-more-body section {
        max-width: 100%;
        min-width: 0;
    }
    .ny-more-body .ny-range {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    }
    .ny-more-body input,
    .ny-more-body select,
    .ny-more-body .ny-range input {
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box;
    }
    .ny-more-basics .ny-z-apply { display: none; }
    .ny-more-basics:empty { display: none; }
    .ny-legend,
    .ny-map-tools,
    .maplibregl-ctrl-top-left,
    .maplibregl-ctrl-bottom-left { display: none !important; }
    .ny-map-3d { top: 8px; right: 8px; }
    .ny-split {
        grid-template-columns: 1fr;
        grid-template-rows: minmax(42vh, 42vh) minmax(0, 1fr);
        height: auto;
        max-height: 100%;
        overflow: hidden;
    }
    .ny-map-col { min-height: 0; max-height: 100%; height: 100%; overflow: hidden; }
    .ny-listings-map { min-height: 0; }
    .ny-pane {
        max-height: 100%;
        height: 100%;
        overflow-x: hidden;
        overflow-y: auto;
        border-left: 0;
        -webkit-overflow-scrolling: touch;
    }
    .ny-search-pane, .ny-overlay-pane { padding: 0 12px 24px; }
    .ny-split.is-list,
    .ny-split.is-gallery { grid-template-rows: minmax(0, 1fr); }
    .ny-checks { grid-template-columns: 1fr; }
    .ny-cta-row { flex-wrap: wrap; }
    body.ny-listings .ny-tour,
    body.ny-listings .ny-apply { flex: 1 1 calc(50% - 8px); min-width: 140px; }
    .ny-sec:has(.ny-units-table) { overflow-x: hidden; }
    .ny-units-table { min-width: 0; width: 100%; }
    .ny-map-tools { display: none !important; }
    .ny-headline { font-size: 22px; }
    .ny-price { font-size: 22px; }
    .ny-tabs { margin-left: -12px; margin-right: -12px; padding-left: 12px; padding-right: 12px; }
    body.ny-listings:has(#ny-overlay-pane:not([hidden])) .ny-split {
        grid-template-rows: minmax(22vh, 22vh) minmax(0, 1fr);
    }
}
@media (max-width: 560px) {
    .ny-lang { display: none; }
    .ny-lang-dd { display: block; }
    .ny-split {
        grid-template-rows: minmax(40vh, 40vh) minmax(0, 1fr);
    }
    body.ny-listings:has(#ny-overlay-pane:not([hidden])) .ny-split {
        grid-template-rows: minmax(22vh, 22vh) minmax(0, 1fr);
    }
}

html[data-theme="dark"] body.ny-listings { background: #111113; color: #f5f5f7; }
html[data-theme="dark"] .ny-bar,
html[data-theme="dark"] .ny-pane,
html[data-theme="dark"] .ny-search-pane,
html[data-theme="dark"] .ny-overlay-pane,
html[data-theme="dark"] .ny-map-tools,
html[data-theme="dark"] .ny-legend,
html[data-theme="dark"] .ny-travel-box,
html[data-theme="dark"] .ny-view-tabs { background: #1c1c1e !important; border-color: #3f3f46; color: #f5f5f7; }
html[data-theme="dark"] .ny-view-tabs { border-bottom: 1px solid #3f3f46; }
html[data-theme="dark"] body.ny-listings .ny-view-tabs button { color: #d4d4d8 !important; }
html[data-theme="dark"] body.ny-listings .ny-view-tabs button.is-on { color: #5eead4 !important; border-bottom-color: #5eead4 !important; }
html[data-theme="dark"] .ny-sec,
html[data-theme="dark"] .ny-result-count,
html[data-theme="dark"] .ny-stub,
html[data-theme="dark"] .ny-tool-check,
html[data-theme="dark"] .ny-price-sub,
html[data-theme="dark"] .ny-place-line,
html[data-theme="dark"] .ny-crumb { color: #d4d4d8 !important; }
html[data-theme="dark"] body.ny-listings .ny-tool { color: #f5f5f7 !important; }
html[data-theme="dark"] body.ny-listings label.ny-z-search,
html[data-theme="dark"] .ny-z-panel,
html[data-theme="dark"] body.ny-listings .ny-z-pill {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] body.ny-listings .ny-z-search input,
html[data-theme="dark"] body.ny-listings .ny-z-search input:focus {
    color: #f5f5f7 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}
html[data-theme="dark"] .ny-z-minmax input { color: #f5f5f7; background: #2c2c2e; border-color: #71717a; }
html[data-theme="dark"] body.ny-listings .ny-z-opt { background: #2c2c2e !important; color: #f5f5f7 !important; }
html[data-theme="dark"] body.ny-listings .ny-z-opt.is-on,
html[data-theme="dark"] body.ny-listings .ny-z-chip.is-on { background: #1e3a5f !important; color: #93c5fd !important; }
html[data-theme="dark"] .ny-z-h,
html[data-theme="dark"] .ny-z-sub,
html[data-theme="dark"] .ny-z-check { color: #f5f5f7; }
html[data-theme="dark"] .ny-more-card,
html[data-theme="dark"] .ny-more-foot,
html[data-theme="dark"] .ny-amen-tile { background: #1c1c1e; color: #f5f5f7; border-color: #3f3f46; }
html[data-theme="dark"] .ny-more-head { border-bottom-color: #3f3f46; }
html[data-theme="dark"] body.ny-listings .ny-more-x { color: #f5f5f7 !important; }
html[data-theme="dark"] .ny-place input,
html[data-theme="dark"] .ny-mode select,
html[data-theme="dark"] .ny-range input,
html[data-theme="dark"] .ny-search-pane select,
html[data-theme="dark"] .ny-travel-box select,
html[data-theme="dark"] .ny-lead input,
html[data-theme="dark"] .ny-lead textarea {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border: 1px solid #71717a !important;
}
html[data-theme="dark"] .ny-chip-row label,
html[data-theme="dark"] .ny-chip {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] .ny-chip-row span { color: #a1a1aa !important; }
html[data-theme="dark"] .ny-chip-row label:has(input:checked),
html[data-theme="dark"] .ny-chip:has(input:checked) {
    background: #f5f5f7 !important;
    color: #111113 !important;
    border-color: #f5f5f7 !important;
}
html[data-theme="dark"] .ny-chip-row label:has(input:checked) span { color: #3f3f46 !important; }
html[data-theme="dark"] body.ny-listings #ny-beds button {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] body.ny-listings #ny-beds button.is-on {
    background: #f5f5f7 !important;
    color: #111113 !important;
    border-color: #f5f5f7 !important;
}
html[data-theme="dark"] .ny-card,
html[data-theme="dark"] .ny-spec,
html[data-theme="dark"] .ny-lead,
html[data-theme="dark"] .ny-dpe { background: #2c2c2e !important; color: #f5f5f7 !important; border-color: #52525b !important; }
html[data-theme="dark"] .ny-card-body strong,
html[data-theme="dark"] .ny-card-title,
html[data-theme="dark"] .ny-card-price-row strong,
html[data-theme="dark"] .ny-headline,
html[data-theme="dark"] .ny-price { color: #f5f5f7 !important; }
html[data-theme="dark"] .ny-card-addr,
html[data-theme="dark"] .ny-fees { color: #a1a1aa !important; }
html[data-theme="dark"] body.ny-listings .ny-card-body .ny-bed-chip {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #52525b !important;
}
html[data-theme="dark"] .ny-card-body span,
html[data-theme="dark"] .ny-card-desc,
html[data-theme="dark"] .ny-hood,
html[data-theme="dark"] .ny-spec span,
html[data-theme="dark"] .ny-dpe-block p,
html[data-theme="dark"] .ny-lead-note,
html[data-theme="dark"] .ny-checks label { color: #d4d4d8 !important; }
html[data-theme="dark"] .ny-split.is-list .ny-card-desc { color: #d4d4d8 !important; }
html[data-theme="dark"] body.ny-listings .ny-more-btn {
    background: #134e4a !important;
    color: #99f6e4 !important;
    border-color: #2dd4bf !important;
}
html[data-theme="dark"] body.ny-listings .ny-page {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] body.ny-listings .ny-page.is-on { background: #f5f5f7 !important; color: #111113 !important; }
html[data-theme="dark"] .ny-overlay-foot { background: linear-gradient(transparent, #1c1c1e 32%); }
html[data-theme="dark"] .ny-sticky-agency { background: #111113; }
html[data-theme="dark"] .ny-hood-card,
html[data-theme="dark"] .ny-energy-arrow,
html[data-theme="dark"] .ny-score-tile,
html[data-theme="dark"] .ny-fact-chip,
html[data-theme="dark"] .ny-policy-card,
html[data-theme="dark"] .ny-faq { background: #2c2c2e; color: #f5f5f7; border-color: #71717a; }
html[data-theme="dark"] .ny-tabs { background: #1c1c1e; border-bottom-color: #3f3f46; }
html[data-theme="dark"] body.ny-listings .ny-tab {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
}
html[data-theme="dark"] body.ny-listings .ny-tab.is-on {
    background: #f5f5f7 !important;
    color: #111113 !important;
}
html[data-theme="dark"] .ny-empty,
html[data-theme="dark"] .ny-ad-h,
html[data-theme="dark"] .ny-sec h3,
html[data-theme="dark"] .ny-sec h4,
html[data-theme="dark"] .ny-fact-col h4,
html[data-theme="dark"] .ny-faq summary,
html[data-theme="dark"] .ny-school-row strong,
html[data-theme="dark"] .ny-units-table,
html[data-theme="dark"] .ny-units-table th,
html[data-theme="dark"] .ny-units-table td,
html[data-theme="dark"] .ny-cost-total,
html[data-theme="dark"] .ny-cost-total span { color: #f5f5f7 !important; }
html[data-theme="dark"] .ny-units-table th,
html[data-theme="dark"] .ny-units-table td { border-bottom-color: #3f3f46; }
html[data-theme="dark"] .ny-units-table tr.ny-unit-row:hover td { background: #27272a; }
html[data-theme="dark"] body.ny-listings button.ny-unit-open { color: #93c5fd !important; }
html[data-theme="dark"] .ny-sec { border-bottom-color: #3f3f46; }
html[data-theme="dark"] .ny-policy-card p,
html[data-theme="dark"] .ny-score-tile span,
html[data-theme="dark"] .ny-score-tile small,
html[data-theme="dark"] .ny-cost-lines li,
html[data-theme="dark"] .ny-faq p,
html[data-theme="dark"] .ny-school-row p { color: #d4d4d8 !important; }
html[data-theme="dark"] .ny-similar .ny-card,
html[data-theme="dark"] .ny-similar .ny-card-body,
html[data-theme="dark"] .ny-similar .ny-card-title,
html[data-theme="dark"] .ny-similar .ny-card-body span,
html[data-theme="dark"] .ny-similar .ny-card-addr { color: #f5f5f7 !important; }
html[data-theme="dark"] body.ny-listings .ny-tour {
    background: #2c2c2e !important;
    color: #93c5fd !important;
    border-color: #60a5fa !important;
}
html[data-theme="dark"] body.ny-listings .ny-apply {
    background: #2563eb !important;
    color: #fff !important;
    border-color: #2563eb !important;
}
html[data-theme="dark"] .ny-z-h,
html[data-theme="dark"] .ny-z-sub,
html[data-theme="dark"] .ny-z-check,
html[data-theme="dark"] .ny-z-search-ic { color: #f5f5f7 !important; }
html[data-theme="dark"] body.ny-listings .ny-unit-chip {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] body.ny-listings .ny-unit-chip.is-on {
    background: #f5f5f7 !important;
    color: #111113 !important;
    border-color: #f5f5f7 !important;
}
html[data-theme="dark"] body.ny-listings button.ny-hood-map {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] body.ny-listings a.ny-share,
html[data-theme="dark"] body.ny-listings button.ny-share,
html[data-theme="dark"] body.ny-listings button.ny-copy-link {
    background: #3f3f46 !important;
    color: #f5f5f7 !important;
}
html[data-theme="dark"] .ny-price { color: #5eead4 !important; }
html[data-theme="dark"] .ny-places-box,
html[data-theme="dark"] .ny-travel-box { background: #1c1c1e; border-color: #71717a; }
html[data-theme="dark"] .ny-places-head strong,
html[data-theme="dark"] .ny-places-sub { color: #f5f5f7; }
html[data-theme="dark"] body.ny-listings button.ny-place-chip {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] body.ny-listings button.ny-place-chip.is-on {
    background: #0c4a6e !important;
    border-color: #38bdf8 !important;
    color: #e0f2fe !important;
}
.ny-poi-pop { min-width: 140px; }
.ny-poi-pop strong { display: block; font-size: 14px; }
.ny-poi-pop p { margin: 4px 0 0; font-size: 12px; color: #52525b; }
html[data-theme="dark"] body.ny-listings .ny-back,
html[data-theme="dark"] body.ny-listings .ny-theme-btn {
    color: #f5f5f7 !important;
    background: #2c2c2e !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] body.ny-listings button.ny-3d-switch,
html[data-theme="dark"] body.ny-listings button.ny-3d-btn {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #a1a1aa !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.45) !important;
}
html[data-theme="dark"] body.ny-listings button.ny-north-btn {
    background: #fff !important;
    border-color: #e8eaed !important;
    box-shadow: 0 1px 4px rgba(0,0,0,.4) !important;
}
html[data-theme="dark"] body.ny-listings .ny-3d-switch .ny-3d-side {
    color: #d4d4d8;
}
html[data-theme="dark"] body.ny-listings button.ny-3d-switch[aria-pressed="false"] .ny-3d-side[data-mode="2d"],
html[data-theme="dark"] body.ny-listings button.ny-3d-switch[aria-pressed="true"] .ny-3d-side[data-mode="3d"] {
    background: #f5f5f7 !important;
    color: #111113 !important;
}
html[data-theme="dark"] body.ny-listings .ny-lead-opt {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] body.ny-listings .ny-lead-opt.is-on {
    background: #f5f5f7 !important;
    color: #111113 !important;
    border-color: #f5f5f7 !important;
}
html[data-theme="dark"] .ny-lead-ask,
html[data-theme="dark"] .ny-lead-hint { color: #d4d4d8 !important; }
html[data-theme="dark"] .ny-lang a { color: #d4d4d8; }
html[data-theme="dark"] .ny-lang a.is-on { background: #f5f5f7; color: #111113; }
html[data-theme="dark"] body.ny-listings .ny-lang-toggle {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
}
html[data-theme="dark"] .ny-lang-menu {
    background: #1c1c1e;
    border-color: #3f3f46;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}
html[data-theme="dark"] .ny-lang-item { color: #f5f5f7; }
html[data-theme="dark"] .ny-lang-item:hover,
html[data-theme="dark"] .ny-lang-item.is-on { background: #2c2c2e; }
html[data-theme="dark"] .ny-feat span { background: #3f3f46; color: #f5f5f7; }
html[data-theme="dark"] .ny-energy-strip button.ny-energy-btn { background: #2c2c2e !important; color: #f5f5f7 !important; border-color: #71717a !important; }
html[data-theme="dark"] .ny-energy-strip button.ny-energy-btn.is-on { background: #f5f5f7 !important; color: #111113 !important; border-color: #f5f5f7 !important; }
html[data-theme="dark"] .ny-checks input { background: #2c2c2e; border-color: #a1a1aa; }

.ny-hero-hit {
    display: block;
    position: relative;
    width: 100%;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    cursor: zoom-in;
}
.ny-hero-hit img { display: block; width: 100%; height: 280px; object-fit: cover; border-radius: 10px; }
.ny-thumb-play {
    display: grid;
    place-items: center;
    height: 56px;
    width: 72px;
    background: #18181b;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    border-radius: 6px;
}
.ny-lightbox {
    position: fixed;
    inset: 0;
    z-index: 80;
    background: rgba(0,0,0,.92);
    display: grid;
    place-items: center;
}
.ny-lb-stage { max-width: min(96vw, 1200px); max-height: 90vh; }
.ny-lb-media { max-width: 96vw; max-height: 86vh; display: block; margin: 0 auto; background: #000; }
body.ny-listings .ny-lb-close,
body.ny-listings .ny-lb-nav {
    position: absolute;
    z-index: 81;
    border: 0 !important;
    background: rgba(255,255,255,.12) !important;
    color: #fff !important;
    width: 44px;
    height: 44px;
    border-radius: 999px !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    cursor: pointer;
}
body.ny-listings .ny-lb-close { top: 16px; right: 16px; }
body.ny-listings .ny-lb-prev { left: 16px; top: 50%; transform: translateY(-50%); }
body.ny-listings .ny-lb-next { right: 16px; top: 50%; transform: translateY(-50%); }
.ny-lb-count {
    position: absolute;
    left: 50%;
    bottom: 16px;
    transform: translateX(-50%);
    color: #fff;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 0.04em;
}

html[data-theme="dark"] body.ny-listings .ny-nav-btn {
    color: #f5f5f7 !important;
}
html[data-theme="dark"] body.ny-listings .ny-nav-btn.is-on {
    background: #f5f5f7 !important;
    color: #111113 !important;
}
html[data-theme="dark"] .ny-search-top {
    background: #1c1c1e;
    border-color: #3f3f46;
}
html[data-theme="dark"] .ny-more {
    background: #1c1c1e;
}
html[data-theme="dark"] .ny-more-head,
html[data-theme="dark"] .ny-more-body,
html[data-theme="dark"] .ny-more-foot,
html[data-theme="dark"] .ny-more-card {
    background: #1c1c1e !important;
    color: #f5f5f7;
    border-color: #3f3f46;
}
html[data-theme="dark"] .ny-more-head strong,
html[data-theme="dark"] .ny-more-body h3,
html[data-theme="dark"] .ny-basics-h,
html[data-theme="dark"] .ny-more-label,
html[data-theme="dark"] .ny-more-body p,
html[data-theme="dark"] .ny-radio-col {
    color: #f5f5f7;
}
html[data-theme="dark"] .ny-more-body input,
html[data-theme="dark"] .ny-more-body select,
html[data-theme="dark"] .ny-z-minmax input {
    background: #2c2c2e;
    color: #f5f5f7;
    border-color: #71717a;
}
html[data-theme="dark"] .ny-amen-tile:has(input:checked) {
    background: #1e3a5f;
    border-color: #93c5fd;
    color: #93c5fd;
}
html[data-theme="dark"] .ny-checks input,
html[data-theme="dark"] .ny-chip input {
    accent-color: #93c5fd;
}
html[data-theme="dark"] .ny-signin {
    background: #1c1c1e;
    color: #f5f5f7;
    border-color: #3f3f46;
}
html[data-theme="dark"] .ny-signin-card p,
html[data-theme="dark"] .ny-signin-note { color: #d4d4d8; }
html[data-theme="dark"] body.ny-listings .ny-z-dd[data-dd="filters"] .ny-z-pill {
    background: #f5f5f7 !important;
    color: #111113 !important;
    border-color: #f5f5f7 !important;
}
html[data-theme="dark"] .ny-results .ny-place-line,
html[data-theme="dark"] .ny-results-head { color: #f5f5f7; }
html:has(body.ny-listings.ny-signup),
body.ny-listings.ny-signup {
    height: auto !important;
    max-height: none !important;
    overflow: auto !important;
    overscroll-behavior: auto;
}
body.ny-listings.ny-signup {
    min-height: 100dvh;
    background: #f4f4f5 !important;
    color: #18181b !important;
}
body.ny-listings.ny-signup .ny-signup-card {
    max-width: 440px;
    margin: 32px auto;
    padding: 24px;
    background: #fff !important;
    color: #18181b !important;
    border: 1px solid #ececec !important;
    border-radius: 12px;
}
body.ny-listings.ny-signup .ny-signup-card h1,
body.ny-listings.ny-signup .ny-signup-card p:not(.ny-listings-ok):not(.ny-listings-err),
body.ny-listings.ny-signup .ny-signup-card label {
    color: #18181b !important;
}
body.ny-listings.ny-signup .ny-signup-card .ny-signup-hint {
    color: #52525b !important;
}
body.ny-listings.ny-signup .ny-signup-card label { display: block; margin: 0 0 12px; font-weight: 600; }
body.ny-listings.ny-signup .ny-signup-card input {
    display: block;
    width: 100%;
    margin-top: 6px;
    height: 40px;
    padding: 0 10px;
    box-sizing: border-box;
    border: 1px solid #d4d4d8 !important;
    border-radius: 8px;
    background: #fff !important;
    color: #18181b !important;
    caret-color: #18181b;
}
body.ny-listings.ny-signup .ny-signup-card a {
    color: #1d4ed8 !important;
}
body.ny-listings.ny-signup .ny-signup-card p.ny-listings-ok {
    background: #ecfdf3 !important;
    color: #166534 !important;
}
body.ny-listings.ny-signup .ny-signup-card p.ny-listings-err {
    background: #fef2f2 !important;
    color: #b91c1c !important;
}
html[data-theme="dark"] body.ny-listings.ny-signup {
    background: #111113 !important;
    color: #f5f5f7 !important;
}
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card {
    background: #1c1c1e !important;
    color: #f5f5f7 !important;
    border-color: #3f3f46 !important;
}
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card h1,
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card p:not(.ny-listings-ok):not(.ny-listings-err),
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card label {
    color: #f5f5f7 !important;
}
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card .ny-signup-hint {
    color: #d4d4d8 !important;
}
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card input {
    background: #2c2c2e !important;
    color: #f5f5f7 !important;
    border-color: #71717a !important;
    caret-color: #f5f5f7;
}
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card a {
    color: #93c5fd !important;
}
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card p.ny-listings-ok {
    background: #14532d !important;
    color: #bbf7d0 !important;
}
html[data-theme="dark"] body.ny-listings.ny-signup .ny-signup-card p.ny-listings-err {
    background: #7f1d1d !important;
    color: #fecaca !important;
}
@media (max-width: 560px) {
    body.ny-listings.ny-signup .ny-lang { display: flex !important; flex-wrap: wrap; }
    body.ny-listings.ny-signup .ny-lang-dd { display: block !important; }
}
.ny-signin-card { cursor: pointer; }
.ny-landlord-apply {
    display: inline-block;
    margin: 8px 16px 0;
    font-size: 13px;
    font-weight: 700;
    color: #1d4ed8;
}
a.ny-file-cta, a.ny-apply.ny-file-cta {
    display: inline-flex;
    align-items: center;
    height: 40px;
    padding: 0 14px;
    background: #18181b;
    color: #fff;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
}
