.property-page{min-height:100dvh;background:var(--surface);color:var(--ink)}.property-main{width:89%;max-width:1280px;margin-inline:auto;padding:var(--space-6) 0 var(--space-9)}.property-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,36%);gap:var(--space-7);align-items:center;padding-bottom:var(--space-6);border-bottom:1px solid var(--line)}.property-header h1{font-size:var(--text-2xl);font-weight:700;line-height:1.25;letter-spacing:-.025em}.property-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-5);font-size:var(--text-sm);color:var(--ink-muted)}.property-rating{display:inline-flex;align-items:center;gap:var(--space-1)}.property-rating svg{color:var(--rating-star)}.property-rating strong{color:var(--ink)}.property-host{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4);font-size:var(--text-base)}.property-host p{margin-top:3px;font-size:var(--text-xs);color:var(--ink-muted)}.property-map{height:220px;overflow:hidden;border-radius:var(--radius-lg);background:var(--surface-sunken)}.property-map-empty{height:100%;display:grid;place-content:center;padding:var(--space-4);font-size:var(--text-sm);color:var(--ink-muted)}.property-directions{display:block;margin-top:var(--space-2);font-size:var(--text-xs);text-align:right;color:var(--primary-dark);text-decoration:underline}.property-types{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-6) 0}.property-types button{min-height:38px;border:1px solid var(--line);border-radius:var(--radius-full);padding:8px 15px;font-size:var(--text-sm);font-weight:500;transition:background var(--dur-fast),color var(--dur-fast),border-color var(--dur-fast)}.property-types button:hover{border-color:var(--primary)}.property-types button[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--text-on-primary,#fff)}.property-room-title:focus-visible,.property-types button:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.property-room-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-7) var(--space-5)}.property-room{min-width:0;display:grid;align-content:start;gap:var(--space-1)}.property-room-facts{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--ink-muted)}.property-room-rating{font-size:var(--text-sm);color:var(--ink-muted)}.property-room-title{font-size:var(--text-base);font-weight:600;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.property-room-title:hover{text-decoration:underline}.property-room-price{font-size:var(--text-lg);font-weight:700;color:var(--primary-dark)}.property-empty{border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center}.property-empty h2{font-size:var(--text-lg);font-weight:600}.property-empty p{margin-block:var(--space-3);color:var(--ink-muted)}.property-empty a{color:var(--primary-dark);text-decoration:underline}@media (max-width:1023px){.property-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.property-header{grid-template-columns:minmax(0,1fr) 280px;gap:var(--space-5)}}@media (max-width:599px){.property-main{width:auto;margin-inline:var(--space-5);padding-top:var(--space-5)}.property-header{grid-template-columns:minmax(0,1fr);gap:var(--space-5)}.property-header h1{font-size:var(--text-xl)}.property-meta{margin-top:var(--space-3)}.property-map{height:200px}.property-room-grid{grid-template-columns:minmax(0,1fr);gap:var(--space-7)}.property-types{margin-block:var(--space-5)}.property-types button{min-height:44px}}@media (prefers-reduced-motion:reduce){.property-types button{transition:none}}