:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--accent: #6366f1;--accent-hover: #818cf8;--surface: rgba(255, 255, 255, .04);--surface-hover: rgba(255, 255, 255, .07);--border: rgba(255, 255, 255, .08);--border-accent: rgba(99, 102, 241, .4);--muted: rgba(255, 255, 255, .55);--radius: .75rem}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100vh;background:#09090b;color:#fafafa}.app{min-height:100vh}.header{border-bottom:1px solid var(--border);padding:1.25rem 2rem;background:#0000004d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.header-content{max-width:72rem;margin:0 auto;display:flex;align-items:baseline;gap:1.25rem}.logo{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:-.03em;background:linear-gradient(135deg,#fff 30%,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.tagline{margin:0;color:var(--muted);font-size:.85rem}.listings{max-width:72rem;margin:0 auto;padding:2.5rem 2rem}.section-title{margin:0 0 .25rem;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.section-subtitle{margin:0 0 2rem;color:var(--muted);font-size:.9rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.property-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;cursor:pointer;transition:border-color .2s,transform .2s,box-shadow .2s}.property-card:hover{border-color:var(--border-accent);transform:translateY(-3px);box-shadow:0 12px 40px #6366f114}.property-image-wrapper{position:relative;overflow:hidden;height:200px}.property-image{width:100%;height:100%;object-fit:cover;transition:transform .3s}.property-card:hover .property-image{transform:scale(1.04)}.price-badge{position:absolute;bottom:.75rem;left:.75rem;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.3rem .65rem;border-radius:.375rem;font-size:.95rem;font-weight:700;color:#fff}.price-badge.inline{position:static;display:inline-block;margin-bottom:.5rem}.property-info{padding:1.15rem 1.25rem 1.25rem}.property-title{margin:0 0 .2rem;font-size:1.05rem;font-weight:600;letter-spacing:-.01em}.property-address{margin:0 0 .6rem;color:var(--muted);font-size:.82rem}.property-details{display:flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.8rem;margin-bottom:1rem}.dot{opacity:.4}.btn-view{width:100%;padding:.6rem;border:1px solid var(--border-accent);background:#6366f114;color:var(--accent-hover);border-radius:.5rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-view:hover{background:#6366f129}.booking{max-width:72rem;margin:0 auto;padding:2rem}.btn-back{background:none;border:none;color:var(--muted);font-size:.85rem;cursor:pointer;padding:.35rem 0;margin-bottom:1.5rem;transition:color .2s}.btn-back:hover{color:#fff}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}@media(max-width:768px){.booking-layout{grid-template-columns:1fr}}.booking-preview{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.booking-image{width:100%;height:260px;object-fit:cover}.booking-preview-info{padding:1.25rem}.booking-preview-info h3{margin:0 0 .25rem;font-size:1.2rem;font-weight:600}.booking-form{border:1px solid var(--border);border-radius:var(--radius);padding:2rem;background:var(--surface)}.form-title{margin:0 0 .25rem;font-size:1.25rem;font-weight:700;letter-spacing:-.02em}.form-subtitle{margin:0 0 1.5rem;color:var(--muted);font-size:.85rem}.field{display:flex;flex-direction:column;margin-bottom:1.15rem}.field-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.4rem}.input{padding:.65rem .85rem;background:#0000004d;border:1px solid var(--border);border-radius:.5rem;color:#fff;font-size:.9rem;font-family:inherit;outline:none;transition:border-color .2s}.input:focus{border-color:var(--accent)}.input::placeholder{color:#ffffff40}.input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.6)}.time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.time-slot{padding:.5rem;background:#0000004d;border:1px solid var(--border);border-radius:.45rem;color:var(--muted);font-size:.8rem;font-family:inherit;cursor:pointer;transition:all .15s}.time-slot:hover{border-color:var(--border-accent);color:#fff}.time-slot.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn-primary{width:100%;padding:.75rem;background:var(--accent);border:none;border-radius:.5rem;color:#fff;font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .2s;margin-top:.5rem}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.confirmation{display:grid;place-items:center;padding:4rem 2rem;min-height:calc(100vh - 70px)}.confirm-card{max-width:28rem;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:2.5rem 2rem}.confirm-icon{width:3.5rem;height:3.5rem;background:#22c55e26;color:#22c55e;border-radius:50%;display:grid;place-items:center;font-size:1.75rem;margin:0 auto 1rem}.confirm-card h2{margin:0 0 .4rem;font-size:1.4rem;font-weight:700}.confirm-msg{margin:0 0 1.75rem;color:var(--muted);font-size:.88rem}.confirm-details{text-align:left;background:#00000040;border-radius:.5rem;padding:1rem 1.15rem;margin-bottom:1.5rem}.confirm-row{display:flex;justify-content:space-between;padding:.45rem 0;border-bottom:1px solid var(--border);font-size:.85rem}.confirm-row:last-child{border-bottom:none}.confirm-label{color:var(--muted)}.confirm-value{font-weight:600;text-align:right}
