:root{--color-white: #ffffff;--color-surface: #f2fbfc;--color-surface-strong: #e6f8fa;--color-surface-pink: #fff1f6;--color-teal: #00a0b0;--color-teal-dark: #007783;--color-pink: #f880a8;--color-pink-dark: #b9285f;--color-ink: #123238;--color-text-soft: #45656a;--color-muted: #6f8589;--color-border: rgba(18, 50, 56, .12);--color-border-strong: rgba(0, 160, 176, .24);--shadow-soft: 0 18px 60px rgba(0, 160, 176, .08);--shadow-active: 0 14px 34px rgba(0, 160, 176, .12);--shadow-primary: 0 12px 28px rgba(0, 160, 176, .18);color:var(--color-ink);background:var(--color-white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{margin:0 auto;max-width:1440px;min-height:100vh;padding:18px clamp(16px,3vw,42px) 56px}.topbar{align-items:center;display:flex;gap:18px;justify-content:space-between;margin-bottom:30px}.brand,.nav-actions,.eyebrow,.button,.fact,.contact-strip,.success,.form-error,.search-input,.toggle-row,.toggle,.reset-button,.listing-title-line,.empty{align-items:center;display:flex}.brand{line-height:0}.brand-banner{display:block;height:auto;max-width:min(250px,64vw);object-fit:contain;width:250px}.nav-actions{color:var(--color-muted);gap:16px;font-size:.86rem;font-weight:760}.nav-actions a{border-radius:999px;padding:6px 2px;transition:color .16s ease,background .16s ease,border-color .16s ease}.nav-actions a:hover{color:var(--color-teal-dark)}.nav-actions .language-switch{border:1px solid rgba(18,50,56,.16);color:var(--color-teal-dark);font-size:.74rem;font-weight:850;line-height:1;min-width:34px;padding:7px 9px;text-align:center}.nav-actions .language-switch:hover{background:var(--color-surface);border-color:var(--color-border)}.search-hero{margin-bottom:18px}.hero-copy{max-width:880px}.landing-intro{color:var(--color-text-soft);font-size:1.05rem;line-height:1.55;margin:18px 0 0;max-width:720px}.eyebrow{color:var(--color-pink-dark);font-size:.78rem;font-weight:850;gap:8px;letter-spacing:0;margin:0 0 12px}h1,h2,h3,p{margin-top:0}h1{font-family:Georgia,Times New Roman,serif;font-size:clamp(2.7rem,6vw,5.7rem);font-weight:500;letter-spacing:0;line-height:.96;margin-bottom:0}h2{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.6rem,3vw,2.7rem);font-weight:500;letter-spacing:0;line-height:1;margin-bottom:0}.quick-stats{background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));margin:0 0 22px;min-width:0;overflow:hidden;width:100%}.summary-item{display:grid;gap:4px;padding:16px 18px}.summary-item+.summary-item{border-left:1px solid rgba(18,50,56,.1)}.summary-item span{color:var(--color-muted);font-size:.76rem;font-weight:800}.summary-item strong{color:var(--color-teal-dark);font-size:1.28rem}.search-board{background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 18px 60px #00a0b014;display:grid;gap:16px;margin-bottom:22px;padding:18px;z-index:5}.search-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-muted);gap:10px;min-height:54px;padding:0 14px}.search-input input{background:transparent;border:0;color:var(--color-ink);min-height:52px;outline:none;padding:0;width:100%}.filter-grid{align-items:end;display:grid;gap:14px;grid-template-columns:1fr 1.2fr .9fr}label{color:var(--color-muted);display:grid;font-size:.78rem;font-weight:850;gap:8px}select,input,textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-ink);min-height:44px;padding:0 12px}input[type=range]{accent-color:var(--color-pink-dark);padding:0}.range-value{color:var(--color-teal-dark);font-size:.94rem}.toggle-row{flex-wrap:wrap;gap:10px}.toggle{background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;color:var(--color-teal-dark);cursor:pointer;display:flex;font-size:.88rem;gap:8px;min-height:38px;padding:0 12px}.toggle.active{background:var(--color-teal-dark);color:var(--color-white)}.toggle input{accent-color:var(--color-pink-dark);min-height:auto}.reset-button{background:transparent;border:1px solid rgba(18,50,56,.18);border-radius:999px;color:var(--color-muted);cursor:pointer;display:inline-flex;font-weight:800;gap:8px;justify-content:center;min-height:38px;padding:0 12px}.results-layout{align-items:start;display:grid;gap:22px;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr)}.results-column{min-width:0}.results-toolbar{align-items:end;display:flex;justify-content:space-between;margin-bottom:14px}.results-subtitle{color:var(--color-muted);font-weight:850;margin:10px 0 0}.offline-pill{background:var(--color-surface-pink);border-radius:999px;color:var(--color-pink-dark);font-size:.78rem;font-weight:850;padding:8px 10px}.listing-list{display:grid;gap:10px}.listing-row{align-items:center;background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;color:inherit;cursor:pointer;display:grid;gap:16px;grid-template-columns:84px 112px minmax(0,1fr) 24px;padding:16px;text-align:left;transition:border .18s ease,box-shadow .18s ease,transform .18s ease}.listing-row:hover,.listing-row.active{border-color:#f880a8b8;box-shadow:0 14px 34px #1232381a;transform:translateY(-1px)}.rent-cell{display:grid;gap:2px}.listing-thumb{aspect-ratio:1;background:var(--color-surface-strong);border-radius:8px;display:block;height:84px;object-fit:cover;width:84px}.listing-thumb.placeholder{align-items:center;color:var(--color-muted);display:flex;justify-content:center}.rent-cell strong{color:var(--color-pink-dark);font-size:1.35rem}.rent-cell span,.listing-main p,.detail-panel p{color:var(--color-text-soft)}.listing-main{min-width:0}.listing-title-line{gap:12px;justify-content:space-between}.listing-title-line h3{font-size:1.05rem;line-height:1.25;margin:0}.listing-title-line span{color:var(--color-muted);flex:none;font-size:.82rem;font-weight:850}.listing-main p{line-height:1.45;margin:6px 0 0}.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.chips span{background:var(--color-surface-strong);border-radius:999px;color:var(--color-teal-dark);font-size:.75rem;font-weight:850;padding:6px 9px}.row-arrow{color:var(--color-muted)}.detail-panel{background:var(--color-teal-dark);border-radius:8px;box-shadow:0 26px 70px #00a0b02e;color:var(--color-white);padding:clamp(22px,3vw,34px);position:sticky;top:146px}.detail-gallery{display:grid;gap:8px;grid-template-columns:1.4fr 1fr;margin-bottom:22px}.detail-gallery img,.empty-gallery{aspect-ratio:4 / 3;border-radius:8px;min-width:0;object-fit:cover;overflow:hidden;width:100%}.detail-gallery img:first-child{grid-row:span 2}.empty-gallery{align-items:center;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:var(--color-pink);display:flex;justify-content:center}.detail-panel p{color:var(--color-surface);line-height:1.6}.detail-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.detail-top span{color:var(--color-pink);font-weight:850}.detail-top strong{font-size:1.45rem}.facts{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:26px 0}.fact{background:#ffffff1f;border:1px solid rgba(255,255,255,.16);border-radius:8px;gap:9px;min-width:0;padding:12px}.fact span{overflow-wrap:anywhere}.contact-strip{background:var(--color-white);border-radius:8px;color:var(--color-teal-dark);font-weight:850;gap:10px;padding:15px}.listing-call-cta{background:var(--color-teal-dark);color:var(--color-white);gap:14px;justify-content:center;min-height:76px;padding:18px}.listing-call-cta span{display:grid;gap:4px}.listing-call-cta strong{font-size:1.05rem}.listing-call-cta small{color:#ffffffdb;font-size:.92rem;font-weight:800}.listing-email-cta{background:var(--color-white);border:1px solid var(--color-border);gap:14px;justify-content:center;min-height:68px;padding:16px 18px}.listing-email-cta span{display:grid;gap:4px;min-width:0}.listing-email-cta strong{font-size:1rem}.listing-email-cta small{color:var(--color-muted);font-size:.9rem;font-weight:800;overflow-wrap:anywhere}.report-button{align-items:center;background:transparent;border:1px solid rgba(18,50,56,.18);border-radius:8px;color:var(--color-muted);cursor:pointer;display:inline-flex;font-weight:850;gap:8px;justify-content:center;min-height:44px;padding:0 14px}.report-button:disabled{cursor:default;opacity:.75}.report-note{align-items:center;color:var(--color-teal-dark);display:flex;font-size:.9rem;font-weight:850;gap:8px;margin:0}.listing-page{display:grid;gap:18px}.back-link{align-items:center;background:transparent;border:1px solid rgba(18,50,56,.18);border-radius:999px;color:var(--color-teal-dark);cursor:pointer;display:inline-flex;font-weight:850;gap:8px;justify-self:start;min-height:40px;padding:0 14px}.listing-page-grid{align-items:start;display:grid;gap:28px;grid-template-columns:minmax(0,1fr) minmax(340px,.42fr)}.listing-page-main{min-width:0}.listing-page-main .detail-gallery{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.listing-page-heading{margin-top:24px}.listing-page-heading h1{font-size:clamp(2.35rem,5vw,4.9rem)}.listing-page-price{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.listing-page-price strong{color:var(--color-pink-dark);font-size:1.65rem}.listing-page-price span,.listing-description{color:var(--color-text-soft)}.listing-description{font-size:1.08rem;line-height:1.65;margin:22px 0 0;max-width:760px}.page-facts .fact{background:var(--color-white);border-color:var(--color-border)}.listing-page-contact{display:grid;gap:14px;position:sticky;top:22px}.landlord-section{align-items:start;display:grid;gap:34px;grid-template-columns:minmax(280px,.7fr) 1fr;margin-top:40px}.landlord-section{border-top:1px solid var(--color-border);padding-top:40px}.landing-links{border-top:1px solid var(--color-border);display:grid;gap:26px;grid-template-columns:minmax(260px,.55fr) 1fr;margin-top:40px;padding-top:40px}.landing-link-groups{display:grid;gap:18px}.landing-link-groups nav{display:grid;gap:10px}.landing-link-groups h3{color:var(--color-teal-dark);font-size:.95rem;margin:0}.landing-link-groups nav div{display:flex;flex-wrap:wrap;gap:8px}.landing-link-groups a{background:var(--color-white);border:1px solid var(--color-border);border-radius:999px;color:var(--color-teal-dark);font-size:.86rem;font-weight:850;padding:8px 11px}form{background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:13px;padding:18px}.listing-form{align-content:start}.form-actions{display:flex;flex-wrap:wrap;gap:10px}.form-actions .button,.form-actions .reset-button{flex:1 1 180px}.form-grid{display:grid;gap:13px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}textarea{min-height:122px;padding-top:12px;resize:vertical}.button{border:0;border-radius:8px;cursor:pointer;font-weight:850;gap:8px;justify-content:center;min-height:48px;padding:0 18px}.primary{background:var(--color-teal-dark);box-shadow:0 12px 28px #00a0b02e;color:var(--color-white)}.preview-link{background:var(--color-pink);color:var(--color-white);margin-top:12px;width:100%}.success{color:var(--color-teal-dark);font-weight:850;gap:8px;margin:0}.form-error{color:var(--color-pink-dark);font-weight:850;gap:8px;margin:0}.admin-shell{display:grid;gap:22px}.admin-login-shell{margin:0 auto;max-width:720px;min-height:min(620px,calc(100vh - 220px));place-content:center;width:min(100%,720px)}.admin-login-shell .admin-heading{align-items:start;display:grid;gap:14px;justify-content:stretch;text-align:left}.admin-login-shell .admin-heading h1{font-size:clamp(2.9rem,7vw,5.2rem)}.admin-heading{align-items:end;display:flex;gap:18px;justify-content:space-between}.admin-heading h1{font-size:clamp(2.7rem,5vw,4.8rem)}.admin-heading p:last-child{color:var(--color-text-soft);margin:14px 0 0}.admin-login{max-width:460px}.admin-login-shell .admin-login{max-width:none;width:100%}.admin-summary{background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));overflow:hidden}.landlord-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-tabs{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:18px}.admin-tabs button{background:transparent;border:0;border-bottom:3px solid transparent;color:var(--color-muted);cursor:pointer;font:inherit;font-weight:850;padding:0 0 12px}.admin-tabs button.active{border-color:var(--color-pink-dark);color:var(--color-teal-dark)}.settings-copy{color:var(--color-text-soft);line-height:1.45;margin:10px 0 0;max-width:760px}.admin-toolbar{align-items:end;display:flex;gap:12px;justify-content:space-between}.admin-toolbar label{min-width:min(320px,100%)}.admin-list{display:grid;gap:12px}.portal-grid{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)}.portal-list,.portal-list-heading{display:grid;gap:12px}.portal-list-heading{align-items:end;grid-template-columns:minmax(0,1fr) auto}.portal-heading-copy{color:var(--color-text-soft);line-height:1.45;margin:10px 0 0;max-width:720px}.admin-listing{align-items:start;background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:16px;grid-template-columns:84px minmax(0,1fr) auto;padding:16px}.portal-listing{align-items:stretch;grid-template-columns:112px minmax(260px,1fr) minmax(260px,.46fr);padding:18px}.portal-listing .listing-thumb{height:112px;width:112px}.admin-listing-main{min-width:0}.admin-listing-main h2{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.06rem;font-weight:850;line-height:1.25}.admin-listing-main p{color:var(--color-text-soft);line-height:1.5;margin:8px 0 0}.duplicate-flags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.duplicate-flags span{background:var(--color-surface-pink);border:1px solid rgba(239,105,163,.32);border-radius:999px;color:var(--color-pink-dark);font-size:.78rem;font-weight:850;padding:6px 9px}.admin-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;min-width:220px}.portal-actions{align-content:space-between;align-items:stretch;display:grid;gap:14px;justify-items:stretch;min-width:0}.boost-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;gap:5px;padding:12px}.boost-summary strong{color:var(--color-teal-dark);font-size:.92rem}.boost-summary span{color:var(--color-text-soft);font-size:.84rem;line-height:1.35}.boost-summary b{color:var(--color-teal-dark);font-weight:850}.boost-summary.muted{background:var(--color-white)}.boost-summary.muted strong,.boost-summary.muted span{color:var(--color-muted)}.portal-action-buttons{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-action-buttons .button,.portal-action-buttons .reset-button{min-width:0}.portal-action-buttons .button.primary{grid-column:1 / -1;order:-1}.admin-actions .button,.admin-actions .reset-button,.danger-button{min-height:38px;padding:0 12px}.danger-button{align-items:center;background:var(--color-pink-dark);border:0;border-radius:8px;color:var(--color-white);cursor:pointer;display:inline-flex;font-weight:850;gap:8px;justify-content:center}.status-pill{border-radius:999px;font-size:.75rem;font-weight:850;padding:6px 9px;text-transform:capitalize}.status-pill.active{background:var(--color-surface-strong);color:var(--color-teal-dark)}.status-pill.pending{background:var(--color-surface-pink);color:var(--color-pink-dark)}.status-pill.archived{background:var(--color-surface);color:var(--color-muted)}.boosted-chip{background:var(--color-surface-pink)!important;border-color:#f880a86b!important;color:var(--color-pink-dark)!important}.photo-drop{align-items:center;background:var(--color-surface);border:1px dashed rgba(0,160,176,.32);border-radius:8px;color:var(--color-teal-dark);cursor:pointer;display:flex;flex-direction:row;font-size:.95rem;justify-content:center;min-height:86px;padding:18px}.photo-drop input{height:1px;min-height:0;opacity:0;overflow:hidden;padding:0;position:absolute;width:1px}.photo-preview-grid{display:grid;gap:8px;grid-template-columns:repeat(6,minmax(0,1fr))}.photo-preview-grid img{aspect-ratio:1;border-radius:8px;object-fit:cover;width:100%}.empty{background:var(--color-white);border:1px solid var(--color-border);border-radius:8px;color:var(--color-muted);gap:10px;padding:24px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.results-layout{grid-template-columns:1fr}.detail-panel{display:none}}@media(max-width:980px){.search-hero,.listing-page-grid,.landlord-section,.landing-links,.portal-grid,.admin-listing,.portal-listing{grid-template-columns:1fr}.quick-stats{width:100%}.listing-page-contact{position:static}.admin-actions{justify-content:flex-start;min-width:0}.portal-action-buttons{grid-template-columns:1fr}}@media(max-width:760px){.app-shell{padding-inline:14px}.topbar{align-items:start;flex-direction:column}.filter-grid{grid-template-columns:1fr}.listing-row{align-items:start;grid-template-columns:84px 1fr}.row-arrow{display:none}.listing-main{grid-column:1 / -1}.listing-title-line{align-items:start;flex-direction:column;gap:6px}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.photo-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-heading,.admin-toolbar,.portal-list-heading{align-items:start;display:flex;flex-direction:column}}@media(max-width:520px){.nav-actions{flex-wrap:wrap;gap:14px}h1{font-size:2.7rem}.quick-stats,.admin-summary{grid-template-columns:1fr}.summary-item+.summary-item{border-left:0;border-top:1px solid rgba(18,50,56,.1)}.facts{grid-template-columns:1fr}}
