:root{--ink: #0e1b2a;--ink-2: #182c42;--paper: #f1f2ec;--card: #ffffff;--line: #dbdcd3;--jade: #1c7a5c;--jade-soft: #e3f1ea;--amber: #b07a2e;--amber-soft: #f5ecda;--brick: #a23b3b;--brick-soft: #f5e3e1;--text: #14213a;--text-dim: #5b6572;--inverse: #f1f2ec;--inverse-dim: #9fb0c3;--font-display: "Barlow Condensed", sans-serif;--font-body: "IBM Plex Sans", sans-serif;--font-mono: "IBM Plex Mono", monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--jade);outline-offset:2px}.wrap{max-width:1080px;margin:0 auto;padding:0 28px}.agency-app .wrap{max-width:1400px}.topbar{background:var(--ink);color:var(--inverse);padding:16px 0;border-bottom:1px solid #24384f}.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.brand{font-family:var(--font-display);font-weight:800;font-size:22px;letter-spacing:.02em;display:flex;align-items:baseline;gap:10px}.brand .dot{color:var(--jade)}.topbar .eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--inverse-dim);text-transform:uppercase}.topbar__nav{display:flex;gap:20px}.topbar__nav button{background:none;border:none;padding:4px 0;color:var(--inverse-dim);font-family:var(--font-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent}.topbar__nav button:hover{color:var(--inverse)}.topbar__nav button.is-active{color:var(--jade);border-bottom-color:var(--jade)}.topbar__right{display:flex;align-items:center;gap:18px}.lang-toggle{display:flex;border:1px solid #39506b;border-radius:100px;overflow:hidden}.lang-toggle button{background:none;border:none;padding:5px 12px;color:var(--inverse-dim);font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;cursor:pointer}.lang-toggle button:hover{color:var(--inverse)}.lang-toggle button.is-active{background:var(--jade);color:#fff}.hero{background:var(--ink);color:var(--inverse);padding:56px 0 64px}.hero .eyebrow{font-family:var(--font-mono);font-size:12px;color:var(--jade);letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px}.hero h1{font-family:var(--font-display);font-weight:800;font-size:clamp(34px,5.5vw,56px);line-height:1.02;letter-spacing:-.01em;margin:0 0 18px;max-width:16ch}.hero p{font-size:16px;line-height:1.6;color:var(--inverse-dim);max-width:56ch;margin:0}section.block{padding:48px 0}section.block.alt{background:#e9eae3}.section-head{margin-bottom:28px}.section-num{font-family:var(--font-mono);font-size:12px;color:var(--jade);letter-spacing:.1em;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tag{font-family:var(--font-mono);font-size:10px;padding:3px 9px;border-radius:100px;letter-spacing:.05em;text-transform:uppercase}.tag.core{background:var(--jade-soft);color:var(--jade)}.tag.support{background:#e7e9e2;color:var(--text-dim)}.tag.preview{background:var(--amber-soft);color:var(--amber)}.section-head h2{font-family:var(--font-display);font-weight:700;font-size:clamp(24px,3.2vw,32px);margin:6px 0 8px;letter-spacing:-.01em}.section-head p{color:var(--text-dim);max-width:62ch;margin:0;font-size:15px;line-height:1.55}.search-bar{display:flex;gap:12px;align-items:flex-start;max-width:720px;margin-bottom:28px}.search-bar textarea{flex:1;padding:14px 16px;border:1px solid var(--line);border-radius:10px;font-size:15px;font-family:var(--font-body);background:var(--card);color:var(--text);resize:vertical}.search-bar textarea::placeholder{color:var(--text-dim)}.search-bar button{padding:13px 22px;border:none;border-radius:10px;background:var(--jade);color:#fff;font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.search-bar button:disabled{background:#9dc3b3;cursor:not-allowed}.banner{max-width:720px;padding:12px 16px;border-radius:10px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:14px}.banner--error{background:var(--brick-soft);color:var(--brick);border:1px solid #e6c6c3}.banner--preview{background:var(--amber-soft);color:#6b4d1c;border:1px solid #e2cb9c;max-width:none}.banner--preview strong{color:var(--amber)}.banner--error button{background:none;border:1px solid currentColor;border-radius:6px;padding:4px 10px;color:inherit;cursor:pointer;font-family:var(--font-body);font-size:12px}.chat{max-width:640px;margin:0 0 32px}.bubble{padding:14px 18px;border-radius:14px;font-size:15px;line-height:1.55;margin-bottom:12px;max-width:90%}.bubble.user{background:var(--card);border:1px solid var(--line);margin-left:auto;border-bottom-right-radius:4px}.bubble.ai{background:var(--ink-2);color:var(--inverse);border-bottom-left-radius:4px}.bubble .who{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.6;display:block;margin-bottom:6px}.bubble .count{display:block;margin-top:6px;font-size:12px;opacity:.7}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,330px));justify-content:center;gap:16px}.rcard-link{display:block;color:inherit;text-decoration:none}.rcard-link:hover .rcard{border-color:var(--jade);box-shadow:0 2px 14px #1c7a5c1a}.rcard{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:12px;transition:border-color .15s ease,box-shadow .15s ease}.rcard--empty{color:var(--text-dim);font-size:13px}.detail-status{padding:40px 0}.detail-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(320px,420px);gap:28px;align-items:start}@media (max-width: 820px){.detail-layout{grid-template-columns:1fr}}.photo-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.photo-gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.photo-gallery img:first-child{grid-column:1 / -1;aspect-ratio:16 / 9}.photo-gallery-empty{display:flex;align-items:center;justify-content:center;aspect-ratio:16 / 9;background:var(--paper);border:1px dashed var(--line);border-radius:10px;color:var(--text-dim);font-size:13px;text-align:center;padding:20px}.rcard--detail{max-width:none}.detail-no-context{font-size:12.5px;color:var(--text-dim);background:var(--paper);border-left:2px solid var(--line);padding:8px 10px;line-height:1.4;margin:0}.show-interest-btn{padding:13px 22px;border:none;border-radius:10px;background:var(--jade);color:#fff;font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;width:100%}.show-interest-btn:disabled{background:#9dc3b3;cursor:not-allowed}.rcard .top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.fit{font-family:var(--font-display);font-weight:800;font-size:28px;color:var(--ink);white-space:nowrap}.fit span{font-size:13px;font-weight:600;color:var(--text-dim);font-family:var(--font-body)}.badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;padding:4px 9px;border-radius:100px;letter-spacing:.02em;align-self:flex-start;white-space:nowrap}.badge.verified{background:var(--jade-soft);color:var(--jade)}.badge.pending{background:var(--amber-soft);color:var(--amber)}.badge.stale{background:var(--brick-soft);color:var(--brick)}.badge.closed{background:#eeeeec;color:var(--text-dim)}.pulse{width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}.rcard h3{font-family:var(--font-display);font-weight:700;font-size:20px;margin:0}.rcard .addr{font-size:12.5px;color:var(--text-dim);margin:-8px 0 0}.rcard .addr.anchor-dist{color:var(--jade);margin-top:2px}.rcard .rent{font-family:var(--font-mono);font-size:14px;color:var(--text-dim)}.amenity-chips{display:flex;gap:6px;flex-wrap:wrap}.amenity-chips .chip{font-family:var(--font-mono);font-size:11px;background:var(--jade-soft);color:var(--jade);border-radius:999px;padding:3px 10px}.rcard .stats{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;font-size:13px;border-top:1px solid var(--line);padding-top:12px}.rcard .stats div span{display:block;font-family:var(--font-mono);font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}.rcard .compromise{font-size:12.5px;color:var(--text-dim);background:var(--paper);border-left:2px solid var(--amber);padding:8px 10px;line-height:1.4}.rcard .movein{font-family:var(--font-mono);font-size:12px;color:var(--text)}.rcard .movein .row{display:flex;justify-content:space-between;padding:2px 0;color:var(--text-dim)}.rcard .movein .row.total{color:var(--text);font-weight:600;padding-top:8px;margin-top:4px;border-top:1px dashed var(--line)}.slider-block{margin:20px 0 24px}.slider-note{font-size:13px;color:var(--text-dim);max-width:62ch;margin:0 0 12px}.simulator{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:26px 26px 22px;max-width:720px}.simulator .row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.simulator label{font-family:var(--font-display);font-weight:700;font-size:18px}.simulator .val{font-family:var(--font-mono);font-size:18px;color:var(--jade)}.simulator input[type=range]{width:100%;margin:16px 0 22px;accent-color:var(--jade)}.sim-results{display:flex;gap:28px;flex-wrap:wrap}.sim-results .r{flex:1;min-width:160px}.sim-results .num{font-family:var(--font-display);font-weight:800;font-size:32px;color:var(--ink);line-height:1}.sim-results .lbl{font-family:var(--font-mono);font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;margin-top:6px}.bar-track{height:6px;background:var(--paper);border-radius:100px;margin-top:12px;overflow:hidden}.bar-fill{height:100%;background:var(--jade);border-radius:100px;transition:width .35s ease}.metric-block{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin-bottom:20px}.metric-block h3{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin:0 0 14px}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.metric-block--wide{grid-column:1 / -1}.chart-jade{color:var(--jade)}.chart-amber{color:var(--amber)}.chart-brick{color:var(--brick)}.chart-gray{color:var(--text-dim)}.chart-yellow{color:#d4b106}.chart-track{stroke:var(--paper)}.chart-axis-line{stroke:var(--line);stroke-width:1}.chart-axis-text{font-family:var(--font-mono);font-size:9.5px;fill:var(--text-dim)}.chart-total-num{font-family:var(--font-display);font-weight:800;font-size:30px;fill:var(--ink)}.chart-total-lbl{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.05em;fill:var(--text-dim)}.chart-with-legend{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.chart-donut{width:140px;height:140px;flex-shrink:0}.chart-legend{display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:var(--text)}.chart-legend-item{display:flex;align-items:center;gap:8px}.chart-legend-swatch{width:10px;height:10px;border-radius:3px;background:currentColor;flex-shrink:0}.matrix-table th,.matrix-table td{text-align:center}.matrix-table th:first-child,.matrix-table td:first-child{text-align:left}.matrix-cell{font-family:var(--font-mono);font-weight:600}.sim-caption{margin:18px 0 0;font-size:13px;color:var(--text-dim);border-top:1px dashed var(--line);padding-top:14px}.status-buttons{display:flex;gap:6px;flex-wrap:wrap}.status-select{font-family:var(--font-body);font-size:12.5px;font-weight:600;padding:6px 10px;border-radius:100px;border:1px solid transparent;cursor:pointer;background:#eceee6;color:var(--text-dim)}.status-select.available{background:var(--jade-soft);color:var(--jade);border-color:var(--jade)}.status-select.offer{background:var(--amber-soft);color:var(--amber);border-color:var(--amber)}.status-select.rented{background:var(--brick-soft);color:var(--brick);border-color:var(--brick)}.status-select.withdrawn{background:transparent;color:var(--text-dim);border-color:var(--text-dim)}.add-listing-form{max-width:900px}.photo-upload{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 20px;margin:16px 0}.photo-upload label{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}.photo-preview-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.photo-chip{background:#eceee6;color:var(--text-dim);font-size:12px;padding:4px 10px;border-radius:100px}.photo-error{color:var(--brick);font-size:12.5px;margin-top:8px}.add-listing-success{background:var(--jade-soft);border:1px solid var(--jade);border-radius:12px;padding:16px 20px;margin-top:16px}.add-listing-success p{margin:10px 0;font-size:13.5px}.import-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap;max-width:720px;margin-bottom:28px}.import-form input[type=file]{flex:1;min-width:220px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--text);font-family:var(--font-body);font-size:14px}.import-form button{padding:13px 22px;border:none;border-radius:10px;background:var(--jade);color:#fff;font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.import-form button:disabled{background:#9dc3b3;cursor:not-allowed}.import-summary{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:26px;max-width:720px}.import-rows{margin-top:22px;border-top:1px dashed var(--line);padding-top:18px}.import-row{display:grid;grid-template-columns:60px 1fr;gap:12px;align-items:start;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.import-row:last-child{border-bottom:none}.import-row--head{font-family:var(--font-mono);font-weight:500;color:var(--text-dim);text-transform:uppercase;font-size:10px;letter-spacing:.08em}.import-note{margin:18px 0 0;font-size:13px;color:var(--text-dim)}footer{background:var(--ink);color:var(--inverse-dim);padding:28px 0;font-size:13px;line-height:1.6}footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}footer strong{color:var(--inverse)}.topbar-link{color:var(--jade);text-decoration:none;font-weight:600}.topbar-link:hover{text-decoration:underline}.view-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:18px}.view-tab{background:none;border:none;padding:4px 0 10px;color:var(--text-dim);font-family:var(--font-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.view-tab:hover{color:var(--text)}.view-tab.is-active{color:var(--jade);border-bottom-color:var(--jade)}.filter-bar{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin-bottom:20px;align-items:end}.filter-field{display:flex;flex-direction:column;gap:6px}.filter-field label{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.filter-field select,.filter-field input{padding:9px 10px;border:1px solid var(--line);border-radius:8px;font-family:var(--font-body);font-size:13.5px;background:var(--paper);color:var(--text)}.filter-reset{height:38px;align-self:end;padding:0 16px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text-dim);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer}.filter-reset:hover{color:var(--text);border-color:var(--text-dim)}.results-count{font-family:var(--font-mono);font-size:12px;color:var(--text-dim);margin-bottom:12px}.listings-table-wrap{background:var(--card);border:1px solid var(--line);border-radius:12px;overflow-x:auto}.listings-table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}.listings-table th,.listings-table td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--line)}.listings-table th{font-family:var(--font-mono);font-weight:500;color:var(--text-dim);text-transform:uppercase;font-size:10px;letter-spacing:.08em;position:sticky;top:0;background:var(--card)}.listings-table tbody tr:last-child td{border-bottom:none}.listings-table .mono{font-family:var(--font-mono);font-size:12px;color:var(--text-dim)}.listings-table .sub{color:var(--text-dim);font-size:11.5px}.listings-table .empty-row{text-align:center;color:var(--text-dim);padding:32px 14px;white-space:normal}
