/* Phase 1 Review 01: shared property cards, compare, footer, support and legal readiness. */
:root{--r1-surface:#fff;--r1-soft:#f6f8fb;--r1-ink:#10233d;--r1-muted:#607087;--r1-border:#dbe3ec;--r1-gold:#c88a2b;--r1-danger:#d92d3f;--r1-shadow:0 12px 30px rgba(15,35,64,.09)}
[data-theme=dark]{--r1-surface:#14253b;--r1-soft:#1b2d45;--r1-ink:#edf4fc;--r1-muted:#b8c5d5;--r1-border:#33465d;--r1-gold:#efb85c;--r1-danger:#ff7d89;--r1-shadow:0 14px 34px rgba(0,0,0,.28)}
.property-card-grid,.user-property-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.property-card{min-width:0;height:100%;overflow:hidden;border:1px solid var(--r1-border);border-radius:18px;background:var(--r1-surface);color:var(--r1-ink);box-shadow:var(--r1-shadow);display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.property-card:hover,.property-card:focus-within,.property-card.is-selected{transform:translateY(-3px);border-color:var(--r1-gold);box-shadow:0 18px 40px rgba(15,35,64,.15)}
.property-card:focus-visible{outline:3px solid color-mix(in srgb,var(--r1-gold) 52%,transparent);outline-offset:3px}
.property-card__media{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--r1-soft)}
.property-card__media>a{display:block;width:100%;height:100%}.property-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.property-card:hover .property-card__media img{transform:scale(1.035)}
.property-card__badge{position:absolute;inset-inline-start:12px;top:12px;padding:6px 10px;border-radius:999px;background:rgba(7,27,51,.9);color:#fff;font-size:11px;font-weight:900;text-transform:capitalize}
.property-card__favorite{position:absolute!important;inset-inline-end:12px;top:12px}.property-card__favorite .ui-icon{width:20px;height:20px}.property-card__favorite.is-active{color:#fff!important;background:var(--r1-danger)!important;border-color:var(--r1-danger)!important}.property-card__favorite.is-active .ui-icon{fill:currentColor}
.property-card__body{padding:16px;display:flex;flex:1;flex-direction:column;min-width:0}.property-card__price-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.property-card__price-row>div{display:grid;min-width:0}.property-card__price-row strong{color:var(--r1-gold);font-size:clamp(18px,2vw,22px);line-height:1.2}.property-card__price-row span,.property-card__price-row small{color:var(--r1-muted);font-size:11px}
.property-card h3{min-width:0;margin:12px 0 6px;font-size:17px;line-height:1.45}.property-card h3 a{color:var(--r1-ink);text-decoration:none;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;min-height:2.9em;overflow-wrap:anywhere}
.property-card__location{margin:0;min-height:2.9em;color:var(--r1-muted);font-size:12px;line-height:1.45;display:flex;gap:6px;align-items:flex-start}.property-card__location .ui-icon{flex:none;width:15px;height:15px;color:var(--r1-gold);margin-top:2px}.property-card__location span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere}
.property-card__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.property-card__facts div{min-width:0;padding:9px;border-radius:11px;background:var(--r1-soft)}.property-card__facts dt{color:var(--r1-muted);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.property-card__facts dd{margin:2px 0 0;color:var(--r1-ink);font-size:12px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.property-card__insights{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.property-card__insights>span{min-width:0;padding:9px;border:1px solid var(--r1-border);border-radius:11px;display:grid;grid-template-columns:auto 1fr;column-gap:6px}.property-card__insights .ui-icon{grid-row:1/3;width:16px;height:16px;color:var(--r1-gold)}.property-card__insights small{color:var(--r1-muted);font-size:9px}.property-card__insights b{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.property-card__actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:7px}.property-card__actions .btn,.property-card__actions form{flex:1 1 calc(50% - 7px)}.property-card__actions form .btn{width:100%;height:100%}.property-card__actions .ui-icon{width:15px;height:15px}
.property-card--compact .property-card__media{aspect-ratio:4/3}.property-card--compact .property-card__body{padding:13px}.property-card--similar .property-card__media{aspect-ratio:16/10}.property-card--owner .property-card__price-row>.status-pill{white-space:nowrap}.user-properties-main .app-card{overflow:visible}.user-property-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.compare-tray{position:fixed;z-index:1700;left:50%;right:auto;bottom:18px;transform:translateX(-50%);width:min(980px,calc(100% - 24px));padding:12px;border:1px solid color-mix(in srgb,var(--r1-gold) 60%,var(--r1-border));border-radius:18px;background:color-mix(in srgb,var(--r1-surface) 94%,transparent);box-shadow:0 22px 55px rgba(7,27,51,.28);backdrop-filter:blur(16px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.compare-tray[hidden]{display:none}.compare-tray__items{display:flex;gap:8px;min-width:0;overflow-x:auto}.compare-tray__item{flex:0 0 168px;padding:7px;border:1px solid var(--r1-border);border-radius:11px;background:var(--r1-soft);display:grid;grid-template-columns:38px minmax(0,1fr) 28px;align-items:center;gap:7px}.compare-tray__item img{width:38px;height:38px;border-radius:8px;object-fit:cover}.compare-tray__item span{min-width:0}.compare-tray__item strong,.compare-tray__item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compare-tray__item strong{font-size:10px}.compare-tray__item small{color:var(--r1-muted);font-size:9px}.compare-tray__item button{width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--r1-muted)}.compare-tray__actions{display:flex;align-items:center;gap:7px}.compare-tray__count{font-size:12px;font-weight:900;color:var(--r1-muted)}
.compare-dialog{position:fixed;z-index:1800;inset:0;display:grid;place-items:center;padding:20px}.compare-dialog[hidden]{display:none}.compare-dialog__backdrop{position:absolute;inset:0;background:rgba(4,15,29,.74)}.compare-dialog__panel{position:relative;width:min(1180px,100%);max-height:min(760px,90vh);overflow:auto;padding:20px;border:1px solid var(--r1-border);border-radius:20px;background:var(--r1-surface);color:var(--r1-ink);box-shadow:0 26px 70px rgba(0,0,0,.35)}.compare-dialog__head{position:sticky;z-index:2;top:-20px;margin:-20px -20px 16px;padding:16px 20px;border-bottom:1px solid var(--r1-border);background:var(--r1-surface);display:flex;justify-content:space-between;align-items:center;gap:12px}.compare-dialog__head button{width:44px;height:44px;border:1px solid var(--r1-border);border-radius:12px;background:var(--r1-soft);color:var(--r1-ink)}.compare-table{display:grid;grid-template-columns:minmax(128px,.7fr) repeat(var(--compare-columns),minmax(180px,1fr));min-width:max-content;border:1px solid var(--r1-border);border-radius:14px;overflow:hidden}.compare-table>*{padding:12px;border-inline-end:1px solid var(--r1-border);border-bottom:1px solid var(--r1-border)}.compare-table dt{font-weight:900;background:var(--r1-soft)}.compare-table dd{margin:0}.compare-table img{width:100%;height:120px;object-fit:cover;border-radius:10px}.compare-table a{color:var(--r1-ink);font-weight:900}
.site-footer-social{display:none!important}.site-footer-inner{grid-template-columns:minmax(240px,1.35fr) repeat(4,minmax(130px,1fr))!important}.site-footer-column a:focus-visible,.site-footer-logo:focus-visible{outline:3px solid #efb85c;outline-offset:4px}.site-footer-legal-note{grid-column:1/-1;margin:6px 0 0;padding-top:14px;border-top:1px solid rgba(255,255,255,.16);color:#bdc8d6;font-size:11px}.site-footer-bottom{flex-wrap:wrap}
.review-shell{width:min(1160px,calc(100% - 28px));margin:0 auto;padding:30px 0 56px}.review-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px;color:var(--r1-muted);font-size:12px}.review-breadcrumb a{color:inherit}.review-hero{padding:clamp(24px,5vw,54px);border:1px solid var(--r1-border);border-radius:24px;background:linear-gradient(135deg,#071b33,#12345b);color:#fff;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:24px;align-items:center}.review-hero h1{margin:4px 0 12px;font-size:clamp(2rem,5vw,4rem);line-height:1}.review-hero p{margin:0;color:#dbe7f4;max-width:72ch}.review-search{display:grid;gap:7px}.review-search input{min-height:54px;padding:12px 16px;border:1px solid rgba(255,255,255,.28);border-radius:14px;background:#fff;color:#10233d}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}.review-card,.review-content-card{padding:20px;border:1px solid var(--r1-border);border-radius:16px;background:var(--r1-surface);color:var(--r1-ink);box-shadow:var(--r1-shadow)}.review-card h2,.review-content-card h2{margin:0 0 9px;font-size:18px}.review-card p,.review-content-card p{color:var(--r1-muted)}.review-card a{display:inline-flex;margin-top:8px;font-weight:900;color:var(--r1-gold)}.review-empty{grid-column:1/-1;padding:30px;text-align:center;border:1px dashed var(--r1-border);border-radius:16px;color:var(--r1-muted)}
.review-faq{margin-top:24px}.review-faq details{border:1px solid var(--r1-border);border-radius:14px;background:var(--r1-surface);margin-bottom:10px;overflow:hidden}.review-faq summary{min-height:52px;padding:14px 18px;cursor:pointer;font-weight:900;display:flex;justify-content:space-between;gap:12px}.review-faq details>div{padding:0 18px 18px;color:var(--r1-muted)}.review-cta{margin-top:24px;padding:24px;border-radius:18px;background:var(--r1-soft);display:flex;align-items:center;justify-content:space-between;gap:18px}.legal-notice{margin-top:20px;padding:14px 16px;border-inline-start:4px solid var(--r1-gold);border-radius:10px;background:var(--r1-soft);color:var(--r1-muted);font-size:12px}.support-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.support-form .is-full{grid-column:1/-1}.support-form label{display:grid;gap:6px;font-weight:800}.support-form small{color:var(--r1-muted)}
.report-listing-link{color:var(--r1-danger)!important}.ai-disclaimer-compact{margin:14px 0 0;padding:12px 14px;border:1px solid var(--r1-border);border-radius:12px;background:var(--r1-soft);color:var(--r1-muted);font-size:11px}.ai-disclaimer-compact a{font-weight:900;color:var(--r1-gold)}
@media(max-width:1000px){.property-card-grid,.user-property-list{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))!important}.site-footer-brand,.site-footer-legal-note{grid-column:1/-1}.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.property-card-grid,.user-property-list,.review-grid{grid-template-columns:1fr}.property-card__actions .btn,.property-card__actions form{flex-basis:100%}.compare-tray{bottom:8px;grid-template-columns:1fr}.compare-tray__actions{justify-content:space-between}.compare-tray__item{flex-basis:142px}.compare-dialog{padding:8px}.review-hero{grid-template-columns:1fr;padding:24px}.review-cta{align-items:flex-start;flex-direction:column}.support-form{grid-template-columns:1fr}.support-form .is-full{grid-column:auto}.site-footer-inner{grid-template-columns:1fr!important}.site-footer-brand,.site-footer-legal-note{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.property-card,.property-card__media img{transition:none}.property-card:hover{transform:none}}
@media(forced-colors:active){.property-card,.review-card,.review-content-card,.compare-dialog__panel{border:2px solid CanvasText}.property-card__favorite.is-active{forced-color-adjust:none}}
