:root{--green:#087b42;--lime:#e4f6d1;--soft:#f0f7e6;--border:#edf0e8;--bg:#fcfcf8;--ink:#142820;--shadow:0 3px 13px #1f402407;background:#f0f2eb}
:root[data-theme=dark]{--green:#b2dd93;--lime:#385536;--soft:#2a3e28;--border:#354630;--bg:#1b281c;--ink:#f1f6ec;background:#121b10}
.app-header{padding:calc(12px + env(safe-area-inset-top)) 18px 10px;gap:14px}.app-header .brand{font-size:1.562rem;color:var(--green)}.app-header .city{margin-left:auto;font-size:0.75rem}.app-header .header-bell{margin-left:8px;background:transparent}
.page-heading{display:flex;align-items:center;gap:9px;font-size:1.688rem;letter-spacing:-1.1px;line-height:1.2;margin:15px 2px 18px;font-weight:800}.page-heading .heading-dot{position:static;width:7px;height:7px;border:2px solid #92bf35;border-radius:50%;background:none;display:inline-block;flex-shrink:0}.page-heading .heading-dot:before{display:none}.page-heading small{font-size:1.25rem;font-weight:500;letter-spacing:0}
.search-row{gap:7px;margin-bottom:10px}.search-field input{background:var(--soft);border:0;border-radius:15px;padding-left:37px;min-height:48px;font-size:0.8125rem}.search-row>.lime-button{background:var(--soft);border-radius:15px;min-height:48px;padding:10px 12px;font-size:0.75rem;gap:7px}.search-shortcuts{display:flex;gap:7px}.search-shortcuts button{display:flex;align-items:center;justify-content:center;gap:7px;background:var(--paper);border:1px solid var(--border);border-radius:14px;flex:1;min-height:44px;font-size:0.75rem;padding:8px}.search-shortcuts svg{width:16px;height:16px}.results-toolbar{margin:16px 1px 8px}.results-toolbar select{font-size:0.6875rem;max-width:55%;background:transparent;border:0;padding:8px 0 8px 8px}.results-toolbar .muted{font-size:0.6875rem}
.listing{border-radius:18px;border:1px solid var(--border);margin:10px 0;box-shadow:var(--shadow)}.listing-media{position:relative;background:var(--soft);height:210px;overflow:hidden}.listing-media>.photo{display:block;width:100%;height:100%;object-fit:cover}.listing-media>.locked-cover{height:100%;margin:0;border-radius:0;min-height:0}.photo-count{position:absolute;bottom:10px;right:10px;border-radius:10px;padding:4px 7px;background:#1d2a20a8;color:#fff;font-size:0.625rem}.listing-body{position:relative;padding:11px 12px 13px}.listing .price{font-size:1.688rem;letter-spacing:-1px;padding-right:0;color:var(--ink)}.listing .price small{font-size:0.625rem;margin-left:6px;color:var(--muted)}.listing .specs{font-size:0.6875rem;margin-top:5px;padding-right:31px}.listing .address{font-size:0.6875rem;line-height:1.45;margin:5px 0;display:block;padding-right:30px}.listing .owner{font-size:0.625rem;line-height:1.4;color:var(--green);margin:4px 0 0}.save-heart{top:9px;right:9px;background:var(--paper);width:38px;height:38px;color:var(--ink);box-shadow:0 2px 8px #1b301415}.save-heart.is-saved svg,.detail-save.is-saved svg{fill:var(--green);color:var(--green)}.card-arrow{position:absolute;right:11px;top:44px;border-radius:50%;background:var(--lime);color:var(--green);width:34px;height:34px;display:grid;place-items:center}.card-arrow svg{width:19px}
.listing.compact .listing-open{display:grid;grid-template-columns:35% minmax(0,1fr);min-height:139px}.listing.compact .listing-media{height:100%;min-height:139px;grid-column:1;grid-row:1;border-radius:15px}.listing.compact .listing-media>.photo{margin:0;width:100%;height:100%;min-height:139px;border-radius:0;object-fit:cover}.listing.compact .listing-body{min-width:0;grid-column:2;grid-row:1;padding:12px 10px}.listing.compact .price{font-size:1.438rem;padding-right:22px}.listing.compact .price small{display:block;margin:2px 0 0;font-size:0.5625rem}.listing.compact .save-heart{right:7px;top:7px;width:31px;height:31px;box-shadow:none;background:transparent}.listing.compact .save-heart svg{width:18px}.listing.compact .card-arrow{top:auto;bottom:10px;right:8px;width:28px;height:28px}.listing.compact .owner{padding-right:24px}.listing.compact .specs{padding-right:0;font-size:0.625rem}.listing.compact .locked-cover{margin:0;min-height:139px;border-radius:0;font-size:0.5625rem;padding:9px}.compact .locked-cover b{font-size:0.625rem}.compact .locked-cover span{font-size:0.5625rem}.card-note{display:flex;align-items:flex-start;gap:6px;background:var(--soft);padding:8px 10px;font-size:0.625rem;line-height:1.5;text-align:left}.card-note svg{width:14px;height:14px;margin-top:1px}.card-note span{min-width:0;overflow-wrap:anywhere}.compact .card-note{grid-column:1/-1}
.favorite-tabs{display:flex;background:var(--border);border-radius:14px;padding:3px;margin-bottom:13px}.favorite-tabs button{flex:1;background:transparent;min-height:42px;border-radius:11px;font-size:0.8125rem}.favorite-tabs .selected{background:var(--soft);color:var(--green);box-shadow:0 1px 4px #1a38100b}.saved-locally{display:flex;justify-content:center;align-items:center;gap:7px;font-size:0.6875rem;color:var(--muted);margin:22px 0}.saved-locally svg{width:15px}
.detail-view .hero{height:400px;border-radius:0;overflow:hidden}.detail-view .hero>.photo{width:100%;height:100%;object-fit:cover}.detail-body{border-radius:23px 23px 0 0;padding:18px 17px 16px;margin-top:-16px}.detail-body>.price{font-size:2.375rem;color:var(--ink);margin-bottom:12px}.detail-body .peek{display:none}.detail-pills{display:flex;gap:7px;margin:12px 0}.detail-pills span{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;font-size:0.6875rem;padding:11px 5px;background:var(--soft);border-radius:13px;color:var(--ink)}.detail-pills svg{width:17px;height:17px}.detail-row{padding:13px 0;min-height:54px}.detail-row .avatar{background:var(--soft);color:var(--green);width:37px;height:37px}.detail-row b{font-size:0.875rem}.detail-row>.muted{font-size:0.6875rem}.detail-row .muted{font-size:0.6875rem}.detail-summary{font-size:0.8125rem;line-height:1.6;margin:13px 0 16px}.detail-actions{display:grid;grid-template-columns:minmax(0,1fr) 51px;gap:8px;position:sticky;bottom:0;z-index:5;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:var(--bg)}.detail-actions>.button{margin:0;min-height:51px;font-size:0.8125rem;padding:12px 10px;border-radius:15px}.detail-actions>.secondary{font-size:0;gap:0;background:var(--lime);border:0}.detail-actions>.secondary svg{width:21px;height:21px}.gallery-thumbs{position:absolute;bottom:30px;left:14px;display:flex;gap:7px;z-index:2;max-width:calc(100% - 110px)}.gallery-thumbs button{padding:0;width:57px;height:51px;border:2px solid #fff8;border-radius:10px;background:var(--paper);overflow:hidden;opacity:.8}.gallery-thumbs button[aria-pressed=true]{border-color:#dcff78;opacity:1}.gallery-thumbs .photo{width:100%;height:100%;object-fit:cover}.gallery-index{bottom:32px;right:14px;left:auto;font-size:0.625rem}.gallery-controls{bottom:100px}.hero-tools .icon-button{width:40px;min-width:40px;min-height:40px}
.bottom-nav{padding-top:7px;border-color:var(--border)}.bottom-nav>button{min-width:74px;font-size:0.625rem;gap:4px;border-radius:14px}.nav-indicator{border-radius:14px;background:var(--lime)}.bottom-nav>button[aria-current=page]{color:var(--green)}
@media(max-width:350px){.page-heading{font-size:1.562rem}.app-header{gap:8px;padding-left:14px;padding-right:14px}.app-header .header-bell{margin-left:0}.listing .price{font-size:1.562rem}.listing.compact .price{font-size:1.312rem}.listing.compact .price small{font-size:0.5625rem}.detail-body>.price{font-size:2.062rem}.detail-view .hero{height:350px}.detail-pills span{font-size:0.625rem;gap:4px}.gallery-thumbs button{width:49px;height:45px}}
