/* Step 3B: Public property page enhancements (host card + availability + booking) */

.buzer-property-sections{max-width:1100px;margin:26px auto;padding:0 16px;display:grid;gap:18px}

/* Generic card */
.buzer-host-card,.buzer-avail,.buzer-booking{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:18px;box-shadow:0 6px 20px rgba(0,0,0,.04)}

/* Buttons (keep consistent with dashboard) */
.buzer-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 12px;border-radius:var(--buzer-radius,12px);border:1px solid #ddd;background:#fff;color:#111;text-decoration:none;cursor:pointer;font-size:14px;line-height:1}
.buzer-btn:hover{background:#f7f7f7}
.buzer-btn-primary{background:var(--buzer-primary,#111);color:#fff;border-color:var(--buzer-primary,#111)}
.buzer-btn-primary:hover{filter:brightness(.92)}
.buzer-btn-secondary{background:#fff;color:#111;border-color:#cbd5e1}

/* Host card */
.buzer-host-card-inner{display:flex;gap:14px;align-items:flex-start}
.buzer-host-avatar{display:block;width:68px;height:68px;border-radius:16px;overflow:hidden;flex:0 0 68px;border:1px solid #e5e7eb;background:#f8fafc}
.buzer-host-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.buzer-host-avatar-fallback{display:block;width:100%;height:100%;background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}
.buzer-host-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin-bottom:4px}
.buzer-host-name{margin:0 0 6px;font-size:20px;line-height:1.2}
.buzer-host-name a{color:inherit;text-decoration:none}
.buzer-host-bio{color:#334155;font-size:14px}
.buzer-host-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:10px}
.buzer-host-pill{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;border:1px solid #e2e8f0;background:#f8fafc;font-size:13px;color:#334155;text-decoration:none}

/* Availability */
.buzer-avail-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;margin-bottom:10px}
.buzer-avail-head h3{margin:0;font-size:18px}
.buzer-avail-legend{display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:#475569}
.buzer-avail-legend-item{display:flex;gap:6px;align-items:center}
.buzer-avail-dot{width:10px;height:10px;border-radius:999px;display:inline-block;border:1px solid #cbd5e1}
.buzer-avail-dot.buzer-avail-free{background:#fff}
.buzer-avail-dot.buzer-avail-blocked{background:#111;border-color:#111}

.buzer-avail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(max-width:900px){.buzer-avail-grid{grid-template-columns:1fr}}

.buzer-cal{border:1px solid #e2e8f0;border-radius:16px;padding:12px;background:#fff}
.buzer-cal-title{font-weight:700;margin-bottom:10px}
.buzer-cal-week{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:6px}
.buzer-cal-dow{font-size:12px;color:#64748b;text-align:center}
.buzer-cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.buzer-cal-day{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;border-radius:12px;border:1px solid #e2e8f0;background:#fff;font-size:13px;color:#0f172a}
.buzer-cal-day.is-past{opacity:.45}
.buzer-cal-day.is-blocked{background:#111;color:#fff;border-color:#111}
.buzer-cal-day.is-today{outline:2px solid #0f172a;outline-offset:1px}
.buzer-cal-day.buzer-cal-empty{border-color:transparent;background:transparent}

/* Booking box tweaks */
.buzer-booking h3{margin-top:0}


/* Step 5A: Guest Premium property layout */
.buzer-prop-page{background:#fff}
.buzer-prop-hero{position:relative;min-height:420px;background-size:cover;background-position:center;border-bottom:1px solid #e5e7eb}
.buzer-prop-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.35) 45%,rgba(255,255,255,0) 100%)}
.buzer-prop-hero-inner{position:relative;max-width:1240px;margin:0 auto;padding:44px 16px;display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:end}
@media(max-width:980px){.buzer-prop-hero-inner{grid-template-columns:1fr;align-items:start}.buzer-prop-booking{margin-top:10px}}
.buzer-prop-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.8);margin-bottom:8px}
.buzer-prop-title{margin:0 0 6px;font-size:42px;line-height:1.05;color:#fff}
@media(max-width:680px){.buzer-prop-title{font-size:30px}}
.buzer-prop-location{color:rgba(255,255,255,.88);font-size:14px;margin-bottom:14px}
.buzer-prop-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:6px}
.buzer-pill{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.22);backdrop-filter:blur(8px);color:#fff;font-size:13px}
.buzer-prop-booking{display:flex;justify-content:flex-end}
.buzer-booking-card{width:100%;max-width:420px;background:#fff;border:1px solid #e5e7eb;border-radius:22px;padding:16px;box-shadow:0 12px 40px rgba(0,0,0,.18)}
@media(min-width:981px){.buzer-booking-card{position:sticky;top:18px}}
.buzer-booking-price{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:12px}
.buzer-booking-price-big{font-size:28px;font-weight:800}
.buzer-booking-price-sub{font-size:13px;color:#64748b}

.buzer-prop-gallery{max-width:1240px;margin:-34px auto 0;padding:0 16px;position:relative}
.buzer-prop-gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:180px 180px;gap:12px}
@media(max-width:980px){.buzer-prop-gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:160px 160px 160px}}
@media(max-width:640px){.buzer-prop-gallery-grid{grid-template-columns:1fr;grid-template-rows:200px 140px 140px}}
.buzer-prop-photo{border:0;padding:0;border-radius:22px;overflow:hidden;background:#e2e8f0;background-size:cover;background-position:center;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.10)}
.buzer-prop-photo.is-main{grid-row:1 / span 2;grid-column:1 / span 1}
@media(max-width:980px){.buzer-prop-photo.is-main{grid-row:auto;grid-column:1 / -1}}
.buzer-prop-gallery-more{margin-top:12px}

.buzer-prop-sections{max-width:1240px;margin:26px auto 40px;padding:0 16px;display:grid;grid-template-columns:1.4fr .6fr;gap:18px;align-items:start}
@media(max-width:980px){.buzer-prop-sections{grid-template-columns:1fr}}
.buzer-prop-card{background:#fff;border:1px solid #e5e7eb;border-radius:22px;padding:18px;box-shadow:0 6px 20px rgba(0,0,0,.04)}
.buzer-prop-card h2{margin:0 0 10px;font-size:20px}
.buzer-prop-content{color:#0f172a}
.buzer-prop-content p{color:#334155}
.buzer-prop-amenities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(max-width:640px){.buzer-prop-amenities{grid-template-columns:1fr}}
.buzer-amenity{padding:10px 12px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;color:#0f172a;font-size:14px}

/* Lightbox */
html.buzer-no-scroll, html.buzer-no-scroll body{overflow:hidden}
.buzer-lightbox{position:fixed;inset:0;z-index:99999;display:none}
.buzer-lightbox[aria-hidden="false"]{display:block}
.buzer-lightbox-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.78)}
.buzer-lightbox-inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:22px}
.buzer-lightbox-img{max-width:min(1100px,92vw);max-height:84vh;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.45)}
.buzer-lightbox-close{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.35);color:#fff;font-size:26px;cursor:pointer}
.buzer-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.35);color:#fff;font-size:34px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.buzer-lightbox-nav.prev{left:18px}
.buzer-lightbox-nav.next{right:18px}
